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

Theorem nn0gcdsq 11950
 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 9032 . 2 (𝐴 ∈ ℕ0 ↔ (𝐴 ∈ ℕ ∨ 𝐴 = 0))
2 elnn0 9032 . 2 (𝐵 ∈ ℕ0 ↔ (𝐵 ∈ ℕ ∨ 𝐵 = 0))
3 sqgcd 11789 . . 3 ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
4 nncn 8781 . . . . . . 7 (𝐵 ∈ ℕ → 𝐵 ∈ ℂ)
5 abssq 10914 . . . . . . 7 (𝐵 ∈ ℂ → ((abs‘𝐵)↑2) = (abs‘(𝐵↑2)))
64, 5syl 14 . . . . . 6 (𝐵 ∈ ℕ → ((abs‘𝐵)↑2) = (abs‘(𝐵↑2)))
7 nnz 9126 . . . . . . . 8 (𝐵 ∈ ℕ → 𝐵 ∈ ℤ)
8 gcd0id 11739 . . . . . . . 8 (𝐵 ∈ ℤ → (0 gcd 𝐵) = (abs‘𝐵))
97, 8syl 14 . . . . . . 7 (𝐵 ∈ ℕ → (0 gcd 𝐵) = (abs‘𝐵))
109oveq1d 5801 . . . . . 6 (𝐵 ∈ ℕ → ((0 gcd 𝐵)↑2) = ((abs‘𝐵)↑2))
11 sq0 10443 . . . . . . . . 9 (0↑2) = 0
1211a1i 9 . . . . . . . 8 (𝐵 ∈ ℕ → (0↑2) = 0)
1312oveq1d 5801 . . . . . . 7 (𝐵 ∈ ℕ → ((0↑2) gcd (𝐵↑2)) = (0 gcd (𝐵↑2)))
14 zsqcl 10423 . . . . . . . 8 (𝐵 ∈ ℤ → (𝐵↑2) ∈ ℤ)
15 gcd0id 11739 . . . . . . . 8 ((𝐵↑2) ∈ ℤ → (0 gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
167, 14, 153syl 17 . . . . . . 7 (𝐵 ∈ ℕ → (0 gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
1713, 16eqtrd 2174 . . . . . 6 (𝐵 ∈ ℕ → ((0↑2) gcd (𝐵↑2)) = (abs‘(𝐵↑2)))
186, 10, 173eqtr4d 2184 . . . . 5 (𝐵 ∈ ℕ → ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2)))
1918adantl 275 . . . 4 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2)))
20 oveq1 5793 . . . . . . 7 (𝐴 = 0 → (𝐴 gcd 𝐵) = (0 gcd 𝐵))
2120oveq1d 5801 . . . . . 6 (𝐴 = 0 → ((𝐴 gcd 𝐵)↑2) = ((0 gcd 𝐵)↑2))
22 oveq1 5793 . . . . . . 7 (𝐴 = 0 → (𝐴↑2) = (0↑2))
2322oveq1d 5801 . . . . . 6 (𝐴 = 0 → ((𝐴↑2) gcd (𝐵↑2)) = ((0↑2) gcd (𝐵↑2)))
2421, 23eqeq12d 2156 . . . . 5 (𝐴 = 0 → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2))))
2524adantr 274 . . . 4 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((0 gcd 𝐵)↑2) = ((0↑2) gcd (𝐵↑2))))
2619, 25mpbird 166 . . 3 ((𝐴 = 0 ∧ 𝐵 ∈ ℕ) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
27 nncn 8781 . . . . . . 7 (𝐴 ∈ ℕ → 𝐴 ∈ ℂ)
28 abssq 10914 . . . . . . 7 (𝐴 ∈ ℂ → ((abs‘𝐴)↑2) = (abs‘(𝐴↑2)))
2927, 28syl 14 . . . . . 6 (𝐴 ∈ ℕ → ((abs‘𝐴)↑2) = (abs‘(𝐴↑2)))
30 nnz 9126 . . . . . . . 8 (𝐴 ∈ ℕ → 𝐴 ∈ ℤ)
31 gcdid0 11740 . . . . . . . 8 (𝐴 ∈ ℤ → (𝐴 gcd 0) = (abs‘𝐴))
3230, 31syl 14 . . . . . . 7 (𝐴 ∈ ℕ → (𝐴 gcd 0) = (abs‘𝐴))
3332oveq1d 5801 . . . . . 6 (𝐴 ∈ ℕ → ((𝐴 gcd 0)↑2) = ((abs‘𝐴)↑2))
3411a1i 9 . . . . . . . 8 (𝐴 ∈ ℕ → (0↑2) = 0)
3534oveq2d 5802 . . . . . . 7 (𝐴 ∈ ℕ → ((𝐴↑2) gcd (0↑2)) = ((𝐴↑2) gcd 0))
36 zsqcl 10423 . . . . . . . 8 (𝐴 ∈ ℤ → (𝐴↑2) ∈ ℤ)
37 gcdid0 11740 . . . . . . . 8 ((𝐴↑2) ∈ ℤ → ((𝐴↑2) gcd 0) = (abs‘(𝐴↑2)))
3830, 36, 373syl 17 . . . . . . 7 (𝐴 ∈ ℕ → ((𝐴↑2) gcd 0) = (abs‘(𝐴↑2)))
3935, 38eqtrd 2174 . . . . . 6 (𝐴 ∈ ℕ → ((𝐴↑2) gcd (0↑2)) = (abs‘(𝐴↑2)))
4029, 33, 393eqtr4d 2184 . . . . 5 (𝐴 ∈ ℕ → ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2)))
4140adantr 274 . . . 4 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2)))
42 oveq2 5794 . . . . . . 7 (𝐵 = 0 → (𝐴 gcd 𝐵) = (𝐴 gcd 0))
4342oveq1d 5801 . . . . . 6 (𝐵 = 0 → ((𝐴 gcd 𝐵)↑2) = ((𝐴 gcd 0)↑2))
44 oveq1 5793 . . . . . . 7 (𝐵 = 0 → (𝐵↑2) = (0↑2))
4544oveq2d 5802 . . . . . 6 (𝐵 = 0 → ((𝐴↑2) gcd (𝐵↑2)) = ((𝐴↑2) gcd (0↑2)))
4643, 45eqeq12d 2156 . . . . 5 (𝐵 = 0 → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2))))
4746adantl 275 . . . 4 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → (((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)) ↔ ((𝐴 gcd 0)↑2) = ((𝐴↑2) gcd (0↑2))))
4841, 47mpbird 166 . . 3 ((𝐴 ∈ ℕ ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
49 gcd0val 11721 . . . . . 6 (0 gcd 0) = 0
5049oveq1i 5796 . . . . 5 ((0 gcd 0)↑2) = (0↑2)
5111, 11oveq12i 5798 . . . . . 6 ((0↑2) gcd (0↑2)) = (0 gcd 0)
5251, 49eqtri 2162 . . . . 5 ((0↑2) gcd (0↑2)) = 0
5311, 50, 523eqtr4i 2172 . . . 4 ((0 gcd 0)↑2) = ((0↑2) gcd (0↑2))
54 oveq12 5795 . . . . 5 ((𝐴 = 0 ∧ 𝐵 = 0) → (𝐴 gcd 𝐵) = (0 gcd 0))
5554oveq1d 5801 . . . 4 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((0 gcd 0)↑2))
5622, 44oveqan12d 5805 . . . 4 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴↑2) gcd (𝐵↑2)) = ((0↑2) gcd (0↑2)))
5753, 55, 563eqtr4a 2200 . . 3 ((𝐴 = 0 ∧ 𝐵 = 0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
583, 26, 48, 57ccase 949 . 2 (((𝐴 ∈ ℕ ∨ 𝐴 = 0) ∧ (𝐵 ∈ ℕ ∨ 𝐵 = 0)) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
591, 2, 58syl2anb 289 1 ((𝐴 ∈ ℕ0𝐵 ∈ ℕ0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
 Colors of variables: wff set class Syntax hints:   → wi 4   ∧ wa 103   ↔ wb 104   ∨ wo 698   = wceq 1332   ∈ wcel 1481  ‘cfv 5135  (class class class)co 5786  ℂcc 7671  0cc0 7673  ℕcn 8773  2c2 8824  ℕ0cn0 9030  ℤcz 9107  ↑cexp 10352  abscabs 10830   gcd cgcd 11707 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 604  ax-in2 605  ax-io 699  ax-5 1424  ax-7 1425  ax-gen 1426  ax-ie1 1470  ax-ie2 1471  ax-8 1483  ax-10 1484  ax-11 1485  ax-i12 1486  ax-bndl 1487  ax-4 1488  ax-13 1492  ax-14 1493  ax-17 1507  ax-i9 1511  ax-ial 1515  ax-i5r 1516  ax-ext 2123  ax-coll 4053  ax-sep 4056  ax-nul 4064  ax-pow 4108  ax-pr 4142  ax-un 4366  ax-setind 4463  ax-iinf 4513  ax-cnex 7764  ax-resscn 7765  ax-1cn 7766  ax-1re 7767  ax-icn 7768  ax-addcl 7769  ax-addrcl 7770  ax-mulcl 7771  ax-mulrcl 7772  ax-addcom 7773  ax-mulcom 7774  ax-addass 7775  ax-mulass 7776  ax-distr 7777  ax-i2m1 7778  ax-0lt1 7779  ax-1rid 7780  ax-0id 7781  ax-rnegex 7782  ax-precex 7783  ax-cnre 7784  ax-pre-ltirr 7785  ax-pre-ltwlin 7786  ax-pre-lttrn 7787  ax-pre-apti 7788  ax-pre-ltadd 7789  ax-pre-mulgt0 7790  ax-pre-mulext 7791  ax-arch 7792  ax-caucvg 7793 This theorem depends on definitions:  df-bi 116  df-stab 817  df-dc 821  df-3or 964  df-3an 965  df-tru 1335  df-fal 1338  df-nf 1438  df-sb 1738  df-eu 2004  df-mo 2005  df-clab 2128  df-cleq 2134  df-clel 2137  df-nfc 2272  df-ne 2311  df-nel 2406  df-ral 2423  df-rex 2424  df-reu 2425  df-rmo 2426  df-rab 2427  df-v 2693  df-sbc 2916  df-csb 3010  df-dif 3080  df-un 3082  df-in 3084  df-ss 3091  df-nul 3371  df-if 3482  df-pw 3519  df-sn 3540  df-pr 3541  df-op 3543  df-uni 3747  df-int 3782  df-iun 3825  df-br 3940  df-opab 4000  df-mpt 4001  df-tr 4037  df-id 4226  df-po 4229  df-iso 4230  df-iord 4299  df-on 4301  df-ilim 4302  df-suc 4304  df-iom 4516  df-xp 4557  df-rel 4558  df-cnv 4559  df-co 4560  df-dm 4561  df-rn 4562  df-res 4563  df-ima 4564  df-iota 5100  df-fun 5137  df-fn 5138  df-f 5139  df-f1 5140  df-fo 5141  df-f1o 5142  df-fv 5143  df-riota 5742  df-ov 5789  df-oprab 5790  df-mpo 5791  df-1st 6050  df-2nd 6051  df-recs 6214  df-frec 6300  df-sup 6888  df-pnf 7855  df-mnf 7856  df-xr 7857  df-ltxr 7858  df-le 7859  df-sub 7988  df-neg 7989  df-reap 8390  df-ap 8397  df-div 8486  df-inn 8774  df-2 8832  df-3 8833  df-4 8834  df-n0 9031  df-z 9108  df-uz 9380  df-q 9468  df-rp 9500  df-fz 9851  df-fzo 9980  df-fl 10103  df-mod 10156  df-seqfrec 10279  df-exp 10353  df-cj 10675  df-re 10676  df-im 10677  df-rsqrt 10831  df-abs 10832  df-dvds 11566  df-gcd 11708 This theorem is referenced by:  zgcdsq  11951
 Copyright terms: Public domain W3C validator