| 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 1136 | . . . . . . . 8 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∈ ℕ) | |
| 2 | 1 | nnnn0d 12463 | . . . . . . 7 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝑁 ∈ ℕ0) |
| 3 | 2 | adantr 480 | . . . . . 6 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝑁 ∈ ℕ0) |
| 4 | eqid 2729 | . . . . . . 7 ⊢ (ℤ/nℤ‘𝑁) = (ℤ/nℤ‘𝑁) | |
| 5 | eqid 2729 | . . . . . . 7 ⊢ (Base‘(ℤ/nℤ‘𝑁)) = (Base‘(ℤ/nℤ‘𝑁)) | |
| 6 | eqid 2729 | . . . . . . 7 ⊢ (ℤRHom‘(ℤ/nℤ‘𝑁)) = (ℤRHom‘(ℤ/nℤ‘𝑁)) | |
| 7 | 4, 5, 6 | znzrhfo 21472 | . . . . . 6 ⊢ (𝑁 ∈ ℕ0 → (ℤRHom‘(ℤ/nℤ‘𝑁)):ℤ–onto→(Base‘(ℤ/nℤ‘𝑁))) |
| 8 | fofn 6742 | . . . . . 6 ⊢ ((ℤRHom‘(ℤ/nℤ‘𝑁)):ℤ–onto→(Base‘(ℤ/nℤ‘𝑁)) → (ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ) | |
| 9 | 3, 7, 8 | 3syl 18 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ) |
| 10 | prmz 16604 | . . . . . 6 ⊢ (𝑝 ∈ ℙ → 𝑝 ∈ ℤ) | |
| 11 | 10 | adantl 481 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝑝 ∈ ℤ) |
| 12 | fniniseg 6998 | . . . . . 6 ⊢ ((ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ (𝑝 ∈ ℤ ∧ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)))) | |
| 13 | 12 | baibd 539 | . . . . 5 ⊢ (((ℤRHom‘(ℤ/nℤ‘𝑁)) Fn ℤ ∧ 𝑝 ∈ ℤ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴))) |
| 14 | 9, 11, 13 | syl2anc 584 | . . . 4 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴))) |
| 15 | simp2 1137 | . . . . . 6 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → 𝐴 ∈ ℤ) | |
| 16 | 15 | adantr 480 | . . . . 5 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → 𝐴 ∈ ℤ) |
| 17 | 4, 6 | zndvds 21474 | . . . . 5 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝑝 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 18 | 3, 11, 16, 17 | syl3anc 1373 | . . . 4 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝑝) = ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 19 | 14, 18 | bitrd 279 | . . 3 ⊢ (((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) ∧ 𝑝 ∈ ℙ) → (𝑝 ∈ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) ↔ 𝑁 ∥ (𝑝 − 𝐴))) |
| 20 | 19 | rabbi2dva 4179 | . 2 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (ℙ ∩ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)})) = {𝑝 ∈ ℙ ∣ 𝑁 ∥ (𝑝 − 𝐴)}) |
| 21 | eqid 2729 | . . 3 ⊢ (Unit‘(ℤ/nℤ‘𝑁)) = (Unit‘(ℤ/nℤ‘𝑁)) | |
| 22 | simp3 1138 | . . . 4 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (𝐴 gcd 𝑁) = 1) | |
| 23 | 4, 21, 6 | znunit 21488 | . . . . 5 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝐴 ∈ ℤ) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁)) ↔ (𝐴 gcd 𝑁) = 1)) |
| 24 | 2, 15, 23 | syl2anc 584 | . . . 4 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁)) ↔ (𝐴 gcd 𝑁) = 1)) |
| 25 | 22, 24 | mpbird 257 | . . 3 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → ((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴) ∈ (Unit‘(ℤ/nℤ‘𝑁))) |
| 26 | eqid 2729 | . . 3 ⊢ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) = (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)}) | |
| 27 | 4, 6, 1, 21, 25, 26 | dirith2 27455 | . 2 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → (ℙ ∩ (◡(ℤRHom‘(ℤ/nℤ‘𝑁)) “ {((ℤRHom‘(ℤ/nℤ‘𝑁))‘𝐴)})) ≈ ℕ) |
| 28 | 20, 27 | eqbrtrrd 5119 | 1 ⊢ ((𝑁 ∈ ℕ ∧ 𝐴 ∈ ℤ ∧ (𝐴 gcd 𝑁) = 1) → {𝑝 ∈ ℙ ∣ 𝑁 ∥ (𝑝 − 𝐴)} ≈ ℕ) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ↔ wb 206 ∧ wa 395 ∧ w3a 1086 = wceq 1540 ∈ wcel 2109 {crab 3396 ∩ cin 3904 {csn 4579 class class class wbr 5095 ◡ccnv 5622 “ cima 5626 Fn wfn 6481 –onto→wfo 6484 ‘cfv 6486 (class class class)co 7353 ≈ cen 8876 1c1 11029 − cmin 11365 ℕcn 12146 ℕ0cn0 12402 ℤcz 12489 ∥ cdvds 16181 gcd cgcd 16423 ℙcprime 16600 Basecbs 17138 Unitcui 20258 ℤRHomczrh 21424 ℤ/nℤczn 21427 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1795 ax-4 1809 ax-5 1910 ax-6 1967 ax-7 2008 ax-8 2111 ax-9 2119 ax-10 2142 ax-11 2158 ax-12 2178 ax-ext 2701 ax-rep 5221 ax-sep 5238 ax-nul 5248 ax-pow 5307 ax-pr 5374 ax-un 7675 ax-inf2 9556 ax-cnex 11084 ax-resscn 11085 ax-1cn 11086 ax-icn 11087 ax-addcl 11088 ax-addrcl 11089 ax-mulcl 11090 ax-mulrcl 11091 ax-mulcom 11092 ax-addass 11093 ax-mulass 11094 ax-distr 11095 ax-i2m1 11096 ax-1ne0 11097 ax-1rid 11098 ax-rnegex 11099 ax-rrecex 11100 ax-cnre 11101 ax-pre-lttri 11102 ax-pre-lttrn 11103 ax-pre-ltadd 11104 ax-pre-mulgt0 11105 ax-pre-sup 11106 ax-addf 11107 ax-mulf 11108 |
| This theorem depends on definitions: df-bi 207 df-an 396 df-or 848 df-3or 1087 df-3an 1088 df-tru 1543 df-fal 1553 df-ex 1780 df-nf 1784 df-sb 2066 df-mo 2533 df-eu 2562 df-clab 2708 df-cleq 2721 df-clel 2803 df-nfc 2878 df-ne 2926 df-nel 3030 df-ral 3045 df-rex 3054 df-rmo 3345 df-reu 3346 df-rab 3397 df-v 3440 df-sbc 3745 df-csb 3854 df-dif 3908 df-un 3910 df-in 3912 df-ss 3922 df-pss 3925 df-nul 4287 df-if 4479 df-pw 4555 df-sn 4580 df-pr 4582 df-tp 4584 df-op 4586 df-uni 4862 df-int 4900 df-iun 4946 df-iin 4947 df-disj 5063 df-br 5096 df-opab 5158 df-mpt 5177 df-tr 5203 df-id 5518 df-eprel 5523 df-po 5531 df-so 5532 df-fr 5576 df-se 5577 df-we 5578 df-xp 5629 df-rel 5630 df-cnv 5631 df-co 5632 df-dm 5633 df-rn 5634 df-res 5635 df-ima 5636 df-pred 6253 df-ord 6314 df-on 6315 df-lim 6316 df-suc 6317 df-iota 6442 df-fun 6488 df-fn 6489 df-f 6490 df-f1 6491 df-fo 6492 df-f1o 6493 df-fv 6494 df-isom 6495 df-riota 7310 df-ov 7356 df-oprab 7357 df-mpo 7358 df-of 7617 df-rpss 7663 df-om 7807 df-1st 7931 df-2nd 7932 df-supp 8101 df-tpos 8166 df-frecs 8221 df-wrecs 8252 df-recs 8301 df-rdg 8339 df-1o 8395 df-2o 8396 df-oadd 8399 df-omul 8400 df-er 8632 df-ec 8634 df-qs 8638 df-map 8762 df-pm 8763 df-ixp 8832 df-en 8880 df-dom 8881 df-sdom 8882 df-fin 8883 df-fsupp 9271 df-fi 9320 df-sup 9351 df-inf 9352 df-oi 9421 df-dju 9816 df-card 9854 df-acn 9857 df-pnf 11170 df-mnf 11171 df-xr 11172 df-ltxr 11173 df-le 11174 df-sub 11367 df-neg 11368 df-div 11796 df-nn 12147 df-2 12209 df-3 12210 df-4 12211 df-5 12212 df-6 12213 df-7 12214 df-8 12215 df-9 12216 df-n0 12403 df-xnn0 12476 df-z 12490 df-dec 12610 df-uz 12754 df-q 12868 df-rp 12912 df-xneg 13032 df-xadd 13033 df-xmul 13034 df-ioo 13270 df-ioc 13271 df-ico 13272 df-icc 13273 df-fz 13429 df-fzo 13576 df-fl 13714 df-mod 13792 df-seq 13927 df-exp 13987 df-fac 14199 df-bc 14228 df-hash 14256 df-word 14439 df-concat 14496 df-s1 14521 df-shft 14992 df-cj 15024 df-re 15025 df-im 15026 df-sqrt 15160 df-abs 15161 df-limsup 15396 df-clim 15413 df-rlim 15414 df-o1 15415 df-lo1 15416 df-sum 15612 df-ef 15992 df-e 15993 df-sin 15994 df-cos 15995 df-tan 15996 df-pi 15997 df-dvds 16182 df-gcd 16424 df-prm 16601 df-numer 16664 df-denom 16665 df-phi 16695 df-pc 16767 df-struct 17076 df-sets 17093 df-slot 17111 df-ndx 17123 df-base 17139 df-ress 17160 df-plusg 17192 df-mulr 17193 df-starv 17194 df-sca 17195 df-vsca 17196 df-ip 17197 df-tset 17198 df-ple 17199 df-ds 17201 df-unif 17202 df-hom 17203 df-cco 17204 df-rest 17344 df-topn 17345 df-0g 17363 df-gsum 17364 df-topgen 17365 df-pt 17366 df-prds 17369 df-xrs 17424 df-qtop 17429 df-imas 17430 df-qus 17431 df-xps 17432 df-mre 17506 df-mrc 17507 df-acs 17509 df-mgm 18532 df-sgrp 18611 df-mnd 18627 df-mhm 18675 df-submnd 18676 df-grp 18833 df-minusg 18834 df-sbg 18835 df-mulg 18965 df-subg 19020 df-nsg 19021 df-eqg 19022 df-ghm 19110 df-gim 19156 df-ga 19187 df-cntz 19214 df-oppg 19243 df-od 19425 df-gex 19426 df-pgp 19427 df-lsm 19533 df-pj1 19534 df-cmn 19679 df-abl 19680 df-cyg 19775 df-dprd 19894 df-dpj 19895 df-mgp 20044 df-rng 20056 df-ur 20085 df-ring 20138 df-cring 20139 df-oppr 20240 df-dvdsr 20260 df-unit 20261 df-invr 20291 df-dvr 20304 df-rhm 20375 df-subrng 20449 df-subrg 20473 df-drng 20634 df-lmod 20783 df-lss 20853 df-lsp 20893 df-sra 21095 df-rgmod 21096 df-lidl 21133 df-rsp 21134 df-2idl 21175 df-psmet 21271 df-xmet 21272 df-met 21273 df-bl 21274 df-mopn 21275 df-fbas 21276 df-fg 21277 df-cnfld 21280 df-zring 21372 df-zrh 21428 df-zn 21431 df-top 22797 df-topon 22814 df-topsp 22836 df-bases 22849 df-cld 22922 df-ntr 22923 df-cls 22924 df-nei 23001 df-lp 23039 df-perf 23040 df-cn 23130 df-cnp 23131 df-haus 23218 df-cmp 23290 df-tx 23465 df-hmeo 23658 df-fil 23749 df-fm 23841 df-flim 23842 df-flf 23843 df-xms 24224 df-ms 24225 df-tms 24226 df-cncf 24787 df-0p 25587 df-limc 25783 df-dv 25784 df-ply 26109 df-idp 26110 df-coe 26111 df-dgr 26112 df-quot 26215 df-ulm 26302 df-log 26481 df-cxp 26482 df-atan 26793 df-em 26919 df-cht 27023 df-vma 27024 df-chp 27025 df-ppi 27026 df-mu 27027 df-dchr 27160 |
| This theorem is referenced by: (None) |
| Copyright terms: Public domain | W3C validator |