| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > dirith | Structured version Visualization version GIF version | ||
| Description: Dirichlet's theorem: there are infinitely many primes in any arithmetic progression coprime to 𝑁. Theorem 9.4.1 of [Shapiro], p. 375. See https://metamath-blog.blogspot.com/2016/05/dirichlets-theorem.html for an informal exposition. This is Metamath 100 proof #48. (Contributed by Mario Carneiro, 12-May-2016.) |
| Ref | Expression |
|---|---|
| dirith | ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → {𝑝 ∈ ℙ ∣ 𝑁 ∥ (𝑝 − 𝐴)} ≈ ℕ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | simp1 1154 | . . . . . . . 8 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∈ ℕ) | |
| 2 | 1 | nnnn0d 12566 | . . . . . . 7 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∈ ℕ0) |
| 3 | 2 | adantr 485 | . . . . . 6 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝑁 ∈ ℕ0) |
| 4 | eqid 2763 | . . . . . . 7 ⊢ (ℤ/nℤ‘𝑁) = (ℤ/nℤ‘𝑁) | |
| 5 | eqid 2763 | . . . . . . 7 ⊢ (Base‘(ℤ/nℤ‘𝑁)) = (Base‘(ℤ/nℤ‘𝑁)) | |
| 6 | eqid 2763 | . . . . . . 7 ⊢ (ℤRHom‘(ℤ/nℤ‘𝑁)) = (ℤRHom‘(ℤ/nℤ‘𝑁)) | |
| 7 | 4, 5, 6 | znzrhfo 21678 | . . . . . 6 ⊢ (𝑁 ∈ ℕ0 → (ℤRHom‘(ℤ/nℤ‘𝑁)):ℤ–onto→(Base‘(ℤ/nℤ‘𝑁))) |
| 8 | fofn 6796 | . . . . . 6 ⊢ ((ℤRHom‘(ℤ/nℤ‘𝑁)):ℤ–onto→(Base‘(ℤ/nℤ‘𝑁)) → (ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ) | |
| 9 | 3, 7, 8 | 3syl 19 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ) |
| 10 | prmz 16734 | . . . . . 6 ⊢ (𝑝 ∈ ℙ → 𝑝 ∈ ℤ) | |
| 11 | 10 | adantl 486 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝑝 ∈ ℤ) |
| 12 | fniniseg 7057 | . . . . . 6 ⊢ ((ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ (𝑝 ∈ ℤ ∧ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)))) | |
| 13 | 12 | baibd 548 | . . . . 5 ⊢ (((ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ ∧ 𝑝 ∈ ℤ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴))) |
| 14 | 9, 11, 13 | syl2anc 595 | . . . 4 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴))) |
| 15 | simp2 1155 | . . . . . 6 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝐴 ∈ ℤ) | |
| 16 | 15 | adantr 485 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝐴 ∈ ℤ) |
| 17 | 4, 6 | zndvds 21680 | . . . . 5 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝑝 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 18 | 3, 11, 16, 17 | syl3anc 1398 | . . . 4 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 19 | 14, 18 | bitrd 282 | . . 3 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 20 | 19 | rabbi2dva 4179 | . 2 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (ℙ ∩ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)})) = {𝑝 ∈ ℙ ∣ 𝑁 ∥ (𝑝 − 𝐴)}) |
| 21 | eqid 2763 | . . 3 ⊢ (Unit‘(ℤ/nℤ‘𝑁)) = (Unit‘(ℤ/nℤ‘𝑁)) | |
| 22 | simp3 1156 | . . . 4 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (𝐴 gcd 𝑁) = 1) | |
| 23 | 4, 21, 6 | znunit 21694 | . . . . 5 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝐴 ∈ ℤ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁)) ↔ (𝐴 gcd 𝑁) = 1)) |
| 24 | 2, 15, 23 | syl2anc 595 | . . . 4 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁)) ↔ (𝐴 gcd 𝑁) = 1)) |
| 25 | 22, 24 | mpbird 260 | . . 3 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁))) |
| 26 | eqid 2763 | . . 3 ⊢ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) = (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) | |
| 27 | 4, 6, 1, 21, 25, 26 | dirith2 27670 | . 2 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (ℙ ∩ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)})) ≈ ℕ) |
| 28 | 20, 27 | eqbrtrrd 5136 | 1 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → {𝑝 ∈ ℙ ∣ 𝑁 ∥ (𝑝 − 𝐴)} ≈ ℕ) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ↔ wb 209 ∧ wa 400 ∧ w3a 1103 = wceq 1570 ∈ wcel 2143 {crab 3416 ∩ cin 3905 {csn 4590 class class class wbr 5110 ◡ccnv 5662 “ cima 5666 Fn wfn 6533 –onto→wfo 6536 ‘cfv 6538 (class class class)co 7412 ≈ cen 8941 1c1 11102 − cmin 11442 ℕcn 12234 ℕ0cn0 12505 ℤcz 12592 ∥ cdvds 16311 gcd cgcd 16553 ℙcprime 16730 Basecbs 17270 Unitcui 20438 ℤRHomczrh 21630 ℤ/nℤczn 21633 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1825 ax-4 1839 ax-5 1940 ax-6 1997 ax-7 2038 ax-8 2145 ax-9 2153 ax-10 2176 ax-11 2192 ax-12 2213 ax-ext 2735 ax-rep 5239 ax-sep 5258 ax-nul 5270 ax-pow 5338 ax-pr 5406 ax-un 7734 ax-inf2 9611 ax-cnex 11157 ax-resscn 11158 ax-1cn 11159 ax-icn 11160 ax-addcl 11161 ax-addrcl 11162 ax-mulcl 11163 ax-mulrcl 11164 ax-mulcom 11165 ax-addass 11166 ax-mulass 11167 ax-distr 11168 ax-i2m1 11169 ax-1ne0 11170 ax-1rid 11171 ax-rnegex 11172 ax-rrecex 11173 ax-cnre 11174 ax-pre-lttri 11175 ax-pre-lttrn 11176 ax-pre-ltadd 11177 ax-pre-mulgt0 11178 ax-pre-sup 11179 ax-addf 11180 ax-mulf 11181 |
| This theorem depends on definitions: df-bi 210 df-an 401 df-or 861 df-3or 1104 df-3an 1105 df-tru 1573 df-fal 1583 df-ex 1810 df-nf 1814 df-sb 2097 df-mo 2567 df-eu 2597 df-clab 2742 df-cleq 2755 df-clel 2838 df-nfc 2912 df-ne 2959 df-nel 3065 df-ral 3080 df-rex 3090 df-rmo 3369 df-reu 3370 df-rab 3417 df-v 3457 df-sbc 3746 df-csb 3855 df-dif 3909 df-un 3911 df-in 3913 df-ss 3923 df-pss 3926 df-nul 4288 df-if 4489 df-pw 4565 df-sn 4591 df-pr 4593 df-tp 4595 df-op 4597 df-uni 4874 df-int 4914 df-iun 4959 df-iin 4960 df-disj 5078 df-br 5111 df-opab 5175 df-mpt 5194 df-tr 5220 df-id 5558 df-eprel 5563 df-po 5571 df-so 5572 df-fr 5616 df-se 5617 df-we 5618 df-xp 5669 df-rel 5670 df-cnv 5671 df-co 5672 df-dm 5673 df-rn 5674 df-res 5675 df-ima 5676 df-pred 6304 df-ord 6365 df-on 6366 df-lim 6367 df-suc 6368 df-iota 6494 df-fun 6540 df-fn 6541 df-f 6542 df-f1 6543 df-fo 6544 df-f1o 6545 df-fv 6546 df-isom 6547 df-riota 7369 df-ov 7415 df-oprab 7416 df-mpo 7417 df-of 7676 df-rpss 7722 df-om 7864 df-1st 7987 df-2nd 7988 df-supp 8158 df-tpos 8223 df-frecs 8279 df-wrecs 8310 df-recs 8359 df-rdg 8398 df-1o 8454 df-2o 8455 df-oadd 8458 df-omul 8459 df-er 8695 df-ec 8697 df-qs 8701 df-map 8827 df-pm 8828 df-ixp 8897 df-en 8945 df-dom 8946 df-sdom 8947 df-fin 8948 df-fsupp 9323 df-fi 9372 df-sup 9403 df-inf 9404 df-oi 9473 df-dju 9888 df-card 9926 df-acn 9929 df-pnf 11246 df-mnf 11247 df-xr 11248 df-ltxr 11249 df-le 11250 df-sub 11444 df-neg 11445 df-div 11873 df-nn 12235 df-2 12304 df-3 12305 df-4 12306 df-5 12307 df-6 12308 df-7 12309 df-8 12310 df-9 12311 df-n0 12506 df-xnn0 12579 df-z 12593 df-dec 12713 df-uz 12864 df-q 12974 df-rp 13018 df-xneg 13138 df-xadd 13139 df-xmul 13140 df-ioo 13377 df-ioc 13378 df-ico 13379 df-icc 13380 df-fz 13537 df-fzo 13685 df-fl 13827 df-mod 13905 df-seq 14040 df-exp 14100 df-fac 14312 df-bc 14341 df-hash 14369 df-word 14553 df-concat 14610 df-s1 14636 df-shft 15106 df-cj 15152 df-re 15153 df-im 15154 df-sqrt 15288 df-abs 15289 df-limsup 15524 df-clim 15541 df-rlim 15542 df-o1 15543 df-lo1 15544 df-sum 15740 df-ef 16122 df-e 16123 df-sin 16124 df-cos 16125 df-tan 16126 df-pi 16127 df-dvds 16312 df-gcd 16554 df-prm 16731 df-numer 16795 df-denom 16796 df-phi 16826 df-pc 16898 df-struct 17208 df-sets 17225 df-slot 17243 df-ndx 17255 df-base 17271 df-ress 17292 df-plusg 17324 df-mulr 17325 df-starv 17326 df-sca 17327 df-vsca 17328 df-ip 17329 df-tset 17330 df-ple 17331 df-ds 17333 df-unif 17334 df-hom 17335 df-cco 17336 df-rest 17476 df-topn 17477 df-0g 17495 df-gsum 17496 df-topgen 17497 df-pt 17498 df-prds 17501 df-xrs 17557 df-qtop 17562 df-imas 17563 df-qus 17564 df-xps 17565 df-mre 17639 df-mrc 17640 df-acs 17642 df-mgm 18699 df-sgrp 18778 df-mnd 18794 df-mhm 18842 df-submnd 18843 df-grp 19004 df-minusg 19005 df-sbg 19006 df-mulg 19135 df-subg 19190 df-nsg 19191 df-eqg 19192 df-ghm 19285 df-gim 19330 df-ga 19361 df-cntz 19388 df-oppg 19417 df-od 19599 df-gex 19600 df-pgp 19601 df-lsm 19707 df-pj1 19708 df-cmn 19853 df-abl 19854 df-cyg 19949 df-dprd 20068 df-dpj 20069 df-mgp 20218 df-rng 20232 df-ur 20265 df-ring 20318 df-cring 20319 df-oppr 20420 df-dvdsr 20440 df-unit 20441 df-invr 20471 df-dvr 20484 df-rhm 20555 df-subrng 20632 df-subrg 20656 df-drng 20816 df-lmod 20964 df-lss 21034 df-lsp 21074 df-sra 21275 df-rgmod 21276 df-lidl 21313 df-rsp 21314 df-2idl 21370 df-psmet 21495 df-xmet 21496 df-met 21497 df-bl 21498 df-mopn 21499 df-fbas 21500 df-fg 21501 df-cnfld 21504 df-zring 21578 df-zrh 21634 df-zn 21637 df-top 23032 df-topon 23049 df-topsp 23071 df-bases 23084 df-cld 23157 df-ntr 23158 df-cls 23159 df-nei 23236 df-lp 23274 df-perf 23275 df-cn 23365 df-cnp 23366 df-haus 23453 df-cmp 23525 df-tx 23700 df-hmeo 23893 df-fil 23984 df-fm 24076 df-flim 24077 df-flf 24078 df-xms 24458 df-ms 24459 df-tms 24460 df-cncf 25018 df-0p 25810 df-limc 26006 df-dv 26007 df-ply 26326 df-idp 26327 df-coe 26328 df-dgr 26329 df-quot 26433 df-ulm 26518 df-log 26699 df-cxp 26700 df-atan 27010 df-em 27135 df-cht 27239 df-vma 27240 df-chp 27241 df-ppi 27242 df-mu 27243 df-dchr 27375 |
| This theorem is referenced by: (None) |
| Copyright terms: Public domain | W3C validator |