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. ∀ ub. ∀ uc. ∀ ab. ∀ ac. ∀ L. ∀ cb. ∀ cc. BetaAt(ub,uc,0,1) → FpPolyProduct(p,ub,uc,1,ab,ac,L,cb,cc,L) → BetaPrefixEqual(cb,cc,ab,ac,L)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 67 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
02Establish hAL11–11
Establish this local claim before using it. It is not an additional assumption.
- L11
have hA : BetaPrefixInto(ab,ac,L,p)Definitions: BetaPrefixInto(ab,ac,L,p)Original native command in the exact edition
03Separate the logical casesL12–13
04Use earlier factsL14–14
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L14
exact hc_right_left
05Fix variables and assumptionsL15–18
06Establish haL19–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L19
have ha : ∃ a. BetaAt(ab,ac,i,a)Definitions: BetaAt(ab,ac,i,a)Original native command in the exact edition - L20
specialize beta_at_exists (ab) - L21
specialize beta_at_exists (ac) - L22
specialize beta_at_exists (i) - L23
apply beta_at_exists
07Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
cases ha
08Establish heqL25–34
Establish this local claim before using it. It is not an additional assumption.
- L25
have heq : r=x - L26
specialize prime_field_convolution_coefficient_left_unit (p) - L27
specialize prime_field_convolution_coefficient_left_unit (ub) - L28
specialize prime_field_convolution_coefficient_left_unit (uc) - L29
specialize prime_field_convolution_coefficient_left_unit (ab) - L30
specialize prime_field_convolution_coefficient_left_unit (ac) - L31
specialize prime_field_convolution_coefficient_left_unit (L) - L32
specialize prime_field_convolution_coefficient_left_unit (i) - L33
specialize prime_field_convolution_coefficient_left_unit (x) - L34
specialize prime_field_convolution_coefficient_left_unit (r)
09Use earlier factsL35–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L35
apply prime_field_convolution_coefficient_left_unit - L36
exact hu - L37
exact hi - L38
exact ha_witness - L39
specialize matrix_rank_bounded_prefix_value (ab) - L40
specialize matrix_rank_bounded_prefix_value (ac) - L41
specialize matrix_rank_bounded_prefix_value (L) - L42
specialize matrix_rank_bounded_prefix_value (p) - L43
specialize matrix_rank_bounded_prefix_value (i) - L44
specialize matrix_rank_bounded_prefix_value (x)
10Use earlier factsL45–54
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
apply matrix_rank_bounded_prefix_value - L46
exact hA - L47
exact hi - L48
exact ha_witness - L49
specialize prime_field_polynomial_convolution_entry (p) - L50
specialize prime_field_polynomial_convolution_entry (ub) - L51
specialize prime_field_polynomial_convolution_entry (uc) - L52
specialize prime_field_polynomial_convolution_entry (1) - L53
specialize prime_field_polynomial_convolution_entry (ab) - L54
specialize prime_field_polynomial_convolution_entry (ac)
11Use earlier factsL55–64
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
specialize prime_field_polynomial_convolution_entry (L) - L56
specialize prime_field_polynomial_convolution_entry (cb) - L57
specialize prime_field_polynomial_convolution_entry (cc) - L58
specialize prime_field_polynomial_convolution_entry (L) - L59
specialize prime_field_polynomial_convolution_entry (i) - L60
specialize prime_field_polynomial_convolution_entry (r) - L61
apply prime_field_polynomial_convolution_entry - L62
exact hc - L63
exact hi - L64
exact hr
12Calculate and transport equalitiesL65–66
13Use earlier factsL67–67
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L67
exact ha_witness
Original defined command ledger · 67 lines
- 0001
intro p - 0002
intro ub - 0003
intro uc - 0004
intro ab - 0005
intro ac - 0006
intro L - 0007
intro cb - 0008
intro cc - 0009
intro hu - 0010
intro hc - 0011
have hA : BetaPrefixInto(ab,ac,L,p) - 0012
cases hc - 0013
cases hc_right - 0014
exact hc_right_left - 0015
intro i - 0016
intro r - 0017
intro hi - 0018
intro hr - 0019
have ha : ∃ a. BetaAt(ab,ac,i,a) - 0020
specialize beta_at_exists (ab) - 0021
specialize beta_at_exists (ac) - 0022
specialize beta_at_exists (i) - 0023
apply beta_at_exists - 0024
cases ha - 0025
have heq : r=x - 0026
specialize prime_field_convolution_coefficient_left_unit (p) - 0027
specialize prime_field_convolution_coefficient_left_unit (ub) - 0028
specialize prime_field_convolution_coefficient_left_unit (uc) - 0029
specialize prime_field_convolution_coefficient_left_unit (ab) - 0030
specialize prime_field_convolution_coefficient_left_unit (ac) - 0031
specialize prime_field_convolution_coefficient_left_unit (L) - 0032
specialize prime_field_convolution_coefficient_left_unit (i) - 0033
specialize prime_field_convolution_coefficient_left_unit (x) - 0034
specialize prime_field_convolution_coefficient_left_unit (r) - 0035
apply prime_field_convolution_coefficient_left_unit - 0036
exact hu - 0037
exact hi - 0038
exact ha_witness - 0039
specialize matrix_rank_bounded_prefix_value (ab) - 0040
specialize matrix_rank_bounded_prefix_value (ac) - 0041
specialize matrix_rank_bounded_prefix_value (L) - 0042
specialize matrix_rank_bounded_prefix_value (p) - 0043
specialize matrix_rank_bounded_prefix_value (i) - 0044
specialize matrix_rank_bounded_prefix_value (x) - 0045
apply matrix_rank_bounded_prefix_value - 0046
exact hA - 0047
exact hi - 0048
exact ha_witness - 0049
specialize prime_field_polynomial_convolution_entry (p) - 0050
specialize prime_field_polynomial_convolution_entry (ub) - 0051
specialize prime_field_polynomial_convolution_entry (uc) - 0052
specialize prime_field_polynomial_convolution_entry (1) - 0053
specialize prime_field_polynomial_convolution_entry (ab) - 0054
specialize prime_field_polynomial_convolution_entry (ac) - 0055
specialize prime_field_polynomial_convolution_entry (L) - 0056
specialize prime_field_polynomial_convolution_entry (cb) - 0057
specialize prime_field_polynomial_convolution_entry (cc) - 0058
specialize prime_field_polynomial_convolution_entry (L) - 0059
specialize prime_field_polynomial_convolution_entry (i) - 0060
specialize prime_field_polynomial_convolution_entry (r) - 0061
apply prime_field_polynomial_convolution_entry - 0062
exact hc - 0063
exact hi - 0064
exact hr - 0065
rewrite heq - 0066
rewrite heq - 0067
exact ha_witness