FS0055

four_square_signed_orientation_mask_15

Alpha v34 independently verified · alpha_closed; checked-use authorized; not Stable

Constructive signed quaternion quotient for centered orientation mask 1111, using the exact four_square_signed_conjugate_negative_blocks surface.

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_15_0 ftcn_right_mask_15_0. (a + e) + (k) * ftcn_left_mask_15_0 = (0) + (k) * ftcn_right_mask_15_0) -> (exists ftcn_left_mask_15_1 ftcn_right_mask_15_1. (b + f) + (k) * ftcn_left_mask_15_1 = (0) + (k) * ftcn_right_mask_15_1) -> (exists ftcn_left_mask_15_2 ftcn_right_mask_15_2. (c + g) + (k) * ftcn_left_mask_15_2 = (0) + (k) * ftcn_right_mask_15_2) -> (exists ftcn_left_mask_15_3 ftcn_right_mask_15_3. (d + j) + (k) * ftcn_left_mask_15_3 = (0) + (k) * ftcn_right_mask_15_3) -> k * r = e * e + f * f + g * g + j * j -> (exists fsl_a_fssc_mask_15 fsl_b_fssc_mask_15 fsl_c_fssc_mask_15 fsl_d_fssc_mask_15. (p * r) = fsl_a_fssc_mask_15 * fsl_a_fssc_mask_15 + fsl_b_fssc_mask_15 * fsl_b_fssc_mask_15 + fsl_c_fssc_mask_15 * fsl_c_fssc_mask_15 + fsl_d_fssc_mask_15 * fsl_d_fssc_mask_15)

Constructive proof overview

Generated structural guide

Constructive signed quaternion quotient for centered orientation mask 1111, using the exact four_square_signed_conjugate_negative_blocks surface.

The unchanged tactic script uses 7 declared prerequisites and contains 114 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

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

114 script commands · 17 reading checkpoints · 9 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.

Named ingredients (4)

Long local formulas use this family’s existing definitions. Each new abbreviation was expanded back to the identical native formula, including its free-variable context. The original edition is preserved below.

01Fix variables and assumptionsL1–10

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro p
  2. L2
    intro k
  3. L3
    intro h
  4. L4
    intro a
  5. L5
    intro b
  6. L6
    intro c
  7. L7
    intro d
  8. L8
    intro e
  9. L9
    intro f
  10. L10
    intro g
02Fix variables and assumptionsL11–20

Work with arbitrary variables or the premises of the current implication.

  1. L11
    intro j
  2. L12
    intro r
  3. L13
    intro hnonzero
  4. L14
    intro hodd
  5. L15
    intro hfirst
  6. L16
    intro horientation0
  7. L17
    intro horientation1
  8. L18
    intro horientation2
  9. L19
    intro horientation3
  10. L20
    intro hcenter
03Establish hfirst_permutedL21–24

Establish this local claim before using it. It is not an additional assumption.

  1. L21
    have hfirst_permuted : p * k = a * a + b * b + c * c + d * d
  2. L22
    trans a * a + b * b + c * c + d * d
  3. L23
    exact hfirst
  4. L24
    refl
04Establish hcenter_permutedL25–28

Establish this local claim before using it. It is not an additional assumption.

  1. L25
    have hcenter_permuted : k * r = e * e + f * f + g * g + j * j
  2. L26
    trans e * e + f * f + g * g + j * j
  3. L27
    exact hcenter
  4. L28
    refl
05Establish hzeroL29–37

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.

  1. L29
    have hzero : (exists ftcn_left_case_15_zero ftcn_right_case_15_zero. (e * e + f * f + g * g + j * j) + (k) * ftcn_left_case_15_zero = (0) + (k) * ftcn_right_case_15_zero)
  2. L30
    specialize four_square_signed_cases_norm_quotient_zero_congruence k
  3. L31
    specialize four_square_signed_cases_norm_quotient_zero_congruence r
  4. L32
    specialize four_square_signed_cases_norm_quotient_zero_congruence e
  5. L33
    specialize four_square_signed_cases_norm_quotient_zero_congruence f
  6. L34
    specialize four_square_signed_cases_norm_quotient_zero_congruence g
  7. L35
    specialize four_square_signed_cases_norm_quotient_zero_congruence j
  8. L36
    apply four_square_signed_cases_norm_quotient_zero_congruence
  9. L37
    exact hcenter_permuted
06Establish hblocksL38–47

Establish this local claim before using it. It is not an additional assumption.

  1. L38
    have hblocks : ModEq(k,a · e + b · f + c · g + d · j,0) ∧ (ModEq(k,a · f + c · j,b · e + d · g) ∧ (ModEq(k,a · g + d · f,c · e + b · j) ∧ ModEq(k,a · j + b · g,d · e + c · f)))Definitions: ModEq
  2. L39
    specialize four_square_signed_conjugate_negative_blocks k
  3. L40
    specialize four_square_signed_conjugate_negative_blocks a
  4. L41
    specialize four_square_signed_conjugate_negative_blocks b
  5. L42
    specialize four_square_signed_conjugate_negative_blocks c
  6. L43
    specialize four_square_signed_conjugate_negative_blocks d
  7. L44
    specialize four_square_signed_conjugate_negative_blocks e
  8. L45
    specialize four_square_signed_conjugate_negative_blocks f
  9. L46
    specialize four_square_signed_conjugate_negative_blocks g
  10. L47
    specialize four_square_signed_conjugate_negative_blocks j
07Use earlier factsL48–53

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

  1. L48
    apply four_square_signed_conjugate_negative_blocks
  2. L49
    exact hzero
  3. L50
    exact horientation0
  4. L51
    exact horientation1
  5. L52
    exact horientation2
  6. L53
    exact horientation3
08Establish hcoordinatesL54–63

Establish this local claim before using it. It is not an additional assumption.

  1. L54
    have hcoordinates : exists m0 m1 m2 m3. (((((a * e + b * f + c * g + d * j) = (0) + m0) \/ ((0) = (a * e + b * f + c * g + d * j) + m0)) /\ ((((a * f + c * j) = (b * e + d * g) + m1) \/ ((b * e + d * g) = (a * f + c * j) + m1)) /\ ((((a * g + d * f) = (c * e + b * j) + m2) \/ ((c * e + b * j) = (a * g + d * f) + m2)) /\ (((a * j + b * g) = (d * e + c * f) + m3) \/ ((d * e + c * f) = (a * j + b * g) + m3))))) /\ ((a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j) = m0 * m0 + m1 * m1 + m2 * m2 + m3 * m3))
  2. L55
    specialize four_square_conjugate_absolute_coordinates_total a
  3. L56
    specialize four_square_conjugate_absolute_coordinates_total b
  4. L57
    specialize four_square_conjugate_absolute_coordinates_total c
  5. L58
    specialize four_square_conjugate_absolute_coordinates_total d
  6. L59
    specialize four_square_conjugate_absolute_coordinates_total e
  7. L60
    specialize four_square_conjugate_absolute_coordinates_total f
  8. L61
    specialize four_square_conjugate_absolute_coordinates_total g
  9. L62
    specialize four_square_conjugate_absolute_coordinates_total j
  10. L63
    exact four_square_conjugate_absolute_coordinates_total
09Separate the logical casesL64–68

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L64
    cases hcoordinates
  2. L65
    cases hcoordinates_witness
  3. L66
    cases hcoordinates_witness_witness
  4. L67
    cases hcoordinates_witness_witness_witness
  5. L68
    cases hcoordinates_witness_witness_witness_witness
10Establish habsoluteL69–70

Establish this local claim before using it. It is not an additional assumption.

  1. L69
    have habsolute : ((((a * e + b * f + c * g + d * j) = (0) + x) \/ ((0) = (a * e + b * f + c * g + d * j) + x)) /\ ((((a * f + c * j) = (b * e + d * g) + x1) \/ ((b * e + d * g) = (a * f + c * j) + x1)) /\ ((((a * g + d * f) = (c * e + b * j) + x2) \/ ((c * e + b * j) = (a * g + d * f) + x2)) /\ (((a * j + b * g) = (d * e + c * f) + x3) \/ ((d * e + c * f) = (a * j + b * g) + x3)))))
  2. L70
    exact hcoordinates_witness_witness_witness_witness_left
