FS005K

four_square_signed_negative_scale_zero

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

Multiplying an opposite signed congruence preserves its subtraction-free zero balance.

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 e t. (exists ftcn_left_fssq_negative_scale_source ftcn_right_fssq_negative_scale_source. (a + e) + (k) * ftcn_left_fssq_negative_scale_source = (0) + (k) * ftcn_right_fssq_negative_scale_source) -> (exists ftcn_left_fssq_negative_scale_result ftcn_right_fssq_negative_scale_result. (a * t + e * t) + (k) * ftcn_left_fssq_negative_scale_result = (0) + (k) * ftcn_right_fssq_negative_scale_result)

Constructive proof overview

Generated structural guide

Multiplying an opposite signed congruence preserves its subtraction-free zero balance.

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

Historical empty-context replay experiment only; that experiment persisted no certificate and granted no release authority. Current checked use follows separately sealed, independently verified proof bundles; there is no Stable promotion.

Proof neighborhood

Direct dependencies

mod_eq_mul_right Stable theorem; checked-use authorized add_mul Stable theorem; checked-use authorized mul_zero_left Stable theorem; checked-use authorized

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

19 script commands · 4 reading checkpoints · 3 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.

01Fix variables and assumptionsL1–5

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

  1. L1
    intro k
  2. L2
    intro a
  3. L3
    intro e
  4. L4
    intro t
  5. L5
    intro hsource
02Establish hscaledL6–12

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq mul right.

  1. L6
    have hscaled : exists ftcn_left_fssq_negative_scaled ftcn_right_fssq_negative_scaled. ((a + e) * t) + (k) * ftcn_left_fssq_negative_scaled = (0 * t) + (k) * ftcn_right_fssq_negative_scaled
  2. L7
    specialize mod_eq_mul_right k
  3. L8
    specialize mod_eq_mul_right (a + e)
  4. L9
    specialize mod_eq_mul_right 0
  5. L10
    specialize mod_eq_mul_right t
  6. L11
    apply mod_eq_mul_right
  7. L12
    exact hsource
03Establish hleftL13–14

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add mul.

  1. L13
    have hleft : (a + e) * t = a * t + e * t
  2. L14
    apply add_mul
04Establish hrightL15–19

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul zero left.

  1. L15
    have hright : 0 * t = 0
  2. L16
    apply mul_zero_left
  3. L17
    rewrite hleft at hscaled
  4. L18
    rewrite hright at hscaled
  5. L19
    exact hscaled

Library-wide reading audit

Original exact command ledger · 19 lines
  1. 0001intro k
  2. 0002intro a
  3. 0003intro e
  4. 0004intro t
  5. 0005intro hsource
  6. 0006have hscaled : exists ftcn_left_fssq_negative_scaled ftcn_right_fssq_negative_scaled. ((a + e) * t) + (k) * ftcn_left_fssq_negative_scaled = (0 * t) + (k) * ftcn_right_fssq_negative_scaled
  7. 0007specialize mod_eq_mul_right k
  8. 0008specialize mod_eq_mul_right (a + e)
  9. 0009specialize mod_eq_mul_right 0
  10. 0010specialize mod_eq_mul_right t
  11. 0011apply mod_eq_mul_right
  12. 0012exact hsource
  13. 0013have hleft : (a + e) * t = a * t + e * t
  14. 0014apply add_mul
  15. 0015have hright : 0 * t = 0
  16. 0016apply mul_zero_left
  17. 0017rewrite hleft at hscaled
  18. 0018rewrite hright at hscaled
  19. 0019exact hscaled