PF0014 · theorem body

pythagorean_primitive_legs_opposite_parity

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

Every primitive Pythagorean triple has genuinely opposite-parity legs with an explicit constructive choice of orientation.

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

∀ x. ∀ y. ∀ z. PrimitivePythagorean(x,y,z)OppositeParity(x,y)

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

Exact expanded first-order statement
forall x y z. ((((x) * (x) + (y) * (y) = (z) * (z)) /\ (forall pff_divisor_pairwise_source. (exists pff_left_pairwise_source. (x) = pff_divisor_pairwise_source * pff_left_pairwise_source) -> (exists pff_right_pairwise_source. (y) = pff_divisor_pairwise_source * pff_right_pairwise_source) -> pff_divisor_pairwise_source = 1))) -> ((((exists pp_even_primitive_leg_result_first_even. (x) = 2 * pp_even_primitive_leg_result_first_even) /\ (exists pp_odd_primitive_leg_result_second_odd. (y) = 2 * pp_odd_primitive_leg_result_second_odd + 1)) \/ ((exists pp_odd_primitive_leg_result_first_odd. (x) = 2 * pp_odd_primitive_leg_result_first_odd + 1) /\ (exists pp_even_primitive_leg_result_second_even. (y) = 2 * pp_even_primitive_leg_result_second_even))))

Proof neighborhood

Direct theorem prerequisites

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

38 script commands · 13 reading checkpoints · 2 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 (3)
01Fix variables and assumptionsL1–4

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 hprimitive
02Establish hfirstL5–7

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

  1. L5
    have hfirst : Even(a) ∨ Odd(a)Definitions: Even(a)Odd(a)Original native command in the exact edition
  2. L6
    specialize pythagorean_coordinate_parity_choice a
  3. L7
    exact pythagorean_coordinate_parity_choice
03Establish hsecondL8–10

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

  1. L8
    have hsecond : Even(b) ∨ Odd(b)Definitions: Even(b)Odd(b)Original native command in the exact edition
  2. L9
    specialize pythagorean_coordinate_parity_choice b
  3. L10
    exact pythagorean_coordinate_parity_choice
04Separate the logical casesL11–13

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

  1. L11
    cases hfirst
  2. L12
    cases hsecond
  3. L13
    exfalso
05Use earlier factsL14–20

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

  1. L14
    specialize pythagorean_primitive_legs_not_both_even a
  2. L15
    specialize pythagorean_primitive_legs_not_both_even b
  3. L16
    specialize pythagorean_primitive_legs_not_both_even c
  4. L17
    apply pythagorean_primitive_legs_not_both_even
  5. L18
    exact hprimitive
  6. L19
    exact hfirst_left
  7. L20
    exact hsecond_left
06Separate the logical casesL21–22

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

  1. L21
    left
  2. L22
    split
07Use earlier factsL23–24

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

  1. L23
    exact hfirst_left
  2. L24
    exact hsecond_right
08Separate the logical casesL25–27

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

  1. L25
    cases hsecond
  2. L26
    right
  3. L27
    split
09Use earlier factsL28–29

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

  1. L28
    exact hfirst_right
  2. L29
    exact hsecond_left
10Separate the logical casesL30–30

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

  1. L30
    exfalso
11Use earlier factsL31–34

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

  1. L31
    specialize pythagorean_triple_legs_not_both_odd a
  2. L32
    specialize pythagorean_triple_legs_not_both_odd b
  3. L33
    specialize pythagorean_triple_legs_not_both_odd c
  4. L34
    apply pythagorean_triple_legs_not_both_odd
12Separate the logical casesL35–35

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

  1. L35
    cases hprimitive
13Use earlier factsL36–38

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

  1. L36
    exact hprimitive_left
  2. L37
    exact hfirst_right
  3. L38
    exact hsecond_right

Library-wide reading audit

Original defined command ledger · 38 lines
  1. 0001intro a
  2. 0002intro b
  3. 0003intro c
  4. 0004intro hprimitive
  5. 0005have hfirst : Even(a)Odd(a)
    Exact native replay linehave hfirst : (exists q. a = 2 * q) \/ (exists q. a = 2 * q + 1)
  6. 0006specialize pythagorean_coordinate_parity_choice a
  7. 0007exact pythagorean_coordinate_parity_choice
  8. 0008have hsecond : Even(b)Odd(b)
    Exact native replay linehave hsecond : (exists q. b = 2 * q) \/ (exists q. b = 2 * q + 1)
  9. 0009specialize pythagorean_coordinate_parity_choice b
  10. 0010exact pythagorean_coordinate_parity_choice
  11. 0011cases hfirst
  12. 0012cases hsecond
  13. 0013exfalso
  14. 0014specialize pythagorean_primitive_legs_not_both_even a
  15. 0015specialize pythagorean_primitive_legs_not_both_even b
  16. 0016specialize pythagorean_primitive_legs_not_both_even c
  17. 0017apply pythagorean_primitive_legs_not_both_even
  18. 0018exact hprimitive
  19. 0019exact hfirst_left
  20. 0020exact hsecond_left
  21. 0021left
  22. 0022split
  23. 0023exact hfirst_left
  24. 0024exact hsecond_right
  25. 0025cases hsecond
  26. 0026right
  27. 0027split
  28. 0028exact hfirst_right
  29. 0029exact hsecond_left
  30. 0030exfalso
  31. 0031specialize pythagorean_triple_legs_not_both_odd a
  32. 0032specialize pythagorean_triple_legs_not_both_odd b
  33. 0033specialize pythagorean_triple_legs_not_both_odd c
  34. 0034apply pythagorean_triple_legs_not_both_odd
  35. 0035cases hprimitive
  36. 0036exact hprimitive_left
  37. 0037exact hfirst_right
  38. 0038exact hsecond_right