FS0022 · theorem body

four_square_descent_divisible_coordinates_prime_factor

Alpha v34 checked-use · independently kernel and Lean verified; not Stable

If all four coordinates of a represented prime multiple are k-divisible, square-factor cancellation makes k an actual divisor of the prime.

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.

Statement with defined notation

forall p k a b c d u v w x. ~(k = 0) -> p * k = a * a + b * b + c * c + d * d -> a = k * u -> b = k * v -> c = k * w -> d = k * x -> p = k * (u * u + v * v + w * w + x * x)

Every purple notation token opens its conservative definition. This reading surface never changes the unchanged intuitionistic kernel or confers checked-use authority.

Definitions used by this theorem

In the theorem statement

none

In local proof propositions

none
Exact expanded first-order statement
forall p k a b c d u v w x. ~(k = 0) -> p * k = a * a + b * b + c * c + d * d -> a = k * u -> b = k * v -> c = k * w -> d = k * x -> p = k * (u * u + v * v + w * w + x * x)

Proof neighborhood

Direct theorem prerequisites

mul_left_cancel_nonzero · Stable closed mul_comm · Stable closed FS001A four_square_descent_square_factor_norm mul_assoc · Stable closed

Direct theorem dependents

Definition-aware tactic body

Only propositions whose conservative expansion has been checked for exact first-order equivalence are compacted. Every changed line retains its immutable exact replay command.

Read the argument

Proof checkpoints

36 script commands · 10 reading checkpoints · 0 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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (1)
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 a
  4. L4
    intro b
  5. L5
    intro c
  6. L6
    intro d
  7. L7
    intro u
  8. L8
    intro v
  9. L9
    intro w
  10. L10
    intro x
02Fix variables and assumptionsL11–16

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

  1. L11
    intro hnonzero
  2. L12
    intro hnorm
  3. L13
    intro ha
  4. L14
    intro hb
  5. L15
    intro hc
  6. L16
    intro hd
03Calculate and transport equalitiesL17–24

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L17
    rewrite ha at hnorm
  2. L18
    rewrite ha at hnorm
  3. L19
    rewrite hb at hnorm
  4. L20
    rewrite hb at hnorm
  5. L21
    rewrite hc at hnorm
  6. L22
    rewrite hc at hnorm
  7. L23
    rewrite hd at hnorm
  8. L24
    rewrite hd at hnorm
04Use earlier factsL25–29

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

  1. L25
    specialize mul_left_cancel_nonzero k
  2. L26
    specialize mul_left_cancel_nonzero p
  3. L27
    specialize mul_left_cancel_nonzero (k * (u * u + v * v + w * w + x * x))
  4. L28
    apply mul_left_cancel_nonzero
  5. L29
    exact hnonzero
05Calculate and transport equalitiesL30–30

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L30
    trans p * k
06Use earlier factsL31–31

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

  1. L31
    apply mul_comm
07Calculate and transport equalitiesL32–32

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L32
    trans (k * u) * (k * u) + (k * v) * (k * v) + (k * w) * (k * w) + (k * x) * (k * x)
08Use earlier factsL33–33

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

  1. L33
    exact hnorm
09Calculate and transport equalitiesL34–34

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L34
    trans (k * k) * (u * u + v * v + w * w + x * x)
10Use earlier factsL35–36

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

  1. L35
    apply four_square_descent_square_factor_norm
  2. L36
    apply mul_assoc

Library-wide reading audit

Original defined command ledger · 36 lines
  1. 0001intro p
  2. 0002intro k
  3. 0003intro a
  4. 0004intro b
  5. 0005intro c
  6. 0006intro d
  7. 0007intro u
  8. 0008intro v
  9. 0009intro w
  10. 0010intro x
  11. 0011intro hnonzero
  12. 0012intro hnorm
  13. 0013intro ha
  14. 0014intro hb
  15. 0015intro hc
  16. 0016intro hd
  17. 0017rewrite ha at hnorm
  18. 0018rewrite ha at hnorm
  19. 0019rewrite hb at hnorm
  20. 0020rewrite hb at hnorm
  21. 0021rewrite hc at hnorm
  22. 0022rewrite hc at hnorm
  23. 0023rewrite hd at hnorm
  24. 0024rewrite hd at hnorm
  25. 0025specialize mul_left_cancel_nonzero k
  26. 0026specialize mul_left_cancel_nonzero p
  27. 0027specialize mul_left_cancel_nonzero (k * (u * u + v * v + w * w + x * x))
  28. 0028apply mul_left_cancel_nonzero
  29. 0029exact hnonzero
  30. 0030trans p * k
  31. 0031apply mul_comm
  32. 0032trans (k * u) * (k * u) + (k * v) * (k * v) + (k * w) * (k * w) + (k * x) * (k * x)
  33. 0033exact hnorm
  34. 0034trans (k * k) * (u * u + v * v + w * w + x * x)
  35. 0035apply four_square_descent_square_factor_norm
  36. 0036apply mul_assoc