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
∀ b. ∀ c. ∀ L. ∀ t. ∀ d. ∀ e. ∀ f. ∀ g. PolynomialLeftPad(b,c,L,t,d,e) → PolynomialLeftPad(b,c,L,t,f,g) → BetaPrefixEqual(d,e,f,g,t + L)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 71 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.
Named ingredients (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–14
03Separate the logical casesL15–16
04Establish hoL17–22
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial left pad index cases.
- L17
have ho : Lt(i,t) ∨ (∃ x. Lt(x,L) ∧ i = t + x)Definitions: Lt(i,t)Lt(x,L)Original native command in the exact edition - L18
specialize prime_field_polynomial_left_pad_index_cases (t) - L19
specialize prime_field_polynomial_left_pad_index_cases (L) - L20
specialize prime_field_polynomial_left_pad_index_cases (i) - L21
apply prime_field_polynomial_left_pad_index_cases - L22
exact hi
05Separate the logical casesL23–23
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L23
cases ho
06Establish heqL24–33
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
07Use earlier factsL34–34
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L34
exact ho_left
08Calculate and transport equalitiesL35–36
09Use earlier factsL37–39
10Separate the logical casesL40–41
11Establish hvL42–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L42
have hv : ∃ z. BetaAt(b,c,x,z)Definitions: BetaAt(b,c,x,z)Original native command in the exact edition - L43
specialize beta_at_exists (b) - L44
specialize beta_at_exists (c) - L45
specialize beta_at_exists (x) - L46
apply beta_at_exists
12Separate the logical casesL47–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L47
cases hv
13Establish heqL48–57
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
14Use earlier factsL58–62
15Calculate and transport equalitiesL63–66
Original defined command ledger · 71 lines
- 0001
intro b - 0002
intro c - 0003
intro L - 0004
intro t - 0005
intro d - 0006
intro e - 0007
intro f - 0008
intro g - 0009
intro hd - 0010
intro hf - 0011
intro i - 0012
intro a - 0013
intro hi - 0014
intro ha - 0015
cases hd - 0016
cases hf - 0017
have ho : Lt(i,t) ∨ (∃ x. Lt(x,L) ∧ i = t + x) - 0018
specialize prime_field_polynomial_left_pad_index_cases (t) - 0019
specialize prime_field_polynomial_left_pad_index_cases (L) - 0020
specialize prime_field_polynomial_left_pad_index_cases (i) - 0021
apply prime_field_polynomial_left_pad_index_cases - 0022
exact hi - 0023
cases ho - 0024
have heq : a=0 - 0025
specialize beta_at_unique (d) - 0026
specialize beta_at_unique (e) - 0027
specialize beta_at_unique (i) - 0028
specialize beta_at_unique (a) - 0029
specialize beta_at_unique (0) - 0030
apply beta_at_unique - 0031
exact ha - 0032
specialize hd_left (i) - 0033
apply hd_left - 0034
exact ho_left - 0035
rewrite heq - 0036
rewrite heq - 0037
specialize hf_left (i) - 0038
apply hf_left - 0039
exact ho_left - 0040
cases ho_right - 0041
cases ho_right_witness - 0042
have hv : ∃ z. BetaAt(b,c,x,z) - 0043
specialize beta_at_exists (b) - 0044
specialize beta_at_exists (c) - 0045
specialize beta_at_exists (x) - 0046
apply beta_at_exists - 0047
cases hv - 0048
have heq : a=x1 - 0049
specialize beta_at_unique (d) - 0050
specialize beta_at_unique (e) - 0051
specialize beta_at_unique (t+x) - 0052
specialize beta_at_unique (a) - 0053
specialize beta_at_unique (x1) - 0054
apply beta_at_unique - 0055
rewrite ho_right_witness_right at ha - 0056
rewrite ho_right_witness_right at ha - 0057
exact ha - 0058
specialize hd_right (x) - 0059
specialize hd_right (x1) - 0060
apply hd_right - 0061
exact ho_right_witness_left - 0062
exact hv_witness - 0063
rewrite ho_right_witness_right - 0064
rewrite ho_right_witness_right - 0065
rewrite heq - 0066
rewrite heq - 0067
specialize hf_right (x) - 0068
specialize hf_right (x1) - 0069
apply hf_right - 0070
exact ho_right_witness_left - 0071
exact hv_witness