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

Theorem dvdssq 12352
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 9383 . . . 4 0 ∈ ℤ
2 zdceq 9448 . . . 4 ((𝑀 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑀 = 0)
31, 2mpan2 425 . . 3 (𝑀 ∈ ℤ → DECID 𝑀 = 0)
4 exmiddc 838 . . 3 (DECID 𝑀 = 0 → (𝑀 = 0 ∨ ¬ 𝑀 = 0))
5 0dvds 12122 . . . . . . . 8 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
6 zcn 9377 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
7 sqeq0 10747 . . . . . . . . 9 (𝑁 ∈ ℂ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
86, 7syl 14 . . . . . . . 8 (𝑁 ∈ ℤ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
95, 8bitr4d 191 . . . . . . 7 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ (𝑁↑2) = 0))
10 zsqcl 10755 . . . . . . . 8 (𝑁 ∈ ℤ → (𝑁↑2) ∈ ℤ)
11 0dvds 12122 . . . . . . . 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 4047 . . . . . 6 (𝑀 = 0 → (𝑀𝑁 ↔ 0 ∥ 𝑁))
16 sq0i 10776 . . . . . . 7 (𝑀 = 0 → (𝑀↑2) = 0)
1716breq1d 4054 . . . . . 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 2377 . . . . 5 (𝑀 ≠ 0 ↔ ¬ 𝑀 = 0)
21 nnabscl 11411 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
22 zdceq 9448 . . . . . . . . . . . 12 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑁 = 0)
231, 22mpan2 425 . . . . . . . . . . 11 (𝑁 ∈ ℤ → DECID 𝑁 = 0)
24 exmiddc 838 . . . . . . . . . . 11 (DECID 𝑁 = 0 → (𝑁 = 0 ∨ ¬ 𝑁 = 0))
25 nnz 9391 . . . . . . . . . . . . . . 15 ((abs‘𝑀) ∈ ℕ → (abs‘𝑀) ∈ ℤ)
26 dvds0 12117 . . . . . . . . . . . . . . . 16 ((abs‘𝑀) ∈ ℤ → (abs‘𝑀) ∥ 0)
27 zsqcl 10755 . . . . . . . . . . . . . . . . 17 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀)↑2) ∈ ℤ)
28 dvds0 12117 . . . . . . . . . . . . . . . . 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 4048 . . . . . . . . . . . . . 14 (𝑁 = 0 → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ 0))
34 sq0i 10776 . . . . . . . . . . . . . . 15 (𝑁 = 0 → (𝑁↑2) = 0)
3534breq2d 4056 . . . . . . . . . . . . . 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 2377 . . . . . . . . . . . . 13 (𝑁 ≠ 0 ↔ ¬ 𝑁 = 0)
39 nnabscl 11411 . . . . . . . . . . . . . . . . 17 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
40 dvdssqlem 12351 . . . . . . . . . . . . . . . . 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 12121 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
4425, 42, 43syl2an 289 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
45 nnsqcl 10754 . . . . . . . . . . . . . . . . . . 19 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℕ)
4645nnzd 9494 . . . . . . . . . . . . . . . . . 18 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℤ)
4710adantr 276 . . . . . . . . . . . . . . . . . 18 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (𝑁↑2) ∈ ℤ)
48 dvdsabsb 12121 . . . . . . . . . . . . . . . . . 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 11392 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℂ → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5250, 51syl 14 . . . . . . . . . . . . . . . . . . 19 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5352breq2d 4056 . . . . . . . . . . . . . . . . . 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 718 . . . . . . . . . . 11 ((𝑁 = 0 ∨ ¬ 𝑁 = 0) → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
6123, 24, 603syl 17 . . . . . . . . . 10 (𝑁 ∈ ℤ → (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2))))
6261anabsi7 581 . . . . . . . . 9 (((abs‘𝑀) ∈ ℕ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
6321, 62sylan 283 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ ((abs‘𝑀)↑2) ∥ (𝑁↑2)))
64 absdvdsb 12120 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
6564adantlr 477 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
66 zsqcl 10755 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (𝑀↑2) ∈ ℤ)
6766adantr 276 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (𝑀↑2) ∈ ℤ)
68 absdvdsb 12120 . . . . . . . . . 10 (((𝑀↑2) ∈ ℤ ∧ (𝑁↑2) ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
6967, 10, 68syl2an 289 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
70 zcn 9377 . . . . . . . . . . . . . 14 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
71 abssq 11392 . . . . . . . . . . . . . 14 (𝑀 ∈ ℂ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7270, 71syl 14 . . . . . . . . . . . . 13 (𝑀 ∈ ℤ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7372eqcomd 2211 . . . . . . . . . . . 12 (𝑀 ∈ ℤ → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7473adantr 276 . . . . . . . . . . 11 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7574breq1d 4054 . . . . . . . . . 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 568 . . . . . 6 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ 𝑀 ≠ 0) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))
8079expcom 116 . . . . 5 (𝑀 ≠ 0 → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8120, 80sylbir 135 . . . 4 𝑀 = 0 → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8219, 81jaoi 718 . . 3 ((𝑀 = 0 ∨ ¬ 𝑀 = 0) → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
833, 4, 823syl 17 . 2 (𝑀 ∈ ℤ → ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2))))
8483anabsi5 579 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (𝑀↑2) ∥ (𝑁↑2)))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wb 105  wo 710  DECID wdc 836   = wceq 1373  wcel 2176  wne 2376   class class class wbr 4044  cfv 5271  (class class class)co 5944  cc 7923  0cc0 7925  cn 9036  2c2 9087  cz 9372  cexp 10683  abscabs 11308  cdvds 12098
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 615  ax-in2 616  ax-io 711  ax-5 1470  ax-7 1471  ax-gen 1472  ax-ie1 1516  ax-ie2 1517  ax-8 1527  ax-10 1528  ax-11 1529  ax-i12 1530  ax-bndl 1532  ax-4 1533  ax-17 1549  ax-i9 1553  ax-ial 1557  ax-i5r 1558  ax-13 2178  ax-14 2179  ax-ext 2187  ax-coll 4159  ax-sep 4162  ax-nul 4170  ax-pow 4218  ax-pr 4253  ax-un 4480  ax-setind 4585  ax-iinf 4636  ax-cnex 8016  ax-resscn 8017  ax-1cn 8018  ax-1re 8019  ax-icn 8020  ax-addcl 8021  ax-addrcl 8022  ax-mulcl 8023  ax-mulrcl 8024  ax-addcom 8025  ax-mulcom 8026  ax-addass 8027  ax-mulass 8028  ax-distr 8029  ax-i2m1 8030  ax-0lt1 8031  ax-1rid 8032  ax-0id 8033  ax-rnegex 8034  ax-precex 8035  ax-cnre 8036  ax-pre-ltirr 8037  ax-pre-ltwlin 8038  ax-pre-lttrn 8039  ax-pre-apti 8040  ax-pre-ltadd 8041  ax-pre-mulgt0 8042  ax-pre-mulext 8043  ax-arch 8044  ax-caucvg 8045
This theorem depends on definitions:  df-bi 117  df-stab 833  df-dc 837  df-3or 982  df-3an 983  df-tru 1376  df-fal 1379  df-nf 1484  df-sb 1786  df-eu 2057  df-mo 2058  df-clab 2192  df-cleq 2198  df-clel 2201  df-nfc 2337  df-ne 2377  df-nel 2472  df-ral 2489  df-rex 2490  df-reu 2491  df-rmo 2492  df-rab 2493  df-v 2774  df-sbc 2999  df-csb 3094  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-nul 3461  df-if 3572  df-pw 3618  df-sn 3639  df-pr 3640  df-op 3642  df-uni 3851  df-int 3886  df-iun 3929  df-br 4045  df-opab 4106  df-mpt 4107  df-tr 4143  df-id 4340  df-po 4343  df-iso 4344  df-iord 4413  df-on 4415  df-ilim 4416  df-suc 4418  df-iom 4639  df-xp 4681  df-rel 4682  df-cnv 4683  df-co 4684  df-dm 4685  df-rn 4686  df-res 4687  df-ima 4688  df-iota 5232  df-fun 5273  df-fn 5274  df-f 5275  df-f1 5276  df-fo 5277  df-f1o 5278  df-fv 5279  df-riota 5899  df-ov 5947  df-oprab 5948  df-mpo 5949  df-1st 6226  df-2nd 6227  df-recs 6391  df-frec 6477  df-sup 7086  df-pnf 8109  df-mnf 8110  df-xr 8111  df-ltxr 8112  df-le 8113  df-sub 8245  df-neg 8246  df-reap 8648  df-ap 8655  df-div 8746  df-inn 9037  df-2 9095  df-3 9096  df-4 9097  df-n0 9296  df-z 9373  df-uz 9649  df-q 9741  df-rp 9776  df-fz 10131  df-fzo 10265  df-fl 10413  df-mod 10468  df-seqfrec 10593  df-exp 10684  df-cj 11153  df-re 11154  df-im 11155  df-rsqrt 11309  df-abs 11310  df-dvds 12099  df-gcd 12275
This theorem is referenced by:  pythagtriplem19  12605  4sqlem9  12709  4sqlem10  12710  lgsdir  15512  2sqlem8a  15599
  Copyright terms: Public domain W3C validator