OAI/Combinatorics/ContingencyTables/Machines/FixedCardinalityFold.lean
19 declarations, 0 contain sorry, 0 declared as axioms
A polynomial sequential list program for the subset draw
The accumulator retains the remaining population and requested size, and records one inclusion bit per input word. Both counters decrease; only the output list grows. The final program reverses that list once.
- abbrev
OAI.ContingencyTables.FixedCardinalityProgram.DrawStateline 16 - def
OAI.ContingencyTables.FixedCardinalityProgram.advanceline 18 - def
OAI.ContingencyTables.FixedCardinalityProgram.advanceRealizerline 22 - theorem
OAI.ContingencyTables.FixedCardinalityProgram.polynomial_advanceline 34 - lemma
OAI.ContingencyTables.FixedCardinalityProgram.advance_boundsline 55 - lemma
OAI.ContingencyTables.FixedCardinalityProgram.fold_boundsline 68 - def
OAI.ContingencyTables.FixedCardinalityProgram.drawWordsline 80 - def
OAI.ContingencyTables.FixedCardinalityProgram.prepareWordsline 83 - def
OAI.ContingencyTables.FixedCardinalityProgram.prepareWordsRealizerline 85 - def
OAI.ContingencyTables.FixedCardinalityProgram.runWordsline 87 - def
OAI.ContingencyTables.FixedCardinalityProgram.runWordsRealizerline 90 - def
OAI.ContingencyTables.FixedCardinalityProgram.outputRealizerline 92 - def
OAI.ContingencyTables.FixedCardinalityProgram.drawWordsRealizerline 94 - theorem
OAI.ContingencyTables.FixedCardinalityProgram.polynomial_drawWordsline 98 - def
OAI.ContingencyTables.FixedCardinalityProgram.sampleWordsline 134 - lemma
OAI.ContingencyTables.FixedCardinalityProgram.fold_outputline 140 - lemma
OAI.ContingencyTables.FixedCardinalityProgram.drawWords_eqline 153 - theorem
OAI.ContingencyTables.FixedCardinalityProgram.sampleWords_ofFnline 161 - theorem
OAI.ContingencyTables.FixedCardinalityProgram.drawWords_ofFnline 176Source documentation
The polynomial list program has exactly the proved sequential finite-word semantics, including empty populations.
theorem drawWords_ofFn (B n k : ℕ) (words : Fin n → Fin B → Bool) : drawWords ((n,k),List.ofFn (fun i => List.ofFn (words i)))= List.ofFn (FixedCardinalityBits.draw B n k words) := by …Mentions: OAI.ContingencyTables.FixedCardinalityProgram.drawWords, OAI.ContingencyTables.FixedCardinalityBits.draw