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_natural_positive_first_norm ftcn_right_fssbn_natural_positive_first_norm. (e * e + f * f + g * g + h * h) + (k) * ftcn_left_fssbn_natural_positive_first_norm = (0) + (k) * ftcn_right_fssbn_natural_positive_first_norm) -> (exists ftcn_left_fssbn_natural_positive_first_a_positive ftcn_right_fssbn_natural_positive_first_a_positive. (a) + (k) * ftcn_left_fssbn_natural_positive_first_a_positive = (e) + (k) * ftcn_right_fssbn_natural_positive_first_a_positive) -> (exists ftcn_left_fssbn_natural_positive_first_b_negative ftcn_right_fssbn_natural_positive_first_b_negative. (b + f) + (k) * ftcn_left_fssbn_natural_positive_first_b_negative = (0) + (k) * ftcn_right_fssbn_natural_positive_first_b_negative) -> (exists ftcn_left_fssbn_natural_positive_first_c_negative ftcn_right_fssbn_natural_positive_first_c_negative. (c + g) + (k) * ftcn_left_fssbn_natural_positive_first_c_negative = (0) + (k) * ftcn_right_fssbn_natural_positive_first_c_negative) -> (exists ftcn_left_fssbn_natural_positive_first_d_negative ftcn_right_fssbn_natural_positive_first_d_negative. (d + h) + (k) * ftcn_left_fssbn_natural_positive_first_d_negative = (0) + (k) * ftcn_right_fssbn_natural_positive_first_d_negative) -> ((exists ftcn_left_fssbn_natural_positive_first_block_0 ftcn_right_fssbn_natural_positive_first_block_0. (a * e) + (k) * ftcn_left_fssbn_natural_positive_first_block_0 = (b * f + c * g + d * h) + (k) * ftcn_right_fssbn_natural_positive_first_block_0) /\ ((exists ftcn_left_fssbn_natural_positive_first_block_1 ftcn_right_fssbn_natural_positive_first_block_1. (a * f + b * e + c * h) + (k) * ftcn_left_fssbn_natural_positive_first_block_1 = (d * g) + (k) * ftcn_right_fssbn_natural_positive_first_block_1) /\ ((exists ftcn_left_fssbn_natural_positive_first_block_2 ftcn_right_fssbn_natural_positive_first_block_2. (a * g + c * e + d * f) + (k) * ftcn_left_fssbn_natural_positive_first_block_2 = (b * h) + (k) * ftcn_right_fssbn_natural_positive_first_block_2) /\ (exists ftcn_left_fssbn_natural_positive_first_block_3 ftcn_right_fssbn_natural_positive_first_block_3. (a * h + b * g + d * e) + (k) * ftcn_left_fssbn_natural_positive_first_block_3 = (c * f) + (k) * ftcn_right_fssbn_natural_positive_first_block_3))))Constructive proof overview
Generated structural guide
A positive first orientation and three negative orientations make all four ordinary Hamilton quaternion blocks congruent modulo the multiplier.
The unchanged tactic script uses 11 declared prerequisites and contains 167 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
FS005U four_square_signed_dot_positive FS005V four_square_signed_dot_negative_zero FS005P four_square_signed_mod_zero_add add_assoc Stable theorem; checked-use authorized add_comm Stable theorem; checked-use authorized FS0006 four_square_add_swap_right_tail FS005X four_square_signed_partition_balance FS005O four_square_signed_cross_mixed_zero FS005N four_square_signed_cross_negative FS005W four_square_signed_mod_zero_plus_congruent FS002N four_square_euler_add_swap_lastDirect 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 (9)
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 hpositiveL16–21
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed dot positive.
- L16
have hpositive : exists ftcn_left_fssbn_positive_first_dot ftcn_right_fssbn_positive_first_dot. (a * e) + (k) * ftcn_left_fssbn_positive_first_dot = (e * e) + (k) * ftcn_right_fssbn_positive_first_dot - L17
specialize four_square_signed_dot_positive k - L18
specialize four_square_signed_dot_positive a - L19
specialize four_square_signed_dot_positive e - L20
apply four_square_signed_dot_positive - 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 hbczeroL40–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 hbczero : exists ftcn_left_fssbn_hbczero ftcn_right_fssbn_hbczero. ((b * f + f * f) + (c * g + g * g)) + (k) * ftcn_left_fssbn_hbczero = (0) + (k) * ftcn_right_fssbn_hbczero - L41
specialize four_square_signed_mod_zero_add k - L42
specialize four_square_signed_mod_zero_add (b * f + f * f) - L43
specialize four_square_signed_mod_zero_add (c * g + g * g) - L44
apply four_square_signed_mod_zero_add - L45
exact hdb - L46
exact hdc
09Establish hnegativeL47–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 hnegative : exists ftcn_left_fssbn_hnegative ftcn_right_fssbn_hnegative. (((b * f + f * f) + (c * g + g * g)) + (d * h + h * h)) + (k) * ftcn_left_fssbn_hnegative = (0) + (k) * ftcn_right_fssbn_hnegative - L48
specialize four_square_signed_mod_zero_add k - L49
specialize four_square_signed_mod_zero_add ((b * f + f * f) + (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 hbczero - L53
exact hdd
10Establish hshuffleL54–63
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square add swap right tail.
- L54
have hshuffle : (((b * f + f * f) + (c * g + g * g)) + (d * h + h * h)) = ((b * f + c * g + d * h) + (f * f + g * g + h * h)) - L55
trans ((b * f) + ((f * f) + ((c * g) + ((g * g) + ((d * h) + (h * h)))))) - L56
simp [add_assoc] - L57
trans ((b * f) + ((c * g) + ((d * h) + ((f * f) + ((g * g) + (h * h)))))) - L58
congr - L59
refl - L60
trans ((c * g) + ((f * f) + ((g * g) + ((d * h) + (h * h))))) - L61
apply four_square_add_swap_right_tail - L62
congr - L63
refl
11Calculate and transport equalitiesL64–67
12Use earlier factsL68–69
13Calculate and transport equalitiesL70–75
14Establish hnormshapeL76–85
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed partition balance.
- L76
have hnormshape : (e * e + f * f + g * g + h * h) = ((e * e) + (f * f + g * g + h * h)) - L77
simp [add_assoc] - L78
rewrite hnormshape at hnorm - L79
specialize four_square_signed_partition_balance k - L80
specialize four_square_signed_partition_balance (a * e) - L81
specialize four_square_signed_partition_balance (e * e) - L82
specialize four_square_signed_partition_balance (b * f + c * g + d * h) - L83
specialize four_square_signed_partition_balance (f * f + g * g + h * h) - L84
apply four_square_signed_partition_balance - L85
exact hpositive
15Use earlier factsL86–87
16Separate the logical casesL88–88
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L88
split
17Establish hfirst_zeroL89–97
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross mixed zero.
- L89
have hfirst_zero : exists ftcn_left_fssbn_hfirst_zero ftcn_right_fssbn_hfirst_zero. (a * f + b * e) + (k) * ftcn_left_fssbn_hfirst_zero = (0) + (k) * ftcn_right_fssbn_hfirst_zero - L90
specialize four_square_signed_cross_mixed_zero k - L91
specialize four_square_signed_cross_mixed_zero a - L92
specialize four_square_signed_cross_mixed_zero b - L93
specialize four_square_signed_cross_mixed_zero e - L94
specialize four_square_signed_cross_mixed_zero f - L95
apply four_square_signed_cross_mixed_zero - L96
exact ha - L97
exact hb
18Establish hfirst_crossL98–107
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L98
have hfirst_cross : exists ftcn_left_fssbn_hfirst_cross ftcn_right_fssbn_hfirst_cross. (c * h) + (k) * ftcn_left_fssbn_hfirst_cross = (d * g) + (k) * ftcn_right_fssbn_hfirst_cross - L99
specialize four_square_signed_cross_negative k - L100
specialize four_square_signed_cross_negative c - L101
specialize four_square_signed_cross_negative d - L102
specialize four_square_signed_cross_negative g - L103
specialize four_square_signed_cross_negative h - L104
apply four_square_signed_cross_negative - L105
exact hc - L106
exact hd - L107
specialize four_square_signed_mod_zero_plus_congruent k
19Use earlier factsL108–113
Instantiate or apply named facts and discharge the corresponding proof obligations.
20Separate the logical casesL114–114
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L114
split
21Establish hsecond_zeroL115–123
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross mixed zero.
- L115
have hsecond_zero : exists ftcn_left_fssbn_hsecond_zero ftcn_right_fssbn_hsecond_zero. (a * g + c * e) + (k) * ftcn_left_fssbn_hsecond_zero = (0) + (k) * ftcn_right_fssbn_hsecond_zero - L116
specialize four_square_signed_cross_mixed_zero k - L117
specialize four_square_signed_cross_mixed_zero a - L118
specialize four_square_signed_cross_mixed_zero c - L119
specialize four_square_signed_cross_mixed_zero e - L120
specialize four_square_signed_cross_mixed_zero g - L121
apply four_square_signed_cross_mixed_zero - L122
exact ha - L123
exact hc
22Establish hsecond_crossL124–133
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L124
have hsecond_cross : exists ftcn_left_fssbn_hsecond_cross ftcn_right_fssbn_hsecond_cross. (d * f) + (k) * ftcn_left_fssbn_hsecond_cross = (b * h) + (k) * ftcn_right_fssbn_hsecond_cross - L125
specialize four_square_signed_cross_negative k - L126
specialize four_square_signed_cross_negative d - L127
specialize four_square_signed_cross_negative b - L128
specialize four_square_signed_cross_negative h - L129
specialize four_square_signed_cross_negative f - L130
apply four_square_signed_cross_negative - L131
exact hd - L132
exact hb - L133
specialize four_square_signed_mod_zero_plus_congruent k
23Use earlier factsL134–139
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L134
specialize four_square_signed_mod_zero_plus_congruent (a * g + c * e) - L135
specialize four_square_signed_mod_zero_plus_congruent (d * f) - L136
specialize four_square_signed_mod_zero_plus_congruent (b * h) - L137
apply four_square_signed_mod_zero_plus_congruent - L138
exact hsecond_zero - L139
exact hsecond_cross
24Establish hthird_zeroL140–148
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross mixed zero.
- L140
have hthird_zero : exists ftcn_left_fssbn_hthird_zero ftcn_right_fssbn_hthird_zero. (a * h + d * e) + (k) * ftcn_left_fssbn_hthird_zero = (0) + (k) * ftcn_right_fssbn_hthird_zero - L141
specialize four_square_signed_cross_mixed_zero k - L142
specialize four_square_signed_cross_mixed_zero a - L143
specialize four_square_signed_cross_mixed_zero d - L144
specialize four_square_signed_cross_mixed_zero e - L145
specialize four_square_signed_cross_mixed_zero h - L146
apply four_square_signed_cross_mixed_zero - L147
exact ha - L148
exact hd
25Establish hthird_crossL149–157
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cross negative.
- L149
have hthird_cross : exists ftcn_left_fssbn_hthird_cross ftcn_right_fssbn_hthird_cross. (b * g) + (k) * ftcn_left_fssbn_hthird_cross = (c * f) + (k) * ftcn_right_fssbn_hthird_cross - L150
specialize four_square_signed_cross_negative k - L151
specialize four_square_signed_cross_negative b - L152
specialize four_square_signed_cross_negative c - L153
specialize four_square_signed_cross_negative f - L154
specialize four_square_signed_cross_negative g - L155
apply four_square_signed_cross_negative - L156
exact hb - L157
exact hc
26Establish hswapL158–167
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square euler add swap last.
- L158
have hswap : (a * h + b * g) + d * e = (a * h + d * e) + b * g - L159
apply four_square_euler_add_swap_last - L160
rewrite hswap - L161
specialize four_square_signed_mod_zero_plus_congruent k - L162
specialize four_square_signed_mod_zero_plus_congruent (a * h + d * e) - L163
specialize four_square_signed_mod_zero_plus_congruent (b * g) - L164
specialize four_square_signed_mod_zero_plus_congruent (c * f) - L165
apply four_square_signed_mod_zero_plus_congruent - L166
exact hthird_zero - L167
exact hthird_cross
Original exact command ledger · 167 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 hpositive : exists ftcn_left_fssbn_positive_first_dot ftcn_right_fssbn_positive_first_dot. (a * e) + (k) * ftcn_left_fssbn_positive_first_dot = (e * e) + (k) * ftcn_right_fssbn_positive_first_dot - 0017
specialize four_square_signed_dot_positive k - 0018
specialize four_square_signed_dot_positive a - 0019
specialize four_square_signed_dot_positive e - 0020
apply four_square_signed_dot_positive - 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 hbczero : exists ftcn_left_fssbn_hbczero ftcn_right_fssbn_hbczero. ((b * f + f * f) + (c * g + g * g)) + (k) * ftcn_left_fssbn_hbczero = (0) + (k) * ftcn_right_fssbn_hbczero - 0041
specialize four_square_signed_mod_zero_add k - 0042
specialize four_square_signed_mod_zero_add (b * f + f * f) - 0043
specialize four_square_signed_mod_zero_add (c * g + g * g) - 0044
apply four_square_signed_mod_zero_add - 0045
exact hdb - 0046
exact hdc - 0047
have hnegative : exists ftcn_left_fssbn_hnegative ftcn_right_fssbn_hnegative. (((b * f + f * f) + (c * g + g * g)) + (d * h + h * h)) + (k) * ftcn_left_fssbn_hnegative = (0) + (k) * ftcn_right_fssbn_hnegative - 0048
specialize four_square_signed_mod_zero_add k - 0049
specialize four_square_signed_mod_zero_add ((b * f + f * f) + (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 hbczero - 0053
exact hdd - 0054
have hshuffle : (((b * f + f * f) + (c * g + g * g)) + (d * h + h * h)) = ((b * f + c * g + d * h) + (f * f + g * g + h * h)) - 0055
trans ((b * f) + ((f * f) + ((c * g) + ((g * g) + ((d * h) + (h * h)))))) - 0056
simp [add_assoc] - 0057
trans ((b * f) + ((c * g) + ((d * h) + ((f * f) + ((g * g) + (h * h)))))) - 0058
congr - 0059
refl - 0060
trans ((c * g) + ((f * f) + ((g * g) + ((d * h) + (h * h))))) - 0061
apply four_square_add_swap_right_tail - 0062
congr - 0063
refl - 0064
trans ((d * h) + ((f * f) + ((g * g) + (h * h)))) - 0065
trans ((f * f) + ((d * h) + ((g * g) + (h * h)))) - 0066
congr - 0067
refl - 0068
apply four_square_add_swap_right_tail - 0069
apply four_square_add_swap_right_tail - 0070
congr - 0071
refl - 0072
refl - 0073
symm - 0074
simp [add_assoc] - 0075
rewrite hshuffle at hnegative - 0076
have hnormshape : (e * e + f * f + g * g + h * h) = ((e * e) + (f * f + g * g + h * h)) - 0077
simp [add_assoc] - 0078
rewrite hnormshape at hnorm - 0079
specialize four_square_signed_partition_balance k - 0080
specialize four_square_signed_partition_balance (a * e) - 0081
specialize four_square_signed_partition_balance (e * e) - 0082
specialize four_square_signed_partition_balance (b * f + c * g + d * h) - 0083
specialize four_square_signed_partition_balance (f * f + g * g + h * h) - 0084
apply four_square_signed_partition_balance - 0085
exact hpositive - 0086
exact hnegative - 0087
exact hnorm - 0088
split - 0089
have hfirst_zero : exists ftcn_left_fssbn_hfirst_zero ftcn_right_fssbn_hfirst_zero. (a * f + b * e) + (k) * ftcn_left_fssbn_hfirst_zero = (0) + (k) * ftcn_right_fssbn_hfirst_zero - 0090
specialize four_square_signed_cross_mixed_zero k - 0091
specialize four_square_signed_cross_mixed_zero a - 0092
specialize four_square_signed_cross_mixed_zero b - 0093
specialize four_square_signed_cross_mixed_zero e - 0094
specialize four_square_signed_cross_mixed_zero f - 0095
apply four_square_signed_cross_mixed_zero - 0096
exact ha - 0097
exact hb - 0098
have hfirst_cross : exists ftcn_left_fssbn_hfirst_cross ftcn_right_fssbn_hfirst_cross. (c * h) + (k) * ftcn_left_fssbn_hfirst_cross = (d * g) + (k) * ftcn_right_fssbn_hfirst_cross - 0099
specialize four_square_signed_cross_negative k - 0100
specialize four_square_signed_cross_negative c - 0101
specialize four_square_signed_cross_negative d - 0102
specialize four_square_signed_cross_negative g - 0103
specialize four_square_signed_cross_negative h - 0104
apply four_square_signed_cross_negative - 0105
exact hc - 0106
exact hd - 0107
specialize four_square_signed_mod_zero_plus_congruent k - 0108
specialize four_square_signed_mod_zero_plus_congruent (a * f + b * e) - 0109
specialize four_square_signed_mod_zero_plus_congruent (c * h) - 0110
specialize four_square_signed_mod_zero_plus_congruent (d * g) - 0111
apply four_square_signed_mod_zero_plus_congruent - 0112
exact hfirst_zero - 0113
exact hfirst_cross - 0114
split - 0115
have hsecond_zero : exists ftcn_left_fssbn_hsecond_zero ftcn_right_fssbn_hsecond_zero. (a * g + c * e) + (k) * ftcn_left_fssbn_hsecond_zero = (0) + (k) * ftcn_right_fssbn_hsecond_zero - 0116
specialize four_square_signed_cross_mixed_zero k - 0117
specialize four_square_signed_cross_mixed_zero a - 0118
specialize four_square_signed_cross_mixed_zero c - 0119
specialize four_square_signed_cross_mixed_zero e - 0120
specialize four_square_signed_cross_mixed_zero g - 0121
apply four_square_signed_cross_mixed_zero - 0122
exact ha - 0123
exact hc - 0124
have hsecond_cross : exists ftcn_left_fssbn_hsecond_cross ftcn_right_fssbn_hsecond_cross. (d * f) + (k) * ftcn_left_fssbn_hsecond_cross = (b * h) + (k) * ftcn_right_fssbn_hsecond_cross - 0125
specialize four_square_signed_cross_negative k - 0126
specialize four_square_signed_cross_negative d - 0127
specialize four_square_signed_cross_negative b - 0128
specialize four_square_signed_cross_negative h - 0129
specialize four_square_signed_cross_negative f - 0130
apply four_square_signed_cross_negative - 0131
exact hd - 0132
exact hb - 0133
specialize four_square_signed_mod_zero_plus_congruent k - 0134
specialize four_square_signed_mod_zero_plus_congruent (a * g + c * e) - 0135
specialize four_square_signed_mod_zero_plus_congruent (d * f) - 0136
specialize four_square_signed_mod_zero_plus_congruent (b * h) - 0137
apply four_square_signed_mod_zero_plus_congruent - 0138
exact hsecond_zero - 0139
exact hsecond_cross - 0140
have hthird_zero : exists ftcn_left_fssbn_hthird_zero ftcn_right_fssbn_hthird_zero. (a * h + d * e) + (k) * ftcn_left_fssbn_hthird_zero = (0) + (k) * ftcn_right_fssbn_hthird_zero - 0141
specialize four_square_signed_cross_mixed_zero k - 0142
specialize four_square_signed_cross_mixed_zero a - 0143
specialize four_square_signed_cross_mixed_zero d - 0144
specialize four_square_signed_cross_mixed_zero e - 0145
specialize four_square_signed_cross_mixed_zero h - 0146
apply four_square_signed_cross_mixed_zero - 0147
exact ha - 0148
exact hd - 0149
have hthird_cross : exists ftcn_left_fssbn_hthird_cross ftcn_right_fssbn_hthird_cross. (b * g) + (k) * ftcn_left_fssbn_hthird_cross = (c * f) + (k) * ftcn_right_fssbn_hthird_cross - 0150
specialize four_square_signed_cross_negative k - 0151
specialize four_square_signed_cross_negative b - 0152
specialize four_square_signed_cross_negative c - 0153
specialize four_square_signed_cross_negative f - 0154
specialize four_square_signed_cross_negative g - 0155
apply four_square_signed_cross_negative - 0156
exact hb - 0157
exact hc - 0158
have hswap : (a * h + b * g) + d * e = (a * h + d * e) + b * g - 0159
apply four_square_euler_add_swap_last - 0160
rewrite hswap - 0161
specialize four_square_signed_mod_zero_plus_congruent k - 0162
specialize four_square_signed_mod_zero_plus_congruent (a * h + d * e) - 0163
specialize four_square_signed_mod_zero_plus_congruent (b * g) - 0164
specialize four_square_signed_mod_zero_plus_congruent (c * f) - 0165
apply four_square_signed_mod_zero_plus_congruent - 0166
exact hthird_zero - 0167
exact hthird_cross