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

Theorem fermltl 12631
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 12507 . . . 4 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ)
2 dvdsmodexp 12181 . . . . 5 ((𝑃 ∈ ℕ ∧ 𝑃 ∈ ℕ ∧ 𝑃𝐴) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
323exp 1205 . . . 4 (𝑃 ∈ ℕ → (𝑃 ∈ ℕ → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))))
41, 1, 3sylc 62 . . 3 (𝑃 ∈ ℙ → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
54adantr 276 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
6 coprm 12541 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 ↔ (𝑃 gcd 𝐴) = 1))
7 prmz 12508 . . . . . 6 (𝑃 ∈ ℙ → 𝑃 ∈ ℤ)
8 gcdcom 12369 . . . . . 6 ((𝑃 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑃 gcd 𝐴) = (𝐴 gcd 𝑃))
97, 8sylan 283 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃 gcd 𝐴) = (𝐴 gcd 𝑃))
109eqeq1d 2215 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝑃 gcd 𝐴) = 1 ↔ (𝐴 gcd 𝑃) = 1))
116, 10bitrd 188 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 ↔ (𝐴 gcd 𝑃) = 1))
12 simp2 1001 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝐴 ∈ ℤ)
1313ad2ant1 1021 . . . . . . . . . 10 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝑃 ∈ ℕ)
1413phicld 12615 . . . . . . . . 9 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) ∈ ℕ)
1514nnnn0d 9368 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) ∈ ℕ0)
16 zexpcl 10721 . . . . . . . 8 ((𝐴 ∈ ℤ ∧ (ϕ‘𝑃) ∈ ℕ0) → (𝐴↑(ϕ‘𝑃)) ∈ ℤ)
1712, 15, 16syl2anc 411 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) ∈ ℤ)
18 zq 9767 . . . . . . 7 ((𝐴↑(ϕ‘𝑃)) ∈ ℤ → (𝐴↑(ϕ‘𝑃)) ∈ ℚ)
1917, 18syl 14 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) ∈ ℚ)
20 1z 9418 . . . . . . 7 1 ∈ ℤ
21 zq 9767 . . . . . . 7 (1 ∈ ℤ → 1 ∈ ℚ)
2220, 21mp1i 10 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 1 ∈ ℚ)
23 nnq 9774 . . . . . . 7 (𝑃 ∈ ℕ → 𝑃 ∈ ℚ)
2413, 23syl 14 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝑃 ∈ ℚ)
2513nngt0d 9100 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 0 < 𝑃)
26 eulerth 12630 . . . . . . 7 ((𝑃 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) mod 𝑃) = (1 mod 𝑃))
271, 26syl3an1 1283 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) mod 𝑃) = (1 mod 𝑃))
2819, 22, 12, 24, 25, 27modqmul1 10544 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (((𝐴↑(ϕ‘𝑃)) · 𝐴) mod 𝑃) = ((1 · 𝐴) mod 𝑃))
29 phiprm 12620 . . . . . . . . . 10 (𝑃 ∈ ℙ → (ϕ‘𝑃) = (𝑃 − 1))
30293ad2ant1 1021 . . . . . . . . 9 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (ϕ‘𝑃) = (𝑃 − 1))
3130oveq2d 5973 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴↑(ϕ‘𝑃)) = (𝐴↑(𝑃 − 1)))
3231oveq1d 5972 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) · 𝐴) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3312zcnd 9516 . . . . . . . 8 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → 𝐴 ∈ ℂ)
34 expm1t 10734 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑃 ∈ ℕ) → (𝐴𝑃) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3533, 13, 34syl2anc 411 . . . . . . 7 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (𝐴𝑃) = ((𝐴↑(𝑃 − 1)) · 𝐴))
3632, 35eqtr4d 2242 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴↑(ϕ‘𝑃)) · 𝐴) = (𝐴𝑃))
3736oveq1d 5972 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (((𝐴↑(ϕ‘𝑃)) · 𝐴) mod 𝑃) = ((𝐴𝑃) mod 𝑃))
3833mulid2d 8111 . . . . . 6 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → (1 · 𝐴) = 𝐴)
3938oveq1d 5972 . . . . 5 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((1 · 𝐴) mod 𝑃) = (𝐴 mod 𝑃))
4028, 37, 393eqtr3d 2247 . . . 4 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑃) = 1) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
41403expia 1208 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝐴 gcd 𝑃) = 1 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
4211, 41sylbid 150 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (¬ 𝑃𝐴 → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃)))
43 dvdsdc 12184 . . . 4 ((𝑃 ∈ ℕ ∧ 𝐴 ∈ ℤ) → DECID 𝑃𝐴)
441, 43sylan 283 . . 3 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → DECID 𝑃𝐴)
45 exmiddc 838 . . 3 (DECID 𝑃𝐴 → (𝑃𝐴 ∨ ¬ 𝑃𝐴))
4644, 45syl 14 . 2 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → (𝑃𝐴 ∨ ¬ 𝑃𝐴))
475, 42, 46mpjaod 720 1 ((𝑃 ∈ ℙ ∧ 𝐴 ∈ ℤ) → ((𝐴𝑃) mod 𝑃) = (𝐴 mod 𝑃))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 104  wo 710  DECID wdc 836  w3a 981   = wceq 1373  wcel 2177   class class class wbr 4051  cfv 5280  (class class class)co 5957  cc 7943  1c1 7946   · cmul 7950  cmin 8263  cn 9056  0cn0 9315  cz 9392  cq 9760   mod cmo 10489  cexp 10705  cdvds 12173   gcd cgcd 12349  cprime 12504  ϕcphi 12606
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 711  ax-5 1471  ax-7 1472  ax-gen 1473  ax-ie1 1517  ax-ie2 1518  ax-8 1528  ax-10 1529  ax-11 1530  ax-i12 1531  ax-bndl 1533  ax-4 1534  ax-17 1550  ax-i9 1554  ax-ial 1558  ax-i5r 1559  ax-13 2179  ax-14 2180  ax-ext 2188  ax-coll 4167  ax-sep 4170  ax-nul 4178  ax-pow 4226  ax-pr 4261  ax-un 4488  ax-setind 4593  ax-iinf 4644  ax-cnex 8036  ax-resscn 8037  ax-1cn 8038  ax-1re 8039  ax-icn 8040  ax-addcl 8041  ax-addrcl 8042  ax-mulcl 8043  ax-mulrcl 8044  ax-addcom 8045  ax-mulcom 8046  ax-addass 8047  ax-mulass 8048  ax-distr 8049  ax-i2m1 8050  ax-0lt1 8051  ax-1rid 8052  ax-0id 8053  ax-rnegex 8054  ax-precex 8055  ax-cnre 8056  ax-pre-ltirr 8057  ax-pre-ltwlin 8058  ax-pre-lttrn 8059  ax-pre-apti 8060  ax-pre-ltadd 8061  ax-pre-mulgt0 8062  ax-pre-mulext 8063  ax-arch 8064  ax-caucvg 8065
This theorem depends on definitions:  df-bi 117  df-stab 833  df-dc 837  df-3or 982  df-3an 983  df-tru 1376  df-fal 1379  df-nf 1485  df-sb 1787  df-eu 2058  df-mo 2059  df-clab 2193  df-cleq 2199  df-clel 2202  df-nfc 2338  df-ne 2378  df-nel 2473  df-ral 2490  df-rex 2491  df-reu 2492  df-rmo 2493  df-rab 2494  df-v 2775  df-sbc 3003  df-csb 3098  df-dif 3172  df-un 3174  df-in 3176  df-ss 3183  df-nul 3465  df-if 3576  df-pw 3623  df-sn 3644  df-pr 3645  df-op 3647  df-uni 3857  df-int 3892  df-iun 3935  df-br 4052  df-opab 4114  df-mpt 4115  df-tr 4151  df-id 4348  df-po 4351  df-iso 4352  df-iord 4421  df-on 4423  df-ilim 4424  df-suc 4426  df-iom 4647  df-xp 4689  df-rel 4690  df-cnv 4691  df-co 4692  df-dm 4693  df-rn 4694  df-res 4695  df-ima 4696  df-iota 5241  df-fun 5282  df-fn 5283  df-f 5284  df-f1 5285  df-fo 5286  df-f1o 5287  df-fv 5288  df-isom 5289  df-riota 5912  df-ov 5960  df-oprab 5961  df-mpo 5962  df-1st 6239  df-2nd 6240  df-recs 6404  df-irdg 6469  df-frec 6490  df-1o 6515  df-2o 6516  df-oadd 6519  df-er 6633  df-en 6841  df-dom 6842  df-fin 6843  df-sup 7101  df-pnf 8129  df-mnf 8130  df-xr 8131  df-ltxr 8132  df-le 8133  df-sub 8265  df-neg 8266  df-reap 8668  df-ap 8675  df-div 8766  df-inn 9057  df-2 9115  df-3 9116  df-4 9117  df-n0 9316  df-z 9393  df-uz 9669  df-q 9761  df-rp 9796  df-fz 10151  df-fzo 10285  df-fl 10435  df-mod 10490  df-seqfrec 10615  df-exp 10706  df-ihash 10943  df-cj 11228  df-re 11229  df-im 11230  df-rsqrt 11384  df-abs 11385  df-clim 11665  df-proddc 11937  df-dvds 12174  df-gcd 12350  df-prm 12505  df-phi 12608
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator