MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  2sqlem8a Structured version   Visualization version   GIF version

Theorem 2sqlem8a 25195
Description: Lemma for 2sqlem8 25196. (Contributed by Mario Carneiro, 4-Jun-2016.)
Hypotheses
Ref Expression
2sq.1 𝑆 = ran (𝑤 ∈ ℤ[i] ↦ ((abs‘𝑤)↑2))
2sqlem7.2 𝑌 = {𝑧 ∣ ∃𝑥 ∈ ℤ ∃𝑦 ∈ ℤ ((𝑥 gcd 𝑦) = 1 ∧ 𝑧 = ((𝑥↑2) + (𝑦↑2)))}
2sqlem9.5 (𝜑 → ∀𝑏 ∈ (1...(𝑀 − 1))∀𝑎𝑌 (𝑏𝑎𝑏𝑆))
2sqlem9.7 (𝜑𝑀𝑁)
2sqlem8.n (𝜑𝑁 ∈ ℕ)
2sqlem8.m (𝜑𝑀 ∈ (ℤ‘2))
2sqlem8.1 (𝜑𝐴 ∈ ℤ)
2sqlem8.2 (𝜑𝐵 ∈ ℤ)
2sqlem8.3 (𝜑 → (𝐴 gcd 𝐵) = 1)
2sqlem8.4 (𝜑𝑁 = ((𝐴↑2) + (𝐵↑2)))
2sqlem8.c 𝐶 = (((𝐴 + (𝑀 / 2)) mod 𝑀) − (𝑀 / 2))
2sqlem8.d 𝐷 = (((𝐵 + (𝑀 / 2)) mod 𝑀) − (𝑀 / 2))
Assertion
Ref Expression
2sqlem8a (𝜑 → (𝐶 gcd 𝐷) ∈ ℕ)
Distinct variable groups:   𝑎,𝑏,𝑤,𝑥,𝑦,𝑧   𝐴,𝑎,𝑥,𝑦,𝑧   𝑥,𝐶   𝜑,𝑥,𝑦   𝐵,𝑎,𝑏,𝑥,𝑦   𝑀,𝑎,𝑏,𝑥,𝑦,𝑧   𝑆,𝑎,𝑏,𝑥,𝑦,𝑧   𝑥,𝐷   𝑥,𝑁,𝑦,𝑧   𝑌,𝑎,𝑏,𝑥,𝑦
Allowed substitution hints:   𝜑(𝑧,𝑤,𝑎,𝑏)   𝐴(𝑤,𝑏)   𝐵(𝑧,𝑤)   𝐶(𝑦,𝑧,𝑤,𝑎,𝑏)   𝐷(𝑦,𝑧,𝑤,𝑎,𝑏)   𝑆(𝑤)   𝑀(𝑤)   𝑁(𝑤,𝑎,𝑏)   𝑌(𝑧,𝑤)

