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
∀ z. ∀ D. ∀ N. GNormBoundedCoordinates(z,D) → Le(D,N) → GNormBoundedCoordinates(z,N)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 32 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–5
02Separate the logical casesL6–9
03Establish hscaleL10–15
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul le mul left.
- L10
have hscale : Le(2 · D,2 · N)Definitions: Le(2 · D,2 · N)Original native command in the exact edition - L11
specialize mul_le_mul_left (D) - L12
specialize mul_le_mul_left (N) - L13
specialize mul_le_mul_left (2) - L14
apply mul_le_mul_left - L15
exact hb
04Construct an explicit witnessL16–17
05Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
split
06Use earlier factsL19–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L19
exact hc_witness_witness_left
07Separate the logical casesL20–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L20
split
08Use earlier factsL21–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 32 lines
- 0001
intro z - 0002
intro D - 0003
intro N - 0004
intro hc - 0005
intro hb - 0006
cases hc - 0007
cases hc_witness - 0008
cases hc_witness_witness - 0009
cases hc_witness_witness_right - 0010
have hscale : Le(2 · D,2 · N) - 0011
specialize mul_le_mul_left (D) - 0012
specialize mul_le_mul_left (N) - 0013
specialize mul_le_mul_left (2) - 0014
apply mul_le_mul_left - 0015
exact hb - 0016
exists (x) - 0017
exists (x1) - 0018
split - 0019
exact hc_witness_witness_left - 0020
split - 0021
specialize le_trans (x) - 0022
specialize le_trans (2*D) - 0023
specialize le_trans (2*N) - 0024
apply le_trans - 0025
exact hc_witness_witness_right_left - 0026
exact hscale - 0027
specialize le_trans (x1) - 0028
specialize le_trans (2*D) - 0029
specialize le_trans (2*N) - 0030
apply le_trans - 0031
exact hc_witness_witness_right_right - 0032
exact hscale