Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
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. Prime(p) → ∃ x. ∃ y. ∃ z. ∃ n. ∃ m. ∃ k. ∃ i. ∃ j. FpOperationTables(p,x,y,z,n,m,k,i,j)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 41 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 (4)
01Fix variables and assumptionsL1–2
02Establish haddL3–6
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field add table exists.
- L3
have hadd : ∃ b. ∃ c. FpAddPrefix(p,b,c,p · p)Definitions: FpAddPrefix(p,b,c,p · p)Original native command in the exact edition - L4
specialize prime_field_add_table_exists (p) - L5
apply prime_field_add_table_exists - L6
exact hp
03Separate the logical casesL7–8
04Establish hmultiplyL9–12
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field multiply table exists.
- L9
have hmultiply : ∃ b. ∃ c. FpMulPrefix(p,b,c,p · p)Definitions: FpMulPrefix(p,b,c,p · p)Original native command in the exact edition - L10
specialize prime_field_multiply_table_exists (p) - L11
apply prime_field_multiply_table_exists - L12
exact hp
05Separate the logical casesL13–14
06Establish hnegateL15–18
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field negate table exists.
- L15
have hnegate : ∃ b. ∃ c. FpNegPrefix(p,b,c,p)Definitions: FpNegPrefix(p,b,c,p)Original native command in the exact edition - L16
specialize prime_field_negate_table_exists (p) - L17
apply prime_field_negate_table_exists - L18
exact hp
07Separate the logical casesL19–20
08Establish hinverseL21–24
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field inverse table exists.
- L21
have hinverse : ∃ b. ∃ c. FpInvPrefix(p,b,c,p)Definitions: FpInvPrefix(p,b,c,p)Original native command in the exact edition - L22
specialize prime_field_inverse_table_exists (p) - L23
apply prime_field_inverse_table_exists - L24
exact hp
09Separate the logical casesL25–26
10Construct an explicit witnessL27–34
11Separate the logical casesL35–35
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L35
split
12Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact hadd_witness_witness
13Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
split
14Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
exact hmultiply_witness_witness
15Separate the logical casesL39–39
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L39
split
Original defined command ledger · 41 lines
- 0001
intro p - 0002
intro hp - 0003
have hadd : ∃ b. ∃ c. FpAddPrefix(p,b,c,p · p) - 0004
specialize prime_field_add_table_exists (p) - 0005
apply prime_field_add_table_exists - 0006
exact hp - 0007
cases hadd - 0008
cases hadd_witness - 0009
have hmultiply : ∃ b. ∃ c. FpMulPrefix(p,b,c,p · p) - 0010
specialize prime_field_multiply_table_exists (p) - 0011
apply prime_field_multiply_table_exists - 0012
exact hp - 0013
cases hmultiply - 0014
cases hmultiply_witness - 0015
have hnegate : ∃ b. ∃ c. FpNegPrefix(p,b,c,p) - 0016
specialize prime_field_negate_table_exists (p) - 0017
apply prime_field_negate_table_exists - 0018
exact hp - 0019
cases hnegate - 0020
cases hnegate_witness - 0021
have hinverse : ∃ b. ∃ c. FpInvPrefix(p,b,c,p) - 0022
specialize prime_field_inverse_table_exists (p) - 0023
apply prime_field_inverse_table_exists - 0024
exact hp - 0025
cases hinverse - 0026
cases hinverse_witness - 0027
exists x - 0028
exists x1 - 0029
exists x2 - 0030
exists x3 - 0031
exists x4 - 0032
exists x5 - 0033
exists x6 - 0034
exists x7 - 0035
split - 0036
exact hadd_witness_witness - 0037
split - 0038
exact hmultiply_witness_witness - 0039
split - 0040
exact hnegate_witness_witness - 0041
exact hinverse_witness_witness