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. ∀ ab. ∀ ac. ∀ A. Prime(p) → BetaPrefixInto(ab,ac,A,p) → FpPolynomialAlignedAdd(p,ab,ac,A,0,0,0,ab,ac,A)
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–6
02Establish hzL7–10
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta repeat exists.
- L7
have hz : ∃ zb. ∃ zc. Repeat(zb,zc,0,A)Definitions: Repeat(zb,zc,0,A)Original native command in the exact edition - L8
specialize beta_repeat_exists (0) - L9
specialize beta_repeat_exists (A) - L10
apply beta_repeat_exists
03Separate the logical casesL11–12
04Use earlier factsL13–22
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L13
specialize prime_field_polynomial_aligned_add_from_common (p) - L14
specialize prime_field_polynomial_aligned_add_from_common (ab) - L15
specialize prime_field_polynomial_aligned_add_from_common (ac) - L16
specialize prime_field_polynomial_aligned_add_from_common (A) - L17
specialize prime_field_polynomial_aligned_add_from_common (0) - L18
specialize prime_field_polynomial_aligned_add_from_common (0) - L19
specialize prime_field_polynomial_aligned_add_from_common (0) - L20
specialize prime_field_polynomial_aligned_add_from_common (ab) - L21
specialize prime_field_polynomial_aligned_add_from_common (ac) - L22
specialize prime_field_polynomial_aligned_add_from_common (A)
05Use earlier factsL23–32
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L23
specialize prime_field_polynomial_aligned_add_from_common (ab) - L24
specialize prime_field_polynomial_aligned_add_from_common (ac) - L25
specialize prime_field_polynomial_aligned_add_from_common (x) - L26
specialize prime_field_polynomial_aligned_add_from_common (x1) - L27
specialize prime_field_polynomial_aligned_add_from_common (ab) - L28
specialize prime_field_polynomial_aligned_add_from_common (ac) - L29
specialize prime_field_polynomial_aligned_add_from_common (A) - L30
apply prime_field_polynomial_aligned_add_from_common - L31
exact ha - L32
specialize matrix_rank_bounded_prefix_empty (0)
06Use earlier factsL33–36
07Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
split
08Use earlier factsL38–47
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
specialize prime_field_polynomial_power_coefficient_functional (ab) - L39
specialize prime_field_polynomial_power_coefficient_functional (ac) - L40
specialize prime_field_polynomial_power_coefficient_functional (A) - L41
apply prime_field_polynomial_power_coefficient_functional - L42
specialize prime_field_polynomial_equivalent_symmetric (x) - L43
specialize prime_field_polynomial_equivalent_symmetric (x1) - L44
specialize prime_field_polynomial_equivalent_symmetric (A) - L45
specialize prime_field_polynomial_equivalent_symmetric (0) - L46
specialize prime_field_polynomial_equivalent_symmetric (0) - L47
specialize prime_field_polynomial_equivalent_symmetric (0)
09Use earlier factsL48–57
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L48
apply prime_field_polynomial_equivalent_symmetric - L49
specialize prime_field_polynomial_zero_prefix_equivalent_empty (x) - L50
specialize prime_field_polynomial_zero_prefix_equivalent_empty (x1) - L51
specialize prime_field_polynomial_zero_prefix_equivalent_empty (A) - L52
apply prime_field_polynomial_zero_prefix_equivalent_empty - L53
exact hz_witness_witness - L54
specialize prime_field_polynomial_add_zero_right (p) - L55
specialize prime_field_polynomial_add_zero_right (ab) - L56
specialize prime_field_polynomial_add_zero_right (ac) - L57
specialize prime_field_polynomial_add_zero_right (x)
10Use earlier factsL58–67
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L58
specialize prime_field_polynomial_add_zero_right (x1) - L59
specialize prime_field_polynomial_add_zero_right (A) - L60
apply prime_field_polynomial_add_zero_right - L61
exact hp - L62
exact ha - L63
exact hz_witness_witness - L64
specialize prime_field_polynomial_power_coefficient_functional (ab) - L65
specialize prime_field_polynomial_power_coefficient_functional (ac) - L66
specialize prime_field_polynomial_power_coefficient_functional (A) - L67
apply prime_field_polynomial_power_coefficient_functional
Original defined command ledger · 67 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro A - 0005
intro hp - 0006
intro ha - 0007
have hz : ∃ zb. ∃ zc. Repeat(zb,zc,0,A) - 0008
specialize beta_repeat_exists (0) - 0009
specialize beta_repeat_exists (A) - 0010
apply beta_repeat_exists - 0011
cases hz - 0012
cases hz_witness - 0013
specialize prime_field_polynomial_aligned_add_from_common (p) - 0014
specialize prime_field_polynomial_aligned_add_from_common (ab) - 0015
specialize prime_field_polynomial_aligned_add_from_common (ac) - 0016
specialize prime_field_polynomial_aligned_add_from_common (A) - 0017
specialize prime_field_polynomial_aligned_add_from_common (0) - 0018
specialize prime_field_polynomial_aligned_add_from_common (0) - 0019
specialize prime_field_polynomial_aligned_add_from_common (0) - 0020
specialize prime_field_polynomial_aligned_add_from_common (ab) - 0021
specialize prime_field_polynomial_aligned_add_from_common (ac) - 0022
specialize prime_field_polynomial_aligned_add_from_common (A) - 0023
specialize prime_field_polynomial_aligned_add_from_common (ab) - 0024
specialize prime_field_polynomial_aligned_add_from_common (ac) - 0025
specialize prime_field_polynomial_aligned_add_from_common (x) - 0026
specialize prime_field_polynomial_aligned_add_from_common (x1) - 0027
specialize prime_field_polynomial_aligned_add_from_common (ab) - 0028
specialize prime_field_polynomial_aligned_add_from_common (ac) - 0029
specialize prime_field_polynomial_aligned_add_from_common (A) - 0030
apply prime_field_polynomial_aligned_add_from_common - 0031
exact ha - 0032
specialize matrix_rank_bounded_prefix_empty (0) - 0033
specialize matrix_rank_bounded_prefix_empty (0) - 0034
specialize matrix_rank_bounded_prefix_empty (p) - 0035
apply matrix_rank_bounded_prefix_empty - 0036
exact ha - 0037
split - 0038
specialize prime_field_polynomial_power_coefficient_functional (ab) - 0039
specialize prime_field_polynomial_power_coefficient_functional (ac) - 0040
specialize prime_field_polynomial_power_coefficient_functional (A) - 0041
apply prime_field_polynomial_power_coefficient_functional - 0042
specialize prime_field_polynomial_equivalent_symmetric (x) - 0043
specialize prime_field_polynomial_equivalent_symmetric (x1) - 0044
specialize prime_field_polynomial_equivalent_symmetric (A) - 0045
specialize prime_field_polynomial_equivalent_symmetric (0) - 0046
specialize prime_field_polynomial_equivalent_symmetric (0) - 0047
specialize prime_field_polynomial_equivalent_symmetric (0) - 0048
apply prime_field_polynomial_equivalent_symmetric - 0049
specialize prime_field_polynomial_zero_prefix_equivalent_empty (x) - 0050
specialize prime_field_polynomial_zero_prefix_equivalent_empty (x1) - 0051
specialize prime_field_polynomial_zero_prefix_equivalent_empty (A) - 0052
apply prime_field_polynomial_zero_prefix_equivalent_empty - 0053
exact hz_witness_witness - 0054
specialize prime_field_polynomial_add_zero_right (p) - 0055
specialize prime_field_polynomial_add_zero_right (ab) - 0056
specialize prime_field_polynomial_add_zero_right (ac) - 0057
specialize prime_field_polynomial_add_zero_right (x) - 0058
specialize prime_field_polynomial_add_zero_right (x1) - 0059
specialize prime_field_polynomial_add_zero_right (A) - 0060
apply prime_field_polynomial_add_zero_right - 0061
exact hp - 0062
exact ha - 0063
exact hz_witness_witness - 0064
specialize prime_field_polynomial_power_coefficient_functional (ab) - 0065
specialize prime_field_polynomial_power_coefficient_functional (ac) - 0066
specialize prime_field_polynomial_power_coefficient_functional (A) - 0067
apply prime_field_polynomial_power_coefficient_functional