Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
The carry relation contains actual quotient columns and carry bits, not the desired valuation. The theorem includes all finite lists and zero parts. It uses sequential binary-column carries; a separate simultaneous-grid or permutation-invariance theorem is not asserted.
Exact theorem in conservative defined notation
∀ b. ∀ c. ∀ sb. ∀ sc. ∀ cb. ∀ cc. ∀ l. MultinomialBinomialPrefix(b,c,sb,sc,cb,cc,l) → ∀ x. ∀ y. Lt(x,l) → BetaAt(cb,cc,x,y) → ¬y = 0
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 51 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–13
03Establish hpointL14–17
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply h.
- L14
have hpoint : ∃ mkm_value_binpositive_point. ∃ mkm_partial_binpositive_point. ∃ mkm_factor_binpositive_point. BetaAt(b,c,i,mkm_value_binpositive_point) ∧ (BetaAt(sb,sc,i,mkm_partial_binpositive_point) ∧ (Choose(mkm_partial_binpositive_point + mkm_value_binpositive_point,mkm_partial_binpositive_point,mkm_factor_binpositive_point) ∧ BetaAt(cb,cc,i,mkm_factor_binpositive_point)))Definitions: BetaAt(b,c,i,mkm_value_binpositive_point)BetaAt(sb,sc,i,mkm_partial_binpositive_point)Choose(mkm_partial_binpositive_point + mkm_value_binpositive_point,mkm_partial_binpositive_point,mkm_factor_binpositive_point)BetaAt(cb,cc,i,mkm_factor_binpositive_point)Original native command in the exact edition - L15
specialize h i - L16
apply h - L17
exact hi
04Separate the logical casesL18–23
05Establish hfactorL24–32
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
06Establish hpositiveL33–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply choose positive.
07Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
cases hpositive
Original defined command ledger · 51 lines
- 0001
intro b - 0002
intro c - 0003
intro sb - 0004
intro sc - 0005
intro cb - 0006
intro cc - 0007
intro l - 0008
intro h - 0009
intro i - 0010
intro C - 0011
intro hi - 0012
intro hC - 0013
intro hzero - 0014
have hpoint : ∃ mkm_value_binpositive_point. ∃ mkm_partial_binpositive_point. ∃ mkm_factor_binpositive_point. BetaAt(b,c,i,mkm_value_binpositive_point) ∧ (BetaAt(sb,sc,i,mkm_partial_binpositive_point) ∧ (Choose(mkm_partial_binpositive_point + mkm_value_binpositive_point,mkm_partial_binpositive_point,mkm_factor_binpositive_point) ∧ BetaAt(cb,cc,i,mkm_factor_binpositive_point))) - 0015
specialize h i - 0016
apply h - 0017
exact hi - 0018
cases hpoint - 0019
cases hpoint_witness - 0020
cases hpoint_witness_witness - 0021
cases hpoint_witness_witness_witness - 0022
cases hpoint_witness_witness_witness_right - 0023
cases hpoint_witness_witness_witness_right_right - 0024
have hfactor : x2 = C - 0025
specialize beta_at_unique cb - 0026
specialize beta_at_unique cc - 0027
specialize beta_at_unique i - 0028
specialize beta_at_unique x2 - 0029
specialize beta_at_unique C - 0030
apply beta_at_unique - 0031
exact hpoint_witness_witness_witness_right_right_right - 0032
exact hC - 0033
have hpositive : exists q. x2 = S q - 0034
specialize choose_positive (x1 + x) - 0035
specialize choose_positive x1 - 0036
specialize choose_positive x2 - 0037
apply choose_positive - 0038
specialize le_add_right x1 - 0039
specialize le_add_right x - 0040
apply le_add_right - 0041
exact hpoint_witness_witness_witness_right_right_left - 0042
cases hpositive - 0043
have hsucc : S x3 = 0 - 0044
trans x2 - 0045
symm - 0046
exact hpositive_witness - 0047
trans C - 0048
exact hfactor - 0049
exact hzero - 0050
apply PA1 - 0051
exact hsucc