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

Theorem dvdssq 12225
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 9356 . . . 4 0 ∈ ℤ
2 zdceq 9420 . . . 4 ((𝑀 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑀 = 0)
31, 2mpan2 425 . . 3 (𝑀 ∈ ℤ → DECID 𝑀 = 0)
4 exmiddc 837 . . 3 (DECID 𝑀 = 0 → (𝑀 = 0 ∨ ¬ 𝑀 = 0))
5 0dvds 11995 . . . . . . . 8 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
6 zcn 9350 . . . . . . . . 9 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
7 sqeq0 10713 . . . . . . . . 9 (𝑁 ∈ ℂ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
86, 7syl 14 . . . . . . . 8 (𝑁 ∈ ℤ → ((𝑁↑2) = 0 ↔ 𝑁 = 0))
95, 8bitr4d 191 . . . . . . 7 (𝑁 ∈ ℤ → (0 ∥ 𝑁 ↔ (𝑁↑2) = 0))
10 zsqcl 10721 . . . . . . . 8 (𝑁 ∈ ℤ → (𝑁↑2) ∈ ℤ)
11 0dvds 11995 . . . . . . . 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 4037 . . . . . 6 (𝑀 = 0 → (𝑀𝑁 ↔ 0 ∥ 𝑁))
16 sq0i 10742 . . . . . . 7 (𝑀 = 0 → (𝑀↑2) = 0)
1716breq1d 4044 . . . . . 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 2368 . . . . 5 (𝑀 ≠ 0 ↔ ¬ 𝑀 = 0)
21 nnabscl 11284 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘𝑀) ∈ ℕ)
22 zdceq 9420 . . . . . . . . . . . 12 ((𝑁 ∈ ℤ ∧ 0 ∈ ℤ) → DECID 𝑁 = 0)
231, 22mpan2 425 . . . . . . . . . . 11 (𝑁 ∈ ℤ → DECID 𝑁 = 0)
24 exmiddc 837 . . . . . . . . . . 11 (DECID 𝑁 = 0 → (𝑁 = 0 ∨ ¬ 𝑁 = 0))
25 nnz 9364 . . . . . . . . . . . . . . 15 ((abs‘𝑀) ∈ ℕ → (abs‘𝑀) ∈ ℤ)
26 dvds0 11990 . . . . . . . . . . . . . . . 16 ((abs‘𝑀) ∈ ℤ → (abs‘𝑀) ∥ 0)
27 zsqcl 10721 . . . . . . . . . . . . . . . . 17 ((abs‘𝑀) ∈ ℤ → ((abs‘𝑀)↑2) ∈ ℤ)
28 dvds0 11990 . . . . . . . . . . . . . . . . 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 4038 . . . . . . . . . . . . . 14 (𝑁 = 0 → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ 0))
34 sq0i 10742 . . . . . . . . . . . . . . 15 (𝑁 = 0 → (𝑁↑2) = 0)
3534breq2d 4046 . . . . . . . . . . . . . 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 2368 . . . . . . . . . . . . 13 (𝑁 ≠ 0 ↔ ¬ 𝑁 = 0)
39 nnabscl 11284 . . . . . . . . . . . . . . . . 17 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (abs‘𝑁) ∈ ℕ)
40 dvdssqlem 12224 . . . . . . . . . . . . . . . . 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 11994 . . . . . . . . . . . . . . . . 17 (((abs‘𝑀) ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
4425, 42, 43syl2an 289 . . . . . . . . . . . . . . . 16 (((abs‘𝑀) ∈ ℕ ∧ (𝑁 ∈ ℤ ∧ 𝑁 ≠ 0)) → ((abs‘𝑀) ∥ 𝑁 ↔ (abs‘𝑀) ∥ (abs‘𝑁)))
45 nnsqcl 10720 . . . . . . . . . . . . . . . . . . 19 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℕ)
4645nnzd 9466 . . . . . . . . . . . . . . . . . 18 ((abs‘𝑀) ∈ ℕ → ((abs‘𝑀)↑2) ∈ ℤ)
4710adantr 276 . . . . . . . . . . . . . . . . . 18 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → (𝑁↑2) ∈ ℤ)
48 dvdsabsb 11994 . . . . . . . . . . . . . . . . . 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 11265 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℂ → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5250, 51syl 14 . . . . . . . . . . . . . . . . . . 19 ((𝑁 ∈ ℤ ∧ 𝑁 ≠ 0) → ((abs‘𝑁)↑2) = (abs‘(𝑁↑2)))
5352breq2d 4046 . . . . . . . . . . . . . . . . . 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 717 . . . . . . . . . . 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 11993 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
6564adantlr 477 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → (𝑀𝑁 ↔ (abs‘𝑀) ∥ 𝑁))
66 zsqcl 10721 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (𝑀↑2) ∈ ℤ)
6766adantr 276 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (𝑀↑2) ∈ ℤ)
68 absdvdsb 11993 . . . . . . . . . 10 (((𝑀↑2) ∈ ℤ ∧ (𝑁↑2) ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
6967, 10, 68syl2an 289 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) ∧ 𝑁 ∈ ℤ) → ((𝑀↑2) ∥ (𝑁↑2) ↔ (abs‘(𝑀↑2)) ∥ (𝑁↑2)))
70 zcn 9350 . . . . . . . . . . . . . 14 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
71 abssq 11265 . . . . . . . . . . . . . 14 (𝑀 ∈ ℂ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7270, 71syl 14 . . . . . . . . . . . . 13 (𝑀 ∈ ℤ → ((abs‘𝑀)↑2) = (abs‘(𝑀↑2)))
7372eqcomd 2202 . . . . . . . . . . . 12 (𝑀 ∈ ℤ → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7473adantr 276 . . . . . . . . . . 11 ((𝑀 ∈ ℤ ∧ 𝑀 ≠ 0) → (abs‘(𝑀↑2)) = ((abs‘𝑀)↑2))
7574breq1d 4044 . . . . . . . . . 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 717 . . 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 709  DECID wdc 835   = wceq 1364  wcel 2167  wne 2367   class class class wbr 4034  cfv 5259  (class class class)co 5925  cc 7896  0cc0 7898  cn 9009  2c2 9060  cz 9345  cexp 10649  abscabs 11181  cdvds 11971
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 710  ax-5 1461  ax-7 1462  ax-gen 1463  ax-ie1 1507  ax-ie2 1508  ax-8 1518  ax-10 1519  ax-11 1520  ax-i12 1521  ax-bndl 1523  ax-4 1524  ax-17 1540  ax-i9 1544  ax-ial 1548  ax-i5r 1549  ax-13 2169  ax-14 2170  ax-ext 2178  ax-coll 4149  ax-sep 4152  ax-nul 4160  ax-pow 4208  ax-pr 4243  ax-un 4469  ax-setind 4574  ax-iinf 4625  ax-cnex 7989  ax-resscn 7990  ax-1cn 7991  ax-1re 7992  ax-icn 7993  ax-addcl 7994  ax-addrcl 7995  ax-mulcl 7996  ax-mulrcl 7997  ax-addcom 7998  ax-mulcom 7999  ax-addass 8000  ax-mulass 8001  ax-distr 8002  ax-i2m1 8003  ax-0lt1 8004  ax-1rid 8005  ax-0id 8006  ax-rnegex 8007  ax-precex 8008  ax-cnre 8009  ax-pre-ltirr 8010  ax-pre-ltwlin 8011  ax-pre-lttrn 8012  ax-pre-apti 8013  ax-pre-ltadd 8014  ax-pre-mulgt0 8015  ax-pre-mulext 8016  ax-arch 8017  ax-caucvg 8018
This theorem depends on definitions:  df-bi 117  df-stab 832  df-dc 836  df-3or 981  df-3an 982  df-tru 1367  df-fal 1370  df-nf 1475  df-sb 1777  df-eu 2048  df-mo 2049  df-clab 2183  df-cleq 2189  df-clel 2192  df-nfc 2328  df-ne 2368  df-nel 2463  df-ral 2480  df-rex 2481  df-reu 2482  df-rmo 2483  df-rab 2484  df-v 2765  df-sbc 2990  df-csb 3085  df-dif 3159  df-un 3161  df-in 3163  df-ss 3170  df-nul 3452  df-if 3563  df-pw 3608  df-sn 3629  df-pr 3630  df-op 3632  df-uni 3841  df-int 3876  df-iun 3919  df-br 4035  df-opab 4096  df-mpt 4097  df-tr 4133  df-id 4329  df-po 4332  df-iso 4333  df-iord 4402  df-on 4404  df-ilim 4405  df-suc 4407  df-iom 4628  df-xp 4670  df-rel 4671  df-cnv 4672  df-co 4673  df-dm 4674  df-rn 4675  df-res 4676  df-ima 4677  df-iota 5220  df-fun 5261  df-fn 5262  df-f 5263  df-f1 5264  df-fo 5265  df-f1o 5266  df-fv 5267  df-riota 5880  df-ov 5928  df-oprab 5929  df-mpo 5930  df-1st 6207  df-2nd 6208  df-recs 6372  df-frec 6458  df-sup 7059  df-pnf 8082  df-mnf 8083  df-xr 8084  df-ltxr 8085  df-le 8086  df-sub 8218  df-neg 8219  df-reap 8621  df-ap 8628  df-div 8719  df-inn 9010  df-2 9068  df-3 9069  df-4 9070  df-n0 9269  df-z 9346  df-uz 9621  df-q 9713  df-rp 9748  df-fz 10103  df-fzo 10237  df-fl 10379  df-mod 10434  df-seqfrec 10559  df-exp 10650  df-cj 11026  df-re 11027  df-im 11028  df-rsqrt 11182  df-abs 11183  df-dvds 11972  df-gcd 12148
This theorem is referenced by:  pythagtriplem19  12478  4sqlem9  12582  4sqlem10  12583  lgsdir  15384  2sqlem8a  15471
  Copyright terms: Public domain W3C validator