Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Inputs are genuine canonical signed-pair codes, not arbitrary naturals. Products start at the actual Gaussian identity, whose code is six. The factor list uses the proved prime-divisor property; irreducibility alone is not silently renamed primality. Uniqueness supplies equal lengths, a bounded bijection, and an actual unit at each match, including repeated factors. Units have empty factorizations and zero is excluded. Sorted primary representatives, Gaussian prime classification, and Eisenstein factorization are separate targets.
Exact theorem in conservative defined notation
∀ a. ZPairValid(a) → GMul(a,6,a)
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–2
02Establish hAL3–6
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian valid has representation.
- L3
have hA : ∃ rp. ∃ rn. ∃ ip. ∃ inn. ZPairRep(a,rp,rn,ip,inn)Definitions: ZPairRep(a,rp,rn,ip,inn)Original native command in the exact edition - L4
specialize gaussian_valid_has_representation (a) - L5
apply gaussian_valid_has_representation - L6
exact hv
03Separate the logical casesL7–10
04Use earlier factsL11–20
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L11
specialize gaussian_multiply_of_representations (a) - L12
specialize gaussian_multiply_of_representations (6) - L13
specialize gaussian_multiply_of_representations (a) - L14
specialize gaussian_multiply_of_representations (x) - L15
specialize gaussian_multiply_of_representations (x1) - L16
specialize gaussian_multiply_of_representations (x2) - L17
specialize gaussian_multiply_of_representations (x3) - L18
specialize gaussian_multiply_of_representations (1) - L19
specialize gaussian_multiply_of_representations (0) - L20
specialize gaussian_multiply_of_representations (0)
05Use earlier factsL21–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
specialize gaussian_multiply_of_representations (0) - L22
apply gaussian_multiply_of_representations - L23
exact hA_witness_witness_witness_witness - L24
exact gaussian_one_representation - L25
specialize gaussian_representation_integer_transport (a) - L26
specialize gaussian_representation_integer_transport (x) - L27
specialize gaussian_representation_integer_transport (x1) - L28
specialize gaussian_representation_integer_transport (x2) - L29
specialize gaussian_representation_integer_transport (x3) - L30
specialize gaussian_representation_integer_transport (((((((x) * (1))) + (((x1) * (0))))) + (((((x2) * (0))) + (((x3) * (0)))))))
06Use earlier factsL31–34
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (1))))) + (((((x2) * (0))) + (((x3) * (0))))))) - L32
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (0))))) + (((((x2) * (1))) + (((x3) * (0))))))) - L33
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (0))))) + (((((x2) * (0))) + (((x3) * (1))))))) - L34
apply gaussian_representation_integer_transport
07Separate the logical casesL35–35
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L35
split
08Calculate and transport equalitiesL36–37
09Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
exact hA_witness_witness_witness_witness
Original defined command ledger · 38 lines
- 0001
intro a - 0002
intro hv - 0003
have hA : ∃ rp. ∃ rn. ∃ ip. ∃ inn. ZPairRep(a,rp,rn,ip,inn) - 0004
specialize gaussian_valid_has_representation (a) - 0005
apply gaussian_valid_has_representation - 0006
exact hv - 0007
cases hA - 0008
cases hA_witness - 0009
cases hA_witness_witness - 0010
cases hA_witness_witness_witness - 0011
specialize gaussian_multiply_of_representations (a) - 0012
specialize gaussian_multiply_of_representations (6) - 0013
specialize gaussian_multiply_of_representations (a) - 0014
specialize gaussian_multiply_of_representations (x) - 0015
specialize gaussian_multiply_of_representations (x1) - 0016
specialize gaussian_multiply_of_representations (x2) - 0017
specialize gaussian_multiply_of_representations (x3) - 0018
specialize gaussian_multiply_of_representations (1) - 0019
specialize gaussian_multiply_of_representations (0) - 0020
specialize gaussian_multiply_of_representations (0) - 0021
specialize gaussian_multiply_of_representations (0) - 0022
apply gaussian_multiply_of_representations - 0023
exact hA_witness_witness_witness_witness - 0024
exact gaussian_one_representation - 0025
specialize gaussian_representation_integer_transport (a) - 0026
specialize gaussian_representation_integer_transport (x) - 0027
specialize gaussian_representation_integer_transport (x1) - 0028
specialize gaussian_representation_integer_transport (x2) - 0029
specialize gaussian_representation_integer_transport (x3) - 0030
specialize gaussian_representation_integer_transport (((((((x) * (1))) + (((x1) * (0))))) + (((((x2) * (0))) + (((x3) * (0))))))) - 0031
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (1))))) + (((((x2) * (0))) + (((x3) * (0))))))) - 0032
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (0))))) + (((((x2) * (1))) + (((x3) * (0))))))) - 0033
specialize gaussian_representation_integer_transport (((((((x) * (0))) + (((x1) * (0))))) + (((((x2) * (0))) + (((x3) * (1))))))) - 0034
apply gaussian_representation_integer_transport - 0035
split - 0036
simp [zero_add] - 0037
simp [zero_add] - 0038
exact hA_witness_witness_witness_witness