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

Theorem lgsabs1 25911
Description: The Legendre symbol is nonzero (and hence equal to 1 or -1) precisely when the arguments are coprime. (Contributed by Mario Carneiro, 5-Feb-2015.)
Assertion
Ref Expression
lgsabs1 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ (𝐴 gcd 𝑁) = 1))

Proof of Theorem lgsabs1
StepHypRef Expression
1 lgscl 25886 . . . . 5 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝐴 /L 𝑁) ∈ ℤ)
21zcnd 12087 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝐴 /L 𝑁) ∈ ℂ)
32abscld 14795 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ∈ ℝ)
4 1re 10640 . . 3 1 ∈ ℝ
5 letri3 10725 . . 3 (((abs‘(𝐴 /L 𝑁)) ∈ ℝ ∧ 1 ∈ ℝ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
63, 4, 5sylancl 588 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
7 lgsle1 25887 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ≤ 1)
87biantrurd 535 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (1 ≤ (abs‘(𝐴 /L 𝑁)) ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
9 nnne0 11670 . . . 4 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ → (abs‘(𝐴 /L 𝑁)) ≠ 0)
10 nn0abscl 14671 . . . . . . . 8 ((𝐴 /L 𝑁) ∈ ℤ → (abs‘(𝐴 /L 𝑁)) ∈ ℕ0)
111, 10syl 17 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ∈ ℕ0)
12 elnn0 11898 . . . . . . 7 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 ↔ ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ∨ (abs‘(𝐴 /L 𝑁)) = 0))
1311, 12sylib 220 . . . . . 6 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ∨ (abs‘(𝐴 /L 𝑁)) = 0))
1413ord 860 . . . . 5 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (¬ (abs‘(𝐴 /L 𝑁)) ∈ ℕ → (abs‘(𝐴 /L 𝑁)) = 0))
1514necon1ad 3033 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 → (abs‘(𝐴 /L 𝑁)) ∈ ℕ))
169, 15impbid2 228 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ (abs‘(𝐴 /L 𝑁)) ≠ 0))
17 elnnnn0c 11941 . . . . 5 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁))))
1817baib 538 . . . 4 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ 1 ≤ (abs‘(𝐴 /L 𝑁))))
1911, 18syl 17 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ 1 ≤ (abs‘(𝐴 /L 𝑁))))
20 abs00 14648 . . . . . 6 ((𝐴 /L 𝑁) ∈ ℂ → ((abs‘(𝐴 /L 𝑁)) = 0 ↔ (𝐴 /L 𝑁) = 0))
2120necon3bid 3060 . . . . 5 ((𝐴 /L 𝑁) ∈ ℂ → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 /L 𝑁) ≠ 0))
222, 21syl 17 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 /L 𝑁) ≠ 0))
23 lgsne0 25910 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝐴 /L 𝑁) ≠ 0 ↔ (𝐴 gcd 𝑁) = 1))
2422, 23bitrd 281 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 gcd 𝑁) = 1))
2516, 19, 243bitr3d 311 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (1 ≤ (abs‘(𝐴 /L 𝑁)) ↔ (𝐴 gcd 𝑁) = 1))
266, 8, 253bitr2d 309 1 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ (𝐴 gcd 𝑁) = 1))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  wo 843   = wceq 1533  wcel 2110  wne 3016   class class class wbr 5065  cfv 6354  (class class class)co 7155  cc 10534  cr 10535  0cc0 10536  1c1 10537  cle 10675  cn 11637  0cn0 11896  cz 11980  abscabs 14592   gcd cgcd 15842   /L clgs 25869
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-rep 5189  ax-sep 5202  ax-nul 5209  ax-pow 5265  ax-pr 5329  ax-un 7460  ax-cnex 10592  ax-resscn 10593  ax-1cn 10594  ax-icn 10595  ax-addcl 10596  ax-addrcl 10597  ax-mulcl 10598  ax-mulrcl 10599  ax-mulcom 10600  ax-addass 10601  ax-mulass 10602  ax-distr 10603  ax-i2m1 10604  ax-1ne0 10605  ax-1rid 10606  ax-rnegex 10607  ax-rrecex 10608  ax-cnre 10609  ax-pre-lttri 10610  ax-pre-lttrn 10611  ax-pre-ltadd 10612  ax-pre-mulgt0 10613  ax-pre-sup 10614
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-tru 1536  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rmo 3146  df-rab 3147  df-v 3496  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-pss 3953  df-nul 4291  df-if 4467  df-pw 4540  df-sn 4567  df-pr 4569  df-tp 4571  df-op 4573  df-uni 4838  df-int 4876  df-iun 4920  df-br 5066  df-opab 5128  df-mpt 5146  df-tr 5172  df-id 5459  df-eprel 5464  df-po 5473  df-so 5474  df-fr 5513  df-we 5515  df-xp 5560  df-rel 5561  df-cnv 5562  df-co 5563  df-dm 5564  df-rn 5565  df-res 5566  df-ima 5567  df-pred 6147  df-ord 6193  df-on 6194  df-lim 6195  df-suc 6196  df-iota 6313  df-fun 6356  df-fn 6357  df-f 6358  df-f1 6359  df-fo 6360  df-f1o 6361  df-fv 6362  df-riota 7113  df-ov 7158  df-oprab 7159  df-mpo 7160  df-om 7580  df-1st 7688  df-2nd 7689  df-wrecs 7946  df-recs 8007  df-rdg 8045  df-1o 8101  df-2o 8102  df-oadd 8105  df-er 8288  df-map 8407  df-en 8509  df-dom 8510  df-sdom 8511  df-fin 8512  df-sup 8905  df-inf 8906  df-dju 9329  df-card 9367  df-pnf 10676  df-mnf 10677  df-xr 10678  df-ltxr 10679  df-le 10680  df-sub 10871  df-neg 10872  df-div 11297  df-nn 11638  df-2 11699  df-3 11700  df-n0 11897  df-xnn0 11967  df-z 11981  df-uz 12243  df-q 12348  df-rp 12389  df-fz 12892  df-fzo 13033  df-fl 13161  df-mod 13237  df-seq 13369  df-exp 13429  df-hash 13690  df-cj 14457  df-re 14458  df-im 14459  df-sqrt 14593  df-abs 14594  df-dvds 15607  df-gcd 15843  df-prm 16015  df-phi 16102  df-pc 16173  df-lgs 25870
This theorem is referenced by:  lgssq  25912  lgssq2  25913  lgsquad3  25962
  Copyright terms: Public domain W3C validator