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
∀ L. ∀ d. ∀ q. ∀ Q. PolynomialQuotientLength(L,d,q) → PolynomialQuotientLength(L,d,Q) → q = Q
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 55 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–6
02Separate the logical casesL7–10
03Calculate and transport equalitiesL11–11
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L11
trans 0
04Use earlier factsL12–12
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L12
exact hfirst_left_left
05Calculate and transport equalitiesL13–13
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L13
symm
06Use earlier factsL14–14
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L14
exact hsecond_left_left
07Separate the logical casesL15–16
08Use earlier factsL17–23
09Establish hzeroL24–29
10Separate the logical casesL30–33
11Use earlier factsL34–40
12Establish hzeroL41–46
13Separate the logical casesL47–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L47
cases hsecond_right
14Use earlier factsL48–51
15Calculate and transport equalitiesL52–52
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L52
trans L
16Use earlier factsL53–53
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L53
exact hfirst_right_right
17Calculate and transport equalitiesL54–54
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L54
symm
18Use earlier factsL55–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
exact hsecond_right_right
Original defined command ledger · 55 lines
- 0001
intro L - 0002
intro d - 0003
intro q - 0004
intro Q - 0005
intro hfirst - 0006
intro hsecond - 0007
cases hfirst - 0008
cases hfirst_left - 0009
cases hsecond - 0010
cases hsecond_left - 0011
trans 0 - 0012
exact hfirst_left_left - 0013
symm - 0014
exact hsecond_left_left - 0015
cases hsecond_right - 0016
exfalso - 0017
apply hsecond_right_left - 0018
specialize le_zero (Q) - 0019
apply le_zero - 0020
specialize add_le_cancel_right (Q) - 0021
specialize add_le_cancel_right (0) - 0022
specialize add_le_cancel_right (d) - 0023
apply add_le_cancel_right - 0024
have hzero : 0+d=d - 0025
specialize zero_add (d) - 0026
apply zero_add - 0027
rewrite hzero - 0028
rewrite hsecond_right_right - 0029
exact hfirst_left_right - 0030
cases hfirst_right - 0031
cases hsecond - 0032
cases hsecond_left - 0033
exfalso - 0034
apply hfirst_right_left - 0035
specialize le_zero (q) - 0036
apply le_zero - 0037
specialize add_le_cancel_right (q) - 0038
specialize add_le_cancel_right (0) - 0039
specialize add_le_cancel_right (d) - 0040
apply add_le_cancel_right - 0041
have hzero : 0+d=d - 0042
specialize zero_add (d) - 0043
apply zero_add - 0044
rewrite hzero - 0045
rewrite hfirst_right_right - 0046
exact hsecond_left_right - 0047
cases hsecond_right - 0048
specialize add_right_cancel (q) - 0049
specialize add_right_cancel (Q) - 0050
specialize add_right_cancel (d) - 0051
apply add_right_cancel - 0052
trans L - 0053
exact hfirst_right_right - 0054
symm - 0055
exact hsecond_right_right