PX001A

prime_field_polynomial_left_pad_power_coefficient

Adding actual leading zeros preserves each formal power coefficient, including the zero coefficients above the old leading power.

Alpha v34 checked-use · first admitted v33 · independently kernel and Lean verified; not Stable

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. ∀ k. ∀ a. PolynomialLeftPad(b,c,L,t,d,e)PolynomialPowerCoefficient(b,c,L,k,a)PolynomialPowerCoefficient(d,e,t + L,k,a)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall b c L t d e k a. (((forall pfp_repeat_index_pad_power_graphzeros. (exists pfa_gap_pad_power_graphzerosindex. pfa_gap_pad_power_graphzerosindex + S (pfp_repeat_index_pad_power_graphzeros) = (t)) -> (((exists ff_h_pfp_pad_power_graphzerosentry. ff_h_pfp_pad_power_graphzerosentry + S (0) = S ((S (pfp_repeat_index_pad_power_graphzeros)) * e)) /\ exists ff_q_pfp_pad_power_graphzerosentry. d = ff_q_pfp_pad_power_graphzerosentry * S ((S (pfp_repeat_index_pad_power_graphzeros)) * e) + (0)))) /\ ((forall pfrep_index_pad_power_graph pfrep_value_pad_power_graph. (exists pfa_gap_pad_power_graphbound. pfa_gap_pad_power_graphbound + S (pfrep_index_pad_power_graph) = (L)) -> (((exists ff_h_pfp_pad_power_graphinput. ff_h_pfp_pad_power_graphinput + S (pfrep_value_pad_power_graph) = S ((S (pfrep_index_pad_power_graph)) * c)) /\ exists ff_q_pfp_pad_power_graphinput. b = ff_q_pfp_pad_power_graphinput * S ((S (pfrep_index_pad_power_graph)) * c) + (pfrep_value_pad_power_graph))) -> (((exists ff_h_pfp_pad_power_graphoutput. ff_h_pfp_pad_power_graphoutput + S (pfrep_value_pad_power_graph) = S ((S ((t)+pfrep_index_pad_power_graph)) * e)) /\ exists ff_q_pfp_pad_power_graphoutput. d = ff_q_pfp_pad_power_graphoutput * S ((S ((t)+pfrep_index_pad_power_graph)) * e) + (pfrep_value_pad_power_graph))))))) -> ((exists pfrep_position_pad_power_source. ((pfrep_position_pad_power_source+S (k)=(L)) /\ ((((exists ff_h_pfp_pad_power_sourceentry. ff_h_pfp_pad_power_sourceentry + S (a) = S ((S (pfrep_position_pad_power_source)) * c)) /\ exists ff_q_pfp_pad_power_sourceentry. b = ff_q_pfp_pad_power_sourceentry * S ((S (pfrep_position_pad_power_source)) * c) + (a)))))) \/ (((exists pfrep_gap_pad_power_sourceoutside. pfrep_gap_pad_power_sourceoutside+(L)=(k)) /\ (((a)=0))))) -> ((exists pfrep_position_pad_power_result. ((pfrep_position_pad_power_result+S (k)=(t+L)) /\ ((((exists ff_h_pfp_pad_power_resultentry. ff_h_pfp_pad_power_resultentry + S (a) = S ((S (pfrep_position_pad_power_result)) * e)) /\ exists ff_q_pfp_pad_power_resultentry. d = ff_q_pfp_pad_power_resultentry * S ((S (pfrep_position_pad_power_result)) * e) + (a)))))) \/ (((exists pfrep_gap_pad_power_resultoutside. pfrep_gap_pad_power_resultoutside+(t+L)=(k)) /\ (((a)=0)))))

Complete tactic proof in conservative notation

All 56 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

56 script commands · 18 reading checkpoints · 1 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (2)
01Fix variables and assumptionsL1–10

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro b
  2. L2
    intro c
  3. L3
    intro L
  4. L4
    intro t
  5. L5
    intro d
  6. L6
    intro e
  7. L7
    intro k
  8. L8
    intro a
  9. L9
    intro h
  10. L10
    intro ha
02Separate the logical casesL11–15

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L11
    cases h
  2. L12
    cases ha
  3. L13
    cases ha_left
  4. L14
    cases ha_left_witness
  5. L15
    left
03Construct an explicit witnessL16–16

Supply the displayed value, then prove that it has the required property.

  1. L16
    exists t+x
04Separate the logical casesL17–17

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L17
    split
05Calculate and transport equalitiesL18–18

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L18
    trans t+(x+S k)
06Use earlier factsL19–19

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L19
    apply add_assoc
07Calculate and transport equalitiesL20–21

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L20
    rewrite ha_left_witness_left
  2. L21
    refl
08Use earlier factsL22–30

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L22
    specialize h_right (x)
  2. L23
    specialize h_right (a)
  3. L24
    apply h_right
  4. L25
    specialize prime_field_polynomial_power_index_bound (x)
  5. L26
    specialize prime_field_polynomial_power_index_bound (k)
  6. L27
    specialize prime_field_polynomial_power_index_bound (L)
  7. L28
    apply prime_field_polynomial_power_index_bound
  8. L29
    exact ha_left_witness_left
  9. L30
    exact ha_left_witness_right
09Separate the logical casesL31–31

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L31
    cases ha_right
10Establish hoL32–35

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le or lt.

  1. L32
    have ho : Le(t + L,k) ∨ Lt(k,t + L)Definitions: Le(t + L,k)Lt(k,t + L)Original native command in the exact edition
  2. L33
    specialize le_or_lt (t+L)
  3. L34
    specialize le_or_lt (k)
  4. L35
    apply le_or_lt
11Separate the logical casesL36–38

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L36
    cases ho
  2. L37
    right
  3. L38
    split
12Use earlier factsL39–40

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L39
    exact ho_left
  2. L40
    exact ha_right_right
13Separate the logical casesL41–42

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L41
    cases ho_right
  2. L42
    left
14Construct an explicit witnessL43–43

Supply the displayed value, then prove that it has the required property.

  1. L43
    exists x
15Separate the logical casesL44–44

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L44
    split
16Use earlier factsL45–45

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L45
    exact ho_right_witness
17Calculate and transport equalitiesL46–47

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L46
    rewrite ha_right_right
  2. L47
    rewrite ha_right_right
18Use earlier factsL48–56

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L48
    specialize h_left (x)
  2. L49
    apply h_left
  3. L50
    specialize prime_field_polynomial_power_index_before_padding (t)
  4. L51
    specialize prime_field_polynomial_power_index_before_padding (L)
  5. L52
    specialize prime_field_polynomial_power_index_before_padding (x)
  6. L53
    specialize prime_field_polynomial_power_index_before_padding (k)
  7. L54
    apply prime_field_polynomial_power_index_before_padding
  8. L55
    exact ho_right_witness
  9. L56
    exact ha_right_left

Library-wide reading audit

Original defined command ledger · 56 lines
  1. 0001intro b
  2. 0002intro c
  3. 0003intro L
  4. 0004intro t
  5. 0005intro d
  6. 0006intro e
  7. 0007intro k
  8. 0008intro a
  9. 0009intro h
  10. 0010intro ha
  11. 0011cases h
  12. 0012cases ha
  13. 0013cases ha_left
  14. 0014cases ha_left_witness
  15. 0015left
  16. 0016exists t+x
  17. 0017split
  18. 0018trans t+(x+S k)
  19. 0019apply add_assoc
  20. 0020rewrite ha_left_witness_left
  21. 0021refl
  22. 0022specialize h_right (x)
  23. 0023specialize h_right (a)
  24. 0024apply h_right
  25. 0025specialize prime_field_polynomial_power_index_bound (x)
  26. 0026specialize prime_field_polynomial_power_index_bound (k)
  27. 0027specialize prime_field_polynomial_power_index_bound (L)
  28. 0028apply prime_field_polynomial_power_index_bound
  29. 0029exact ha_left_witness_left
  30. 0030exact ha_left_witness_right
  31. 0031cases ha_right
  32. 0032have ho : Le(t + L,k)Lt(k,t + L)
  33. 0033specialize le_or_lt (t+L)
  34. 0034specialize le_or_lt (k)
  35. 0035apply le_or_lt
  36. 0036cases ho
  37. 0037right
  38. 0038split
  39. 0039exact ho_left
  40. 0040exact ha_right_right
  41. 0041cases ho_right
  42. 0042left
  43. 0043exists x
  44. 0044split
  45. 0045exact ho_right_witness
  46. 0046rewrite ha_right_right
  47. 0047rewrite ha_right_right
  48. 0048specialize h_left (x)
  49. 0049apply h_left
  50. 0050specialize prime_field_polynomial_power_index_before_padding (t)
  51. 0051specialize prime_field_polynomial_power_index_before_padding (L)
  52. 0052specialize prime_field_polynomial_power_index_before_padding (x)
  53. 0053specialize prime_field_polynomial_power_index_before_padding (k)
  54. 0054apply prime_field_polynomial_power_index_before_padding
  55. 0055exact ho_right_witness
  56. 0056exact ha_right_left