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 p k h a b c d e f g j r. ~(k = 0) -> k = 2 * h + 1 -> p * k = a * a + b * b + c * c + d * d -> (exists ftcn_left_mask_13_0 ftcn_right_mask_13_0. (a + e) + (k) * ftcn_left_mask_13_0 = (0) + (k) * ftcn_right_mask_13_0) -> (exists ftcn_left_mask_13_1 ftcn_right_mask_13_1. (b) + (k) * ftcn_left_mask_13_1 = (f) + (k) * ftcn_right_mask_13_1) -> (exists ftcn_left_mask_13_2 ftcn_right_mask_13_2. (c + g) + (k) * ftcn_left_mask_13_2 = (0) + (k) * ftcn_right_mask_13_2) -> (exists ftcn_left_mask_13_3 ftcn_right_mask_13_3. (d + j) + (k) * ftcn_left_mask_13_3 = (0) + (k) * ftcn_right_mask_13_3) -> k * r = e * e + f * f + g * g + j * j -> (exists fsl_a_fssc_mask_13 fsl_b_fssc_mask_13 fsl_c_fssc_mask_13 fsl_d_fssc_mask_13. (p * r) = fsl_a_fssc_mask_13 * fsl_a_fssc_mask_13 + fsl_b_fssc_mask_13 * fsl_b_fssc_mask_13 + fsl_c_fssc_mask_13 * fsl_c_fssc_mask_13 + fsl_d_fssc_mask_13 * fsl_d_fssc_mask_13)Constructive proof overview
Generated structural guide
Constructive signed quaternion quotient for centered orientation mask 1101, using the exact four_square_signed_natural_positive_first_blocks surface.
The unchanged tactic script uses 8 declared prerequisites and contains 144 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
FS004P four_square_signed_cases_norm_quotient_zero_congruence FS004O four_square_signed_natural_positive_first_blocks FS0057 four_square_signed_absolute_block_representation add_assoc Stable theorem; checked-use authorized add_comm Stable theorem; checked-use authorized FS0006 four_square_add_swap_right_tail FS0005 quaternion_coordinate_absolute_total FS002Y four_square_euler_quaternionDirect 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 (6)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Establish hfirst_permutedL21–30
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square add swap right tail.
- L21
have hfirst_permuted : p * k = b * b + a * a + c * c + d * d - L22
trans a * a + b * b + c * c + d * d - L23
exact hfirst - L24
trans ((a * a) + ((b * b) + ((c * c) + (d * d)))) - L25
simp [add_assoc] - L26
trans ((b * b) + ((a * a) + ((c * c) + (d * d)))) - L27
trans ((b * b) + ((a * a) + ((c * c) + (d * d)))) - L28
apply four_square_add_swap_right_tail - L29
congr - L30
refl
04Calculate and transport equalitiesL31–33
05Establish hcenter_permutedL34–43
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square add swap right tail.
- L34
have hcenter_permuted : k * r = f * f + e * e + g * g + j * j - L35
trans e * e + f * f + g * g + j * j - L36
exact hcenter - L37
trans ((e * e) + ((f * f) + ((g * g) + (j * j)))) - L38
simp [add_assoc] - L39
trans ((f * f) + ((e * e) + ((g * g) + (j * j)))) - L40
trans ((f * f) + ((e * e) + ((g * g) + (j * j)))) - L41
apply four_square_add_swap_right_tail - L42
congr - L43
refl
06Calculate and transport equalitiesL44–46
07Establish hzeroL47–55
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square signed cases norm quotient zero congruence.
- L47
have hzero : (exists ftcn_left_case_13_zero ftcn_right_case_13_zero. (f * f + e * e + g * g + j * j) + (k) * ftcn_left_case_13_zero = (0) + (k) * ftcn_right_case_13_zero) - L48
specialize four_square_signed_cases_norm_quotient_zero_congruence k - L49
specialize four_square_signed_cases_norm_quotient_zero_congruence r - L50
specialize four_square_signed_cases_norm_quotient_zero_congruence f - L51
specialize four_square_signed_cases_norm_quotient_zero_congruence e - L52
specialize four_square_signed_cases_norm_quotient_zero_congruence g - L53
specialize four_square_signed_cases_norm_quotient_zero_congruence j - L54
apply four_square_signed_cases_norm_quotient_zero_congruence - L55
exact hcenter_permuted
08Establish hblocksL56–65
Establish this local claim before using it. It is not an additional assumption.
- L56
have hblocks : ModEq(k,b · f,a · e + c · g + d · j) ∧ (ModEq(k,b · e + a · f + c · j,d · g) ∧ (ModEq(k,b · g + c · f + d · e,a · j) ∧ ModEq(k,b · j + a · g + d · f,c · e)))Definitions: ModEq - L57
specialize four_square_signed_natural_positive_first_blocks k - L58
specialize four_square_signed_natural_positive_first_blocks b - L59
specialize four_square_signed_natural_positive_first_blocks a - L60
specialize four_square_signed_natural_positive_first_blocks c - L61
specialize four_square_signed_natural_positive_first_blocks d - L62
specialize four_square_signed_natural_positive_first_blocks f - L63
specialize four_square_signed_natural_positive_first_blocks e - L64
specialize four_square_signed_natural_positive_first_blocks g - L65
specialize four_square_signed_natural_positive_first_blocks j
09Use earlier factsL66–71
10Establish hcoordinatesL72–81
Establish this local claim before using it. It is not an additional assumption.
- L72
have hcoordinates : exists m0 m1 m2 m3. ((((b * f) = (a * e + c * g + d * j) + m0) \/ ((a * e + c * g + d * j) = (b * f) + m0)) /\ ((((b * e + a * f + c * j) = (d * g) + m1) \/ ((d * g) = (b * e + a * f + c * j) + m1)) /\ ((((b * g + c * f + d * e) = (a * j) + m2) \/ ((a * j) = (b * g + c * f + d * e) + m2)) /\ (((b * j + a * g + d * f) = (c * e) + m3) \/ ((c * e) = (b * j + a * g + d * f) + m3))))) - L73
specialize quaternion_coordinate_absolute_total b - L74
specialize quaternion_coordinate_absolute_total a - L75
specialize quaternion_coordinate_absolute_total c - L76
specialize quaternion_coordinate_absolute_total d - L77
specialize quaternion_coordinate_absolute_total f - L78
specialize quaternion_coordinate_absolute_total e - L79
specialize quaternion_coordinate_absolute_total g - L80
specialize quaternion_coordinate_absolute_total j - L81
exact quaternion_coordinate_absolute_total
11Separate the logical casesL82–85
12Establish habsoluteL86–87
Establish this local claim before using it. It is not an additional assumption.
- L86
have habsolute : ((((b * f) = (a * e + c * g + d * j) + x) \/ ((a * e + c * g + d * j) = (b * f) + x)) /\ ((((b * e + a * f + c * j) = (d * g) + x1) \/ ((d * g) = (b * e + a * f + c * j) + x1)) /\ ((((b * g + c * f + d * e) = (a * j) + x2) \/ ((a * j) = (b * g + c * f + d * e) + x2)) /\ (((b * j + a * g + d * f) = (c * e) + x3) \/ ((c * e) = (b * j + a * g + d * f) + x3))))) - L87
exact hcoordinates_witness_witness_witness_witness
13Establish hidentityL88–97
Establish this local claim before using it. It is not an additional assumption.
- L88
have hidentity : (b * b + a * a + c * c + d * d) * (f * f + e * e + g * g + j * j) = x * x + x1 * x1 + x2 * x2 + x3 * x3 - L89
specialize four_square_euler_quaternion b - L90
specialize four_square_euler_quaternion a - L91
specialize four_square_euler_quaternion c - L92
specialize four_square_euler_quaternion d - L93
specialize four_square_euler_quaternion f - L94
specialize four_square_euler_quaternion e - L95
specialize four_square_euler_quaternion g - L96
specialize four_square_euler_quaternion j - L97
specialize four_square_euler_quaternion x
14Use earlier factsL98–102
15Establish hcenter_identityL103–106
16Establish hproductL107–112
Establish this local claim before using it. It is not an additional assumption.
17Separate the logical casesL113–118
18Use earlier factsL119–128
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L119
specialize four_square_signed_absolute_block_representation p - L120
specialize four_square_signed_absolute_block_representation k - L121
specialize four_square_signed_absolute_block_representation r - L122
specialize four_square_signed_absolute_block_representation (b * f) - L123
specialize four_square_signed_absolute_block_representation (b * e + a * f + c * j) - L124
specialize four_square_signed_absolute_block_representation (b * g + c * f + d * e) - L125
specialize four_square_signed_absolute_block_representation (b * j + a * g + d * f) - L126
specialize four_square_signed_absolute_block_representation (a * e + c * g + d * j) - L127
specialize four_square_signed_absolute_block_representation (d * g) - L128
specialize four_square_signed_absolute_block_representation (a * j)
19Use earlier factsL129–138
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L129
specialize four_square_signed_absolute_block_representation (c * e) - L130
specialize four_square_signed_absolute_block_representation x - L131
specialize four_square_signed_absolute_block_representation x1 - L132
specialize four_square_signed_absolute_block_representation x2 - L133
specialize four_square_signed_absolute_block_representation x3 - L134
apply four_square_signed_absolute_block_representation - L135
exact hnonzero - L136
exact hproduct - L137
exact hblocks_left - L138
exact habsolute_left
20Use earlier factsL139–144
Original exact command ledger · 144 lines
- 0001
intro p - 0002
intro k - 0003
intro h - 0004
intro a - 0005
intro b - 0006
intro c - 0007
intro d - 0008
intro e - 0009
intro f - 0010
intro g - 0011
intro j - 0012
intro r - 0013
intro hnonzero - 0014
intro hodd - 0015
intro hfirst - 0016
intro horientation0 - 0017
intro horientation1 - 0018
intro horientation2 - 0019
intro horientation3 - 0020
intro hcenter - 0021
have hfirst_permuted : p * k = b * b + a * a + c * c + d * d - 0022
trans a * a + b * b + c * c + d * d - 0023
exact hfirst - 0024
trans ((a * a) + ((b * b) + ((c * c) + (d * d)))) - 0025
simp [add_assoc] - 0026
trans ((b * b) + ((a * a) + ((c * c) + (d * d)))) - 0027
trans ((b * b) + ((a * a) + ((c * c) + (d * d)))) - 0028
apply four_square_add_swap_right_tail - 0029
congr - 0030
refl - 0031
refl - 0032
symm - 0033
simp [add_assoc] - 0034
have hcenter_permuted : k * r = f * f + e * e + g * g + j * j - 0035
trans e * e + f * f + g * g + j * j - 0036
exact hcenter - 0037
trans ((e * e) + ((f * f) + ((g * g) + (j * j)))) - 0038
simp [add_assoc] - 0039
trans ((f * f) + ((e * e) + ((g * g) + (j * j)))) - 0040
trans ((f * f) + ((e * e) + ((g * g) + (j * j)))) - 0041
apply four_square_add_swap_right_tail - 0042
congr - 0043
refl - 0044
refl - 0045
symm - 0046
simp [add_assoc] - 0047
have hzero : (exists ftcn_left_case_13_zero ftcn_right_case_13_zero. (f * f + e * e + g * g + j * j) + (k) * ftcn_left_case_13_zero = (0) + (k) * ftcn_right_case_13_zero) - 0048
specialize four_square_signed_cases_norm_quotient_zero_congruence k - 0049
specialize four_square_signed_cases_norm_quotient_zero_congruence r - 0050
specialize four_square_signed_cases_norm_quotient_zero_congruence f - 0051
specialize four_square_signed_cases_norm_quotient_zero_congruence e - 0052
specialize four_square_signed_cases_norm_quotient_zero_congruence g - 0053
specialize four_square_signed_cases_norm_quotient_zero_congruence j - 0054
apply four_square_signed_cases_norm_quotient_zero_congruence - 0055
exact hcenter_permuted - 0056
have hblocks : ((exists ftcn_left_case_13_block_0 ftcn_right_case_13_block_0. (b * f) + (k) * ftcn_left_case_13_block_0 = (a * e + c * g + d * j) + (k) * ftcn_right_case_13_block_0) /\ ((exists ftcn_left_case_13_block_1 ftcn_right_case_13_block_1. (b * e + a * f + c * j) + (k) * ftcn_left_case_13_block_1 = (d * g) + (k) * ftcn_right_case_13_block_1) /\ ((exists ftcn_left_case_13_block_2 ftcn_right_case_13_block_2. (b * g + c * f + d * e) + (k) * ftcn_left_case_13_block_2 = (a * j) + (k) * ftcn_right_case_13_block_2) /\ (exists ftcn_left_case_13_block_3 ftcn_right_case_13_block_3. (b * j + a * g + d * f) + (k) * ftcn_left_case_13_block_3 = (c * e) + (k) * ftcn_right_case_13_block_3)))) - 0057
specialize four_square_signed_natural_positive_first_blocks k - 0058
specialize four_square_signed_natural_positive_first_blocks b - 0059
specialize four_square_signed_natural_positive_first_blocks a - 0060
specialize four_square_signed_natural_positive_first_blocks c - 0061
specialize four_square_signed_natural_positive_first_blocks d - 0062
specialize four_square_signed_natural_positive_first_blocks f - 0063
specialize four_square_signed_natural_positive_first_blocks e - 0064
specialize four_square_signed_natural_positive_first_blocks g - 0065
specialize four_square_signed_natural_positive_first_blocks j - 0066
apply four_square_signed_natural_positive_first_blocks - 0067
exact hzero - 0068
exact horientation1 - 0069
exact horientation0 - 0070
exact horientation2 - 0071
exact horientation3 - 0072
have hcoordinates : exists m0 m1 m2 m3. ((((b * f) = (a * e + c * g + d * j) + m0) \/ ((a * e + c * g + d * j) = (b * f) + m0)) /\ ((((b * e + a * f + c * j) = (d * g) + m1) \/ ((d * g) = (b * e + a * f + c * j) + m1)) /\ ((((b * g + c * f + d * e) = (a * j) + m2) \/ ((a * j) = (b * g + c * f + d * e) + m2)) /\ (((b * j + a * g + d * f) = (c * e) + m3) \/ ((c * e) = (b * j + a * g + d * f) + m3))))) - 0073
specialize quaternion_coordinate_absolute_total b - 0074
specialize quaternion_coordinate_absolute_total a - 0075
specialize quaternion_coordinate_absolute_total c - 0076
specialize quaternion_coordinate_absolute_total d - 0077
specialize quaternion_coordinate_absolute_total f - 0078
specialize quaternion_coordinate_absolute_total e - 0079
specialize quaternion_coordinate_absolute_total g - 0080
specialize quaternion_coordinate_absolute_total j - 0081
exact quaternion_coordinate_absolute_total - 0082
cases hcoordinates - 0083
cases hcoordinates_witness - 0084
cases hcoordinates_witness_witness - 0085
cases hcoordinates_witness_witness_witness - 0086
have habsolute : ((((b * f) = (a * e + c * g + d * j) + x) \/ ((a * e + c * g + d * j) = (b * f) + x)) /\ ((((b * e + a * f + c * j) = (d * g) + x1) \/ ((d * g) = (b * e + a * f + c * j) + x1)) /\ ((((b * g + c * f + d * e) = (a * j) + x2) \/ ((a * j) = (b * g + c * f + d * e) + x2)) /\ (((b * j + a * g + d * f) = (c * e) + x3) \/ ((c * e) = (b * j + a * g + d * f) + x3))))) - 0087
exact hcoordinates_witness_witness_witness_witness - 0088
have hidentity : (b * b + a * a + c * c + d * d) * (f * f + e * e + g * g + j * j) = x * x + x1 * x1 + x2 * x2 + x3 * x3 - 0089
specialize four_square_euler_quaternion b - 0090
specialize four_square_euler_quaternion a - 0091
specialize four_square_euler_quaternion c - 0092
specialize four_square_euler_quaternion d - 0093
specialize four_square_euler_quaternion f - 0094
specialize four_square_euler_quaternion e - 0095
specialize four_square_euler_quaternion g - 0096
specialize four_square_euler_quaternion j - 0097
specialize four_square_euler_quaternion x - 0098
specialize four_square_euler_quaternion x1 - 0099
specialize four_square_euler_quaternion x2 - 0100
specialize four_square_euler_quaternion x3 - 0101
apply four_square_euler_quaternion - 0102
exact habsolute - 0103
have hcenter_identity : k * r = f * f + e * e + g * g + j * j - 0104
trans f * f + e * e + g * g + j * j - 0105
exact hcenter_permuted - 0106
refl - 0107
have hproduct : (p * k) * (k * r) = x * x + x1 * x1 + x2 * x2 + x3 * x3 - 0108
trans (b * b + a * a + c * c + d * d) * (f * f + e * e + g * g + j * j) - 0109
congr - 0110
exact hfirst_permuted - 0111
exact hcenter_identity - 0112
exact hidentity - 0113
cases hblocks - 0114
cases hblocks_right - 0115
cases hblocks_right_right - 0116
cases habsolute - 0117
cases habsolute_right - 0118
cases habsolute_right_right - 0119
specialize four_square_signed_absolute_block_representation p - 0120
specialize four_square_signed_absolute_block_representation k - 0121
specialize four_square_signed_absolute_block_representation r - 0122
specialize four_square_signed_absolute_block_representation (b * f) - 0123
specialize four_square_signed_absolute_block_representation (b * e + a * f + c * j) - 0124
specialize four_square_signed_absolute_block_representation (b * g + c * f + d * e) - 0125
specialize four_square_signed_absolute_block_representation (b * j + a * g + d * f) - 0126
specialize four_square_signed_absolute_block_representation (a * e + c * g + d * j) - 0127
specialize four_square_signed_absolute_block_representation (d * g) - 0128
specialize four_square_signed_absolute_block_representation (a * j) - 0129
specialize four_square_signed_absolute_block_representation (c * e) - 0130
specialize four_square_signed_absolute_block_representation x - 0131
specialize four_square_signed_absolute_block_representation x1 - 0132
specialize four_square_signed_absolute_block_representation x2 - 0133
specialize four_square_signed_absolute_block_representation x3 - 0134
apply four_square_signed_absolute_block_representation - 0135
exact hnonzero - 0136
exact hproduct - 0137
exact hblocks_left - 0138
exact habsolute_left - 0139
exact hblocks_right_left - 0140
exact habsolute_right_left - 0141
exact hblocks_right_right_left - 0142
exact habsolute_right_right_left - 0143
exact hblocks_right_right_right - 0144
exact habsolute_right_right_right