FS0005

quaternion_coordinate_absolute_total

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

All four Hamilton-product coordinates have explicit natural absolute magnitudes and constructive sign choices.

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 a b c d e f g h. exists m0 m1 m2 m3. ((((a * e) = (b * f + c * g + d * h) + m0) \/ ((b * f + c * g + d * h) = (a * e) + m0)) /\ ((((a * f + b * e + c * h) = (d * g) + m1) \/ ((d * g) = (a * f + b * e + c * h) + m1)) /\ ((((a * g + c * e + d * f) = (b * h) + m2) \/ ((b * h) = (a * g + c * e + d * f) + m2)) /\ (((a * h + b * g + d * e) = (c * f) + m3) \/ ((c * f) = (a * h + b * g + d * e) + m3)))))

Constructive proof overview

Generated structural guide

All four Hamilton-product coordinates have explicit natural absolute magnitudes and constructive sign choices.

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

62 script commands · 15 reading checkpoints · 4 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 (2)
01Fix variables and assumptionsL1–8

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

  1. L1
    intro a
  2. L2
    intro b
  3. L3
    intro c
  4. L4
    intro d
  5. L5
    intro e
  6. L6
    intro f
  7. L7
    intro g
  8. L8
    intro h
02Use earlier factsL9–16

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

  1. L9
    specialize quaternion_coordinate_balance_total a
  2. L10
    specialize quaternion_coordinate_balance_total b
  3. L11
    specialize quaternion_coordinate_balance_total c
  4. L12
    specialize quaternion_coordinate_balance_total d
  5. L13
    specialize quaternion_coordinate_balance_total e
  6. L14
    specialize quaternion_coordinate_balance_total f
  7. L15
    specialize quaternion_coordinate_balance_total g
  8. L16
    specialize quaternion_coordinate_balance_total h
03Separate the logical casesL17–23

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

  1. L17
    cases quaternion_coordinate_balance_total
  2. L18
    cases quaternion_coordinate_balance_total_witness
  3. L19
    cases quaternion_coordinate_balance_total_witness_witness
  4. L20
    cases quaternion_coordinate_balance_total_witness_witness_witness
  5. L21
    cases quaternion_coordinate_balance_total_witness_witness_witness_witness
  6. L22
    cases quaternion_coordinate_balance_total_witness_witness_witness_witness_right
  7. L23
    cases quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right
04Establish hm0L24–29

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance absolute exists.

  1. L24
    have hm0 : exists m0. (((a * e) = (b * f + c * g + d * h) + m0) \/ ((b * f + c * g + d * h) = (a * e) + m0))
  2. L25
    specialize signed_balance_absolute_exists x
  3. L26
    specialize signed_balance_absolute_exists (a * e)
  4. L27
    specialize signed_balance_absolute_exists (b * f + c * g + d * h)
  5. L28
    apply signed_balance_absolute_exists
  6. L29
    exact quaternion_coordinate_balance_total_witness_witness_witness_witness_left
05Establish hm1L30–35

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance absolute exists.

  1. L30
    have hm1 : exists m1. (((a * f + b * e + c * h) = (d * g) + m1) \/ ((d * g) = (a * f + b * e + c * h) + m1))
  2. L31
    specialize signed_balance_absolute_exists x1
  3. L32
    specialize signed_balance_absolute_exists (a * f + b * e + c * h)
  4. L33
    specialize signed_balance_absolute_exists (d * g)
  5. L34
    apply signed_balance_absolute_exists
  6. L35
    exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_left
06Establish hm2L36–41

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance absolute exists.

  1. L36
    have hm2 : exists m2. (((a * g + c * e + d * f) = (b * h) + m2) \/ ((b * h) = (a * g + c * e + d * f) + m2))
  2. L37
    specialize signed_balance_absolute_exists x2
  3. L38
    specialize signed_balance_absolute_exists (a * g + c * e + d * f)
  4. L39
    specialize signed_balance_absolute_exists (b * h)
  5. L40
    apply signed_balance_absolute_exists
  6. L41
    exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right_left
07Establish hm3L42–47

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance absolute exists.

  1. L42
    have hm3 : exists m3. (((a * h + b * g + d * e) = (c * f) + m3) \/ ((c * f) = (a * h + b * g + d * e) + m3))
  2. L43
    specialize signed_balance_absolute_exists x3
  3. L44
    specialize signed_balance_absolute_exists (a * h + b * g + d * e)
  4. L45
    specialize signed_balance_absolute_exists (c * f)
  5. L46
    apply signed_balance_absolute_exists
  6. L47
    exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right_right
