Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  2sqcoprm Structured version   Visualization version   GIF version

Theorem 2sqcoprm 29632
Description: If the sum of two squares is prime, the two original numbers are coprime. (Contributed by Thierry Arnoux, 2-Feb-2020.)
Hypotheses
Ref Expression
2sqcoprm.1 (𝜑𝑃 ∈ ℙ)
2sqcoprm.2 (𝜑𝐴 ∈ ℤ)
2sqcoprm.3 (𝜑𝐵 ∈ ℤ)
2sqcoprm.4 (𝜑 → ((𝐴↑2) + (𝐵↑2)) = 𝑃)
Assertion
Ref Expression
2sqcoprm (𝜑 → (𝐴 gcd 𝐵) = 1)

Proof of Theorem 2sqcoprm
StepHypRef Expression
1 2sqcoprm.1 . . 3 (𝜑𝑃 ∈ ℙ)
2 2sqcoprm.2 . . 3 (𝜑𝐴 ∈ ℤ)
3 2sqcoprm.3 . . 3 (𝜑𝐵 ∈ ℤ)
4 2sqcoprm.4 . . 3 (𝜑 → ((𝐴↑2) + (𝐵↑2)) = 𝑃)
51, 2, 3, 42sqn0 29631 . 2 (𝜑𝐴 ≠ 0)
62, 3gcdcld 15224 . . . 4 (𝜑 → (𝐴 gcd 𝐵) ∈ ℕ0)
76adantr 481 . . 3 ((𝜑𝐴 ≠ 0) → (𝐴 gcd 𝐵) ∈ ℕ0)
82adantr 481 . . . . . . . 8 ((𝜑𝐴 ≠ 0) → 𝐴 ∈ ℤ)
93adantr 481 . . . . . . . 8 ((𝜑𝐴 ≠ 0) → 𝐵 ∈ ℤ)
10 simpr 477 . . . . . . . . . 10 ((𝜑𝐴 ≠ 0) → 𝐴 ≠ 0)
1110neneqd 2798 . . . . . . . . 9 ((𝜑𝐴 ≠ 0) → ¬ 𝐴 = 0)
1211intnanrd 963 . . . . . . . 8 ((𝜑𝐴 ≠ 0) → ¬ (𝐴 = 0 ∧ 𝐵 = 0))
13 gcdn0cl 15218 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ ¬ (𝐴 = 0 ∧ 𝐵 = 0)) → (𝐴 gcd 𝐵) ∈ ℕ)
148, 9, 12, 13syl21anc 1324 . . . . . . 7 ((𝜑𝐴 ≠ 0) → (𝐴 gcd 𝐵) ∈ ℕ)
1514nnsqcld 13024 . . . . . 6 ((𝜑𝐴 ≠ 0) → ((𝐴 gcd 𝐵)↑2) ∈ ℕ)
166nn0zd 11477 . . . . . . . . . . 11 (𝜑 → (𝐴 gcd 𝐵) ∈ ℤ)
17 sqnprm 15408 . . . . . . . . . . 11 ((𝐴 gcd 𝐵) ∈ ℤ → ¬ ((𝐴 gcd 𝐵)↑2) ∈ ℙ)
1816, 17syl 17 . . . . . . . . . 10 (𝜑 → ¬ ((𝐴 gcd 𝐵)↑2) ∈ ℙ)
19 zsqcl 12929 . . . . . . . . . . . . . . . 16 ((𝐴 gcd 𝐵) ∈ ℤ → ((𝐴 gcd 𝐵)↑2) ∈ ℤ)
2016, 19syl 17 . . . . . . . . . . . . . . 15 (𝜑 → ((𝐴 gcd 𝐵)↑2) ∈ ℤ)
21 zsqcl 12929 . . . . . . . . . . . . . . . 16 (𝐴 ∈ ℤ → (𝐴↑2) ∈ ℤ)
222, 21syl 17 . . . . . . . . . . . . . . 15 (𝜑 → (𝐴↑2) ∈ ℤ)
23 zsqcl 12929 . . . . . . . . . . . . . . . 16 (𝐵 ∈ ℤ → (𝐵↑2) ∈ ℤ)
243, 23syl 17 . . . . . . . . . . . . . . 15 (𝜑 → (𝐵↑2) ∈ ℤ)
25 gcddvds 15219 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((𝐴 gcd 𝐵) ∥ 𝐴 ∧ (𝐴 gcd 𝐵) ∥ 𝐵))
262, 3, 25syl2anc 693 . . . . . . . . . . . . . . . . 17 (𝜑 → ((𝐴 gcd 𝐵) ∥ 𝐴 ∧ (𝐴 gcd 𝐵) ∥ 𝐵))
2726simpld 475 . . . . . . . . . . . . . . . 16 (𝜑 → (𝐴 gcd 𝐵) ∥ 𝐴)
28 dvdssqim 15267 . . . . . . . . . . . . . . . . 17 (((𝐴 gcd 𝐵) ∈ ℤ ∧ 𝐴 ∈ ℤ) → ((𝐴 gcd 𝐵) ∥ 𝐴 → ((𝐴 gcd 𝐵)↑2) ∥ (𝐴↑2)))
2928imp 445 . . . . . . . . . . . . . . . 16 ((((𝐴 gcd 𝐵) ∈ ℤ ∧ 𝐴 ∈ ℤ) ∧ (𝐴 gcd 𝐵) ∥ 𝐴) → ((𝐴 gcd 𝐵)↑2) ∥ (𝐴↑2))
3016, 2, 27, 29syl21anc 1324 . . . . . . . . . . . . . . 15 (𝜑 → ((𝐴 gcd 𝐵)↑2) ∥ (𝐴↑2))
3126simprd 479 . . . . . . . . . . . . . . . 16 (𝜑 → (𝐴 gcd 𝐵) ∥ 𝐵)
32 dvdssqim 15267 . . . . . . . . . . . . . . . . 17 (((𝐴 gcd 𝐵) ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((𝐴 gcd 𝐵) ∥ 𝐵 → ((𝐴 gcd 𝐵)↑2) ∥ (𝐵↑2)))
3332imp 445 . . . . . . . . . . . . . . . 16 ((((𝐴 gcd 𝐵) ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ (𝐴 gcd 𝐵) ∥ 𝐵) → ((𝐴 gcd 𝐵)↑2) ∥ (𝐵↑2))
3416, 3, 31, 33syl21anc 1324 . . . . . . . . . . . . . . 15 (𝜑 → ((𝐴 gcd 𝐵)↑2) ∥ (𝐵↑2))
35 dvds2add 15009 . . . . . . . . . . . . . . . 16 ((((𝐴 gcd 𝐵)↑2) ∈ ℤ ∧ (𝐴↑2) ∈ ℤ ∧ (𝐵↑2) ∈ ℤ) → ((((𝐴 gcd 𝐵)↑2) ∥ (𝐴↑2) ∧ ((𝐴 gcd 𝐵)↑2) ∥ (𝐵↑2)) → ((𝐴 gcd 𝐵)↑2) ∥ ((𝐴↑2) + (𝐵↑2))))
3635imp 445 . . . . . . . . . . . . . . 15 (((((𝐴 gcd 𝐵)↑2) ∈ ℤ ∧ (𝐴↑2) ∈ ℤ ∧ (𝐵↑2) ∈ ℤ) ∧ (((𝐴 gcd 𝐵)↑2) ∥ (𝐴↑2) ∧ ((𝐴 gcd 𝐵)↑2) ∥ (𝐵↑2))) → ((𝐴 gcd 𝐵)↑2) ∥ ((𝐴↑2) + (𝐵↑2)))
3720, 22, 24, 30, 34, 36syl32anc 1333 . . . . . . . . . . . . . 14 (𝜑 → ((𝐴 gcd 𝐵)↑2) ∥ ((𝐴↑2) + (𝐵↑2)))
3837, 4breqtrd 4677 . . . . . . . . . . . . 13 (𝜑 → ((𝐴 gcd 𝐵)↑2) ∥ 𝑃)
3938adantr 481 . . . . . . . . . . . 12 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → ((𝐴 gcd 𝐵)↑2) ∥ 𝑃)
40 simpr 477 . . . . . . . . . . . . 13 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2))
411adantr 481 . . . . . . . . . . . . 13 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → 𝑃 ∈ ℙ)
42 dvdsprm 15409 . . . . . . . . . . . . 13 ((((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2) ∧ 𝑃 ∈ ℙ) → (((𝐴 gcd 𝐵)↑2) ∥ 𝑃 ↔ ((𝐴 gcd 𝐵)↑2) = 𝑃))
4340, 41, 42syl2anc 693 . . . . . . . . . . . 12 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → (((𝐴 gcd 𝐵)↑2) ∥ 𝑃 ↔ ((𝐴 gcd 𝐵)↑2) = 𝑃))
4439, 43mpbid 222 . . . . . . . . . . 11 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → ((𝐴 gcd 𝐵)↑2) = 𝑃)
4544, 41eqeltrd 2700 . . . . . . . . . 10 ((𝜑 ∧ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2)) → ((𝐴 gcd 𝐵)↑2) ∈ ℙ)
4618, 45mtand 691 . . . . . . . . 9 (𝜑 → ¬ ((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2))
47 eluz2b3 11759 . . . . . . . . 9 (((𝐴 gcd 𝐵)↑2) ∈ (ℤ‘2) ↔ (((𝐴 gcd 𝐵)↑2) ∈ ℕ ∧ ((𝐴 gcd 𝐵)↑2) ≠ 1))
4846, 47sylnib 318 . . . . . . . 8 (𝜑 → ¬ (((𝐴 gcd 𝐵)↑2) ∈ ℕ ∧ ((𝐴 gcd 𝐵)↑2) ≠ 1))
49 imnan 438 . . . . . . . 8 ((((𝐴 gcd 𝐵)↑2) ∈ ℕ → ¬ ((𝐴 gcd 𝐵)↑2) ≠ 1) ↔ ¬ (((𝐴 gcd 𝐵)↑2) ∈ ℕ ∧ ((𝐴 gcd 𝐵)↑2) ≠ 1))
5048, 49sylibr 224 . . . . . . 7 (𝜑 → (((𝐴 gcd 𝐵)↑2) ∈ ℕ → ¬ ((𝐴 gcd 𝐵)↑2) ≠ 1))
5150adantr 481 . . . . . 6 ((𝜑𝐴 ≠ 0) → (((𝐴 gcd 𝐵)↑2) ∈ ℕ → ¬ ((𝐴 gcd 𝐵)↑2) ≠ 1))
5215, 51mpd 15 . . . . 5 ((𝜑𝐴 ≠ 0) → ¬ ((𝐴 gcd 𝐵)↑2) ≠ 1)
53 df-ne 2794 . . . . 5 (((𝐴 gcd 𝐵)↑2) ≠ 1 ↔ ¬ ((𝐴 gcd 𝐵)↑2) = 1)
5452, 53sylnib 318 . . . 4 ((𝜑𝐴 ≠ 0) → ¬ ¬ ((𝐴 gcd 𝐵)↑2) = 1)
5554notnotrd 128 . . 3 ((𝜑𝐴 ≠ 0) → ((𝐴 gcd 𝐵)↑2) = 1)
56 nn0sqeq1 29498 . . 3 (((𝐴 gcd 𝐵) ∈ ℕ0 ∧ ((𝐴 gcd 𝐵)↑2) = 1) → (𝐴 gcd 𝐵) = 1)
577, 55, 56syl2anc 693 . 2 ((𝜑𝐴 ≠ 0) → (𝐴 gcd 𝐵) = 1)
585, 57mpdan 702 1 (𝜑 → (𝐴 gcd 𝐵) = 1)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 384  w3a 1037   = wceq 1482  wcel 1989  wne 2793   class class class wbr 4651  cfv 5886  (class class class)co 6647  0cc0 9933  1c1 9934   + caddc 9936  cn 11017  2c2 11067  0cn0 11289  cz 11374  cuz 11684  cexp 12855  cdvds 14977   gcd cgcd 15210  cprime 15379
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1721  ax-4 1736  ax-5 1838  ax-6 1887  ax-7 1934  ax-8 1991  ax-9 1998  ax-10 2018  ax-11 2033  ax-12 2046  ax-13 2245  ax-ext 2601  ax-sep 4779  ax-nul 4787  ax-pow 4841  ax-pr 4904  ax-un 6946  ax-cnex 9989  ax-resscn 9990  ax-1cn 9991  ax-icn 9992  ax-addcl 9993  ax-addrcl 9994  ax-mulcl 9995  ax-mulrcl 9996  ax-mulcom 9997  ax-addass 9998  ax-mulass 9999  ax-distr 10000  ax-i2m1 10001  ax-1ne0 10002  ax-1rid 10003  ax-rnegex 10004  ax-rrecex 10005  ax-cnre 10006  ax-pre-lttri 10007  ax-pre-lttrn 10008  ax-pre-ltadd 10009  ax-pre-mulgt0 10010  ax-pre-sup 10011
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1485  df-ex 1704  df-nf 1709  df-sb 1880  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2752  df-ne 2794  df-nel 2897  df-ral 2916  df-rex 2917  df-reu 2918  df-rmo 2919  df-rab 2920  df-v 3200  df-sbc 3434  df-csb 3532  df-dif 3575  df-un 3577  df-in 3579  df-ss 3586  df-pss 3588  df-nul 3914  df-if 4085  df-pw 4158  df-sn 4176  df-pr 4178  df-tp 4180  df-op 4182  df-uni 4435  df-int 4474  df-iun 4520  df-br 4652  df-opab 4711  df-mpt 4728  df-tr 4751  df-id 5022  df-eprel 5027  df-po 5033  df-so 5034  df-fr 5071  df-we 5073  df-xp 5118  df-rel 5119  df-cnv 5120  df-co 5121  df-dm 5122  df-rn 5123  df-res 5124  df-ima 5125  df-pred 5678  df-ord 5724  df-on 5725  df-lim 5726  df-suc 5727  df-iota 5849  df-fun 5888  df-fn 5889  df-f 5890  df-f1 5891  df-fo 5892  df-f1o 5893  df-fv 5894  df-riota 6608  df-ov 6650  df-oprab 6651  df-mpt2 6652  df-om 7063  df-2nd 7166  df-wrecs 7404  df-recs 7465  df-rdg 7503  df-1o 7557  df-2o 7558  df-oadd 7561  df-er 7739  df-en 7953  df-dom 7954  df-sdom 7955  df-fin 7956  df-sup 8345  df-inf 8346  df-pnf 10073  df-mnf 10074  df-xr 10075  df-ltxr 10076  df-le 10077  df-sub 10265  df-neg 10266  df-div 10682  df-nn 11018  df-2 11076  df-3 11077  df-n0 11290  df-z 11375  df-uz 11685  df-rp 11830  df-seq 12797  df-exp 12856  df-cj 13833  df-re 13834  df-im 13835  df-sqrt 13969  df-abs 13970  df-dvds 14978  df-gcd 15211  df-prm 15380
This theorem is referenced by:  2sqmod  29633
  Copyright terms: Public domain W3C validator