MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  pythagtrip Structured version   Visualization version   GIF version

Theorem pythagtrip 17038
Description: Parameterize the Pythagorean triples. If 𝐴, 𝐵, and 𝐶 are naturals, then they obey the Pythagorean triple formula iff they are parameterized by three naturals. This proof follows the Isabelle proof at http://afp.sourceforge.net/entries/Fermat3_4.shtml. This is Metamath 100 proof #23. (Contributed by Scott Fenton, 19-Apr-2014.)
Assertion
Ref Expression
pythagtrip ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ↔ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
Distinct variable groups:   𝐴,𝑘,𝑚,𝑛   𝐵,𝑘,𝑚,𝑛   𝐶,𝑘,𝑚,𝑛

Proof of Theorem pythagtrip
StepHypRef Expression
1 divgcdodd 16912 . . . . . . 7 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵)) ∨ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))))
213adant3 1150 . . . . . 6 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵)) ∨ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))))
32adantr 486 . . . . 5 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵)) ∨ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))))
4 pythagtriplem19 17037 . . . . . . 7 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵))) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
543expia 1139 . . . . . 6 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵)) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
6 simp12 1223 . . . . . . . 8 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → 𝐵 ∈ ℕ)
7 simp11 1222 . . . . . . . 8 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → 𝐴 ∈ ℕ)
8 simp13 1224 . . . . . . . 8 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → 𝐶 ∈ ℕ)
9 nnsqcl 14295 . . . . . . . . . . . . . 14 (𝐴 ∈ ℕ → (𝐴↑2) ∈ ℕ)
109nncnd 12375 . . . . . . . . . . . . 13 (𝐴 ∈ ℕ → (𝐴↑2) ∈ ℂ)
11103ad2ant1 1151 . . . . . . . . . . . 12 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (𝐴↑2) ∈ ℂ)
12 nnsqcl 14295 . . . . . . . . . . . . . 14 (𝐵 ∈ ℕ → (𝐵↑2) ∈ ℕ)
1312nncnd 12375 . . . . . . . . . . . . 13 (𝐵 ∈ ℕ → (𝐵↑2) ∈ ℂ)
14133ad2ant2 1152 . . . . . . . . . . . 12 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (𝐵↑2) ∈ ℂ)
1511, 14addcomd 11536 . . . . . . . . . . 11 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → ((𝐴↑2) + (𝐵↑2)) = ((𝐵↑2) + (𝐴↑2)))
1615eqeq1d 2765 . . . . . . . . . 10 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ↔ ((𝐵↑2) + (𝐴↑2)) = (𝐶↑2)))
1716biimpa 482 . . . . . . . . 9 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → ((𝐵↑2) + (𝐴↑2)) = (𝐶↑2))
18173adant3 1150 . . . . . . . 8 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → ((𝐵↑2) + (𝐴↑2)) = (𝐶↑2))
19 nnz 12738 . . . . . . . . . . . . . 14 (𝐴 ∈ ℕ → 𝐴 ∈ ℤ)
20193ad2ant1 1151 . . . . . . . . . . . . 13 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → 𝐴 ∈ ℤ)
21 nnz 12738 . . . . . . . . . . . . . . 15 (𝐵 ∈ ℕ → 𝐵 ∈ ℤ)
22213ad2ant2 1152 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → 𝐵 ∈ ℤ)
2322adantr 486 . . . . . . . . . . . . 13 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → 𝐵 ∈ ℤ)
24 gcdcom 16711 . . . . . . . . . . . . 13 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝐴 gcd 𝐵) = (𝐵 gcd 𝐴))
2520, 23, 24syl2an2r 698 . . . . . . . . . . . 12 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (𝐴 gcd 𝐵) = (𝐵 gcd 𝐴))
2625oveq2d 7456 . . . . . . . . . . 11 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (𝐵 / (𝐴 gcd 𝐵)) = (𝐵 / (𝐵 gcd 𝐴)))
2726breq2d 5118 . . . . . . . . . 10 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (2 ∥ (𝐵 / (𝐴 gcd 𝐵)) ↔ 2 ∥ (𝐵 / (𝐵 gcd 𝐴))))
2827notbid 321 . . . . . . . . 9 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵)) ↔ ¬ 2 ∥ (𝐵 / (𝐵 gcd 𝐴))))
2928biimp3a 1499 . . . . . . . 8 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → ¬ 2 ∥ (𝐵 / (𝐵 gcd 𝐴)))
30 pythagtriplem19 17037 . . . . . . . 8 (((𝐵 ∈ ℕ ∧ 𝐴 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐵↑2) + (𝐴↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐵 gcd 𝐴))) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
316, 7, 8, 18, 29, 30syl311anc 1412 . . . . . . 7 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ∧ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
32313expia 1139 . . . . . 6 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵)) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
335, 32orim12d 979 . . . . 5 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → ((¬ 2 ∥ (𝐴 / (𝐴 gcd 𝐵)) ∨ ¬ 2 ∥ (𝐵 / (𝐴 gcd 𝐵))) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))))
343, 33mpd 16 . . . 4 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
35 ovex 7473 . . . . . . . . . . 11 (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∈ V
36 ovex 7473 . . . . . . . . . . 11 (𝑘 · (2 · (𝑚 · 𝑛))) ∈ V
37 preq12bg 4811 . . . . . . . . . . 11 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ ((𝑘 · ((𝑚↑2) − (𝑛↑2))) ∈ V ∧ (𝑘 · (2 · (𝑚 · 𝑛))) ∈ V)) → ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ↔ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2)))))))
3835, 36, 37mpanr12 718 . . . . . . . . . 10 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ↔ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2)))))))
3938anbi1d 643 . . . . . . . . 9 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
4039rexbidv 3190 . . . . . . . 8 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ∃𝑘 ∈ ℕ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
41402rexbidv 3231 . . . . . . 7 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
42 andir 1026 . . . . . . . . . . 11 ((((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ((𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
43 df-3an 1105 . . . . . . . . . . . 12 ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
44 df-3an 1105 . . . . . . . . . . . 12 ((𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ((𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
4543, 44orbi12i 928 . . . . . . . . . . 11 (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ((𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2)))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
46 3ancoma 1115 . . . . . . . . . . . 12 ((𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
4746orbi2i 926 . . . . . . . . . . 11 (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
4842, 45, 473bitr2i 302 . . . . . . . . . 10 ((((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
4948rexbii 3113 . . . . . . . . 9 (∃𝑘 ∈ ℕ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ∃𝑘 ∈ ℕ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
50492rexbii 3142 . . . . . . . 8 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
51 r19.43 3134 . . . . . . . . . 10 (∃𝑘 ∈ ℕ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
52512rexbii 3142 . . . . . . . . 9 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ (∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
53 r19.43 3134 . . . . . . . . . . 11 (∃𝑚 ∈ ℕ (∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
5453rexbii 3113 . . . . . . . . . 10 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ (∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ ∃𝑛 ∈ ℕ (∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
55 r19.43 3134 . . . . . . . . . 10 (∃𝑛 ∈ ℕ (∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
5654, 55bitri 278 . . . . . . . . 9 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ (∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
5752, 56bitri 278 . . . . . . . 8 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
5850, 57bitri 278 . . . . . . 7 (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (((𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛)))) ∨ (𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
5941, 58bitrdi 290 . . . . . 6 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))))
60593adant3 1150 . . . . 5 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))))
6160adantr 486 . . . 4 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ↔ (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐴 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐵 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) ∨ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ (𝐵 = (𝑘 · ((𝑚↑2) − (𝑛↑2))) ∧ 𝐴 = (𝑘 · (2 · (𝑚 · 𝑛))) ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))))
6234, 61mpbird 260 . . 3 (((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) ∧ ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))))
6362ex 418 . 2 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) → ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
64 pythagtriplem2 17021 . . 3 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) → ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)))
65643adant3 1150 . 2 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2)))) → ((𝐴↑2) + (𝐵↑2)) = (𝐶↑2)))
6663, 65impbid 215 1 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝐶 ∈ ℕ) → (((𝐴↑2) + (𝐵↑2)) = (𝐶↑2) ↔ ∃𝑛 ∈ ℕ ∃𝑚 ∈ ℕ ∃𝑘 ∈ ℕ ({𝐴, 𝐵} = {(𝑘 · ((𝑚↑2) − (𝑛↑2))), (𝑘 · (2 · (𝑚 · 𝑛)))} ∧ 𝐶 = (𝑘 · ((𝑚↑2) + (𝑛↑2))))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  ∃wrex 3090  Vcvv 3454  {cpr 4590   class class class wbr 5106  (class class class)co 7440  ℂcc 11222   + caddc 11227   · cmul 11229   − cmin 11565   / cdiv 11997  ℕcn 12359  2c2 12421  ℤcz 12717  ↑cexp 14228   ∥ cdvds 16448   gcd cgcd 16690
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7772  ax-cnex 11280  ax-resscn 11281  ax-1cn 11282  ax-icn 11283  ax-addcl 11284  ax-addrcl 11285  ax-mulcl 11286  ax-mulrcl 11287  ax-mulcom 11288  ax-addass 11289  ax-mulass 11290  ax-distr 11291  ax-i2m1 11292  ax-1ne0 11293  ax-1rid 11294  ax-rnegex 11295  ax-rrecex 11296  ax-cnre 11297  ax-pre-lttri 11298  ax-pre-lttrn 11299  ax-pre-ltadd 11300  ax-pre-mulgt0 11301  ax-pre-sup 11302
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6319  df-ord 6380  df-on 6381  df-lim 6382  df-suc 6383  df-iota 6509  df-fun 6557  df-fn 6558  df-f 6559  df-f1 6560  df-fo 6561  df-f1o 6562  df-fv 6563  df-riota 7397  df-ov 7443  df-oprab 7444  df-mpo 7445  df-om 7899  df-1st 8022  df-2nd 8023  df-frecs 8324  df-wrecs 8355  df-recs 8404  df-rdg 8443  df-1o 8501  df-2o 8502  df-er 8742  df-en 8999  df-dom 9000  df-sdom 9001  df-fin 9002  df-sup 9458  df-inf 9459  df-pnf 11369  df-mnf 11370  df-xr 11371  df-ltxr 11372  df-le 11373  df-sub 11567  df-neg 11568  df-div 11998  df-nn 12360  df-2 12429  df-3 12430  df-4 12431  df-n0 12631  df-z 12718  df-uz 12990  df-rp 13145  df-fz 13664  df-fl 13956  df-mod 14034  df-seq 14169  df-exp 14229  df-cj 15292  df-re 15293  df-im 15294  df-sqrt 15428  df-abs 15429  df-dvds 16449  df-gcd 16691  df-prm 16873
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator