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

Theorem dchrhash 27198
Description: There are exactly ϕ(𝑁) Dirichlet characters modulo 𝑁. Part of Theorem 6.5.1 of [Shapiro] p. 230. (Contributed by Mario Carneiro, 28-Apr-2016.)
Hypotheses
Ref Expression
sumdchr.g 𝐺 = (DChr‘𝑁)
sumdchr.d 𝐷 = (Base‘𝐺)
Assertion
Ref Expression
dchrhash (𝑁 ∈ ℕ → (♯‘𝐷) = (ϕ‘𝑁))

Proof of Theorem dchrhash
Dummy variables 𝑥 𝑎 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2729 . . . . . 6 (ℤ/nℤ‘𝑁) = (ℤ/nℤ‘𝑁)
2 eqid 2729 . . . . . 6 (Base‘(ℤ/nℤ‘𝑁)) = (Base‘(ℤ/nℤ‘𝑁))
31, 2znfi 21484 . . . . 5 (𝑁 ∈ ℕ → (Base‘(ℤ/nℤ‘𝑁)) ∈ Fin)
4 sumdchr.g . . . . . 6 𝐺 = (DChr‘𝑁)
5 sumdchr.d . . . . . 6 𝐷 = (Base‘𝐺)
64, 5dchrfi 27182 . . . . 5 (𝑁 ∈ ℕ → 𝐷 ∈ Fin)
7 simprr 772 . . . . . . 7 ((𝑁 ∈ ℕ ∧ (𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)) ∧ 𝑥𝐷)) → 𝑥𝐷)
84, 1, 5, 2, 7dchrf 27169 . . . . . 6 ((𝑁 ∈ ℕ ∧ (𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)) ∧ 𝑥𝐷)) → 𝑥:(Base‘(ℤ/nℤ‘𝑁))⟶ℂ)
9 simprl 770 . . . . . 6 ((𝑁 ∈ ℕ ∧ (𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)) ∧ 𝑥𝐷)) → 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)))
108, 9ffvelcdmd 7023 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)) ∧ 𝑥𝐷)) → (𝑥𝑎) ∈ ℂ)
113, 6, 10fsumcom 15700 . . . 4 (𝑁 ∈ ℕ → Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))Σ𝑥𝐷 (𝑥𝑎) = Σ𝑥𝐷 Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))(𝑥𝑎))
12 eqid 2729 . . . . . . 7 (1r‘(ℤ/nℤ‘𝑁)) = (1r‘(ℤ/nℤ‘𝑁))
13 simpl 482 . . . . . . 7 ((𝑁 ∈ ℕ ∧ 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))) → 𝑁 ∈ ℕ)
14 simpr 484 . . . . . . 7 ((𝑁 ∈ ℕ ∧ 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))) → 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁)))
154, 5, 1, 12, 2, 13, 14sumdchr2 27197 . . . . . 6 ((𝑁 ∈ ℕ ∧ 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))) → Σ𝑥𝐷 (𝑥𝑎) = if(𝑎 = (1r‘(ℤ/nℤ‘𝑁)), (♯‘𝐷), 0))
16 velsn 4595 . . . . . . 7 (𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} ↔ 𝑎 = (1r‘(ℤ/nℤ‘𝑁)))
17 ifbi 4501 . . . . . . 7 ((𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} ↔ 𝑎 = (1r‘(ℤ/nℤ‘𝑁))) → if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0) = if(𝑎 = (1r‘(ℤ/nℤ‘𝑁)), (♯‘𝐷), 0))
1816, 17mp1i 13 . . . . . 6 ((𝑁 ∈ ℕ ∧ 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))) → if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0) = if(𝑎 = (1r‘(ℤ/nℤ‘𝑁)), (♯‘𝐷), 0))
1915, 18eqtr4d 2767 . . . . 5 ((𝑁 ∈ ℕ ∧ 𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))) → Σ𝑥𝐷 (𝑥𝑎) = if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0))
2019sumeq2dv 15627 . . . 4 (𝑁 ∈ ℕ → Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))Σ𝑥𝐷 (𝑥𝑎) = Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0))
21 eqid 2729 . . . . . . 7 (0g𝐺) = (0g𝐺)
22 simpr 484 . . . . . . 7 ((𝑁 ∈ ℕ ∧ 𝑥𝐷) → 𝑥𝐷)
234, 1, 5, 21, 22, 2dchrsum 27196 . . . . . 6 ((𝑁 ∈ ℕ ∧ 𝑥𝐷) → Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))(𝑥𝑎) = if(𝑥 = (0g𝐺), (ϕ‘𝑁), 0))
24 velsn 4595 . . . . . . 7 (𝑥 ∈ {(0g𝐺)} ↔ 𝑥 = (0g𝐺))
25 ifbi 4501 . . . . . . 7 ((𝑥 ∈ {(0g𝐺)} ↔ 𝑥 = (0g𝐺)) → if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0) = if(𝑥 = (0g𝐺), (ϕ‘𝑁), 0))
2624, 25mp1i 13 . . . . . 6 ((𝑁 ∈ ℕ ∧ 𝑥𝐷) → if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0) = if(𝑥 = (0g𝐺), (ϕ‘𝑁), 0))
2723, 26eqtr4d 2767 . . . . 5 ((𝑁 ∈ ℕ ∧ 𝑥𝐷) → Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))(𝑥𝑎) = if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0))
2827sumeq2dv 15627 . . . 4 (𝑁 ∈ ℕ → Σ𝑥𝐷 Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))(𝑥𝑎) = Σ𝑥𝐷 if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0))
2911, 20, 283eqtr3d 2772 . . 3 (𝑁 ∈ ℕ → Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0) = Σ𝑥𝐷 if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0))
30 nnnn0 12409 . . . . . 6 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ0)
311zncrng 21469 . . . . . 6 (𝑁 ∈ ℕ0 → (ℤ/nℤ‘𝑁) ∈ CRing)
32 crngring 20148 . . . . . 6 ((ℤ/nℤ‘𝑁) ∈ CRing → (ℤ/nℤ‘𝑁) ∈ Ring)
332, 12ringidcl 20168 . . . . . 6 ((ℤ/nℤ‘𝑁) ∈ Ring → (1r‘(ℤ/nℤ‘𝑁)) ∈ (Base‘(ℤ/nℤ‘𝑁)))
3430, 31, 32, 334syl 19 . . . . 5 (𝑁 ∈ ℕ → (1r‘(ℤ/nℤ‘𝑁)) ∈ (Base‘(ℤ/nℤ‘𝑁)))
3534snssd 4763 . . . 4 (𝑁 ∈ ℕ → {(1r‘(ℤ/nℤ‘𝑁))} ⊆ (Base‘(ℤ/nℤ‘𝑁)))
36 hashcl 14281 . . . . . 6 (𝐷 ∈ Fin → (♯‘𝐷) ∈ ℕ0)
37 nn0cn 12412 . . . . . 6 ((♯‘𝐷) ∈ ℕ0 → (♯‘𝐷) ∈ ℂ)
386, 36, 373syl 18 . . . . 5 (𝑁 ∈ ℕ → (♯‘𝐷) ∈ ℂ)
3938ralrimivw 3125 . . . 4 (𝑁 ∈ ℕ → ∀𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) ∈ ℂ)
403olcd 874 . . . 4 (𝑁 ∈ ℕ → ((Base‘(ℤ/nℤ‘𝑁)) ⊆ (ℤ‘0) ∨ (Base‘(ℤ/nℤ‘𝑁)) ∈ Fin))
41 sumss2 15651 . . . 4 ((({(1r‘(ℤ/nℤ‘𝑁))} ⊆ (Base‘(ℤ/nℤ‘𝑁)) ∧ ∀𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) ∈ ℂ) ∧ ((Base‘(ℤ/nℤ‘𝑁)) ⊆ (ℤ‘0) ∨ (Base‘(ℤ/nℤ‘𝑁)) ∈ Fin)) → Σ𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) = Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0))
4235, 39, 40, 41syl21anc 837 . . 3 (𝑁 ∈ ℕ → Σ𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) = Σ𝑎 ∈ (Base‘(ℤ/nℤ‘𝑁))if(𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))}, (♯‘𝐷), 0))
434dchrabl 27181 . . . . . 6 (𝑁 ∈ ℕ → 𝐺 ∈ Abel)
44 ablgrp 19682 . . . . . 6 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
455, 21grpidcl 18862 . . . . . 6 (𝐺 ∈ Grp → (0g𝐺) ∈ 𝐷)
4643, 44, 453syl 18 . . . . 5 (𝑁 ∈ ℕ → (0g𝐺) ∈ 𝐷)
4746snssd 4763 . . . 4 (𝑁 ∈ ℕ → {(0g𝐺)} ⊆ 𝐷)
48 phicl 16698 . . . . . 6 (𝑁 ∈ ℕ → (ϕ‘𝑁) ∈ ℕ)
4948nncnd 12162 . . . . 5 (𝑁 ∈ ℕ → (ϕ‘𝑁) ∈ ℂ)
5049ralrimivw 3125 . . . 4 (𝑁 ∈ ℕ → ∀𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) ∈ ℂ)
516olcd 874 . . . 4 (𝑁 ∈ ℕ → (𝐷 ⊆ (ℤ‘0) ∨ 𝐷 ∈ Fin))
52 sumss2 15651 . . . 4 ((({(0g𝐺)} ⊆ 𝐷 ∧ ∀𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) ∈ ℂ) ∧ (𝐷 ⊆ (ℤ‘0) ∨ 𝐷 ∈ Fin)) → Σ𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) = Σ𝑥𝐷 if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0))
5347, 50, 51, 52syl21anc 837 . . 3 (𝑁 ∈ ℕ → Σ𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) = Σ𝑥𝐷 if(𝑥 ∈ {(0g𝐺)}, (ϕ‘𝑁), 0))
5429, 42, 533eqtr4d 2774 . 2 (𝑁 ∈ ℕ → Σ𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) = Σ𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁))
55 eqidd 2730 . . . 4 (𝑎 = (1r‘(ℤ/nℤ‘𝑁)) → (♯‘𝐷) = (♯‘𝐷))
5655sumsn 15671 . . 3 (((1r‘(ℤ/nℤ‘𝑁)) ∈ (Base‘(ℤ/nℤ‘𝑁)) ∧ (♯‘𝐷) ∈ ℂ) → Σ𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) = (♯‘𝐷))
5734, 38, 56syl2anc 584 . 2 (𝑁 ∈ ℕ → Σ𝑎 ∈ {(1r‘(ℤ/nℤ‘𝑁))} (♯‘𝐷) = (♯‘𝐷))
58 eqidd 2730 . . . 4 (𝑥 = (0g𝐺) → (ϕ‘𝑁) = (ϕ‘𝑁))
5958sumsn 15671 . . 3 (((0g𝐺) ∈ 𝐷 ∧ (ϕ‘𝑁) ∈ ℂ) → Σ𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) = (ϕ‘𝑁))
6046, 49, 59syl2anc 584 . 2 (𝑁 ∈ ℕ → Σ𝑥 ∈ {(0g𝐺)} (ϕ‘𝑁) = (ϕ‘𝑁))
6154, 57, 603eqtr3d 2772 1 (𝑁 ∈ ℕ → (♯‘𝐷) = (ϕ‘𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wo 847   = wceq 1540  wcel 2109  wral 3044  wss 3905  ifcif 4478  {csn 4579  cfv 6486  Fincfn 8879  cc 11026  0cc0 11028  cn 12146  0cn0 12402  cuz 12753  chash 14255  Σcsu 15611  ϕcphi 16693  Basecbs 17138  0gc0g 17361  Grpcgrp 18830  Abelcabl 19678  1rcur 20084  Ringcrg 20136  CRingccrg 20137  ℤ/nczn 21427  DChrcdchr 27159
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-sum 15612  df-ef 15992  df-sin 15994  df-cos 15995  df-pi 15997  df-dvds 16182  df-gcd 16424  df-prm 16601  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-rhm 20375  df-subrng 20449  df-subrg 20473  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-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-log 26481  df-cxp 26482  df-dchr 27160
This theorem is referenced by:  sumdchr  27199
  Copyright terms: Public domain W3C validator