11Establish hidentityL71–72

Establish this local claim before using it. It is not an additional assumption.

  1. L71
    have hidentity : (a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j) = x * x + x1 * x1 + x2 * x2 + x3 * x3
  2. L72
    exact hcoordinates_witness_witness_witness_witness_right
12Establish hcenter_identityL73–76

Establish this local claim before using it. It is not an additional assumption.

  1. L73
    have hcenter_identity : k * r = e * e + f * f + g * g + j * j
  2. L74
    trans e * e + f * f + g * g + j * j
  3. L75
    exact hcenter_permuted
  4. L76
    refl
13Establish hproductL77–82

Establish this local claim before using it. It is not an additional assumption.

  1. L77
    have hproduct : (p * k) * (k * r) = x * x + x1 * x1 + x2 * x2 + x3 * x3
  2. L78
    trans (a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j)
  3. L79
    congr
  4. L80
    exact hfirst_permuted
  5. L81
    exact hcenter_identity
  6. L82
    exact hidentity
14Separate the logical casesL83–88

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L83
    cases hblocks
  2. L84
    cases hblocks_right
  3. L85
    cases hblocks_right_right
  4. L86
    cases habsolute
  5. L87
    cases habsolute_right
  6. L88
    cases habsolute_right_right
15Use earlier factsL89–98

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

  1. L89
    specialize four_square_signed_absolute_block_representation p
  2. L90
    specialize four_square_signed_absolute_block_representation k
  3. L91
    specialize four_square_signed_absolute_block_representation r
  4. L92
    specialize four_square_signed_absolute_block_representation (a * e + b * f + c * g + d * j)
  5. L93
    specialize four_square_signed_absolute_block_representation (a * f + c * j)
  6. L94
    specialize four_square_signed_absolute_block_representation (a * g + d * f)
  7. L95
    specialize four_square_signed_absolute_block_representation (a * j + b * g)
  8. L96
    specialize four_square_signed_absolute_block_representation (0)
  9. L97
    specialize four_square_signed_absolute_block_representation (b * e + d * g)
  10. L98
    specialize four_square_signed_absolute_block_representation (c * e + b * j)
16Use earlier factsL99–108

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

  1. L99
    specialize four_square_signed_absolute_block_representation (d * e + c * f)
  2. L100
    specialize four_square_signed_absolute_block_representation x
  3. L101
    specialize four_square_signed_absolute_block_representation x1
  4. L102
    specialize four_square_signed_absolute_block_representation x2
  5. L103
    specialize four_square_signed_absolute_block_representation x3
  6. L104
    apply four_square_signed_absolute_block_representation
  7. L105
    exact hnonzero
  8. L106
    exact hproduct
  9. L107
    exact hblocks_left
  10. L108
    exact habsolute_left
17Use earlier factsL109–114

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

  1. L109
    exact hblocks_right_left
  2. L110
    exact habsolute_right_left
  3. L111
    exact hblocks_right_right_left
  4. L112
    exact habsolute_right_right_left
  5. L113
    exact hblocks_right_right_right
  6. L114
    exact habsolute_right_right_right

Library-wide reading audit

