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. ∀ a. Prime(p) → Lt(a,p) → ∃ x. FpZeroExtendedInv(p,a,x)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 38 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 (2)
01Fix variables and assumptionsL1–4
02Establish hcasesL5–8
03Separate the logical casesL9–9
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L9
cases hcases
04Construct an explicit witnessL10–10
Supply the displayed value, then prove that it has the required property.
- L10
exists 0
05Separate the logical casesL11–11
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L11
split
06Use earlier factsL12–12
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L12
exact ha
07Separate the logical casesL13–13
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L13
split
08Use earlier factsL14–16
09Separate the logical casesL17–18
10Use earlier factsL19–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L19
exact hcases_left
11Calculate and transport equalitiesL20–20
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L20
refl
12Establish hiL21–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field inverse exists.
13Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
cases hi
14Construct an explicit witnessL29–29
Supply the displayed value, then prove that it has the required property.
- L29
exists x
15Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
split
16Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact ha
17Separate the logical casesL32–35
18Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact hi_witness_right_right_left
19Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
right
20Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
exact hi_witness
Original defined command ledger · 38 lines
- 0001
intro p - 0002
intro a - 0003
intro hp - 0004
intro ha - 0005
have hcases : a = 0 \/ ~(a = 0) - 0006
specialize eq_decidable (a) - 0007
specialize eq_decidable (0) - 0008
apply eq_decidable - 0009
cases hcases - 0010
exists 0 - 0011
split - 0012
exact ha - 0013
split - 0014
specialize prime_field_zero_below_prime (p) - 0015
apply prime_field_zero_below_prime - 0016
exact hp - 0017
left - 0018
split - 0019
exact hcases_left - 0020
refl - 0021
have hi : ∃ b. FpInv(p,a,b) - 0022
specialize prime_field_inverse_exists (p) - 0023
specialize prime_field_inverse_exists (a) - 0024
apply prime_field_inverse_exists - 0025
exact hp - 0026
exact ha - 0027
exact hcases_right - 0028
cases hi - 0029
exists x - 0030
split - 0031
exact ha - 0032
split - 0033
cases hi_witness - 0034
cases hi_witness_right - 0035
cases hi_witness_right_right - 0036
exact hi_witness_right_right_left - 0037
right - 0038
exact hi_witness