Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Coefficients are highest-degree-first. The divisor has a nonzero decoded head; primality supplies its actual inverse. Empty quotients and remainders are included. Functionality compares the constructed execution lengths and decoded coefficients, never arbitrary beta codes. Formal polynomial equivalence compares every coefficient, not evaluations on a finite field. The formal identity and remainder-degree bound are proved separately, not assumed by the execution graph. Arbitrary quotient/remainder-pair uniqueness from a formal identity, multiplication associativity, gcd/Bezout, irreducible-polynomial existence, and the full G091 prime-power-field goal remain open. The seven displayed new names are conservative first-order notation, not new kernel primitives.
Exact theorem in conservative defined notation
∀ ab. ∀ ac. ∀ bb. ∀ bc. ∀ d. ∀ N. ∀ a. ∀ b. ∀ t. BetaAt(ab,ac,N,a) → BetaAt(bb,bc,0,b) → PolynomialDiagonalTerm(ab,ac,S N,bb,bc,S d,N,N,t) → t = a · b
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 63 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–12
03Separate the logical casesL13–18
04Establish hkL19–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add left cancel.
- L19
have hk : x=0 - L20
specialize add_left_cancel (N) - L21
specialize add_left_cancel (x) - L22
specialize add_left_cancel (0) - L23
apply add_left_cancel - L24
trans N - L25
exact ht_witness_witness_witness_left - L26
simp - L27
rewrite hk at ht_witness_witness_witness_right_right_left - L28
rewrite hk at ht_witness_witness_witness_right_right_left
05Calculate and transport equalitiesL29–30
06Establish hleftL31–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply polynomial zero extended entry functional.
- L31
have hleft : x1=a - L32
specialize polynomial_zero_extended_entry_functional (ab) - L33
specialize polynomial_zero_extended_entry_functional (ac) - L34
specialize polynomial_zero_extended_entry_functional (S N) - L35
specialize polynomial_zero_extended_entry_functional (N) - L36
specialize polynomial_zero_extended_entry_functional (x1) - L37
specialize polynomial_zero_extended_entry_functional (a) - L38
apply polynomial_zero_extended_entry_functional - L39
exact ht_witness_witness_witness_right_left
07Separate the logical casesL40–41
08Construct an explicit witnessL42–42
Supply the displayed value, then prove that it has the required property.
- L42
exists 0
09Use earlier factsL43–44
10Establish hrightL45–53
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply polynomial zero extended entry functional.
- L45
have hright : x2=b - L46
specialize polynomial_zero_extended_entry_functional (bb) - L47
specialize polynomial_zero_extended_entry_functional (bc) - L48
specialize polynomial_zero_extended_entry_functional (S d) - L49
specialize polynomial_zero_extended_entry_functional (0) - L50
specialize polynomial_zero_extended_entry_functional (x2) - L51
specialize polynomial_zero_extended_entry_functional (b) - L52
apply polynomial_zero_extended_entry_functional - L53
exact ht_witness_witness_witness_right_right_left
11Separate the logical casesL54–55
12Construct an explicit witnessL56–56
Supply the displayed value, then prove that it has the required property.
- L56
exists d
13Calculate and transport equalitiesL57–57
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L57
simp
14Use earlier factsL58–58
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L58
exact hb
15Calculate and transport equalitiesL59–59
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L59
trans x1*x2
16Use earlier factsL60–60
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L60
exact ht_witness_witness_witness_right_right_right
17Calculate and transport equalitiesL61–61
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L61
congr
Original defined command ledger · 63 lines
- 0001
intro ab - 0002
intro ac - 0003
intro bb - 0004
intro bc - 0005
intro d - 0006
intro N - 0007
intro a - 0008
intro b - 0009
intro t - 0010
intro ha - 0011
intro hb - 0012
intro ht - 0013
cases ht - 0014
cases ht_witness - 0015
cases ht_witness_witness - 0016
cases ht_witness_witness_witness - 0017
cases ht_witness_witness_witness_right - 0018
cases ht_witness_witness_witness_right_right - 0019
have hk : x=0 - 0020
specialize add_left_cancel (N) - 0021
specialize add_left_cancel (x) - 0022
specialize add_left_cancel (0) - 0023
apply add_left_cancel - 0024
trans N - 0025
exact ht_witness_witness_witness_left - 0026
simp - 0027
rewrite hk at ht_witness_witness_witness_right_right_left - 0028
rewrite hk at ht_witness_witness_witness_right_right_left - 0029
rewrite hk at ht_witness_witness_witness_right_right_left - 0030
rewrite hk at ht_witness_witness_witness_right_right_left - 0031
have hleft : x1=a - 0032
specialize polynomial_zero_extended_entry_functional (ab) - 0033
specialize polynomial_zero_extended_entry_functional (ac) - 0034
specialize polynomial_zero_extended_entry_functional (S N) - 0035
specialize polynomial_zero_extended_entry_functional (N) - 0036
specialize polynomial_zero_extended_entry_functional (x1) - 0037
specialize polynomial_zero_extended_entry_functional (a) - 0038
apply polynomial_zero_extended_entry_functional - 0039
exact ht_witness_witness_witness_right_left - 0040
left - 0041
split - 0042
exists 0 - 0043
apply zero_add - 0044
exact ha - 0045
have hright : x2=b - 0046
specialize polynomial_zero_extended_entry_functional (bb) - 0047
specialize polynomial_zero_extended_entry_functional (bc) - 0048
specialize polynomial_zero_extended_entry_functional (S d) - 0049
specialize polynomial_zero_extended_entry_functional (0) - 0050
specialize polynomial_zero_extended_entry_functional (x2) - 0051
specialize polynomial_zero_extended_entry_functional (b) - 0052
apply polynomial_zero_extended_entry_functional - 0053
exact ht_witness_witness_witness_right_right_left - 0054
left - 0055
split - 0056
exists d - 0057
simp - 0058
exact hb - 0059
trans x1*x2 - 0060
exact ht_witness_witness_witness_right_right_right - 0061
congr - 0062
exact hleft - 0063
exact hright