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

Theorem nn0gcdsq 11060
Description: Squaring commutes with GCD, in particular two coprime numbers have coprime squares. (Contributed by Stefan O'Rear, 15-Sep-2014.)
Assertion
Ref Expression
nn0gcdsq ((𝐴 ∈ ℕ0𝐵 ∈ ℕ0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))

Proof of Theorem nn0gcdsq
StepHypRef Expression
1 elnn0 8608 . 2 (𝐴 ∈ ℕ0 ↔ (𝐴 ∈ ℕ ∨ 𝐴 = 0))
2 elnn0 8608 . 2 (𝐵 ∈ ℕ0 ↔ (𝐵 ∈ ℕ ∨ 𝐵 = 0))
3 sqgcd 10900 . . 3 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
4 nncn 8365 . . . . . . 7 (𝐵 ∈ ℕ → 𝐵 ∈ ℂ)
5 abssq 10410 . . . . . . 7 (𝐵 ∈ ℂ → ((abs‘𝐵)↑2) = (abs‘(𝐵↑2)))
64, 5syl 14 . . . . . 6 (𝐵 ∈ ℕ → ((abs‘𝐵)↑2) = (abs‘(𝐵↑2)))
7 nnz 8702 . . . . . . . 8 (𝐵 ∈ ℕ → 𝐵 ∈ ℤ)
8 gcd0id 10852 . . . . . . . 8 (𝐵 ∈ ℤ → (0 gcd 𝐵) = (abs‘𝐵))
97, 8syl 14 . . . . . . 7 (𝐵 ∈ ℕ → (0 gcd 𝐵) = (abs‘𝐵))
109oveq1d 5628 . . . . . 6 (𝐵 ∈ ℕ → ((0 gcd 𝐵)↑2) = ((abs‘𝐵)↑2))
11 sq0 9944 . . . . . . . . 9 (0↑2) = 0
1211a1i 9 . . . . . . . 8 (𝐵 ∈ ℕ → (0↑2) = 0)
1312oveq1d 5628 . . . . . . 7 (𝐵 ∈ ℕ → ((0↑2) gcd (𝐵↑2)) = (0 gcd (𝐵↑2)))
14 zsqcl 9924 . . . . . . . 8 (𝐵 ∈ ℤ → (𝐵↑2) ∈ ℤ)
15 gcd0id 10852 . . . . . . . 8 ((𝐵↑2) ∈ ℤ → (0 gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
167, 14, 153syl 17 . . . . . . 7 (𝐵 ∈ ℕ → (0 gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
1713, 16eqtrd 2117 . . . . . 6 (𝐵 ∈ ℕ → ((0↑2) gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
186, 10, 173eqtr4d 2127 . . . . 5 (𝐵 ∈ ℕ → ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2)))
1918adantl 271 . . . 4 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2)))
20 oveq1 5620 . . . . . . 7 (𝐴 = 0 → (𝐴 gcd 𝐵) = (0 gcd 𝐵))
2120oveq1d 5628 . . . . . 6 (𝐴 = 0 → ((𝐴 gcd 𝐵)↑2) = ((0 gcd 𝐵)↑2))
22 oveq1 5620 . . . . . . 7 (𝐴 = 0 → (𝐴↑2) = (0↑2))
2322oveq1d 5628 . . . . . 6 (𝐴 = 0 → ((𝐴↑2) gcd (𝐵↑2)) = ((0↑2) gcd (𝐵↑2)))
2421, 23eqeq12d 2099 . . . . 5 (𝐴 = 0 → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2))))
2524adantr 270 . . . 4 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2))))
2619, 25mpbird 165 . . 3 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
27 nncn 8365 . . . . . . 7 (𝐴 ∈ ℕ → 𝐴 ∈ ℂ)
28 abssq 10410 . . . . . . 7 (𝐴 ∈ ℂ → ((abs‘𝐴)↑2) = (abs‘(𝐴↑2)))
2927, 28syl 14 . . . . . 6 (𝐴 ∈ ℕ → ((abs‘𝐴)↑2) = (abs‘(𝐴↑2)))
30 nnz 8702 . . . . . . . 8 (𝐴 ∈ ℕ → 𝐴 ∈ ℤ)
31 gcdid0 10853 . . . . . . . 8 (𝐴 ∈ ℤ → (𝐴 gcd 0) = (abs‘𝐴))
3230, 31syl 14 . . . . . . 7 (𝐴 ∈ ℕ → (𝐴 gcd 0) = (abs‘𝐴))
3332oveq1d 5628 . . . . . 6 (𝐴 ∈ ℕ → ((𝐴 gcd 0)↑2) = ((abs‘𝐴)↑2))
3411a1i 9 . . . . . . . 8 (𝐴 ∈ ℕ → (0↑2) = 0)
3534oveq2d 5629 . . . . . . 7 (𝐴 ∈ ℕ → ((𝐴↑2) gcd (0↑2)) = ((𝐴↑2) gcd 0))
36 zsqcl 9924 . . . . . . . 8 (𝐴 ∈ ℤ → (𝐴↑2) ∈ ℤ)
37 gcdid0 10853 . . . . . . . 8 ((𝐴↑2) ∈ ℤ → ((𝐴↑2) gcd 0) = (abs‘(𝐴↑2)))
3830, 36, 373syl 17 . . . . . . 7 (𝐴 ∈ ℕ → ((𝐴↑2) gcd 0) = (abs‘(𝐴↑2)))
3935, 38eqtrd 2117 . . . . . 6 (𝐴 ∈ ℕ → ((𝐴↑2) gcd (0↑2)) = (abs‘(𝐴↑2)))
4029, 33, 393eqtr4d 2127 . . . . 5 (𝐴 ∈ ℕ → ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2)))
4140adantr 270 . . . 4 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2)))
42 oveq2 5621 . . . . . . 7 (𝐵 = 0 → (𝐴 gcd 𝐵) = (𝐴 gcd 0))
4342oveq1d 5628 . . . . . 6 (𝐵 = 0 → ((𝐴 gcd 𝐵)↑2) = ((𝐴 gcd 0)↑2))
44 oveq1 5620 . . . . . . 7 (𝐵 = 0 → (𝐵↑2) = (0↑2))
4544oveq2d 5629 . . . . . 6 (𝐵 = 0 → ((𝐴↑2) gcd (𝐵↑2)) = ((𝐴↑2) gcd (0↑2)))
4643, 45eqeq12d 2099 . . . . 5 (𝐵 = 0 → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2))))
4746adantl 271 . . . 4 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2))))
4841, 47mpbird 165 . . 3 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
49 gcd0val 10834 . . . . . 6 (0 gcd 0) = 0
5049oveq1i 5623 . . . . 5 ((0 gcd 0)↑2) = (0↑2)
5111, 11oveq12i 5625 . . . . . 6 ((0↑2) gcd (0↑2)) = (0 gcd 0)
5251, 49eqtri 2105 . . . . 5 ((0↑2) gcd (0↑2)) = 0
5311, 50, 523eqtr4i 2115 . . . 4 ((0 gcd 0)↑2) = ((0↑2) gcd (0↑2))
54 oveq12 5622 . . . . 5 ((𝐴 = 0 ∧ 𝐵 = 0) → (𝐴 gcd 𝐵) = (0 gcd 0))
5554oveq1d 5628 . . . 4 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((0 gcd 0)↑2))
5622, 44oveqan12d 5632 . . . 4 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴↑2) gcd (𝐵↑2)) = ((0↑2) gcd (0↑2)))
5753, 55, 563eqtr4a 2143 . . 3 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
583, 26, 48, 57ccase 908 . 2 (((𝐴 ∈ ℕ ∨ 𝐴 = 0) ∧ (𝐵 ∈ ℕ ∨ 𝐵 = 0)) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
591, 2, 58syl2anb 285 1 ((𝐴 ∈ ℕ0𝐵 ∈ ℕ0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 102  wb 103  wo 662   = wceq 1287  wcel 1436  cfv 4981  (class class class)co 5613  cc 7292  0cc0 7294  cn 8357  2c2 8407  0cn0 8606  cz 8683  cexp 9853  abscabs 10326   gcd cgcd 10820
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 577  ax-in2 578  ax-io 663  ax-5 1379  ax-7 1380  ax-gen 1381  ax-ie1 1425  ax-ie2 1426  ax-8 1438  ax-10 1439  ax-11 1440  ax-i12 1441  ax-bndl 1442  ax-4 1443  ax-13 1447  ax-14 1448  ax-17 1462  ax-i9 1466  ax-ial 1470  ax-i5r 1471  ax-ext 2067  ax-coll 3929  ax-sep 3932  ax-nul 3940  ax-pow 3984  ax-pr 4010  ax-un 4234  ax-setind 4326  ax-iinf 4376  ax-cnex 7380  ax-resscn 7381  ax-1cn 7382  ax-1re 7383  ax-icn 7384  ax-addcl 7385  ax-addrcl 7386  ax-mulcl 7387  ax-mulrcl 7388  ax-addcom 7389  ax-mulcom 7390  ax-addass 7391  ax-mulass 7392  ax-distr 7393  ax-i2m1 7394  ax-0lt1 7395  ax-1rid 7396  ax-0id 7397  ax-rnegex 7398  ax-precex 7399  ax-cnre 7400  ax-pre-ltirr 7401  ax-pre-ltwlin 7402  ax-pre-lttrn 7403  ax-pre-apti 7404  ax-pre-ltadd 7405  ax-pre-mulgt0 7406  ax-pre-mulext 7407  ax-arch 7408  ax-caucvg 7409
This theorem depends on definitions:  df-bi 115  df-dc 779  df-3or 923  df-3an 924  df-tru 1290  df-fal 1293  df-nf 1393  df-sb 1690  df-eu 1948  df-mo 1949  df-clab 2072  df-cleq 2078  df-clel 2081  df-nfc 2214  df-ne 2252  df-nel 2347  df-ral 2360  df-rex 2361  df-reu 2362  df-rmo 2363  df-rab 2364  df-v 2617  df-sbc 2830  df-csb 2923  df-dif 2990  df-un 2992  df-in 2994  df-ss 3001  df-nul 3276  df-if 3380  df-pw 3417  df-sn 3437  df-pr 3438  df-op 3440  df-uni 3637  df-int 3672  df-iun 3715  df-br 3821  df-opab 3875  df-mpt 3876  df-tr 3912  df-id 4094  df-po 4097  df-iso 4098  df-iord 4167  df-on 4169  df-ilim 4170  df-suc 4172  df-iom 4379  df-xp 4417  df-rel 4418  df-cnv 4419  df-co 4420  df-dm 4421  df-rn 4422  df-res 4423  df-ima 4424  df-iota 4946  df-fun 4983  df-fn 4984  df-f 4985  df-f1 4986  df-fo 4987  df-f1o 4988  df-fv 4989  df-riota 5569  df-ov 5616  df-oprab 5617  df-mpt2 5618  df-1st 5868  df-2nd 5869  df-recs 6024  df-frec 6110  df-sup 6623  df-pnf 7468  df-mnf 7469  df-xr 7470  df-ltxr 7471  df-le 7472  df-sub 7599  df-neg 7600  df-reap 7993  df-ap 8000  df-div 8079  df-inn 8358  df-2 8416  df-3 8417  df-4 8418  df-n0 8607  df-z 8684  df-uz 8952  df-q 9037  df-rp 9067  df-fz 9357  df-fzo 9482  df-fl 9605  df-mod 9658  df-iseq 9780  df-iexp 9854  df-cj 10172  df-re 10173  df-im 10174  df-rsqrt 10327  df-abs 10328  df-dvds 10679  df-gcd 10821
This theorem is referenced by:  zgcdsq  11061
  Copyright terms: Public domain W3C validator