GF000D

gaussian_zero_norm

The actual squared Gaussian norm of zero is 0.

Alpha v34 checked-use · first admitted v30 · independently kernel and Lean verified; not Stable

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

GNorm(0,0)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
exists ge_norm_rp_ring_zero_norm ge_norm_rn_ring_zero_norm ge_norm_ip_ring_zero_norm ge_norm_in_ring_zero_norm. ((exists ge_representation_real_code_ring_zero_normrepresentation ge_representation_imaginary_code_ring_zero_normrepresentation. (((0) = ((ge_representation_real_code_ring_zero_normrepresentation) + (ge_representation_imaginary_code_ring_zero_normrepresentation)) * S ((ge_representation_real_code_ring_zero_normrepresentation) + (ge_representation_imaginary_code_ring_zero_normrepresentation)) + ((ge_representation_imaginary_code_ring_zero_normrepresentation) + (ge_representation_imaginary_code_ring_zero_normrepresentation))) /\ ((exists ge_balance_positive_ring_zero_normrepresentationreal ge_balance_negative_ring_zero_normrepresentationreal. (((((ge_representation_real_code_ring_zero_normrepresentation) = 2 * (ge_balance_positive_ring_zero_normrepresentationreal) /\ (ge_balance_negative_ring_zero_normrepresentationreal) = 0) \/ exists ge_signed_half_ring_zero_normrepresentationrealdecode. (((ge_representation_real_code_ring_zero_normrepresentation) = 2 * ge_signed_half_ring_zero_normrepresentationrealdecode + 1 /\ (ge_balance_positive_ring_zero_normrepresentationreal) = 0) /\ (ge_balance_negative_ring_zero_normrepresentationreal) = S ge_signed_half_ring_zero_normrepresentationrealdecode))) /\ ((ge_norm_rp_ring_zero_norm) + ge_balance_negative_ring_zero_normrepresentationreal = (ge_norm_rn_ring_zero_norm) + ge_balance_positive_ring_zero_normrepresentationreal))) /\ (exists ge_balance_positive_ring_zero_normrepresentationimaginary ge_balance_negative_ring_zero_normrepresentationimaginary. (((((ge_representation_imaginary_code_ring_zero_normrepresentation) = 2 * (ge_balance_positive_ring_zero_normrepresentationimaginary) /\ (ge_balance_negative_ring_zero_normrepresentationimaginary) = 0) \/ exists ge_signed_half_ring_zero_normrepresentationimaginarydecode. (((ge_representation_imaginary_code_ring_zero_normrepresentation) = 2 * ge_signed_half_ring_zero_normrepresentationimaginarydecode + 1 /\ (ge_balance_positive_ring_zero_normrepresentationimaginary) = 0) /\ (ge_balance_negative_ring_zero_normrepresentationimaginary) = S ge_signed_half_ring_zero_normrepresentationimaginarydecode))) /\ ((ge_norm_ip_ring_zero_norm) + ge_balance_negative_ring_zero_normrepresentationimaginary = (ge_norm_in_ring_zero_norm) + ge_balance_positive_ring_zero_normrepresentationimaginary)))))) /\ (exists ge_real_square_ring_zero_normsquare ge_imaginary_square_ring_zero_normsquare. ((((((ge_norm_rp_ring_zero_norm) * (ge_norm_rp_ring_zero_norm))) + (((ge_norm_rn_ring_zero_norm) * (ge_norm_rn_ring_zero_norm)))) = ((ge_real_square_ring_zero_normsquare) + (((((ge_norm_rp_ring_zero_norm) * (ge_norm_rn_ring_zero_norm))) + (((ge_norm_rn_ring_zero_norm) * (ge_norm_rp_ring_zero_norm))))))) /\ ((((((ge_norm_ip_ring_zero_norm) * (ge_norm_ip_ring_zero_norm))) + (((ge_norm_in_ring_zero_norm) * (ge_norm_in_ring_zero_norm)))) = ((ge_imaginary_square_ring_zero_normsquare) + (((((ge_norm_ip_ring_zero_norm) * (ge_norm_in_ring_zero_norm))) + (((ge_norm_in_ring_zero_norm) * (ge_norm_ip_ring_zero_norm))))))) /\ ((0) = ge_real_square_ring_zero_normsquare + ge_imaginary_square_ring_zero_normsquare)))))

Complete tactic proof in conservative notation

All 15 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

15 script commands · 6 reading checkpoints · 0 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (1)
01Use earlier factsL1–8

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L1
    specialize gaussian_norm_of_representation (0)
  2. L2
    specialize gaussian_norm_of_representation (0)
  3. L3
    specialize gaussian_norm_of_representation (0)
  4. L4
    specialize gaussian_norm_of_representation (0)
  5. L5
    specialize gaussian_norm_of_representation (0)
  6. L6
    specialize gaussian_norm_of_representation (0)
  7. L7
    apply gaussian_norm_of_representation
  8. L8
    exact gaussian_zero_representation
02Construct an explicit witnessL9–10

Supply the displayed value, then prove that it has the required property.

  1. L9
    exists (0)
  2. L10
    exists (0)
03Separate the logical casesL11–11

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L11
    split
04Calculate and transport equalitiesL12–12

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L12
    norm_num
05Separate the logical casesL13–13

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L13
    split
06Calculate and transport equalitiesL14–15

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L14
    norm_num
  2. L15
    norm_num

Library-wide reading audit

Original defined command ledger · 15 lines
  1. 0001specialize gaussian_norm_of_representation (0)
  2. 0002specialize gaussian_norm_of_representation (0)
  3. 0003specialize gaussian_norm_of_representation (0)
  4. 0004specialize gaussian_norm_of_representation (0)
  5. 0005specialize gaussian_norm_of_representation (0)
  6. 0006specialize gaussian_norm_of_representation (0)
  7. 0007apply gaussian_norm_of_representation
  8. 0008exact gaussian_zero_representation
  9. 0009exists (0)
  10. 0010exists (0)
  11. 0011split
  12. 0012norm_num
  13. 0013split
  14. 0014norm_num
  15. 0015norm_num