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.
A floor quotient in the fundamental parallelogram already gives the required strict norm decrease; global nearest-point optimality is not asserted. The shared carrier is identical to the Gaussian carrier, but the multiplication law and norm are different. Eisenstein gcd, factorization, and prime classification remain separate targets.
Exact theorem in conservative defined notation
∀ ac. ∀ bc. ∀ qc. ∀ rc. ∀ a. ∀ b. ∀ c. ∀ d. ∀ e. ∀ f. ∀ g. ∀ h. ∀ i. ∀ j. ∀ k. ∀ l. ∀ o. ∀ p. ∀ s. ∀ t. ZPairRep(ac,a,b,c,d) → ZPairRep(bc,e,f,g,h) → ZPairRep(qc,i,j,k,l) → ZPairRep(rc,o,p,s,t) → e · i + f · j + (g · l + h · k) + o + b = a + (e · j + f · i + (g · k + h · l) + p) ∧ e · k + f · l + (g · i + h · j) + (g · l + h · k) + s + d = c + (e · l + f · k + (g · j + h · i) + (g · k + h · l) + t) → EDivRem(ac,bc,qc,rc)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 84 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 (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–25
04Establish hproductL26–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian representation exists.
- L26
have hproduct : ∃ pc. ZPairRep(pc,e · i + f · j + (g · l + h · k),e · j + f · i + (g · k + h · l),e · k + f · l + (g · i + h · j) + (g · l + h · k),e · l + f · k + (g · j + h · i) + (g · k + h · l))Definitions: ZPairRep(pc,e · i + f · j + (g · l + h · k),e · j + f · i + (g · k + h · l),e · k + f · l + (g · i + h · j) + (g · l + h · k),e · l + f · k + (g · j + h · i) + (g · k + h · l))Original native command in the exact edition - L27
specialize gaussian_representation_exists ((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k)))))) - L28
specialize gaussian_representation_exists ((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l)))))) - L29
specialize gaussian_representation_exists ((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k)))))) - L30
specialize gaussian_representation_exists ((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l)))))) - L31
apply gaussian_representation_exists
05Separate the logical casesL32–32
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L32
cases hproduct
06Construct an explicit witnessL33–33
Supply the displayed value, then prove that it has the required property.
- L33
exists x
07Separate the logical casesL34–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L34
split
08Use earlier factsL35–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L35
specialize eisenstein_multiply_of_representations bc - L36
specialize eisenstein_multiply_of_representations qc - L37
specialize eisenstein_multiply_of_representations x - L38
specialize eisenstein_multiply_of_representations e - L39
specialize eisenstein_multiply_of_representations f - L40
specialize eisenstein_multiply_of_representations g - L41
specialize eisenstein_multiply_of_representations h - L42
specialize eisenstein_multiply_of_representations i - L43
specialize eisenstein_multiply_of_representations j - L44
specialize eisenstein_multiply_of_representations k
09Use earlier factsL45–54
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
specialize eisenstein_multiply_of_representations l - L46
apply eisenstein_multiply_of_representations - L47
exact hsecond - L48
exact hquotient - L49
exact hproduct_witness - L50
specialize gaussian_add_of_representations x - L51
specialize gaussian_add_of_representations rc - L52
specialize gaussian_add_of_representations ac - L53
specialize gaussian_add_of_representations ((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k)))))) - L54
specialize gaussian_add_of_representations ((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l))))))
10Use earlier factsL55–64
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
specialize gaussian_add_of_representations ((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k)))))) - L56
specialize gaussian_add_of_representations ((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l)))))) - L57
specialize gaussian_add_of_representations o - L58
specialize gaussian_add_of_representations p - L59
specialize gaussian_add_of_representations s - L60
specialize gaussian_add_of_representations t - L61
apply gaussian_add_of_representations - L62
exact hproduct_witness - L63
exact hremainder - L64
specialize gaussian_representation_integer_transport ac
11Use earlier factsL65–74
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L65
specialize gaussian_representation_integer_transport a - L66
specialize gaussian_representation_integer_transport b - L67
specialize gaussian_representation_integer_transport c - L68
specialize gaussian_representation_integer_transport d - L69
specialize gaussian_representation_integer_transport ((((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k))))))) + (o)) - L70
specialize gaussian_representation_integer_transport ((((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l))))))) + (p)) - L71
specialize gaussian_representation_integer_transport ((((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k))))))) + (s)) - L72
specialize gaussian_representation_integer_transport ((((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l))))))) + (t)) - L73
apply gaussian_representation_integer_transport - L74
specialize gaussian_equal_symmetric ((((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k))))))) + (o))
12Use earlier factsL75–84
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L75
specialize gaussian_equal_symmetric ((((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l))))))) + (p)) - L76
specialize gaussian_equal_symmetric ((((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k))))))) + (s)) - L77
specialize gaussian_equal_symmetric ((((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l))))))) + (t)) - L78
specialize gaussian_equal_symmetric a - L79
specialize gaussian_equal_symmetric b - L80
specialize gaussian_equal_symmetric c - L81
specialize gaussian_equal_symmetric d - L82
apply gaussian_equal_symmetric - L83
exact hequation - L84
exact hfirst
Original defined command ledger · 84 lines
- 0001
intro ac - 0002
intro bc - 0003
intro qc - 0004
intro rc - 0005
intro a - 0006
intro b - 0007
intro c - 0008
intro d - 0009
intro e - 0010
intro f - 0011
intro g - 0012
intro h - 0013
intro i - 0014
intro j - 0015
intro k - 0016
intro l - 0017
intro o - 0018
intro p - 0019
intro s - 0020
intro t - 0021
intro hfirst - 0022
intro hsecond - 0023
intro hquotient - 0024
intro hremainder - 0025
intro hequation - 0026
have hproduct : ∃ pc. ZPairRep(pc,e · i + f · j + (g · l + h · k),e · j + f · i + (g · k + h · l),e · k + f · l + (g · i + h · j) + (g · l + h · k),e · l + f · k + (g · j + h · i) + (g · k + h · l)) - 0027
specialize gaussian_representation_exists ((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k)))))) - 0028
specialize gaussian_representation_exists ((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l)))))) - 0029
specialize gaussian_representation_exists ((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k)))))) - 0030
specialize gaussian_representation_exists ((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l)))))) - 0031
apply gaussian_representation_exists - 0032
cases hproduct - 0033
exists x - 0034
split - 0035
specialize eisenstein_multiply_of_representations bc - 0036
specialize eisenstein_multiply_of_representations qc - 0037
specialize eisenstein_multiply_of_representations x - 0038
specialize eisenstein_multiply_of_representations e - 0039
specialize eisenstein_multiply_of_representations f - 0040
specialize eisenstein_multiply_of_representations g - 0041
specialize eisenstein_multiply_of_representations h - 0042
specialize eisenstein_multiply_of_representations i - 0043
specialize eisenstein_multiply_of_representations j - 0044
specialize eisenstein_multiply_of_representations k - 0045
specialize eisenstein_multiply_of_representations l - 0046
apply eisenstein_multiply_of_representations - 0047
exact hsecond - 0048
exact hquotient - 0049
exact hproduct_witness - 0050
specialize gaussian_add_of_representations x - 0051
specialize gaussian_add_of_representations rc - 0052
specialize gaussian_add_of_representations ac - 0053
specialize gaussian_add_of_representations ((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k)))))) - 0054
specialize gaussian_add_of_representations ((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l)))))) - 0055
specialize gaussian_add_of_representations ((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k)))))) - 0056
specialize gaussian_add_of_representations ((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l)))))) - 0057
specialize gaussian_add_of_representations o - 0058
specialize gaussian_add_of_representations p - 0059
specialize gaussian_add_of_representations s - 0060
specialize gaussian_add_of_representations t - 0061
apply gaussian_add_of_representations - 0062
exact hproduct_witness - 0063
exact hremainder - 0064
specialize gaussian_representation_integer_transport ac - 0065
specialize gaussian_representation_integer_transport a - 0066
specialize gaussian_representation_integer_transport b - 0067
specialize gaussian_representation_integer_transport c - 0068
specialize gaussian_representation_integer_transport d - 0069
specialize gaussian_representation_integer_transport ((((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k))))))) + (o)) - 0070
specialize gaussian_representation_integer_transport ((((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l))))))) + (p)) - 0071
specialize gaussian_representation_integer_transport ((((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k))))))) + (s)) - 0072
specialize gaussian_representation_integer_transport ((((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l))))))) + (t)) - 0073
apply gaussian_representation_integer_transport - 0074
specialize gaussian_equal_symmetric ((((((((e) * (i))) + (((f) * (j))))) + (((((g) * (l))) + (((h) * (k))))))) + (o)) - 0075
specialize gaussian_equal_symmetric ((((((((e) * (j))) + (((f) * (i))))) + (((((g) * (k))) + (((h) * (l))))))) + (p)) - 0076
specialize gaussian_equal_symmetric ((((((((((e) * (k))) + (((f) * (l))))) + (((((g) * (i))) + (((h) * (j))))))) + (((((g) * (l))) + (((h) * (k))))))) + (s)) - 0077
specialize gaussian_equal_symmetric ((((((((((e) * (l))) + (((f) * (k))))) + (((((g) * (j))) + (((h) * (i))))))) + (((((g) * (k))) + (((h) * (l))))))) + (t)) - 0078
specialize gaussian_equal_symmetric a - 0079
specialize gaussian_equal_symmetric b - 0080
specialize gaussian_equal_symmetric c - 0081
specialize gaussian_equal_symmetric d - 0082
apply gaussian_equal_symmetric - 0083
exact hequation - 0084
exact hfirst