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

Theorem fermltl 12372
Description: Fermat's little theorem. When 𝑃 is prime, 𝐴𝑃𝐴 (mod 𝑃) for any 𝐴, see theorem 5.19 in [ApostolNT] p. 114. (Contributed by Mario Carneiro, 28-Feb-2014.) (Proof shortened by AV, 19-Mar-2022.)
Assertion
Ref Expression
fermltl ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))

Proof of Theorem fermltl
StepHypRef Expression
1 prmnn 12248 . . . 4 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ)
2 dvdsmodexp 11938 . . . . 5 ((𝑃 ∈ ℕ ∧ 𝑃 ∈ ℕ ∧ 𝑃𝐴) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
323exp 1204 . . . 4 (𝑃 ∈ ℕ → (𝑃 ∈ ℕ → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))))
41, 1, 3sylc 62 . . 3 (𝑃 ∈ ℙ → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
54adantr 276 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
6 coprm 12282 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 ↔ (𝑃 gcd 𝐴) = 1))
7 prmz 12249 . . . . . 6 (𝑃 ∈ ℙ → 𝑃 ∈ ℤ)
8 gcdcom 12110 . . . . . 6 ((𝑃 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑃 gcd 𝐴) = (𝐴 gcd 𝑃))
97, 8sylan 283 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃 gcd 𝐴) = (𝐴 gcd 𝑃))
109eqeq1d 2202 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝑃 gcd 𝐴) = 1 ↔ (𝐴 gcd 𝑃) = 1))
116, 10bitrd 188 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 ↔ (𝐴 gcd 𝑃) = 1))
12 simp2 1000 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝐴 ∈ ℤ)
1313ad2ant1 1020 . . . . . . . . . 10 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝑃 ∈ ℕ)
1413phicld 12356 . . . . . . . . 9 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) ∈ ℕ)
1514nnnn0d 9293 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) ∈ ℕ0)
16 zexpcl 10625 . . . . . . . 8 ((𝐴 ∈ ℤ ∧ (ϕ‘𝑃) ∈ ℕ0) → (𝐴↑(ϕ‘𝑃)) ∈ ℤ)
1712, 15, 16syl2anc 411 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) ∈ ℤ)
18 zq 9691 . . . . . . 7 ((𝐴↑(ϕ‘𝑃)) ∈ ℤ → (𝐴↑(ϕ‘𝑃)) ∈ ℚ)
1917, 18syl 14 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) ∈ ℚ)
20 1z 9343 . . . . . . 7 1 ∈ ℤ
21 zq 9691 . . . . . . 7 (1 ∈ ℤ → 1 ∈ ℚ)
2220, 21mp1i 10 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 1 ∈ ℚ)
23 nnq 9698 . . . . . . 7 (𝑃 ∈ ℕ → 𝑃 ∈ ℚ)
2413, 23syl 14 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝑃 ∈ ℚ)
2513nngt0d 9026 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 0 < 𝑃)
26 eulerth 12371 . . . . . . 7 ((𝑃 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) mod 𝑃) = (1 mod 𝑃))
271, 26syl3an1 1282 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) mod 𝑃) = (1 mod 𝑃))
2819, 22, 12, 24, 25, 27modqmul1 10448 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (((𝐴↑(ϕ‘𝑃)) · 𝐴) mod 𝑃) = ((1 · 𝐴) mod 𝑃))
29 phiprm 12361 . . . . . . . . . 10 (𝑃 ∈ ℙ → (ϕ‘𝑃) = (𝑃 − 1))
30293ad2ant1 1020 . . . . . . . . 9 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) = (𝑃 − 1))
3130oveq2d 5934 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) = (𝐴↑(𝑃 − 1)))
3231oveq1d 5933 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) · 𝐴) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3312zcnd 9440 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝐴 ∈ ℂ)
34 expm1t 10638 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑃 ∈ ℕ) → (𝐴𝑃) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3533, 13, 34syl2anc 411 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴𝑃) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3632, 35eqtr4d 2229 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) · 𝐴) = (𝐴𝑃))
3736oveq1d 5933 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (((𝐴↑(ϕ‘𝑃)) · 𝐴) mod 𝑃) = ((𝐴𝑃) mod 𝑃))
3833mulid2d 8038 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (1 · 𝐴) = 𝐴)
3938oveq1d 5933 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((1 · 𝐴) mod 𝑃) = (𝐴 mod 𝑃))
4028, 37, 393eqtr3d 2234 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
41403expia 1207 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝐴 gcd 𝑃) = 1 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
4211, 41sylbid 150 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
43 dvdsdc 11941 . . . 4 ((𝑃 ∈ ℕ ∧ 𝐴 ∈ ℤ) → DECID 𝑃𝐴)
441, 43sylan 283 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → DECID 𝑃𝐴)
45 exmiddc 837 . . 3 (DECID 𝑃𝐴 → (𝑃𝐴 ∨ ¬ 𝑃𝐴))
4644, 45syl 14 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃𝐴 ∨ ¬ 𝑃𝐴))
475, 42, 46mpjaod 719 1 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wo 709  DECID wdc 835  w3a 980   = wceq 1364  wcel 2164   class class class wbr 4029  cfv 5254  (class class class)co 5918  cc 7870  1c1 7873   · cmul 7877  cmin 8190  cn 8982  0cn0 9240  cz 9317  cq 9684   mod cmo 10393  cexp 10609  cdvds 11930   gcd cgcd 12079  cprime 12245  ϕcphi 12347
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 710  ax-5 1458  ax-7 1459  ax-gen 1460  ax-ie1 1504  ax-ie2 1505  ax-8 1515  ax-10 1516  ax-11 1517  ax-i12 1518  ax-bndl 1520  ax-4 1521  ax-17 1537  ax-i9 1541  ax-ial 1545  ax-i5r 1546  ax-13 2166  ax-14 2167  ax-ext 2175  ax-coll 4144  ax-sep 4147  ax-nul 4155  ax-pow 4203  ax-pr 4238  ax-un 4464  ax-setind 4569  ax-iinf 4620  ax-cnex 7963  ax-resscn 7964  ax-1cn 7965  ax-1re 7966  ax-icn 7967  ax-addcl 7968  ax-addrcl 7969  ax-mulcl 7970  ax-mulrcl 7971  ax-addcom 7972  ax-mulcom 7973  ax-addass 7974  ax-mulass 7975  ax-distr 7976  ax-i2m1 7977  ax-0lt1 7978  ax-1rid 7979  ax-0id 7980  ax-rnegex 7981  ax-precex 7982  ax-cnre 7983  ax-pre-ltirr 7984  ax-pre-ltwlin 7985  ax-pre-lttrn 7986  ax-pre-apti 7987  ax-pre-ltadd 7988  ax-pre-mulgt0 7989  ax-pre-mulext 7990  ax-arch 7991  ax-caucvg 7992
This theorem depends on definitions:  df-bi 117  df-stab 832  df-dc 836  df-3or 981  df-3an 982  df-tru 1367  df-fal 1370  df-nf 1472  df-sb 1774  df-eu 2045  df-mo 2046  df-clab 2180  df-cleq 2186  df-clel 2189  df-nfc 2325  df-ne 2365  df-nel 2460  df-ral 2477  df-rex 2478  df-reu 2479  df-rmo 2480  df-rab 2481  df-v 2762  df-sbc 2986  df-csb 3081  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-nul 3447  df-if 3558  df-pw 3603  df-sn 3624  df-pr 3625  df-op 3627  df-uni 3836  df-int 3871  df-iun 3914  df-br 4030  df-opab 4091  df-mpt 4092  df-tr 4128  df-id 4324  df-po 4327  df-iso 4328  df-iord 4397  df-on 4399  df-ilim 4400  df-suc 4402  df-iom 4623  df-xp 4665  df-rel 4666  df-cnv 4667  df-co 4668  df-dm 4669  df-rn 4670  df-res 4671  df-ima 4672  df-iota 5215  df-fun 5256  df-fn 5257  df-f 5258  df-f1 5259  df-fo 5260  df-f1o 5261  df-fv 5262  df-isom 5263  df-riota 5873  df-ov 5921  df-oprab 5922  df-mpo 5923  df-1st 6193  df-2nd 6194  df-recs 6358  df-irdg 6423  df-frec 6444  df-1o 6469  df-2o 6470  df-oadd 6473  df-er 6587  df-en 6795  df-dom 6796  df-fin 6797  df-sup 7043  df-pnf 8056  df-mnf 8057  df-xr 8058  df-ltxr 8059  df-le 8060  df-sub 8192  df-neg 8193  df-reap 8594  df-ap 8601  df-div 8692  df-inn 8983  df-2 9041  df-3 9042  df-4 9043  df-n0 9241  df-z 9318  df-uz 9593  df-q 9685  df-rp 9720  df-fz 10075  df-fzo 10209  df-fl 10339  df-mod 10394  df-seqfrec 10519  df-exp 10610  df-ihash 10847  df-cj 10986  df-re 10987  df-im 10988  df-rsqrt 11142  df-abs 11143  df-clim 11422  df-proddc 11694  df-dvds 11931  df-gcd 12080  df-prm 12246  df-phi 12349
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator