OAI/Combinatorics/ContingencyTables/Transport/CanonicalDrawTabulation.lean
13 declarations, 0 contain sorry, 0 declared as axioms
Exact dense counts after computed maximal-margin normalization
- def
OAI.ContingencyTables.DensePrograms.canonicalCountInputline 11 - def
OAI.ContingencyTables.DensePrograms.canonicalCountInputRealizerline 15 - lemma
OAI.ContingencyTables.DensePrograms.polynomial_canonicalCountInputline 25 - def
OAI.ContingencyTables.DensePrograms.canonicalDrawCountsline 38 - def
OAI.ContingencyTables.DensePrograms.canonicalDrawCountsRealizerline 41 - def
OAI.ContingencyTables.DensePrograms.canonicalTabulationMeasureline 46 - theorem
OAI.ContingencyTables.DensePrograms.work_canonicalDrawCountsline 52 - def
OAI.ContingencyTables.DensePrograms.canonicalTableIndexline 71Source documentation
The lookup index uses exactly the same two swaps as the sampler.
def canonicalTableIndex (z : CanonicalParameters×MatrixCode) : ℕ := …
Mentions: OAI.ContingencyTables.DensePrograms.CanonicalParameters, OAI.ContingencyTables.DensePrograms.MatrixCode
- def
OAI.ContingencyTables.DensePrograms.canonicalTableIndexRealizerline 74 - lemma
OAI.ContingencyTables.DensePrograms.polynomial_canonicalTableIndexline 84 - lemma
OAI.ContingencyTables.DensePrograms.canonicalCountInput_codeline 94 - lemma
OAI.ContingencyTables.DensePrograms.canonicalTableIndex_codeline 105 - theorem
OAI.ContingencyTables.DensePrograms.canonicalDrawCounts_atline 120Source documentation
The cached numerator is the count at the transported table, including all fallback words of the actual normalized dense program.
theorem canonicalDrawCounts_at {m n d : ℕ} (R : Option (Fin m) → ℕ) (P : Option (Fin n) → ℕ) (hd : 14≤d) (hq : m*n≤d) (hR : ∀ i,d^12≤R i) (hP : ∀ j,d^12≤P j) (htotal : ∑ i,R i=∑ j,P j) (h : ℕ) (X : Table R P) : (canonicalDrawCounts ((marginCode R,marginCode P),(d,h))).getD (canonicalTableIndex (((marginCode R,marginCode P),(d,h)),tableOutput X)) 0= (denseDrawCounts (normalizedMargin R) (normalizedMargin P) d hd (normalizedMargin_lower R _ hR) (normalizedMargin_lower P _ hP) finProdFinEquiv (by rw [normalizedMargin_total,normalizedMargin_total]; exact htotal) h (canonicalOrigin (m*n) d (by omega)) (tableReindex (indexPermutation (marginPosition R)) (indexPermutation (marginPosition P)) R P (canonicalFallback R P htotal))).count …Mentions: OAI.ContingencyTables.Table, OAI.ContingencyTables.DensePrograms.canonicalDrawCounts, OAI.ContingencyTables.DensePrograms.marginCode, OAI.ContingencyTables.DensePrograms.canonicalTableIndex, OAI.ContingencyTables.DensePrograms.tableOutput, OAI.ContingencyTables.DensePrograms.normalizedMargin, OAI.ContingencyTables.DensePrograms.normalizedMargin_lower, OAI.ContingencyTables.DensePrograms.normalizedMargin_total, OAI.ContingencyTables.DensePrograms.canonicalOrigin, OAI.ContingencyTables.tableReindex, OAI.ContingencyTables.DensePrograms.indexPermutation, OAI.ContingencyTables.DensePrograms.marginPosition, OAI.ContingencyTables.DensePrograms.canonicalFallback