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

Theorem lgsabs1 26032
 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 26007 . . . . 5 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝐴 /L 𝑁) ∈ ℤ)
21zcnd 12140 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝐴 /L 𝑁) ∈ ℂ)
32abscld 14857 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ∈ ℝ)
4 1re 10692 . . 3 1 ∈ ℝ
5 letri3 10777 . . 3 (((abs‘(𝐴 /L 𝑁)) ∈ ℝ ∧ 1 ∈ ℝ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
63, 4, 5sylancl 589 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
7 lgsle1 26008 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ≤ 1)
87biantrurd 536 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (1 ≤ (abs‘(𝐴 /L 𝑁)) ↔ ((abs‘(𝐴 /L 𝑁)) ≤ 1 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁)))))
9 nnne0 11721 . . . 4 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ → (abs‘(𝐴 /L 𝑁)) ≠ 0)
10 nn0abscl 14733 . . . . . . . 8 ((𝐴 /L 𝑁) ∈ ℤ → (abs‘(𝐴 /L 𝑁)) ∈ ℕ0)
111, 10syl 17 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (abs‘(𝐴 /L 𝑁)) ∈ ℕ0)
12 elnn0 11949 . . . . . . 7 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 ↔ ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ∨ (abs‘(𝐴 /L 𝑁)) = 0))
1311, 12sylib 221 . . . . . 6 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ∨ (abs‘(𝐴 /L 𝑁)) = 0))
1413ord 861 . . . . 5 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (¬ (abs‘(𝐴 /L 𝑁)) ∈ ℕ → (abs‘(𝐴 /L 𝑁)) = 0))
1514necon1ad 2968 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 → (abs‘(𝐴 /L 𝑁)) ∈ ℕ))
169, 15impbid2 229 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ (abs‘(𝐴 /L 𝑁)) ≠ 0))
17 elnnnn0c 11992 . . . . 5 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 ∧ 1 ≤ (abs‘(𝐴 /L 𝑁))))
1817baib 539 . . . 4 ((abs‘(𝐴 /L 𝑁)) ∈ ℕ0 → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ 1 ≤ (abs‘(𝐴 /L 𝑁))))
1911, 18syl 17 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ∈ ℕ ↔ 1 ≤ (abs‘(𝐴 /L 𝑁))))
20 abs00 14710 . . . . . 6 ((𝐴 /L 𝑁) ∈ ℂ → ((abs‘(𝐴 /L 𝑁)) = 0 ↔ (𝐴 /L 𝑁) = 0))
2120necon3bid 2995 . . . . 5 ((𝐴 /L 𝑁) ∈ ℂ → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 /L 𝑁) ≠ 0))
222, 21syl 17 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 /L 𝑁) ≠ 0))
23 lgsne0 26031 . . . 4 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝐴 /L 𝑁) ≠ 0 ↔ (𝐴 gcd 𝑁) = 1))
2422, 23bitrd 282 . . 3 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) ≠ 0 ↔ (𝐴 gcd 𝑁) = 1))
2516, 19, 243bitr3d 312 . 2 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (1 ≤ (abs‘(𝐴 /L 𝑁)) ↔ (𝐴 gcd 𝑁) = 1))
266, 8, 253bitr2d 310 1 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((abs‘(𝐴 /L 𝑁)) = 1 ↔ (𝐴 gcd 𝑁) = 1))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 209   ∧ wa 399   ∨ wo 844   = wceq 1538   ∈ wcel 2111   ≠ wne 2951   class class class wbr 5036  ‘cfv 6340  (class class class)co 7156  ℂcc 10586  ℝcr 10587  0cc0 10588  1c1 10589   ≤ cle 10727  ℕcn 11687  ℕ0cn0 11947  ℤcz 12033  abscabs 14654   gcd cgcd 15906   /L clgs 25990 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2729  ax-rep 5160  ax-sep 5173  ax-nul 5180  ax-pow 5238  ax-pr 5302  ax-un 7465  ax-cnex 10644  ax-resscn 10645  ax-1cn 10646  ax-icn 10647  ax-addcl 10648  ax-addrcl 10649  ax-mulcl 10650  ax-mulrcl 10651  ax-mulcom 10652  ax-addass 10653  ax-mulass 10654  ax-distr 10655  ax-i2m1 10656  ax-1ne0 10657  ax-1rid 10658  ax-rnegex 10659  ax-rrecex 10660  ax-cnre 10661  ax-pre-lttri 10662  ax-pre-lttrn 10663  ax-pre-ltadd 10664  ax-pre-mulgt0 10665  ax-pre-sup 10666 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2557  df-eu 2588  df-clab 2736  df-cleq 2750  df-clel 2830  df-nfc 2901  df-ne 2952  df-nel 3056  df-ral 3075  df-rex 3076  df-reu 3077  df-rmo 3078  df-rab 3079  df-v 3411  df-sbc 3699  df-csb 3808  df-dif 3863  df-un 3865  df-in 3867  df-ss 3877  df-pss 3879  df-nul 4228  df-if 4424  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4802  df-int 4842  df-iun 4888  df-br 5037  df-opab 5099  df-mpt 5117  df-tr 5143  df-id 5434  df-eprel 5439  df-po 5447  df-so 5448  df-fr 5487  df-we 5489  df-xp 5534  df-rel 5535  df-cnv 5536  df-co 5537  df-dm 5538  df-rn 5539  df-res 5540  df-ima 5541  df-pred 6131  df-ord 6177  df-on 6178  df-lim 6179  df-suc 6180  df-iota 6299  df-fun 6342  df-fn 6343  df-f 6344  df-f1 6345  df-fo 6346  df-f1o 6347  df-fv 6348  df-riota 7114  df-ov 7159  df-oprab 7160  df-mpo 7161  df-om 7586  df-1st 7699  df-2nd 7700  df-wrecs 7963  df-recs 8024  df-rdg 8062  df-1o 8118  df-2o 8119  df-oadd 8122  df-er 8305  df-map 8424  df-en 8541  df-dom 8542  df-sdom 8543  df-fin 8544  df-sup 8952  df-inf 8953  df-dju 9376  df-card 9414  df-pnf 10728  df-mnf 10729  df-xr 10730  df-ltxr 10731  df-le 10732  df-sub 10923  df-neg 10924  df-div 11349  df-nn 11688  df-2 11750  df-3 11751  df-n0 11948  df-xnn0 12020  df-z 12034  df-uz 12296  df-q 12402  df-rp 12444  df-fz 12953  df-fzo 13096  df-fl 13224  df-mod 13300  df-seq 13432  df-exp 13493  df-hash 13754  df-cj 14519  df-re 14520  df-im 14521  df-sqrt 14655  df-abs 14656  df-dvds 15669  df-gcd 15907  df-prm 16081  df-phi 16171  df-pc 16242  df-lgs 25991 This theorem is referenced by:  lgssq  26033  lgssq2  26034  lgsquad3  26083
 Copyright terms: Public domain W3C validator