ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  dvdssq GIF version

Theorem dvdssq 12620
Description: Two numbers are divisible iff their squares are. (Contributed by Scott Fenton, 18-Apr-2014.) (Revised by Mario Carneiro, 19-Apr-2014.)
Assertion
Ref Expression
dvdssq ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))

Proof of Theorem dvdssq
StepHypRef Expression
1 0z 9490 . . . 4 0 ∈ ℤ
2 zdceq 9555 . . . 4 ((𝑀 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑀 = 0)
31, 2mpan2 425 . . 3 (𝑀 ∈ ℤ → DECID 𝑀 = 0)
4 exmiddc 843 . . 3 (DECID 𝑀 = 0 → (𝑀 = 0 ∨ ¬ 𝑀 = 0))
5 0dvds 12390 . . . . . . . 8 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
6 zcn 9484 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
7 sqeq0 10865 . . . . . . . . 9 (𝑁 ∈ ℂ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
86, 7syl 14 . . . . . . . 8 (𝑁 ∈ ℤ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
95, 8bitr4d 191 . . . . . . 7 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ (𝑁↑2) = 0))
10 zsqcl 10873 . . . . . . . 8 (𝑁 ∈ ℤ → (𝑁↑2) ∈ ℤ)
11 0dvds 12390 . . . . . . . 8 ((𝑁↑2) ∈ ℤ → (0 ∥ (𝑁↑2) ↔ (𝑁↑2) = 0))
1210, 11syl 14 . . . . . . 7 (𝑁 ∈ ℤ → (0 ∥ (𝑁↑2) ↔ (𝑁↑2) = 0))
139, 12bitr4d 191 . . . . . 6 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ 0 ∥ (𝑁↑2)))
1413adantl 277 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (0 ∥ 𝑁 ↔ 0 ∥ (𝑁↑2)))
15 breq1 4091 . . . . . 6 (𝑀 = 0 → (𝑀𝑁 ↔ 0 ∥ 𝑁))
16 sq0i 10894 . . . . . . 7 (𝑀 = 0 → (𝑀↑2) = 0)
1716breq1d 4098 . . . . . 6 (𝑀 = 0 → ((𝑀↑2) ∥ (𝑁↑2) ↔ 0 ∥ (𝑁↑2)))
1815, 17bibi12d 235 . . . . 5 (𝑀 = 0 → ((𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)) ↔ (0 ∥ 𝑁 ↔ 0 ∥ (𝑁↑2))))
1914, 18imbitrrid 156 . . . 4 (𝑀 = 0 → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
20 df-ne 2403 . . . . 5 (𝑀 ≠ 0 ↔ ¬ 𝑀 = 0)
21 nnabscl 11678 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
22 zdceq 9555 . . . . . . . . . . . 12 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑁 = 0)
231, 22mpan2 425 . . . . . . . . . . 11 (𝑁 ∈ ℤ → DECID 𝑁 = 0)
24 exmiddc 843 . . . . . . . . . . 11 (DECID 𝑁 = 0 → (𝑁 = 0 ∨ ¬ 𝑁 = 0))
25 nnz 9498 . . . . . . . . . . . . . . 15 ((abs‘𝑀) ∈ ℕ → (abs‘𝑀) ∈ ℤ)
26 dvds0 12385 . . . . . . . . . . . . . . . 16 ((abs‘𝑀) ∈ ℤ → (abs‘𝑀) ∥ 0)
27 zsqcl 10873 . . . . . . . . . . . . . . . . 17 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀)↑2) ∈ ℤ)
28 dvds0 12385 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀)↑2) ∈ ℤ → ((abs‘𝑀)↑2) ∥ 0)
2927, 28syl 14 . . . . . . . . . . . . . . . 16 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀)↑2) ∥ 0)
3026, 292thd 175 . . . . . . . . . . . . . . 15 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀) ∥ 0 ↔ ((abs‘𝑀)↑2) ∥ 0))
3125, 30syl 14 . . . . . . . . . . . . . 14 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀) ∥ 0 ↔ ((abs‘𝑀)↑2) ∥ 0))
3231adantr 276 . . . . . . . . . . . . 13 (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 0 ↔ ((abs‘𝑀)↑2) ∥ 0))
33 breq2 4092 . . . . . . . . . . . . . 14 (𝑁 = 0 → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ 0))
34 sq0i 10894 . . . . . . . . . . . . . . 15 (𝑁 = 0 → (𝑁↑2) = 0)
3534breq2d 4100 . . . . . . . . . . . . . 14 (𝑁 = 0 → (((abs‘𝑀)↑2) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ 0))
3633, 35bibi12d 235 . . . . . . . . . . . . 13 (𝑁 = 0 → (((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)) ↔ ((abs‘𝑀) ∥ 0 ↔ ((abs‘𝑀)↑2) ∥ 0)))
3732, 36imbitrrid 156 . . . . . . . . . . . 12 (𝑁 = 0 → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
38 df-ne 2403 . . . . . . . . . . . . 13 (𝑁 ≠ 0 ↔ ¬ 𝑁 = 0)
39 nnabscl 11678 . . . . . . . . . . . . . . . . 17 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
40 dvdssqlem 12619 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℕ ∧ (abs‘𝑁) ∈ ℕ) → ((abs‘𝑀) ∥ (abs‘𝑁) ↔ ((abs‘𝑀)↑2) ∥ ((abs‘𝑁)↑2)))
4139, 40sylan2 286 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ (abs‘𝑁) ↔ ((abs‘𝑀)↑2) ∥ ((abs‘𝑁)↑2)))
42 simpl 109 . . . . . . . . . . . . . . . . 17 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → 𝑁 ∈ ℤ)
43 dvdsabsb 12389 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
4425, 42, 43syl2an 289 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
45 nnsqcl 10872 . . . . . . . . . . . . . . . . . . 19 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℕ)
4645nnzd 9601 . . . . . . . . . . . . . . . . . 18 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℤ)
4710adantr 276 . . . . . . . . . . . . . . . . . 18 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (𝑁↑2) ∈ ℤ)
48 dvdsabsb 12389 . . . . . . . . . . . . . . . . . 18 ((((abs‘𝑀)↑2) ∈ ℤ ∧ (𝑁↑2) ∈ ℤ) → (((abs‘𝑀)↑2) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ (abs‘(𝑁↑2))))
4946, 47, 48syl2an 289 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → (((abs‘𝑀)↑2) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ (abs‘(𝑁↑2))))
506adantr 276 . . . . . . . . . . . . . . . . . . . 20 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → 𝑁 ∈ ℂ)
51 abssq 11659 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℂ → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5250, 51syl 14 . . . . . . . . . . . . . . . . . . 19 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5352breq2d 4100 . . . . . . . . . . . . . . . . . 18 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (((abs‘𝑀)↑2) ∥ ((abs‘𝑁)↑2) ↔ ((abs‘𝑀)↑2) ∥ (abs‘(𝑁↑2))))
5453adantl 277 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → (((abs‘𝑀)↑2) ∥ ((abs‘𝑁)↑2) ↔ ((abs‘𝑀)↑2) ∥ (abs‘(𝑁↑2))))
5549, 54bitr4d 191 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → (((abs‘𝑀)↑2) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ ((abs‘𝑁)↑2)))
5641, 44, 553bitr4d 220 . . . . . . . . . . . . . . 15 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
5756anassrs 400 . . . . . . . . . . . . . 14 ((((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) ∧ 𝑁 ≠ 0) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
5857expcom 116 . . . . . . . . . . . . 13 (𝑁 ≠ 0 → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
5938, 58sylbir 135 . . . . . . . . . . . 12 𝑁 = 0 → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
6037, 59jaoi 723 . . . . . . . . . . 11 ((𝑁 = 0 ∨ ¬ 𝑁 = 0) → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
6123, 24, 603syl 17 . . . . . . . . . 10 (𝑁 ∈ ℤ → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
6261anabsi7 583 . . . . . . . . 9 (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
6321, 62sylan 283 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
64 absdvdsb 12388 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
6564adantlr 477 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
66 zsqcl 10873 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (𝑀↑2) ∈ ℤ)
6766adantr 276 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (𝑀↑2) ∈ ℤ)
68 absdvdsb 12388 . . . . . . . . . 10 (((𝑀↑2) ∈ ℤ ∧ (𝑁↑2) ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
6967, 10, 68syl2an 289 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
70 zcn 9484 . . . . . . . . . . . . . 14 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
71 abssq 11659 . . . . . . . . . . . . . 14 (𝑀 ∈ ℂ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7270, 71syl 14 . . . . . . . . . . . . 13 (𝑀 ∈ ℤ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7372eqcomd 2237 . . . . . . . . . . . 12 (𝑀 ∈ ℤ → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7473adantr 276 . . . . . . . . . . 11 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7574breq1d 4098 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → ((abs‘(𝑀↑2)) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
7675adantr 276 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((abs‘(𝑀↑2)) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
7769, 76bitrd 188 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
7863, 65, 773bitr4d 220 . . . . . . 7 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))
7978an32s 570 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 ≠ 0) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))
8079expcom 116 . . . . 5 (𝑀 ≠ 0 → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8120, 80sylbir 135 . . . 4 𝑀 = 0 → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8219, 81jaoi 723 . . 3 ((𝑀 = 0 ∨ ¬ 𝑀 = 0) → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
833, 4, 823syl 17 . 2 (𝑀 ∈ ℤ → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8483anabsi5 581 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wb 105  wo 715  DECID wdc 841   = wceq 1397  wcel 2202  wne 2402   class class class wbr 4088  cfv 5326  (class class class)co 6018  cc 8030  0cc0 8032  cn 9143  2c2 9194  cz 9479  cexp 10801  abscabs 11575  cdvds 12366
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 716  ax-5 1495  ax-7 1496  ax-gen 1497  ax-ie1 1541  ax-ie2 1542  ax-8 1552  ax-10 1553  ax-11 1554  ax-i12 1555  ax-bndl 1557  ax-4 1558  ax-17 1574  ax-i9 1578  ax-ial 1582  ax-i5r 1583  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4204  ax-sep 4207  ax-nul 4215  ax-pow 4264  ax-pr 4299  ax-un 4530  ax-setind 4635  ax-iinf 4686  ax-cnex 8123  ax-resscn 8124  ax-1cn 8125  ax-1re 8126  ax-icn 8127  ax-addcl 8128  ax-addrcl 8129  ax-mulcl 8130  ax-mulrcl 8131  ax-addcom 8132  ax-mulcom 8133  ax-addass 8134  ax-mulass 8135  ax-distr 8136  ax-i2m1 8137  ax-0lt1 8138  ax-1rid 8139  ax-0id 8140  ax-rnegex 8141  ax-precex 8142  ax-cnre 8143  ax-pre-ltirr 8144  ax-pre-ltwlin 8145  ax-pre-lttrn 8146  ax-pre-apti 8147  ax-pre-ltadd 8148  ax-pre-mulgt0 8149  ax-pre-mulext 8150  ax-arch 8151  ax-caucvg 8152
This theorem depends on definitions:  df-bi 117  df-stab 838  df-dc 842  df-3or 1005  df-3an 1006  df-tru 1400  df-fal 1403  df-nf 1509  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2363  df-ne 2403  df-nel 2498  df-ral 2515  df-rex 2516  df-reu 2517  df-rmo 2518  df-rab 2519  df-v 2804  df-sbc 3032  df-csb 3128  df-dif 3202  df-un 3204  df-in 3206  df-ss 3213  df-nul 3495  df-if 3606  df-pw 3654  df-sn 3675  df-pr 3676  df-op 3678  df-uni 3894  df-int 3929  df-iun 3972  df-br 4089  df-opab 4151  df-mpt 4152  df-tr 4188  df-id 4390  df-po 4393  df-iso 4394  df-iord 4463  df-on 4465  df-ilim 4466  df-suc 4468  df-iom 4689  df-xp 4731  df-rel 4732  df-cnv 4733  df-co 4734  df-dm 4735  df-rn 4736  df-res 4737  df-ima 4738  df-iota 5286  df-fun 5328  df-fn 5329  df-f 5330  df-f1 5331  df-fo 5332  df-f1o 5333  df-fv 5334  df-riota 5971  df-ov 6021  df-oprab 6022  df-mpo 6023  df-1st 6303  df-2nd 6304  df-recs 6471  df-frec 6557  df-sup 7183  df-pnf 8216  df-mnf 8217  df-xr 8218  df-ltxr 8219  df-le 8220  df-sub 8352  df-neg 8353  df-reap 8755  df-ap 8762  df-div 8853  df-inn 9144  df-2 9202  df-3 9203  df-4 9204  df-n0 9403  df-z 9480  df-uz 9756  df-q 9854  df-rp 9889  df-fz 10244  df-fzo 10378  df-fl 10531  df-mod 10586  df-seqfrec 10711  df-exp 10802  df-cj 11420  df-re 11421  df-im 11422  df-rsqrt 11576  df-abs 11577  df-dvds 12367  df-gcd 12543
This theorem is referenced by:  pythagtriplem19  12873  4sqlem9  12977  4sqlem10  12978  lgsdir  15783  2sqlem8a  15870
  Copyright terms: Public domain W3C validator