Proof of Theorem 2sqlem8a
StepHypRef Expression
1 2sqlem8.1 . . . 4 (𝜑𝐴 ∈ ℤ)
2 2sqlem8.m . . . . . 6 (𝜑𝑀 ∈ (ℤ‘2))
3 eluz2b3 11800 . . . . . 6 (𝑀 ∈ (ℤ‘2) ↔ (𝑀 ∈ ℕ ∧ 𝑀 ≠ 1))
42, 3sylib 208 . . . . 5 (𝜑 → (𝑀 ∈ ℕ ∧ 𝑀 ≠ 1))
54simpld 474 . . . 4 (𝜑𝑀 ∈ ℕ)
6 2sqlem8.c . . . 4 𝐶 = (((𝐴 + (𝑀 / 2)) mod 𝑀) − (𝑀 / 2))
71, 5, 64sqlem5 15693 . . 3 (𝜑 → (𝐶 ∈ ℤ ∧ ((𝐴𝐶) / 𝑀) ∈ ℤ))
87simpld 474 . 2 (𝜑𝐶 ∈ ℤ)
9 2sqlem8.2 . . . 4 (𝜑𝐵 ∈ ℤ)
10 2sqlem8.d . . . 4 𝐷 = (((𝐵 + (𝑀 / 2)) mod 𝑀) − (𝑀 / 2))
119, 5, 104sqlem5 15693 . . 3 (𝜑 → (𝐷 ∈ ℤ ∧ ((𝐵𝐷) / 𝑀) ∈ ℤ))
1211simpld 474 . 2 (𝜑𝐷 ∈ ℤ)
134simprd 478 . . . 4 (𝜑𝑀 ≠ 1)
14 simpr 476 . . . . . . . . . 10 ((𝜑 ∧ (𝐶↑2) = 0) → (𝐶↑2) = 0)
151, 5, 6, 144sqlem9 15697 . . . . . . . . 9 ((𝜑 ∧ (𝐶↑2) = 0) → (𝑀↑2) ∥ (𝐴↑2))
1615ex 449 . . . . . . . 8 (𝜑 → ((𝐶↑2) = 0 → (𝑀↑2) ∥ (𝐴↑2)))
17 eluzelz 11735 . . . . . . . . . 10 (𝑀 ∈ (ℤ‘2) → 𝑀 ∈ ℤ)
182, 17syl 17 . . . . . . . . 9 (𝜑𝑀 ∈ ℤ)
19 dvdssq 15327 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑀𝐴 ↔ (𝑀↑2) ∥ (𝐴↑2)))
2018, 1, 19syl2anc 694 . . . . . . . 8 (𝜑 → (𝑀𝐴 ↔ (𝑀↑2) ∥ (𝐴↑2)))
2116, 20sylibrd 249 . . . . . . 7 (𝜑 → ((𝐶↑2) = 0 → 𝑀𝐴))
22 simpr 476 . . . . . . . . . 10 ((𝜑 ∧ (𝐷↑2) = 0) → (𝐷↑2) = 0)
239, 5, 10, 224sqlem9 15697 . . . . . . . . 9 ((𝜑 ∧ (𝐷↑2) = 0) → (𝑀↑2) ∥ (𝐵↑2))
2423ex 449 . . . . . . . 8 (𝜑 → ((𝐷↑2) = 0 → (𝑀↑2) ∥ (𝐵↑2)))
25 dvdssq 15327 . . . . . . . . 9 ((𝑀 ∈ ℤ ∧ 𝐵 ∈ ℤ) → (𝑀𝐵 ↔ (𝑀↑2) ∥ (𝐵↑2)))
2618, 9, 25syl2anc 694 . . . . . . . 8 (𝜑 → (𝑀𝐵 ↔ (𝑀↑2) ∥ (𝐵↑2)))
2724, 26sylibrd 249 . . . . . . 7 (𝜑 → ((𝐷↑2) = 0 → 𝑀𝐵))
28 2sqlem8.3 . . . . . . . . . . 11 (𝜑 → (𝐴 gcd 𝐵) = 1)
29 ax-1ne0 10043 . . . . . . . . . . . 12 1 ≠ 0
3029a1i 11 . . . . . . . . . . 11 (𝜑 → 1 ≠ 0)
3128, 30eqnetrd 2890 . . . . . . . . . 10 (𝜑 → (𝐴 gcd 𝐵) ≠ 0)
3231neneqd 2828 . . . . . . . . 9 (𝜑 → ¬ (𝐴 gcd 𝐵) = 0)
33 gcdeq0 15285 . . . . . . . . . 10 ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((𝐴 gcd 𝐵) = 0 ↔ (𝐴 = 0 ∧ 𝐵 = 0)))
341, 9, 33syl2anc 694 . . . . . . . . 9 (𝜑 → ((𝐴 gcd 𝐵) = 0 ↔ (𝐴 = 0 ∧ 𝐵 = 0)))
3532, 34mtbid 313 . . . . . . . 8 (𝜑 → ¬ (𝐴 = 0 ∧ 𝐵 = 0))
36 dvdslegcd 15273 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) ∧ ¬ (𝐴 = 0 ∧ 𝐵 = 0)) → ((𝑀𝐴𝑀𝐵) → 𝑀 ≤ (𝐴 gcd 𝐵)))
3718, 1, 9, 35, 36syl31anc 1369 . . . . . . 7 (𝜑 → ((𝑀𝐴𝑀𝐵) → 𝑀 ≤ (𝐴 gcd 𝐵)))
3821, 27, 37syl2and 499 . . . . . 6 (𝜑 → (((𝐶↑2) = 0 ∧ (𝐷↑2) = 0) → 𝑀 ≤ (𝐴 gcd 𝐵)))
3928breq2d 4697 . . . . . . 7 (𝜑 → (𝑀 ≤ (𝐴 gcd 𝐵) ↔ 𝑀 ≤ 1))
40 nnle1eq1 11086 . . . . . . . 8 (𝑀 ∈ ℕ → (𝑀 ≤ 1 ↔ 𝑀 = 1))
415, 40syl 17 . . . . . . 7 (𝜑 → (𝑀 ≤ 1 ↔ 𝑀 = 1))
4239, 41bitrd 268 . . . . . 6 (𝜑 → (𝑀 ≤ (𝐴 gcd 𝐵) ↔ 𝑀 = 1))
4338, 42sylibd 229 . . . . 5 (𝜑 → (((𝐶↑2) = 0 ∧ (𝐷↑2) = 0) → 𝑀 = 1))
4443necon3ad 2836 . . . 4 (𝜑 → (𝑀 ≠ 1 → ¬ ((𝐶↑2) = 0 ∧ (𝐷↑2) = 0)))
4513, 44mpd 15 . . 3 (𝜑 → ¬ ((𝐶↑2) = 0 ∧ (𝐷↑2) = 0))
468zcnd 11521 . . . . 5 (𝜑𝐶 ∈ ℂ)
47 sqeq0 12967 . . . . 5 (𝐶 ∈ ℂ → ((𝐶↑2) = 0 ↔ 𝐶 = 0))
4846, 47syl 17 . . . 4 (𝜑 → ((𝐶↑2) = 0 ↔ 𝐶 = 0))
4912zcnd 11521 . . . . 5 (𝜑𝐷 ∈ ℂ)
50 sqeq0 12967 . . . . 5 (𝐷 ∈ ℂ → ((𝐷↑2) = 0 ↔ 𝐷 = 0))
5149, 50syl 17 . . . 4 (𝜑 → ((𝐷↑2) = 0 ↔ 𝐷 = 0))
5248, 51anbi12d 747 . . 3 (𝜑 → (((𝐶↑2) = 0 ∧ (𝐷↑2) = 0) ↔ (𝐶 = 0 ∧ 𝐷 = 0)))
5345, 52mtbid 313 . 2 (𝜑 → ¬ (𝐶 = 0 ∧ 𝐷 = 0))
54 gcdn0cl 15271 . 2 (((𝐶 ∈ ℤ ∧ 𝐷 ∈ ℤ) ∧ ¬ (𝐶 = 0 ∧ 𝐷 = 0)) → (𝐶 gcd 𝐷) ∈ ℕ)
558, 12, 53, 54syl21anc 1365 1 (𝜑 → (𝐶 gcd 𝐷) ∈ ℕ)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 383   = wceq 1523  wcel 2030  {cab 2637  wne 2823  wral 2941  wrex 2942   class class class wbr 4685  cmpt 4762  ran crn 5144  cfv 5926  (class class class)co 6690  cc 9972  0cc0 9974  1c1 9975   + caddc 9977  cle 10113  cmin 10304   / cdiv 10722  cn 11058  2c2 11108  cz 11415  cuz 11725  ...cfz 12364   mod cmo 12708  cexp 12900  abscabs 14018  cdvds 15027   gcd cgcd 15263  ℤ[i]cgz 15680
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991  ax-cnex 10030  ax-resscn 10031  ax-1cn 10032  ax-icn 10033  ax-addcl 10034  ax-addrcl 10035  ax-mulcl 10036  ax-mulrcl 10037  ax-mulcom 10038  ax-addass 10039  ax-mulass 10040  ax-distr 10041  ax-i2m1 10042  ax-1ne0 10043  ax-1rid 10044  ax-rnegex 10045  ax-rrecex 10046  ax-cnre 10047  ax-pre-lttri 10048  ax-pre-lttrn 10049  ax-pre-ltadd 10050  ax-pre-mulgt0 10051  ax-pre-sup 10052
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1055  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-nel 2927  df-ral 2946  df-rex 2947  df-reu 2948  df-rmo 2949  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-pss 3623  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-tp 4215  df-op 4217  df-uni 4469  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-tr 4786  df-id 5053  df-eprel 5058  df-po 5064  df-so 5065  df-fr 5102  df-we 5104  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-pred 5718  df-ord 5764  df-on 5765  df-lim 5766  df-suc 5767  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-riota 6651  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-om 7108  df-2nd 7211  df-wrecs 7452  df-recs 7513  df-rdg 7551  df-er 7787  df-en 7998  df-dom 7999  df-sdom 8000  df-sup 8389  df-inf 8390  df-pnf 10114  df-mnf 10115  df-xr 10116  df-ltxr 10117  df-le 10118  df-sub 10306  df-neg 10307  df-div 10723  df-nn 11059  df-2 11117  df-3 11118  df-n0 11331  df-z 11416  df-uz 11726  df-rp 11871  df-fl 12633  df-mod 12709  df-seq 12842  df-exp 12901  df-cj 13883  df-re 13884  df-im 13885  df-sqrt 14019  df-abs 14020  df-dvds 15028  df-gcd 15264
This theorem is referenced by:  2sqlem8  25196
  Copyright terms: Public domain W3C validator