08Separate the logical casesL48–51

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

  1. L48
    cases hm0
  2. L49
    cases hm1
  3. L50
    cases hm2
  4. L51
    cases hm3
09Construct an explicit witnessL52–55

Supply the displayed value, then prove that it has the required property.

  1. L52
    exists x4
  2. L53
    exists x5
  3. L54
    exists x6
  4. L55
    exists x7
10Separate the logical casesL56–56

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

  1. L56
    split
11Use earlier factsL57–57

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

  1. L57
    exact hm0_witness
12Separate the logical casesL58–58

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

  1. L58
    split
13Use earlier factsL59–59

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

  1. L59
    exact hm1_witness
14Separate the logical casesL60–60

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

  1. L60
    split
15Use earlier factsL61–62

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

  1. L61
    exact hm2_witness
  2. L62
    exact hm3_witness

Library-wide reading audit

Original exact command ledger · 62 lines
  1. 0001intro a
  2. 0002intro b
  3. 0003intro c
  4. 0004intro d
  5. 0005intro e
  6. 0006intro f
  7. 0007intro g
  8. 0008intro h
  9. 0009specialize quaternion_coordinate_balance_total a
  10. 0010specialize quaternion_coordinate_balance_total b
  11. 0011specialize quaternion_coordinate_balance_total c
  12. 0012specialize quaternion_coordinate_balance_total d
  13. 0013specialize quaternion_coordinate_balance_total e
  14. 0014specialize quaternion_coordinate_balance_total f
  15. 0015specialize quaternion_coordinate_balance_total g
  16. 0016specialize quaternion_coordinate_balance_total h
  17. 0017cases quaternion_coordinate_balance_total
  18. 0018cases quaternion_coordinate_balance_total_witness
  19. 0019cases quaternion_coordinate_balance_total_witness_witness
  20. 0020cases quaternion_coordinate_balance_total_witness_witness_witness
  21. 0021cases quaternion_coordinate_balance_total_witness_witness_witness_witness
  22. 0022cases quaternion_coordinate_balance_total_witness_witness_witness_witness_right
  23. 0023cases quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right
  24. 0024have hm0 : exists m0. (((a * e) = (b * f + c * g + d * h) + m0) \/ ((b * f + c * g + d * h) = (a * e) + m0))
  25. 0025specialize signed_balance_absolute_exists x
  26. 0026specialize signed_balance_absolute_exists (a * e)
  27. 0027specialize signed_balance_absolute_exists (b * f + c * g + d * h)
  28. 0028apply signed_balance_absolute_exists
  29. 0029exact quaternion_coordinate_balance_total_witness_witness_witness_witness_left
  30. 0030have hm1 : exists m1. (((a * f + b * e + c * h) = (d * g) + m1) \/ ((d * g) = (a * f + b * e + c * h) + m1))
  31. 0031specialize signed_balance_absolute_exists x1
  32. 0032specialize signed_balance_absolute_exists (a * f + b * e + c * h)
  33. 0033specialize signed_balance_absolute_exists (d * g)
  34. 0034apply signed_balance_absolute_exists
  35. 0035exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_left
  36. 0036have hm2 : exists m2. (((a * g + c * e + d * f) = (b * h) + m2) \/ ((b * h) = (a * g + c * e + d * f) + m2))
  37. 0037specialize signed_balance_absolute_exists x2
  38. 0038specialize signed_balance_absolute_exists (a * g + c * e + d * f)
  39. 0039specialize signed_balance_absolute_exists (b * h)
  40. 0040apply signed_balance_absolute_exists
  41. 0041exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right_left
  42. 0042have hm3 : exists m3. (((a * h + b * g + d * e) = (c * f) + m3) \/ ((c * f) = (a * h + b * g + d * e) + m3))
  43. 0043specialize signed_balance_absolute_exists x3
  44. 0044specialize signed_balance_absolute_exists (a * h + b * g + d * e)
  45. 0045specialize signed_balance_absolute_exists (c * f)
  46. 0046apply signed_balance_absolute_exists
  47. 0047exact quaternion_coordinate_balance_total_witness_witness_witness_witness_right_right_right
  48. 0048cases hm0
  49. 0049cases hm1
  50. 0050cases hm2
  51. 0051cases hm3
  52. 0052exists x4
  53. 0053exists x5
  54. 0054exists x6
  55. 0055exists x7
  56. 0056split
  57. 0057exact hm0_witness
  58. 0058split
  59. 0059exact hm1_witness
  60. 0060split
  61. 0061exact hm2_witness
  62. 0062exact hm3_witness