PF000M · theorem body

pythagorean_opposite_parity_hypotenuse_odd

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

The Euclidean hypotenuse is explicitly odd whenever its two parameters have opposite parity.

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

∀ m. ∀ n. OppositeParity(m,n)Odd(m · m + n · n)

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

In local proof propositions

none
Exact expanded first-order statement
forall m n. ((((exists pp_even_primitive_parameters_first_even. (m) = 2 * pp_even_primitive_parameters_first_even) /\ (exists pp_odd_primitive_parameters_second_odd. (n) = 2 * pp_odd_primitive_parameters_second_odd + 1)) \/ ((exists pp_odd_primitive_parameters_first_odd. (m) = 2 * pp_odd_primitive_parameters_first_odd + 1) /\ (exists pp_even_primitive_parameters_second_even. (n) = 2 * pp_even_primitive_parameters_second_even)))) -> exists q. m * m + n * n = 2 * q + 1

Proof neighborhood

Direct theorem prerequisites

PF000H pythagorean_parameter_even_square PF000I pythagorean_parameter_odd_square even_add_odd · Stable closed odd_add_even · 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

20 script commands · 5 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 (2)
01Fix variables and assumptionsL1–3

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

  1. L1
    intro m
  2. L2
    intro n
  3. L3
    intro hopposite
02Separate the logical casesL4–5

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

  1. L4
    cases hopposite
  2. L5
    cases hopposite_left
03Use earlier factsL6–12

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

  1. L6
    specialize even_add_odd (m * m)
  2. L7
    specialize even_add_odd (n * n)
  3. L8
    apply even_add_odd
  4. L9
    apply pythagorean_parameter_even_square
  5. L10
    exact hopposite_left_left
  6. L11
    apply pythagorean_parameter_odd_square
  7. L12
    exact hopposite_left_right
04Separate the logical casesL13–13

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

  1. L13
    cases hopposite_right
05Use earlier factsL14–20

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

  1. L14
    specialize odd_add_even (m * m)
  2. L15
    specialize odd_add_even (n * n)
  3. L16
    apply odd_add_even
  4. L17
    apply pythagorean_parameter_odd_square
  5. L18
    exact hopposite_right_left
  6. L19
    apply pythagorean_parameter_even_square
  7. L20
    exact hopposite_right_right

Library-wide reading audit

Original defined command ledger · 20 lines
  1. 0001intro m
  2. 0002intro n
  3. 0003intro hopposite
  4. 0004cases hopposite
  5. 0005cases hopposite_left
  6. 0006specialize even_add_odd (m * m)
  7. 0007specialize even_add_odd (n * n)
  8. 0008apply even_add_odd
  9. 0009apply pythagorean_parameter_even_square
  10. 0010exact hopposite_left_left
  11. 0011apply pythagorean_parameter_odd_square
  12. 0012exact hopposite_left_right
  13. 0013cases hopposite_right
  14. 0014specialize odd_add_even (m * m)
  15. 0015specialize odd_add_even (n * n)
  16. 0016apply odd_add_even
  17. 0017apply pythagorean_parameter_odd_square
  18. 0018exact hopposite_right_left
  19. 0019apply pythagorean_parameter_even_square
  20. 0020exact hopposite_right_right