Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
All products and sums use actual beta-coded coefficients; equality is formal coefficient equivalence, not equality of evaluations or raw codes. The zero gcd is included. Uniqueness is up to formal equivalence, not unique Bézout coefficients. This proves the polynomial gcd component, not G091 irreducible-polynomial existence or arbitrary prime-power-field construction.
Exact theorem in conservative defined notation
∀ p. ∀ k. ∀ ab. ∀ ac. ∀ L. Prime(p) → Lt(k,p) → BetaPrefixInto(ab,ac,L,p) → ∃ x. ∃ y. ∃ z. ∃ n. BetaPrefixInto(x,y,1,p) ∧ (BetaAt(x,y,0,k) ∧ (FpPolyScale(p,k,ab,ac,z,n,L) ∧ FpPolyProduct(p,x,y,1,ab,ac,L,z,n,L)))
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 62 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–8
02Establish hKL9–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial repeat exists.
- L9
have hK : ∃ kb. ∃ kc. BetaPrefixInto(kb,kc,1,p) ∧ Repeat(kb,kc,k,1)Definitions: BetaPrefixInto(kb,kc,1,p)Repeat(kb,kc,k,1)Original native command in the exact edition - L10
specialize prime_field_polynomial_repeat_exists (p) - L11
specialize prime_field_polynomial_repeat_exists (k) - L12
specialize prime_field_polynomial_repeat_exists (1) - L13
apply prime_field_polynomial_repeat_exists - L14
exact hk
03Separate the logical casesL15–17
04Establish hsL18–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial scale exists.
- L18
have hs : ∃ hb. ∃ hc. FpPolyScale(p,k,ab,ac,hb,hc,L)Definitions: FpPolyScale(p,k,ab,ac,hb,hc,L)Original native command in the exact edition - L19
specialize prime_field_polynomial_scale_exists (p) - L20
specialize prime_field_polynomial_scale_exists (k) - L21
specialize prime_field_polynomial_scale_exists (ab) - L22
specialize prime_field_polynomial_scale_exists (ac) - L23
specialize prime_field_polynomial_scale_exists (L) - L24
apply prime_field_polynomial_scale_exists - L25
intro hz - L26
specialize prime_nonzero (p) - L27
apply prime_nonzero
05Use earlier factsL28–31
06Separate the logical casesL32–33
07Establish hentryL34–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hK witness witness right.
- L34
have hentry : BetaAt(x,x1,0,k)Definitions: BetaAt(x,x1,0,k)Original native command in the exact edition - L35
specialize hK_witness_witness_right (0) - L36
apply hK_witness_witness_right
08Construct an explicit witnessL37–37
Supply the displayed value, then prove that it has the required property.
- L37
exists 0
09Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
apply zero_add
10Construct an explicit witnessL39–42
11Separate the logical casesL43–43
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L43
split
12Use earlier factsL44–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L44
exact hK_witness_witness_left
13Separate the logical casesL45–45
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L45
split
14Use earlier factsL46–46
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L46
exact hentry
15Separate the logical casesL47–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L47
split
16Use earlier factsL48–57
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L48
exact hs_witness_witness - L49
specialize prime_field_polynomial_scale_to_left_constant_product (p) - L50
specialize prime_field_polynomial_scale_to_left_constant_product (k) - L51
specialize prime_field_polynomial_scale_to_left_constant_product (x) - L52
specialize prime_field_polynomial_scale_to_left_constant_product (x1) - L53
specialize prime_field_polynomial_scale_to_left_constant_product (ab) - L54
specialize prime_field_polynomial_scale_to_left_constant_product (ac) - L55
specialize prime_field_polynomial_scale_to_left_constant_product (x2) - L56
specialize prime_field_polynomial_scale_to_left_constant_product (x3) - L57
specialize prime_field_polynomial_scale_to_left_constant_product (L)
Original defined command ledger · 62 lines
- 0001
intro p - 0002
intro k - 0003
intro ab - 0004
intro ac - 0005
intro L - 0006
intro hp - 0007
intro hk - 0008
intro ha - 0009
have hK : ∃ kb. ∃ kc. BetaPrefixInto(kb,kc,1,p) ∧ Repeat(kb,kc,k,1) - 0010
specialize prime_field_polynomial_repeat_exists (p) - 0011
specialize prime_field_polynomial_repeat_exists (k) - 0012
specialize prime_field_polynomial_repeat_exists (1) - 0013
apply prime_field_polynomial_repeat_exists - 0014
exact hk - 0015
cases hK - 0016
cases hK_witness - 0017
cases hK_witness_witness - 0018
have hs : ∃ hb. ∃ hc. FpPolyScale(p,k,ab,ac,hb,hc,L) - 0019
specialize prime_field_polynomial_scale_exists (p) - 0020
specialize prime_field_polynomial_scale_exists (k) - 0021
specialize prime_field_polynomial_scale_exists (ab) - 0022
specialize prime_field_polynomial_scale_exists (ac) - 0023
specialize prime_field_polynomial_scale_exists (L) - 0024
apply prime_field_polynomial_scale_exists - 0025
intro hz - 0026
specialize prime_nonzero (p) - 0027
apply prime_nonzero - 0028
exact hp - 0029
exact hz - 0030
exact hk - 0031
exact ha - 0032
cases hs - 0033
cases hs_witness - 0034
have hentry : BetaAt(x,x1,0,k) - 0035
specialize hK_witness_witness_right (0) - 0036
apply hK_witness_witness_right - 0037
exists 0 - 0038
apply zero_add - 0039
exists x - 0040
exists x1 - 0041
exists x2 - 0042
exists x3 - 0043
split - 0044
exact hK_witness_witness_left - 0045
split - 0046
exact hentry - 0047
split - 0048
exact hs_witness_witness - 0049
specialize prime_field_polynomial_scale_to_left_constant_product (p) - 0050
specialize prime_field_polynomial_scale_to_left_constant_product (k) - 0051
specialize prime_field_polynomial_scale_to_left_constant_product (x) - 0052
specialize prime_field_polynomial_scale_to_left_constant_product (x1) - 0053
specialize prime_field_polynomial_scale_to_left_constant_product (ab) - 0054
specialize prime_field_polynomial_scale_to_left_constant_product (ac) - 0055
specialize prime_field_polynomial_scale_to_left_constant_product (x2) - 0056
specialize prime_field_polynomial_scale_to_left_constant_product (x3) - 0057
specialize prime_field_polynomial_scale_to_left_constant_product (L) - 0058
apply prime_field_polynomial_scale_to_left_constant_product - 0059
exact hp - 0060
exact hK_witness_witness_left - 0061
exact hentry - 0062
exact hs_witness_witness