GF003D

gaussian_one_unit

The actual canonical Gaussian identity code six is a unit with itself as inverse.

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

GUnit(6)

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

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
exists gr_inverse_one_unit. (exists ge_first_rp_one_unitidentity ge_first_rn_one_unitidentity ge_first_ip_one_unitidentity ge_first_in_one_unitidentity ge_second_rp_one_unitidentity ge_second_rn_one_unitidentity ge_second_ip_one_unitidentity ge_second_in_one_unitidentity. ((exists ge_representation_real_code_one_unitidentityfirst ge_representation_imaginary_code_one_unitidentityfirst. (((6) = ((ge_representation_real_code_one_unitidentityfirst) + (ge_representation_imaginary_code_one_unitidentityfirst)) * S ((ge_representation_real_code_one_unitidentityfirst) + (ge_representation_imaginary_code_one_unitidentityfirst)) + ((ge_representation_imaginary_code_one_unitidentityfirst) + (ge_representation_imaginary_code_one_unitidentityfirst))) /\ ((exists ge_balance_positive_one_unitidentityfirstreal ge_balance_negative_one_unitidentityfirstreal. (((((ge_representation_real_code_one_unitidentityfirst) = 2 * (ge_balance_positive_one_unitidentityfirstreal) /\ (ge_balance_negative_one_unitidentityfirstreal) = 0) \/ exists ge_signed_half_one_unitidentityfirstrealdecode. (((ge_representation_real_code_one_unitidentityfirst) = 2 * ge_signed_half_one_unitidentityfirstrealdecode + 1 /\ (ge_balance_positive_one_unitidentityfirstreal) = 0) /\ (ge_balance_negative_one_unitidentityfirstreal) = S ge_signed_half_one_unitidentityfirstrealdecode))) /\ ((ge_first_rp_one_unitidentity) + ge_balance_negative_one_unitidentityfirstreal = (ge_first_rn_one_unitidentity) + ge_balance_positive_one_unitidentityfirstreal))) /\ (exists ge_balance_positive_one_unitidentityfirstimaginary ge_balance_negative_one_unitidentityfirstimaginary. (((((ge_representation_imaginary_code_one_unitidentityfirst) = 2 * (ge_balance_positive_one_unitidentityfirstimaginary) /\ (ge_balance_negative_one_unitidentityfirstimaginary) = 0) \/ exists ge_signed_half_one_unitidentityfirstimaginarydecode. (((ge_representation_imaginary_code_one_unitidentityfirst) = 2 * ge_signed_half_one_unitidentityfirstimaginarydecode + 1 /\ (ge_balance_positive_one_unitidentityfirstimaginary) = 0) /\ (ge_balance_negative_one_unitidentityfirstimaginary) = S ge_signed_half_one_unitidentityfirstimaginarydecode))) /\ ((ge_first_ip_one_unitidentity) + ge_balance_negative_one_unitidentityfirstimaginary = (ge_first_in_one_unitidentity) + ge_balance_positive_one_unitidentityfirstimaginary)))))) /\ ((exists ge_representation_real_code_one_unitidentitysecond ge_representation_imaginary_code_one_unitidentitysecond. (((gr_inverse_one_unit) = ((ge_representation_real_code_one_unitidentitysecond) + (ge_representation_imaginary_code_one_unitidentitysecond)) * S ((ge_representation_real_code_one_unitidentitysecond) + (ge_representation_imaginary_code_one_unitidentitysecond)) + ((ge_representation_imaginary_code_one_unitidentitysecond) + (ge_representation_imaginary_code_one_unitidentitysecond))) /\ ((exists ge_balance_positive_one_unitidentitysecondreal ge_balance_negative_one_unitidentitysecondreal. (((((ge_representation_real_code_one_unitidentitysecond) = 2 * (ge_balance_positive_one_unitidentitysecondreal) /\ (ge_balance_negative_one_unitidentitysecondreal) = 0) \/ exists ge_signed_half_one_unitidentitysecondrealdecode. (((ge_representation_real_code_one_unitidentitysecond) = 2 * ge_signed_half_one_unitidentitysecondrealdecode + 1 /\ (ge_balance_positive_one_unitidentitysecondreal) = 0) /\ (ge_balance_negative_one_unitidentitysecondreal) = S ge_signed_half_one_unitidentitysecondrealdecode))) /\ ((ge_second_rp_one_unitidentity) + ge_balance_negative_one_unitidentitysecondreal = (ge_second_rn_one_unitidentity) + ge_balance_positive_one_unitidentitysecondreal))) /\ (exists ge_balance_positive_one_unitidentitysecondimaginary ge_balance_negative_one_unitidentitysecondimaginary. (((((ge_representation_imaginary_code_one_unitidentitysecond) = 2 * (ge_balance_positive_one_unitidentitysecondimaginary) /\ (ge_balance_negative_one_unitidentitysecondimaginary) = 0) \/ exists ge_signed_half_one_unitidentitysecondimaginarydecode. (((ge_representation_imaginary_code_one_unitidentitysecond) = 2 * ge_signed_half_one_unitidentitysecondimaginarydecode + 1 /\ (ge_balance_positive_one_unitidentitysecondimaginary) = 0) /\ (ge_balance_negative_one_unitidentitysecondimaginary) = S ge_signed_half_one_unitidentitysecondimaginarydecode))) /\ ((ge_second_ip_one_unitidentity) + ge_balance_negative_one_unitidentitysecondimaginary = (ge_second_in_one_unitidentity) + ge_balance_positive_one_unitidentitysecondimaginary)))))) /\ (exists ge_representation_real_code_one_unitidentityoutput ge_representation_imaginary_code_one_unitidentityoutput. (((6) = ((ge_representation_real_code_one_unitidentityoutput) + (ge_representation_imaginary_code_one_unitidentityoutput)) * S ((ge_representation_real_code_one_unitidentityoutput) + (ge_representation_imaginary_code_one_unitidentityoutput)) + ((ge_representation_imaginary_code_one_unitidentityoutput) + (ge_representation_imaginary_code_one_unitidentityoutput))) /\ ((exists ge_balance_positive_one_unitidentityoutputreal ge_balance_negative_one_unitidentityoutputreal. (((((ge_representation_real_code_one_unitidentityoutput) = 2 * (ge_balance_positive_one_unitidentityoutputreal) /\ (ge_balance_negative_one_unitidentityoutputreal) = 0) \/ exists ge_signed_half_one_unitidentityoutputrealdecode. (((ge_representation_real_code_one_unitidentityoutput) = 2 * ge_signed_half_one_unitidentityoutputrealdecode + 1 /\ (ge_balance_positive_one_unitidentityoutputreal) = 0) /\ (ge_balance_negative_one_unitidentityoutputreal) = S ge_signed_half_one_unitidentityoutputrealdecode))) /\ ((((((((ge_first_rp_one_unitidentity) * (ge_second_rp_one_unitidentity))) + (((ge_first_rn_one_unitidentity) * (ge_second_rn_one_unitidentity))))) + (((((ge_first_ip_one_unitidentity) * (ge_second_in_one_unitidentity))) + (((ge_first_in_one_unitidentity) * (ge_second_ip_one_unitidentity))))))) + ge_balance_negative_one_unitidentityoutputreal = (((((((ge_first_rp_one_unitidentity) * (ge_second_rn_one_unitidentity))) + (((ge_first_rn_one_unitidentity) * (ge_second_rp_one_unitidentity))))) + (((((ge_first_ip_one_unitidentity) * (ge_second_ip_one_unitidentity))) + (((ge_first_in_one_unitidentity) * (ge_second_in_one_unitidentity))))))) + ge_balance_positive_one_unitidentityoutputreal))) /\ (exists ge_balance_positive_one_unitidentityoutputimaginary ge_balance_negative_one_unitidentityoutputimaginary. (((((ge_representation_imaginary_code_one_unitidentityoutput) = 2 * (ge_balance_positive_one_unitidentityoutputimaginary) /\ (ge_balance_negative_one_unitidentityoutputimaginary) = 0) \/ exists ge_signed_half_one_unitidentityoutputimaginarydecode. (((ge_representation_imaginary_code_one_unitidentityoutput) = 2 * ge_signed_half_one_unitidentityoutputimaginarydecode + 1 /\ (ge_balance_positive_one_unitidentityoutputimaginary) = 0) /\ (ge_balance_negative_one_unitidentityoutputimaginary) = S ge_signed_half_one_unitidentityoutputimaginarydecode))) /\ ((((((((ge_first_rp_one_unitidentity) * (ge_second_ip_one_unitidentity))) + (((ge_first_rn_one_unitidentity) * (ge_second_in_one_unitidentity))))) + (((((ge_first_ip_one_unitidentity) * (ge_second_rp_one_unitidentity))) + (((ge_first_in_one_unitidentity) * (ge_second_rn_one_unitidentity))))))) + ge_balance_negative_one_unitidentityoutputimaginary = (((((((ge_first_rp_one_unitidentity) * (ge_second_in_one_unitidentity))) + (((ge_first_rn_one_unitidentity) * (ge_second_ip_one_unitidentity))))) + (((((ge_first_ip_one_unitidentity) * (ge_second_rn_one_unitidentity))) + (((ge_first_in_one_unitidentity) * (ge_second_rp_one_unitidentity))))))) + ge_balance_positive_one_unitidentityoutputimaginary)))))))))

Complete tactic proof in conservative notation

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

4 script commands · 2 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 (2)
01Construct an explicit witnessL1–1

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

  1. L1
    exists (6)
02Use earlier factsL2–4

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

  1. L2
    specialize gaussian_multiply_one_right (6)
  2. L3
    apply gaussian_multiply_one_right
  3. L4
    exact gaussian_one_valid

Library-wide reading audit

Original defined command ledger · 4 lines
  1. 0001exists (6)
  2. 0002specialize gaussian_multiply_one_right (6)
  3. 0003apply gaussian_multiply_one_right
  4. 0004exact gaussian_one_valid