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 k a b c d e f g h. (exists ftcn_left_fssbn_conjugate_negative_norm ftcn_right_fssbn_conjugate_negative_norm. (e * e + f * f + g * g + h * h) + (k) * ftcn_left_fssbn_conjugate_negative_norm = (0) + (k) * ftcn_right_fssbn_conjugate_negative_norm) -> (exists ftcn_left_fssbn_conjugate_negative_a_negative ftcn_right_fssbn_conjugate_negative_a_negative. (a + e) + (k) * ftcn_left_fssbn_conjugate_negative_a_negative = (0) + (k) * ftcn_right_fssbn_conjugate_negative_a_negative) -> (exists ftcn_left_fssbn_conjugate_negative_b_negative ftcn_right_fssbn_conjugate_negative_b_negative. (b + f) + (k) * ftcn_left_fssbn_conjugate_negative_b_negative = (0) + (k) * ftcn_right_fssbn_conjugate_negative_b_negative) -> (exists ftcn_left_fssbn_conjugate_negative_c_negative ftcn_right_fssbn_conjugate_negative_c_negative. (c + g) + (k) * ftcn_left_fssbn_conjugate_negative_c_negative = (0) + (k) * ftcn_right_fssbn_conjugate_negative_c_negative) -> (exists ftcn_left_fssbn_conjugate_negative_d_negative ftcn_right_fssbn_conjugate_negative_d_negative. (d + h) + (k) * ftcn_left_fssbn_conjugate_negative_d_negative = (0) + (k) * ftcn_right_fssbn_conjugate_negative_d_negative) -> ((exists ftcn_left_fssbn_conjugate_negative_block_0 ftcn_right_fssbn_conjugate_negative_block_0. (a * e + b * f + c * g + d * h) + (k) * ftcn_left_fssbn_conjugate_negative_block_0 = (0) + (k) * ftcn_right_fssbn_conjugate_negative_block_0) /\ ((exists ftcn_left_fssbn_conjugate_negative_block_1 ftcn_right_fssbn_conjugate_negative_block_1. (a * f + c * h) + (k) * ftcn_left_fssbn_conjugate_negative_block_1 = (b * e + d * g) + (k) * ftcn_right_fssbn_conjugate_negative_block_1) /\ ((exists ftcn_left_fssbn_conjugate_negative_block_2 ftcn_right_fssbn_conjugate_negative_block_2. (a * g + d * f) + (k) * ftcn_left_fssbn_conjugate_negative_block_2 = (c * e + b * h) + (k) * ftcn_right_fssbn_conjugate_negative_block_2) /\ (exists ftcn_left_fssbn_conjugate_negative_block_3 ftcn_right_fssbn_conjugate_negative_block_3. (a * h + b * g) + (k) * ftcn_left_fssbn_conjugate_negative_block_3 = (d * e + c * f) + (k) * ftcn_right_fssbn_conjugate_negative_block_3))))Constructive proof overview
Generated structural guide
When all four centered coordinate orientations are negative, every exact conjugate-quaternion positive/negative block is congruent modulo the multiplier.
The unchanged tactic script uses 7 declared prerequisites and contains 155 exact native proof lines.
dependency-curried kernel-checked theorem body; Alpha enrollment and checked-use authority follow separately sealed release evidence; Stable membership remains unchanged
Proof neighborhood
Direct dependencies
FS005V four_square_signed_dot_negative_zero FS005P four_square_signed_mod_zero_add FS002D four_square_euler_four_add_shuffle add_assoc Stable theorem; checked-use authorized FS005S four_square_signed_zero_cancel_right FS005N four_square_signed_cross_negative mod_eq_add Stable theorem; checked-use authorizedDirect 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 (5)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–14
03Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
split
04Establish hdaL16–21
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed dot negative zero.
- L16
have hda : exists ftcn_left_fssbn_hda ftcn_right_fssbn_hda. (a * e + e * e) + (k) * ftcn_left_fssbn_hda = (0) + (k) * ftcn_right_fssbn_hda - L17
specialize four_square_signed_dot_negative_zero k - L18
specialize four_square_signed_dot_negative_zero a - L19
specialize four_square_signed_dot_negative_zero e - L20
apply four_square_signed_dot_negative_zero - L21
exact ha
05Establish hdbL22–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed dot negative zero.
- L22
have hdb : exists ftcn_left_fssbn_hdb ftcn_right_fssbn_hdb. (b * f + f * f) + (k) * ftcn_left_fssbn_hdb = (0) + (k) * ftcn_right_fssbn_hdb - L23
specialize four_square_signed_dot_negative_zero k - L24
specialize four_square_signed_dot_negative_zero b - L25
specialize four_square_signed_dot_negative_zero f - L26
apply four_square_signed_dot_negative_zero - L27
exact hb
06Establish hdcL28–33
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed dot negative zero.
- L28
have hdc : exists ftcn_left_fssbn_hdc ftcn_right_fssbn_hdc. (c * g + g * g) + (k) * ftcn_left_fssbn_hdc = (0) + (k) * ftcn_right_fssbn_hdc - L29
specialize four_square_signed_dot_negative_zero k - L30
specialize four_square_signed_dot_negative_zero c - L31
specialize four_square_signed_dot_negative_zero g - L32
apply four_square_signed_dot_negative_zero - L33
exact hc
07Establish hddL34–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed dot negative zero.
- L34
have hdd : exists ftcn_left_fssbn_hdd ftcn_right_fssbn_hdd. (d * h + h * h) + (k) * ftcn_left_fssbn_hdd = (0) + (k) * ftcn_right_fssbn_hdd - L35
specialize four_square_signed_dot_negative_zero k - L36
specialize four_square_signed_dot_negative_zero d - L37
specialize four_square_signed_dot_negative_zero h - L38
apply four_square_signed_dot_negative_zero - L39
exact hd
08Establish habzeroL40–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed mod zero add.
- L40
have habzero : exists ftcn_left_fssbn_habzero ftcn_right_fssbn_habzero. ((a * e + e * e) + (b * f + f * f)) + (k) * ftcn_left_fssbn_habzero = (0) + (k) * ftcn_right_fssbn_habzero - L41
specialize four_square_signed_mod_zero_add k - L42
specialize four_square_signed_mod_zero_add (a * e + e * e) - L43
specialize four_square_signed_mod_zero_add (b * f + f * f) - L44
apply four_square_signed_mod_zero_add - L45
exact hda - L46
exact hdb
09Establish hcdzeroL47–53
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed mod zero add.
- L47
have hcdzero : exists ftcn_left_fssbn_hcdzero ftcn_right_fssbn_hcdzero. ((c * g + g * g) + (d * h + h * h)) + (k) * ftcn_left_fssbn_hcdzero = (0) + (k) * ftcn_right_fssbn_hcdzero - L48
specialize four_square_signed_mod_zero_add k - L49
specialize four_square_signed_mod_zero_add (c * g + g * g) - L50
specialize four_square_signed_mod_zero_add (d * h + h * h) - L51
apply four_square_signed_mod_zero_add - L52
exact hdc - L53
exact hdd
10Establish hallzeroL54–60
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed mod zero add.
- L54
have hallzero : exists ftcn_left_fssbn_hallzero ftcn_right_fssbn_hallzero. (((a * e + e * e) + (b * f + f * f)) + ((c * g + g * g) + (d * h + h * h))) + (k) * ftcn_left_fssbn_hallzero = (0) + (k) * ftcn_right_fssbn_hallzero - L55
specialize four_square_signed_mod_zero_add k - L56
specialize four_square_signed_mod_zero_add ((a * e + e * e) + (b * f + f * f)) - L57
specialize four_square_signed_mod_zero_add ((c * g + g * g) + (d * h + h * h)) - L58
apply four_square_signed_mod_zero_add - L59
exact habzero - L60
exact hcdzero
11Establish hshuffleL61–70
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square euler four add shuffle.
- L61
have hshuffle : (((a * e + e * e) + (b * f + f * f)) + ((c * g + g * g) + (d * h + h * h))) = ((a * e + b * f + c * g + d * h) + (e * e + f * f + g * g + h * h)) - L62
trans ((a * e + b * f) + (c * g + d * h)) + ((e * e + f * f) + (g * g + h * h)) - L63
apply four_square_euler_four_add_shuffle - L64
congr - L65
symm - L66
apply add_assoc - L67
symm - L68
apply add_assoc - L69
rewrite hshuffle at hallzero - L70
specialize four_square_signed_zero_cancel_right k
12Use earlier factsL71–75
Instantiate or apply named facts and discharge the corresponding proof obligations.
13Separate the logical casesL76–76
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L76
split
14Establish hnegative_one_firstL77–85
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L77
have hnegative_one_first : exists ftcn_left_fssbn_hnegative_one_first ftcn_right_fssbn_hnegative_one_first. (a * f) + (k) * ftcn_left_fssbn_hnegative_one_first = (b * e) + (k) * ftcn_right_fssbn_hnegative_one_first - L78
specialize four_square_signed_cross_negative k - L79
specialize four_square_signed_cross_negative a - L80
specialize four_square_signed_cross_negative b - L81
specialize four_square_signed_cross_negative e - L82
specialize four_square_signed_cross_negative f - L83
apply four_square_signed_cross_negative - L84
exact ha - L85
exact hb
15Establish hnegative_one_secondL86–95
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L86
have hnegative_one_second : exists ftcn_left_fssbn_hnegative_one_second ftcn_right_fssbn_hnegative_one_second. (c * h) + (k) * ftcn_left_fssbn_hnegative_one_second = (d * g) + (k) * ftcn_right_fssbn_hnegative_one_second - L87
specialize four_square_signed_cross_negative k - L88
specialize four_square_signed_cross_negative c - L89
specialize four_square_signed_cross_negative d - L90
specialize four_square_signed_cross_negative g - L91
specialize four_square_signed_cross_negative h - L92
apply four_square_signed_cross_negative - L93
exact hc - L94
exact hd - L95
specialize mod_eq_add k
16Use earlier factsL96–102
17Separate the logical casesL103–103
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L103
split
18Establish hnegative_two_firstL104–112
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L104
have hnegative_two_first : exists ftcn_left_fssbn_hnegative_two_first ftcn_right_fssbn_hnegative_two_first. (a * g) + (k) * ftcn_left_fssbn_hnegative_two_first = (c * e) + (k) * ftcn_right_fssbn_hnegative_two_first - L105
specialize four_square_signed_cross_negative k - L106
specialize four_square_signed_cross_negative a - L107
specialize four_square_signed_cross_negative c - L108
specialize four_square_signed_cross_negative e - L109
specialize four_square_signed_cross_negative g - L110
apply four_square_signed_cross_negative - L111
exact ha - L112
exact hc
19Establish hnegative_two_secondL113–122
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L113
have hnegative_two_second : exists ftcn_left_fssbn_hnegative_two_second ftcn_right_fssbn_hnegative_two_second. (d * f) + (k) * ftcn_left_fssbn_hnegative_two_second = (b * h) + (k) * ftcn_right_fssbn_hnegative_two_second - L114
specialize four_square_signed_cross_negative k - L115
specialize four_square_signed_cross_negative d - L116
specialize four_square_signed_cross_negative b - L117
specialize four_square_signed_cross_negative h - L118
specialize four_square_signed_cross_negative f - L119
apply four_square_signed_cross_negative - L120
exact hd - L121
exact hb - L122
specialize mod_eq_add k
20Use earlier factsL123–129
21Establish hnegative_three_firstL130–138
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L130
have hnegative_three_first : exists ftcn_left_fssbn_hnegative_three_first ftcn_right_fssbn_hnegative_three_first. (a * h) + (k) * ftcn_left_fssbn_hnegative_three_first = (d * e) + (k) * ftcn_right_fssbn_hnegative_three_first - L131
specialize four_square_signed_cross_negative k - L132
specialize four_square_signed_cross_negative a - L133
specialize four_square_signed_cross_negative d - L134
specialize four_square_signed_cross_negative e - L135
specialize four_square_signed_cross_negative h - L136
apply four_square_signed_cross_negative - L137
exact ha - L138
exact hd
22Establish hnegative_three_secondL139–148
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L139
have hnegative_three_second : exists ftcn_left_fssbn_hnegative_three_second ftcn_right_fssbn_hnegative_three_second. (b * g) + (k) * ftcn_left_fssbn_hnegative_three_second = (c * f) + (k) * ftcn_right_fssbn_hnegative_three_second - L140
specialize four_square_signed_cross_negative k - L141
specialize four_square_signed_cross_negative b - L142
specialize four_square_signed_cross_negative c - L143
specialize four_square_signed_cross_negative f - L144
specialize four_square_signed_cross_negative g - L145
apply four_square_signed_cross_negative - L146
exact hb - L147
exact hc - L148
specialize mod_eq_add k
23Use earlier factsL149–155
Original exact command ledger · 155 lines
- 0001
intro k - 0002
intro a - 0003
intro b - 0004
intro c - 0005
intro d - 0006
intro e - 0007
intro f - 0008
intro g - 0009
intro h - 0010
intro hnorm - 0011
intro ha - 0012
intro hb - 0013
intro hc - 0014
intro hd - 0015
split - 0016
have hda : exists ftcn_left_fssbn_hda ftcn_right_fssbn_hda. (a * e + e * e) + (k) * ftcn_left_fssbn_hda = (0) + (k) * ftcn_right_fssbn_hda - 0017
specialize four_square_signed_dot_negative_zero k - 0018
specialize four_square_signed_dot_negative_zero a - 0019
specialize four_square_signed_dot_negative_zero e - 0020
apply four_square_signed_dot_negative_zero - 0021
exact ha - 0022
have hdb : exists ftcn_left_fssbn_hdb ftcn_right_fssbn_hdb. (b * f + f * f) + (k) * ftcn_left_fssbn_hdb = (0) + (k) * ftcn_right_fssbn_hdb - 0023
specialize four_square_signed_dot_negative_zero k - 0024
specialize four_square_signed_dot_negative_zero b - 0025
specialize four_square_signed_dot_negative_zero f - 0026
apply four_square_signed_dot_negative_zero - 0027
exact hb - 0028
have hdc : exists ftcn_left_fssbn_hdc ftcn_right_fssbn_hdc. (c * g + g * g) + (k) * ftcn_left_fssbn_hdc = (0) + (k) * ftcn_right_fssbn_hdc - 0029
specialize four_square_signed_dot_negative_zero k - 0030
specialize four_square_signed_dot_negative_zero c - 0031
specialize four_square_signed_dot_negative_zero g - 0032
apply four_square_signed_dot_negative_zero - 0033
exact hc - 0034
have hdd : exists ftcn_left_fssbn_hdd ftcn_right_fssbn_hdd. (d * h + h * h) + (k) * ftcn_left_fssbn_hdd = (0) + (k) * ftcn_right_fssbn_hdd - 0035
specialize four_square_signed_dot_negative_zero k - 0036
specialize four_square_signed_dot_negative_zero d - 0037
specialize four_square_signed_dot_negative_zero h - 0038
apply four_square_signed_dot_negative_zero - 0039
exact hd - 0040
have habzero : exists ftcn_left_fssbn_habzero ftcn_right_fssbn_habzero. ((a * e + e * e) + (b * f + f * f)) + (k) * ftcn_left_fssbn_habzero = (0) + (k) * ftcn_right_fssbn_habzero - 0041
specialize four_square_signed_mod_zero_add k - 0042
specialize four_square_signed_mod_zero_add (a * e + e * e) - 0043
specialize four_square_signed_mod_zero_add (b * f + f * f) - 0044
apply four_square_signed_mod_zero_add - 0045
exact hda - 0046
exact hdb - 0047
have hcdzero : exists ftcn_left_fssbn_hcdzero ftcn_right_fssbn_hcdzero. ((c * g + g * g) + (d * h + h * h)) + (k) * ftcn_left_fssbn_hcdzero = (0) + (k) * ftcn_right_fssbn_hcdzero - 0048
specialize four_square_signed_mod_zero_add k - 0049
specialize four_square_signed_mod_zero_add (c * g + g * g) - 0050
specialize four_square_signed_mod_zero_add (d * h + h * h) - 0051
apply four_square_signed_mod_zero_add - 0052
exact hdc - 0053
exact hdd - 0054
have hallzero : exists ftcn_left_fssbn_hallzero ftcn_right_fssbn_hallzero. (((a * e + e * e) + (b * f + f * f)) + ((c * g + g * g) + (d * h + h * h))) + (k) * ftcn_left_fssbn_hallzero = (0) + (k) * ftcn_right_fssbn_hallzero - 0055
specialize four_square_signed_mod_zero_add k - 0056
specialize four_square_signed_mod_zero_add ((a * e + e * e) + (b * f + f * f)) - 0057
specialize four_square_signed_mod_zero_add ((c * g + g * g) + (d * h + h * h)) - 0058
apply four_square_signed_mod_zero_add - 0059
exact habzero - 0060
exact hcdzero - 0061
have hshuffle : (((a * e + e * e) + (b * f + f * f)) + ((c * g + g * g) + (d * h + h * h))) = ((a * e + b * f + c * g + d * h) + (e * e + f * f + g * g + h * h)) - 0062
trans ((a * e + b * f) + (c * g + d * h)) + ((e * e + f * f) + (g * g + h * h)) - 0063
apply four_square_euler_four_add_shuffle - 0064
congr - 0065
symm - 0066
apply add_assoc - 0067
symm - 0068
apply add_assoc - 0069
rewrite hshuffle at hallzero - 0070
specialize four_square_signed_zero_cancel_right k - 0071
specialize four_square_signed_zero_cancel_right (a * e + b * f + c * g + d * h) - 0072
specialize four_square_signed_zero_cancel_right (e * e + f * f + g * g + h * h) - 0073
apply four_square_signed_zero_cancel_right - 0074
exact hallzero - 0075
exact hnorm - 0076
split - 0077
have hnegative_one_first : exists ftcn_left_fssbn_hnegative_one_first ftcn_right_fssbn_hnegative_one_first. (a * f) + (k) * ftcn_left_fssbn_hnegative_one_first = (b * e) + (k) * ftcn_right_fssbn_hnegative_one_first - 0078
specialize four_square_signed_cross_negative k - 0079
specialize four_square_signed_cross_negative a - 0080
specialize four_square_signed_cross_negative b - 0081
specialize four_square_signed_cross_negative e - 0082
specialize four_square_signed_cross_negative f - 0083
apply four_square_signed_cross_negative - 0084
exact ha - 0085
exact hb - 0086
have hnegative_one_second : exists ftcn_left_fssbn_hnegative_one_second ftcn_right_fssbn_hnegative_one_second. (c * h) + (k) * ftcn_left_fssbn_hnegative_one_second = (d * g) + (k) * ftcn_right_fssbn_hnegative_one_second - 0087
specialize four_square_signed_cross_negative k - 0088
specialize four_square_signed_cross_negative c - 0089
specialize four_square_signed_cross_negative d - 0090
specialize four_square_signed_cross_negative g - 0091
specialize four_square_signed_cross_negative h - 0092
apply four_square_signed_cross_negative - 0093
exact hc - 0094
exact hd - 0095
specialize mod_eq_add k - 0096
specialize mod_eq_add (a * f) - 0097
specialize mod_eq_add (b * e) - 0098
specialize mod_eq_add (c * h) - 0099
specialize mod_eq_add (d * g) - 0100
apply mod_eq_add - 0101
exact hnegative_one_first - 0102
exact hnegative_one_second - 0103
split - 0104
have hnegative_two_first : exists ftcn_left_fssbn_hnegative_two_first ftcn_right_fssbn_hnegative_two_first. (a * g) + (k) * ftcn_left_fssbn_hnegative_two_first = (c * e) + (k) * ftcn_right_fssbn_hnegative_two_first - 0105
specialize four_square_signed_cross_negative k - 0106
specialize four_square_signed_cross_negative a - 0107
specialize four_square_signed_cross_negative c - 0108
specialize four_square_signed_cross_negative e - 0109
specialize four_square_signed_cross_negative g - 0110
apply four_square_signed_cross_negative - 0111
exact ha - 0112
exact hc - 0113
have hnegative_two_second : exists ftcn_left_fssbn_hnegative_two_second ftcn_right_fssbn_hnegative_two_second. (d * f) + (k) * ftcn_left_fssbn_hnegative_two_second = (b * h) + (k) * ftcn_right_fssbn_hnegative_two_second - 0114
specialize four_square_signed_cross_negative k - 0115
specialize four_square_signed_cross_negative d - 0116
specialize four_square_signed_cross_negative b - 0117
specialize four_square_signed_cross_negative h - 0118
specialize four_square_signed_cross_negative f - 0119
apply four_square_signed_cross_negative - 0120
exact hd - 0121
exact hb - 0122
specialize mod_eq_add k - 0123
specialize mod_eq_add (a * g) - 0124
specialize mod_eq_add (c * e) - 0125
specialize mod_eq_add (d * f) - 0126
specialize mod_eq_add (b * h) - 0127
apply mod_eq_add - 0128
exact hnegative_two_first - 0129
exact hnegative_two_second - 0130
have hnegative_three_first : exists ftcn_left_fssbn_hnegative_three_first ftcn_right_fssbn_hnegative_three_first. (a * h) + (k) * ftcn_left_fssbn_hnegative_three_first = (d * e) + (k) * ftcn_right_fssbn_hnegative_three_first - 0131
specialize four_square_signed_cross_negative k - 0132
specialize four_square_signed_cross_negative a - 0133
specialize four_square_signed_cross_negative d - 0134
specialize four_square_signed_cross_negative e - 0135
specialize four_square_signed_cross_negative h - 0136
apply four_square_signed_cross_negative - 0137
exact ha - 0138
exact hd - 0139
have hnegative_three_second : exists ftcn_left_fssbn_hnegative_three_second ftcn_right_fssbn_hnegative_three_second. (b * g) + (k) * ftcn_left_fssbn_hnegative_three_second = (c * f) + (k) * ftcn_right_fssbn_hnegative_three_second - 0140
specialize four_square_signed_cross_negative k - 0141
specialize four_square_signed_cross_negative b - 0142
specialize four_square_signed_cross_negative c - 0143
specialize four_square_signed_cross_negative f - 0144
specialize four_square_signed_cross_negative g - 0145
apply four_square_signed_cross_negative - 0146
exact hb - 0147
exact hc - 0148
specialize mod_eq_add k - 0149
specialize mod_eq_add (a * h) - 0150
specialize mod_eq_add (d * e) - 0151
specialize mod_eq_add (b * g) - 0152
specialize mod_eq_add (c * f) - 0153
apply mod_eq_add - 0154
exact hnegative_three_first - 0155
exact hnegative_three_second