Original exact command ledger · 114 lines
  1. 0001intro p
  2. 0002intro k
  3. 0003intro h
  4. 0004intro a
  5. 0005intro b
  6. 0006intro c
  7. 0007intro d
  8. 0008intro e
  9. 0009intro f
  10. 0010intro g
  11. 0011intro j
  12. 0012intro r
  13. 0013intro hnonzero
  14. 0014intro hodd
  15. 0015intro hfirst
  16. 0016intro horientation0
  17. 0017intro horientation1
  18. 0018intro horientation2
  19. 0019intro horientation3
  20. 0020intro hcenter
  21. 0021have hfirst_permuted : p * k = a * a + b * b + c * c + d * d
  22. 0022trans a * a + b * b + c * c + d * d
  23. 0023exact hfirst
  24. 0024refl
  25. 0025have hcenter_permuted : k * r = e * e + f * f + g * g + j * j
  26. 0026trans e * e + f * f + g * g + j * j
  27. 0027exact hcenter
  28. 0028refl
  29. 0029have hzero : (exists ftcn_left_case_15_zero ftcn_right_case_15_zero. (e * e + f * f + g * g + j * j) + (k) * ftcn_left_case_15_zero = (0) + (k) * ftcn_right_case_15_zero)
  30. 0030specialize four_square_signed_cases_norm_quotient_zero_congruence k
  31. 0031specialize four_square_signed_cases_norm_quotient_zero_congruence r
  32. 0032specialize four_square_signed_cases_norm_quotient_zero_congruence e
  33. 0033specialize four_square_signed_cases_norm_quotient_zero_congruence f
  34. 0034specialize four_square_signed_cases_norm_quotient_zero_congruence g
  35. 0035specialize four_square_signed_cases_norm_quotient_zero_congruence j
  36. 0036apply four_square_signed_cases_norm_quotient_zero_congruence
  37. 0037exact hcenter_permuted
  38. 0038have hblocks : ((exists ftcn_left_case_15_block_0 ftcn_right_case_15_block_0. (a * e + b * f + c * g + d * j) + (k) * ftcn_left_case_15_block_0 = (0) + (k) * ftcn_right_case_15_block_0) /\ ((exists ftcn_left_case_15_block_1 ftcn_right_case_15_block_1. (a * f + c * j) + (k) * ftcn_left_case_15_block_1 = (b * e + d * g) + (k) * ftcn_right_case_15_block_1) /\ ((exists ftcn_left_case_15_block_2 ftcn_right_case_15_block_2. (a * g + d * f) + (k) * ftcn_left_case_15_block_2 = (c * e + b * j) + (k) * ftcn_right_case_15_block_2) /\ (exists ftcn_left_case_15_block_3 ftcn_right_case_15_block_3. (a * j + b * g) + (k) * ftcn_left_case_15_block_3 = (d * e + c * f) + (k) * ftcn_right_case_15_block_3))))
  39. 0039specialize four_square_signed_conjugate_negative_blocks k
  40. 0040specialize four_square_signed_conjugate_negative_blocks a
  41. 0041specialize four_square_signed_conjugate_negative_blocks b
  42. 0042specialize four_square_signed_conjugate_negative_blocks c
  43. 0043specialize four_square_signed_conjugate_negative_blocks d
  44. 0044specialize four_square_signed_conjugate_negative_blocks e
  45. 0045specialize four_square_signed_conjugate_negative_blocks f
  46. 0046specialize four_square_signed_conjugate_negative_blocks g
  47. 0047specialize four_square_signed_conjugate_negative_blocks j
  48. 0048apply four_square_signed_conjugate_negative_blocks
  49. 0049exact hzero
  50. 0050exact horientation0
  51. 0051exact horientation1
  52. 0052exact horientation2
  53. 0053exact horientation3
  54. 0054have hcoordinates : exists m0 m1 m2 m3. (((((a * e + b * f + c * g + d * j) = (0) + m0) \/ ((0) = (a * e + b * f + c * g + d * j) + m0)) /\ ((((a * f + c * j) = (b * e + d * g) + m1) \/ ((b * e + d * g) = (a * f + c * j) + m1)) /\ ((((a * g + d * f) = (c * e + b * j) + m2) \/ ((c * e + b * j) = (a * g + d * f) + m2)) /\ (((a * j + b * g) = (d * e + c * f) + m3) \/ ((d * e + c * f) = (a * j + b * g) + m3))))) /\ ((a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j) = m0 * m0 + m1 * m1 + m2 * m2 + m3 * m3))
  55. 0055specialize four_square_conjugate_absolute_coordinates_total a
  56. 0056specialize four_square_conjugate_absolute_coordinates_total b
  57. 0057specialize four_square_conjugate_absolute_coordinates_total c
  58. 0058specialize four_square_conjugate_absolute_coordinates_total d
  59. 0059specialize four_square_conjugate_absolute_coordinates_total e
  60. 0060specialize four_square_conjugate_absolute_coordinates_total f
  61. 0061specialize four_square_conjugate_absolute_coordinates_total g
  62. 0062specialize four_square_conjugate_absolute_coordinates_total j
  63. 0063exact four_square_conjugate_absolute_coordinates_total
  64. 0064cases hcoordinates
  65. 0065cases hcoordinates_witness
  66. 0066cases hcoordinates_witness_witness
  67. 0067cases hcoordinates_witness_witness_witness
  68. 0068cases hcoordinates_witness_witness_witness_witness
  69. 0069have habsolute : ((((a * e + b * f + c * g + d * j) = (0) + x) \/ ((0) = (a * e + b * f + c * g + d * j) + x)) /\ ((((a * f + c * j) = (b * e + d * g) + x1) \/ ((b * e + d * g) = (a * f + c * j) + x1)) /\ ((((a * g + d * f) = (c * e + b * j) + x2) \/ ((c * e + b * j) = (a * g + d * f) + x2)) /\ (((a * j + b * g) = (d * e + c * f) + x3) \/ ((d * e + c * f) = (a * j + b * g) + x3)))))
  70. 0070exact hcoordinates_witness_witness_witness_witness_left
  71. 0071have hidentity : (a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j) = x * x + x1 * x1 + x2 * x2 + x3 * x3
  72. 0072exact hcoordinates_witness_witness_witness_witness_right
  73. 0073have hcenter_identity : k * r = e * e + f * f + g * g + j * j
  74. 0074trans e * e + f * f + g * g + j * j
  75. 0075exact hcenter_permuted
  76. 0076refl
  77. 0077have hproduct : (p * k) * (k * r) = x * x + x1 * x1 + x2 * x2 + x3 * x3
  78. 0078trans (a * a + b * b + c * c + d * d) * (e * e + f * f + g * g + j * j)
  79. 0079congr
  80. 0080exact hfirst_permuted
  81. 0081exact hcenter_identity
  82. 0082exact hidentity
  83. 0083cases hblocks
  84. 0084cases hblocks_right
  85. 0085cases hblocks_right_right
  86. 0086cases habsolute
  87. 0087cases habsolute_right
  88. 0088cases habsolute_right_right
  89. 0089specialize four_square_signed_absolute_block_representation p
  90. 0090specialize four_square_signed_absolute_block_representation k
  91. 0091specialize four_square_signed_absolute_block_representation r
  92. 0092specialize four_square_signed_absolute_block_representation (a * e + b * f + c * g + d * j)
  93. 0093specialize four_square_signed_absolute_block_representation (a * f + c * j)
  94. 0094specialize four_square_signed_absolute_block_representation (a * g + d * f)
  95. 0095specialize four_square_signed_absolute_block_representation (a * j + b * g)
  96. 0096specialize four_square_signed_absolute_block_representation (0)
  97. 0097specialize four_square_signed_absolute_block_representation (b * e + d * g)
  98. 0098specialize four_square_signed_absolute_block_representation (c * e + b * j)
  99. 0099specialize four_square_signed_absolute_block_representation (d * e + c * f)
  100. 0100specialize four_square_signed_absolute_block_representation x
  101. 0101specialize four_square_signed_absolute_block_representation x1
  102. 0102specialize four_square_signed_absolute_block_representation x2
  103. 0103specialize four_square_signed_absolute_block_representation x3
  104. 0104apply four_square_signed_absolute_block_representation
  105. 0105exact hnonzero
  106. 0106exact hproduct
  107. 0107exact hblocks_left
  108. 0108exact habsolute_left
  109. 0109exact hblocks_right_left
  110. 0110exact habsolute_right_left
  111. 0111exact hblocks_right_right_left
  112. 0112exact habsolute_right_right_left
  113. 0113exact hblocks_right_right_right
  114. 0114exact habsolute_right_right_right