PF000Y · theorem body

pythagorean_primitive_pairwise_coprime

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

The two legs and hypotenuse of every primitive Pythagorean triple are pairwise coprime constructively.

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)Coprime(x,y) ∧ (Coprime(x,z)Coprime(y,z))

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))) -> ((forall pff_divisor_pairwise_legs. (exists pff_left_pairwise_legs. (x) = pff_divisor_pairwise_legs * pff_left_pairwise_legs) -> (exists pff_right_pairwise_legs. (y) = pff_divisor_pairwise_legs * pff_right_pairwise_legs) -> pff_divisor_pairwise_legs = 1) /\ ((forall pff_divisor_first_hypotenuse_result. (exists pff_left_first_hypotenuse_result. (x) = pff_divisor_first_hypotenuse_result * pff_left_first_hypotenuse_result) -> (exists pff_right_first_hypotenuse_result. (z) = pff_divisor_first_hypotenuse_result * pff_right_first_hypotenuse_result) -> pff_divisor_first_hypotenuse_result = 1) /\ (forall pff_divisor_second_hypotenuse_result. (exists pff_left_second_hypotenuse_result. (y) = pff_divisor_second_hypotenuse_result * pff_left_second_hypotenuse_result) -> (exists pff_right_second_hypotenuse_result. (z) = pff_divisor_second_hypotenuse_result * pff_right_second_hypotenuse_result) -> pff_divisor_second_hypotenuse_result = 1)))

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

20 script commands · 8 reading checkpoints · 1 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–4

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

  1. L1
    intro x
  2. L2
    intro y
  3. L3
    intro z
  4. L4
    intro hprimitive
02Establish hlegsL5–5

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

  1. L5
    have hlegs : Coprime(x,y)Definitions: Coprime(x,y)Original native command in the exact edition
03Separate the logical casesL6–6

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

  1. L6
    cases hprimitive
04Use earlier factsL7–7

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

  1. L7
    exact hprimitive_right
05Separate the logical casesL8–8

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

  1. L8
    split
06Use earlier factsL9–9

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

  1. L9
    exact hlegs
07Separate the logical casesL10–10

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

  1. L10
    split
08Use earlier factsL11–20

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

  1. L11
    specialize pythagorean_primitive_hypotenuse_coprime_first_leg x
  2. L12
    specialize pythagorean_primitive_hypotenuse_coprime_first_leg y
  3. L13
    specialize pythagorean_primitive_hypotenuse_coprime_first_leg z
  4. L14
    apply pythagorean_primitive_hypotenuse_coprime_first_leg
  5. L15
    exact hprimitive
  6. L16
    specialize pythagorean_primitive_hypotenuse_coprime_second_leg x
  7. L17
    specialize pythagorean_primitive_hypotenuse_coprime_second_leg y
  8. L18
    specialize pythagorean_primitive_hypotenuse_coprime_second_leg z
  9. L19
    apply pythagorean_primitive_hypotenuse_coprime_second_leg
  10. L20
    exact hprimitive

Library-wide reading audit

Original defined command ledger · 20 lines
  1. 0001intro x
  2. 0002intro y
  3. 0003intro z
  4. 0004intro hprimitive
  5. 0005have hlegs : Coprime(x,y)
    Exact native replay linehave hlegs : forall pff_divisor_pairwise_local. (exists pff_left_pairwise_local. (x) = pff_divisor_pairwise_local * pff_left_pairwise_local) -> (exists pff_right_pairwise_local. (y) = pff_divisor_pairwise_local * pff_right_pairwise_local) -> pff_divisor_pairwise_local = 1
  6. 0006cases hprimitive
  7. 0007exact hprimitive_right
  8. 0008split
  9. 0009exact hlegs
  10. 0010split
  11. 0011specialize pythagorean_primitive_hypotenuse_coprime_first_leg x
  12. 0012specialize pythagorean_primitive_hypotenuse_coprime_first_leg y
  13. 0013specialize pythagorean_primitive_hypotenuse_coprime_first_leg z
  14. 0014apply pythagorean_primitive_hypotenuse_coprime_first_leg
  15. 0015exact hprimitive
  16. 0016specialize pythagorean_primitive_hypotenuse_coprime_second_leg x
  17. 0017specialize pythagorean_primitive_hypotenuse_coprime_second_leg y
  18. 0018specialize pythagorean_primitive_hypotenuse_coprime_second_leg z
  19. 0019apply pythagorean_primitive_hypotenuse_coprime_second_leg
  20. 0020exact hprimitive