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

Theorem dvdssq 12601
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 9489 . . . 4 0 ∈ ℤ
2 zdceq 9554 . . . 4 ((𝑀 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑀 = 0)
31, 2mpan2 425 . . 3 (𝑀 ∈ ℤ → DECID 𝑀 = 0)
4 exmiddc 843 . . 3 (DECID 𝑀 = 0 → (𝑀 = 0 ∨ ¬ 𝑀 = 0))
5 0dvds 12371 . . . . . . . 8 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
6 zcn 9483 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
7 sqeq0 10863 . . . . . . . . 9 (𝑁 ∈ ℂ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
86, 7syl 14 . . . . . . . 8 (𝑁 ∈ ℤ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
95, 8bitr4d 191 . . . . . . 7 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ (𝑁↑2) = 0))
10 zsqcl 10871 . . . . . . . 8 (𝑁 ∈ ℤ → (𝑁↑2) ∈ ℤ)
11 0dvds 12371 . . . . . . . 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 10892 . . . . . . 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 11660 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
22 zdceq 9554 . . . . . . . . . . . 12 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑁 = 0)
231, 22mpan2 425 . . . . . . . . . . 11 (𝑁 ∈ ℤ → DECID 𝑁 = 0)
24 exmiddc 843 . . . . . . . . . . 11 (DECID 𝑁 = 0 → (𝑁 = 0 ∨ ¬ 𝑁 = 0))
25 nnz 9497 . . . . . . . . . . . . . . 15 ((abs‘𝑀) ∈ ℕ → (abs‘𝑀) ∈ ℤ)
26 dvds0 12366 . . . . . . . . . . . . . . . 16 ((abs‘𝑀) ∈ ℤ → (abs‘𝑀) ∥ 0)
27 zsqcl 10871 . . . . . . . . . . . . . . . . 17 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀)↑2) ∈ ℤ)
28 dvds0 12366 . . . . . . . . . . . . . . . . 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 10892 . . . . . . . . . . . . . . 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 11660 . . . . . . . . . . . . . . . . 17 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
40 dvdssqlem 12600 . . . . . . . . . . . . . . . . 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 12370 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
4425, 42, 43syl2an 289 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
45 nnsqcl 10870 . . . . . . . . . . . . . . . . . . 19 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℕ)
4645nnzd 9600 . . . . . . . . . . . . . . . . . 18 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℤ)
4710adantr 276 . . . . . . . . . . . . . . . . . 18 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (𝑁↑2) ∈ ℤ)
48 dvdsabsb 12370 . . . . . . . . . . . . . . . . . 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 11641 . . . . . . . . . . . . . . . . . . . 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 12369 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
6564adantlr 477 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
66 zsqcl 10871 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (𝑀↑2) ∈ ℤ)
6766adantr 276 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (𝑀↑2) ∈ ℤ)
68 absdvdsb 12369 . . . . . . . . . 10 (((𝑀↑2) ∈ ℤ ∧ (𝑁↑2) ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
6967, 10, 68syl2an 289 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
70 zcn 9483 . . . . . . . . . . . . . 14 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
71 abssq 11641 . . . . . . . . . . . . . 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 6017  cc 8029  0cc0 8031  cn 9142  2c2 9193  cz 9478  cexp 10799  abscabs 11557  cdvds 12347
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 8122  ax-resscn 8123  ax-1cn 8124  ax-1re 8125  ax-icn 8126  ax-addcl 8127  ax-addrcl 8128  ax-mulcl 8129  ax-mulrcl 8130  ax-addcom 8131  ax-mulcom 8132  ax-addass 8133  ax-mulass 8134  ax-distr 8135  ax-i2m1 8136  ax-0lt1 8137  ax-1rid 8138  ax-0id 8139  ax-rnegex 8140  ax-precex 8141  ax-cnre 8142  ax-pre-ltirr 8143  ax-pre-ltwlin 8144  ax-pre-lttrn 8145  ax-pre-apti 8146  ax-pre-ltadd 8147  ax-pre-mulgt0 8148  ax-pre-mulext 8149  ax-arch 8150  ax-caucvg 8151
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 5970  df-ov 6020  df-oprab 6021  df-mpo 6022  df-1st 6302  df-2nd 6303  df-recs 6470  df-frec 6556  df-sup 7182  df-pnf 8215  df-mnf 8216  df-xr 8217  df-ltxr 8218  df-le 8219  df-sub 8351  df-neg 8352  df-reap 8754  df-ap 8761  df-div 8852  df-inn 9143  df-2 9201  df-3 9202  df-4 9203  df-n0 9402  df-z 9479  df-uz 9755  df-q 9853  df-rp 9888  df-fz 10243  df-fzo 10377  df-fl 10529  df-mod 10584  df-seqfrec 10709  df-exp 10800  df-cj 11402  df-re 11403  df-im 11404  df-rsqrt 11558  df-abs 11559  df-dvds 12348  df-gcd 12524
This theorem is referenced by:  pythagtriplem19  12854  4sqlem9  12958  4sqlem10  12959  lgsdir  15763  2sqlem8a  15850
  Copyright terms: Public domain W3C validator