This checkpoint constructs prime-order fields (k=1), with genuine finite arithmetic tables, cardinality, and characteristic. Inversion is proved only for nonzero elements; the table's zero entry is a zero-to-zero convention. G091 for every prime power p^k, with an irreducible polynomial of degree k, remains open. No extension-field construction or G091 closure is claimed.
Exact theorem in conservative defined notation
∀ p. ∀ a. ∀ b. ∀ v. Lt(b,p) → FpMulGridValue(p,a · p + b,v) → FpMul(p,a,b,v)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 36 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.
01Fix variables and assumptionsL1–6
02Separate the logical casesL7–12
03Establish heqL13–22
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply division remainder unique.
- L13
have heq : x = a /\ x1 = b - L14
specialize division_remainder_unique (p) - L15
specialize division_remainder_unique (a * p + b) - L16
specialize division_remainder_unique (x) - L17
specialize division_remainder_unique (x1) - L18
specialize division_remainder_unique (a) - L19
specialize division_remainder_unique (b) - L20
apply division_remainder_unique - L21
specialize mul_comm x - L22
specialize mul_comm p
04Calculate and transport equalitiesL23–23
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L23
rewrite mul_comm at hg_witness_witness_left
05Use earlier factsL24–27
06Calculate and transport equalitiesL28–29
07Use earlier factsL30–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L30
exact hb
08Separate the logical casesL31–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L31
cases heq
09Calculate and transport equalitiesL32–35
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
10Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact hg_witness_witness_right
Original defined command ledger · 36 lines
- 0001
intro p - 0002
intro a - 0003
intro b - 0004
intro v - 0005
intro hb - 0006
intro hg - 0007
cases hg - 0008
cases hg_witness - 0009
cases hg_witness_witness - 0010
cases hg_witness_witness_right - 0011
cases hg_witness_witness_right_right - 0012
cases hg_witness_witness_right_right_right - 0013
have heq : x = a /\ x1 = b - 0014
specialize division_remainder_unique (p) - 0015
specialize division_remainder_unique (a * p + b) - 0016
specialize division_remainder_unique (x) - 0017
specialize division_remainder_unique (x1) - 0018
specialize division_remainder_unique (a) - 0019
specialize division_remainder_unique (b) - 0020
apply division_remainder_unique - 0021
specialize mul_comm x - 0022
specialize mul_comm p - 0023
rewrite mul_comm at hg_witness_witness_left - 0024
exact hg_witness_witness_left - 0025
exact hg_witness_witness_right_right_left - 0026
specialize mul_comm a - 0027
specialize mul_comm p - 0028
rewrite mul_comm - 0029
refl - 0030
exact hb - 0031
cases heq - 0032
rewrite heq_left at hg_witness_witness_right - 0033
rewrite heq_left at hg_witness_witness_right - 0034
rewrite heq_right at hg_witness_witness_right - 0035
rewrite heq_right at hg_witness_witness_right - 0036
exact hg_witness_witness_right