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.
Exact expanded first-order arithmetic statement
forall ac bc cc dd. (exists ge_first_rp_add_unique_first ge_first_rn_add_unique_first ge_first_ip_add_unique_first ge_first_in_add_unique_first ge_second_rp_add_unique_first ge_second_rn_add_unique_first ge_second_ip_add_unique_first ge_second_in_add_unique_first. ((exists ge_representation_real_code_add_unique_firstfirst ge_representation_imaginary_code_add_unique_firstfirst. (((ac) = ((ge_representation_real_code_add_unique_firstfirst) + (ge_representation_imaginary_code_add_unique_firstfirst)) * S ((ge_representation_real_code_add_unique_firstfirst) + (ge_representation_imaginary_code_add_unique_firstfirst)) + ((ge_representation_imaginary_code_add_unique_firstfirst) + (ge_representation_imaginary_code_add_unique_firstfirst))) /\ ((exists ge_balance_positive_add_unique_firstfirstreal ge_balance_negative_add_unique_firstfirstreal. (((((ge_representation_real_code_add_unique_firstfirst) = 2 * (ge_balance_positive_add_unique_firstfirstreal) /\ (ge_balance_negative_add_unique_firstfirstreal) = 0) \/ exists ge_signed_half_add_unique_firstfirstrealdecode. (((ge_representation_real_code_add_unique_firstfirst) = 2 * ge_signed_half_add_unique_firstfirstrealdecode + 1 /\ (ge_balance_positive_add_unique_firstfirstreal) = 0) /\ (ge_balance_negative_add_unique_firstfirstreal) = S ge_signed_half_add_unique_firstfirstrealdecode))) /\ ((ge_first_rp_add_unique_first) + ge_balance_negative_add_unique_firstfirstreal = (ge_first_rn_add_unique_first) + ge_balance_positive_add_unique_firstfirstreal))) /\ (exists ge_balance_positive_add_unique_firstfirstimaginary ge_balance_negative_add_unique_firstfirstimaginary. (((((ge_representation_imaginary_code_add_unique_firstfirst) = 2 * (ge_balance_positive_add_unique_firstfirstimaginary) /\ (ge_balance_negative_add_unique_firstfirstimaginary) = 0) \/ exists ge_signed_half_add_unique_firstfirstimaginarydecode. (((ge_representation_imaginary_code_add_unique_firstfirst) = 2 * ge_signed_half_add_unique_firstfirstimaginarydecode + 1 /\ (ge_balance_positive_add_unique_firstfirstimaginary) = 0) /\ (ge_balance_negative_add_unique_firstfirstimaginary) = S ge_signed_half_add_unique_firstfirstimaginarydecode))) /\ ((ge_first_ip_add_unique_first) + ge_balance_negative_add_unique_firstfirstimaginary = (ge_first_in_add_unique_first) + ge_balance_positive_add_unique_firstfirstimaginary)))))) /\ ((exists ge_representation_real_code_add_unique_firstsecond ge_representation_imaginary_code_add_unique_firstsecond. (((bc) = ((ge_representation_real_code_add_unique_firstsecond) + (ge_representation_imaginary_code_add_unique_firstsecond)) * S ((ge_representation_real_code_add_unique_firstsecond) + (ge_representation_imaginary_code_add_unique_firstsecond)) + ((ge_representation_imaginary_code_add_unique_firstsecond) + (ge_representation_imaginary_code_add_unique_firstsecond))) /\ ((exists ge_balance_positive_add_unique_firstsecondreal ge_balance_negative_add_unique_firstsecondreal. (((((ge_representation_real_code_add_unique_firstsecond) = 2 * (ge_balance_positive_add_unique_firstsecondreal) /\ (ge_balance_negative_add_unique_firstsecondreal) = 0) \/ exists ge_signed_half_add_unique_firstsecondrealdecode. (((ge_representation_real_code_add_unique_firstsecond) = 2 * ge_signed_half_add_unique_firstsecondrealdecode + 1 /\ (ge_balance_positive_add_unique_firstsecondreal) = 0) /\ (ge_balance_negative_add_unique_firstsecondreal) = S ge_signed_half_add_unique_firstsecondrealdecode))) /\ ((ge_second_rp_add_unique_first) + ge_balance_negative_add_unique_firstsecondreal = (ge_second_rn_add_unique_first) + ge_balance_positive_add_unique_firstsecondreal))) /\ (exists ge_balance_positive_add_unique_firstsecondimaginary ge_balance_negative_add_unique_firstsecondimaginary. (((((ge_representation_imaginary_code_add_unique_firstsecond) = 2 * (ge_balance_positive_add_unique_firstsecondimaginary) /\ (ge_balance_negative_add_unique_firstsecondimaginary) = 0) \/ exists ge_signed_half_add_unique_firstsecondimaginarydecode. (((ge_representation_imaginary_code_add_unique_firstsecond) = 2 * ge_signed_half_add_unique_firstsecondimaginarydecode + 1 /\ (ge_balance_positive_add_unique_firstsecondimaginary) = 0) /\ (ge_balance_negative_add_unique_firstsecondimaginary) = S ge_signed_half_add_unique_firstsecondimaginarydecode))) /\ ((ge_second_ip_add_unique_first) + ge_balance_negative_add_unique_firstsecondimaginary = (ge_second_in_add_unique_first) + ge_balance_positive_add_unique_firstsecondimaginary)))))) /\ (exists ge_representation_real_code_add_unique_firstoutput ge_representation_imaginary_code_add_unique_firstoutput. (((cc) = ((ge_representation_real_code_add_unique_firstoutput) + (ge_representation_imaginary_code_add_unique_firstoutput)) * S ((ge_representation_real_code_add_unique_firstoutput) + (ge_representation_imaginary_code_add_unique_firstoutput)) + ((ge_representation_imaginary_code_add_unique_firstoutput) + (ge_representation_imaginary_code_add_unique_firstoutput))) /\ ((exists ge_balance_positive_add_unique_firstoutputreal ge_balance_negative_add_unique_firstoutputreal. (((((ge_representation_real_code_add_unique_firstoutput) = 2 * (ge_balance_positive_add_unique_firstoutputreal) /\ (ge_balance_negative_add_unique_firstoutputreal) = 0) \/ exists ge_signed_half_add_unique_firstoutputrealdecode. (((ge_representation_real_code_add_unique_firstoutput) = 2 * ge_signed_half_add_unique_firstoutputrealdecode + 1 /\ (ge_balance_positive_add_unique_firstoutputreal) = 0) /\ (ge_balance_negative_add_unique_firstoutputreal) = S ge_signed_half_add_unique_firstoutputrealdecode))) /\ ((((ge_first_rp_add_unique_first) + (ge_second_rp_add_unique_first))) + ge_balance_negative_add_unique_firstoutputreal = (((ge_first_rn_add_unique_first) + (ge_second_rn_add_unique_first))) + ge_balance_positive_add_unique_firstoutputreal))) /\ (exists ge_balance_positive_add_unique_firstoutputimaginary ge_balance_negative_add_unique_firstoutputimaginary. (((((ge_representation_imaginary_code_add_unique_firstoutput) = 2 * (ge_balance_positive_add_unique_firstoutputimaginary) /\ (ge_balance_negative_add_unique_firstoutputimaginary) = 0) \/ exists ge_signed_half_add_unique_firstoutputimaginarydecode. (((ge_representation_imaginary_code_add_unique_firstoutput) = 2 * ge_signed_half_add_unique_firstoutputimaginarydecode + 1 /\ (ge_balance_positive_add_unique_firstoutputimaginary) = 0) /\ (ge_balance_negative_add_unique_firstoutputimaginary) = S ge_signed_half_add_unique_firstoutputimaginarydecode))) /\ ((((ge_first_ip_add_unique_first) + (ge_second_ip_add_unique_first))) + ge_balance_negative_add_unique_firstoutputimaginary = (((ge_first_in_add_unique_first) + (ge_second_in_add_unique_first))) + ge_balance_positive_add_unique_firstoutputimaginary))))))))) -> (exists ge_first_rp_add_unique_second ge_first_rn_add_unique_second ge_first_ip_add_unique_second ge_first_in_add_unique_second ge_second_rp_add_unique_second ge_second_rn_add_unique_second ge_second_ip_add_unique_second ge_second_in_add_unique_second. ((exists ge_representation_real_code_add_unique_secondfirst ge_representation_imaginary_code_add_unique_secondfirst. (((ac) = ((ge_representation_real_code_add_unique_secondfirst) + (ge_representation_imaginary_code_add_unique_secondfirst)) * S ((ge_representation_real_code_add_unique_secondfirst) + (ge_representation_imaginary_code_add_unique_secondfirst)) + ((ge_representation_imaginary_code_add_unique_secondfirst) + (ge_representation_imaginary_code_add_unique_secondfirst))) /\ ((exists ge_balance_positive_add_unique_secondfirstreal ge_balance_negative_add_unique_secondfirstreal. (((((ge_representation_real_code_add_unique_secondfirst) = 2 * (ge_balance_positive_add_unique_secondfirstreal) /\ (ge_balance_negative_add_unique_secondfirstreal) = 0) \/ exists ge_signed_half_add_unique_secondfirstrealdecode. (((ge_representation_real_code_add_unique_secondfirst) = 2 * ge_signed_half_add_unique_secondfirstrealdecode + 1 /\ (ge_balance_positive_add_unique_secondfirstreal) = 0) /\ (ge_balance_negative_add_unique_secondfirstreal) = S ge_signed_half_add_unique_secondfirstrealdecode))) /\ ((ge_first_rp_add_unique_second) + ge_balance_negative_add_unique_secondfirstreal = (ge_first_rn_add_unique_second) + ge_balance_positive_add_unique_secondfirstreal))) /\ (exists ge_balance_positive_add_unique_secondfirstimaginary ge_balance_negative_add_unique_secondfirstimaginary. (((((ge_representation_imaginary_code_add_unique_secondfirst) = 2 * (ge_balance_positive_add_unique_secondfirstimaginary) /\ (ge_balance_negative_add_unique_secondfirstimaginary) = 0) \/ exists ge_signed_half_add_unique_secondfirstimaginarydecode. (((ge_representation_imaginary_code_add_unique_secondfirst) = 2 * ge_signed_half_add_unique_secondfirstimaginarydecode + 1 /\ (ge_balance_positive_add_unique_secondfirstimaginary) = 0) /\ (ge_balance_negative_add_unique_secondfirstimaginary) = S ge_signed_half_add_unique_secondfirstimaginarydecode))) /\ ((ge_first_ip_add_unique_second) + ge_balance_negative_add_unique_secondfirstimaginary = (ge_first_in_add_unique_second) + ge_balance_positive_add_unique_secondfirstimaginary)))))) /\ ((exists ge_representation_real_code_add_unique_secondsecond ge_representation_imaginary_code_add_unique_secondsecond. (((bc) = ((ge_representation_real_code_add_unique_secondsecond) + (ge_representation_imaginary_code_add_unique_secondsecond)) * S ((ge_representation_real_code_add_unique_secondsecond) + (ge_representation_imaginary_code_add_unique_secondsecond)) + ((ge_representation_imaginary_code_add_unique_secondsecond) + (ge_representation_imaginary_code_add_unique_secondsecond))) /\ ((exists ge_balance_positive_add_unique_secondsecondreal ge_balance_negative_add_unique_secondsecondreal. (((((ge_representation_real_code_add_unique_secondsecond) = 2 * (ge_balance_positive_add_unique_secondsecondreal) /\ (ge_balance_negative_add_unique_secondsecondreal) = 0) \/ exists ge_signed_half_add_unique_secondsecondrealdecode. (((ge_representation_real_code_add_unique_secondsecond) = 2 * ge_signed_half_add_unique_secondsecondrealdecode + 1 /\ (ge_balance_positive_add_unique_secondsecondreal) = 0) /\ (ge_balance_negative_add_unique_secondsecondreal) = S ge_signed_half_add_unique_secondsecondrealdecode))) /\ ((ge_second_rp_add_unique_second) + ge_balance_negative_add_unique_secondsecondreal = (ge_second_rn_add_unique_second) + ge_balance_positive_add_unique_secondsecondreal))) /\ (exists ge_balance_positive_add_unique_secondsecondimaginary ge_balance_negative_add_unique_secondsecondimaginary. (((((ge_representation_imaginary_code_add_unique_secondsecond) = 2 * (ge_balance_positive_add_unique_secondsecondimaginary) /\ (ge_balance_negative_add_unique_secondsecondimaginary) = 0) \/ exists ge_signed_half_add_unique_secondsecondimaginarydecode. (((ge_representation_imaginary_code_add_unique_secondsecond) = 2 * ge_signed_half_add_unique_secondsecondimaginarydecode + 1 /\ (ge_balance_positive_add_unique_secondsecondimaginary) = 0) /\ (ge_balance_negative_add_unique_secondsecondimaginary) = S ge_signed_half_add_unique_secondsecondimaginarydecode))) /\ ((ge_second_ip_add_unique_second) + ge_balance_negative_add_unique_secondsecondimaginary = (ge_second_in_add_unique_second) + ge_balance_positive_add_unique_secondsecondimaginary)))))) /\ (exists ge_representation_real_code_add_unique_secondoutput ge_representation_imaginary_code_add_unique_secondoutput. (((dd) = ((ge_representation_real_code_add_unique_secondoutput) + (ge_representation_imaginary_code_add_unique_secondoutput)) * S ((ge_representation_real_code_add_unique_secondoutput) + (ge_representation_imaginary_code_add_unique_secondoutput)) + ((ge_representation_imaginary_code_add_unique_secondoutput) + (ge_representation_imaginary_code_add_unique_secondoutput))) /\ ((exists ge_balance_positive_add_unique_secondoutputreal ge_balance_negative_add_unique_secondoutputreal. (((((ge_representation_real_code_add_unique_secondoutput) = 2 * (ge_balance_positive_add_unique_secondoutputreal) /\ (ge_balance_negative_add_unique_secondoutputreal) = 0) \/ exists ge_signed_half_add_unique_secondoutputrealdecode. (((ge_representation_real_code_add_unique_secondoutput) = 2 * ge_signed_half_add_unique_secondoutputrealdecode + 1 /\ (ge_balance_positive_add_unique_secondoutputreal) = 0) /\ (ge_balance_negative_add_unique_secondoutputreal) = S ge_signed_half_add_unique_secondoutputrealdecode))) /\ ((((ge_first_rp_add_unique_second) + (ge_second_rp_add_unique_second))) + ge_balance_negative_add_unique_secondoutputreal = (((ge_first_rn_add_unique_second) + (ge_second_rn_add_unique_second))) + ge_balance_positive_add_unique_secondoutputreal))) /\ (exists ge_balance_positive_add_unique_secondoutputimaginary ge_balance_negative_add_unique_secondoutputimaginary. (((((ge_representation_imaginary_code_add_unique_secondoutput) = 2 * (ge_balance_positive_add_unique_secondoutputimaginary) /\ (ge_balance_negative_add_unique_secondoutputimaginary) = 0) \/ exists ge_signed_half_add_unique_secondoutputimaginarydecode. (((ge_representation_imaginary_code_add_unique_secondoutput) = 2 * ge_signed_half_add_unique_secondoutputimaginarydecode + 1 /\ (ge_balance_positive_add_unique_secondoutputimaginary) = 0) /\ (ge_balance_negative_add_unique_secondoutputimaginary) = S ge_signed_half_add_unique_secondoutputimaginarydecode))) /\ ((((ge_first_ip_add_unique_second) + (ge_second_ip_add_unique_second))) + ge_balance_negative_add_unique_secondoutputimaginary = (((ge_first_in_add_unique_second) + (ge_second_in_add_unique_second))) + ge_balance_positive_add_unique_secondoutputimaginary))))))))) -> cc = ddConstructive proof overview
Generated structural guide
Actual Gaussian add has one literal canonical natural output code, independent of all representative choices.
The unchanged tactic script uses 2 declared prerequisites and contains 39 exact native proof lines.
Alpha v34 checked-use · first admitted v28 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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–6
02Separate the logical casesL7–16
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L7
cases hfirst - L8
cases hfirst_witness - L9
cases hfirst_witness_witness - L10
cases hfirst_witness_witness_witness - L11
cases hfirst_witness_witness_witness_witness - L12
cases hfirst_witness_witness_witness_witness_witness - L13
cases hfirst_witness_witness_witness_witness_witness_witness - L14
cases hfirst_witness_witness_witness_witness_witness_witness_witness - L15
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness - L16
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right
03Use earlier factsL17–26
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L17
specialize gaussian_representation_functional cc - L18
specialize gaussian_representation_functional dd - L19
specialize gaussian_representation_functional ((x) + (x4)) - L20
specialize gaussian_representation_functional ((x1) + (x5)) - L21
specialize gaussian_representation_functional ((x2) + (x6)) - L22
specialize gaussian_representation_functional ((x3) + (x7)) - L23
apply gaussian_representation_functional - L24
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right - L25
specialize gaussian_add_for_representations ac - L26
specialize gaussian_add_for_representations bc
04Use earlier factsL27–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L27
specialize gaussian_add_for_representations dd - L28
specialize gaussian_add_for_representations x - L29
specialize gaussian_add_for_representations x1 - L30
specialize gaussian_add_for_representations x2 - L31
specialize gaussian_add_for_representations x3 - L32
specialize gaussian_add_for_representations x4 - L33
specialize gaussian_add_for_representations x5 - L34
specialize gaussian_add_for_representations x6 - L35
specialize gaussian_add_for_representations x7 - L36
apply gaussian_add_for_representations
Original exact command ledger · 39 lines
- 0001
intro ac - 0002
intro bc - 0003
intro cc - 0004
intro dd - 0005
intro hfirst - 0006
intro hsecond - 0007
cases hfirst - 0008
cases hfirst_witness - 0009
cases hfirst_witness_witness - 0010
cases hfirst_witness_witness_witness - 0011
cases hfirst_witness_witness_witness_witness - 0012
cases hfirst_witness_witness_witness_witness_witness - 0013
cases hfirst_witness_witness_witness_witness_witness_witness - 0014
cases hfirst_witness_witness_witness_witness_witness_witness_witness - 0015
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness - 0016
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right - 0017
specialize gaussian_representation_functional cc - 0018
specialize gaussian_representation_functional dd - 0019
specialize gaussian_representation_functional ((x) + (x4)) - 0020
specialize gaussian_representation_functional ((x1) + (x5)) - 0021
specialize gaussian_representation_functional ((x2) + (x6)) - 0022
specialize gaussian_representation_functional ((x3) + (x7)) - 0023
apply gaussian_representation_functional - 0024
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right - 0025
specialize gaussian_add_for_representations ac - 0026
specialize gaussian_add_for_representations bc - 0027
specialize gaussian_add_for_representations dd - 0028
specialize gaussian_add_for_representations x - 0029
specialize gaussian_add_for_representations x1 - 0030
specialize gaussian_add_for_representations x2 - 0031
specialize gaussian_add_for_representations x3 - 0032
specialize gaussian_add_for_representations x4 - 0033
specialize gaussian_add_for_representations x5 - 0034
specialize gaussian_add_for_representations x6 - 0035
specialize gaussian_add_for_representations x7 - 0036
apply gaussian_add_for_representations - 0037
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_left - 0038
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_left - 0039
exact hsecond