Metamath Proof Explorer


Theorem dchrfi

Description: The group of Dirichlet characters is a finite group. (Contributed by Mario Carneiro, 19-Apr-2016)

Ref Expression
Hypotheses dchrabl.g G = DChr N
dchrfi.b D = Base G
Assertion dchrfi N D Fin

Proof

Step Hyp Ref Expression
1 dchrabl.g G = DChr N
2 dchrfi.b D = Base G
3 snfi 0 Fin
4 cnex V
5 4 a1i N V
6 ovexd N z z ϕ N V
7 1cnd N z 1
8 eqidd N z z ϕ N = z z ϕ N
9 fconstmpt × 1 = z 1
10 9 a1i N × 1 = z 1
11 5 6 7 8 10 offval2 N z z ϕ N f × 1 = z z ϕ N 1
12 ssid
13 12 a1i N
14 1cnd N 1
15 phicl N ϕ N
16 15 nnnn0d N ϕ N 0
17 plypow 1 ϕ N 0 z z ϕ N Poly
18 13 14 16 17 syl3anc N z z ϕ N Poly
19 ax-1cn 1
20 plyconst 1 × 1 Poly
21 12 19 20 mp2an × 1 Poly
22 plysubcl z z ϕ N Poly × 1 Poly z z ϕ N f × 1 Poly
23 18 21 22 sylancl N z z ϕ N f × 1 Poly
24 11 23 eqeltrrd N z z ϕ N 1 Poly
25 0cn 0
26 neg1ne0 1 0
27 15 0expd N 0 ϕ N = 0
28 27 oveq1d N 0 ϕ N 1 = 0 1
29 oveq1 z = 0 z ϕ N = 0 ϕ N
30 29 oveq1d z = 0 z ϕ N 1 = 0 ϕ N 1
31 eqid z z ϕ N 1 = z z ϕ N 1
32 ovex 0 ϕ N 1 V
33 30 31 32 fvmpt 0 z z ϕ N 1 0 = 0 ϕ N 1
34 25 33 ax-mp z z ϕ N 1 0 = 0 ϕ N 1
35 df-neg 1 = 0 1
36 28 34 35 3eqtr4g N z z ϕ N 1 0 = 1
37 36 neeq1d N z z ϕ N 1 0 0 1 0
38 26 37 mpbiri N z z ϕ N 1 0 0
39 ne0p 0 z z ϕ N 1 0 0 z z ϕ N 1 0 𝑝
40 25 38 39 sylancr N z z ϕ N 1 0 𝑝
41 31 mptiniseg 0 z z ϕ N 1 -1 0 = z | z ϕ N 1 = 0
42 25 41 ax-mp z z ϕ N 1 -1 0 = z | z ϕ N 1 = 0
43 42 eqcomi z | z ϕ N 1 = 0 = z z ϕ N 1 -1 0
44 43 fta1 z z ϕ N 1 Poly z z ϕ N 1 0 𝑝 z | z ϕ N 1 = 0 Fin z | z ϕ N 1 = 0 deg z z ϕ N 1
45 24 40 44 syl2anc N z | z ϕ N 1 = 0 Fin z | z ϕ N 1 = 0 deg z z ϕ N 1
46 45 simpld N z | z ϕ N 1 = 0 Fin
47 unfi 0 Fin z | z ϕ N 1 = 0 Fin 0 z | z ϕ N 1 = 0 Fin
48 3 46 47 sylancr N 0 z | z ϕ N 1 = 0 Fin
49 eqid /N = /N
50 eqid Base /N = Base /N
51 49 50 znfi N Base /N Fin
52 mapfi 0 z | z ϕ N 1 = 0 Fin Base /N Fin 0 z | z ϕ N 1 = 0 Base /N Fin
53 48 51 52 syl2anc N 0 z | z ϕ N 1 = 0 Base /N Fin
54 simpr N f D f D
55 1 49 2 50 54 dchrf N f D f : Base /N
56 55 ffnd N f D f Fn Base /N
57 df-ne f x 0 ¬ f x = 0
58 fvex f x V
59 58 elsn f x 0 f x = 0
60 57 59 xchbinxr f x 0 ¬ f x 0
61 oveq1 z = f x z ϕ N = f x ϕ N
62 61 oveq1d z = f x z ϕ N 1 = f x ϕ N 1
63 62 eqeq1d z = f x z ϕ N 1 = 0 f x ϕ N 1 = 0
64 simpl x Base /N f x 0 x Base /N
65 ffvelrn f : Base /N x Base /N f x
66 55 64 65 syl2an N f D x Base /N f x 0 f x
67 1 49 2 dchrmhm D mulGrp /N MndHom mulGrp fld
68 simplr N f D x Base /N f x 0 f D
69 67 68 sseldi N f D x Base /N f x 0 f mulGrp /N MndHom mulGrp fld
70 16 ad2antrr N f D x Base /N f x 0 ϕ N 0
71 simprl N f D x Base /N f x 0 x Base /N
72 eqid mulGrp /N = mulGrp /N
73 72 50 mgpbas Base /N = Base mulGrp /N
74 eqid mulGrp /N = mulGrp /N
75 eqid mulGrp fld = mulGrp fld
76 73 74 75 mhmmulg f mulGrp /N MndHom mulGrp fld ϕ N 0 x Base /N f ϕ N mulGrp /N x = ϕ N mulGrp fld f x
77 69 70 71 76 syl3anc N f D x Base /N f x 0 f ϕ N mulGrp /N x = ϕ N mulGrp fld f x
78 nnnn0 N N 0
79 49 zncrng N 0 /N CRing
80 78 79 syl N /N CRing
81 crngring /N CRing /N Ring
82 80 81 syl N /N Ring
83 82 ad2antrr N f D x Base /N f x 0 /N Ring
84 eqid Unit /N = Unit /N
85 eqid mulGrp /N 𝑠 Unit /N = mulGrp /N 𝑠 Unit /N
86 84 85 unitgrp /N Ring mulGrp /N 𝑠 Unit /N Grp
87 83 86 syl N f D x Base /N f x 0 mulGrp /N 𝑠 Unit /N Grp
88 49 84 znunithash N Unit /N = ϕ N
89 88 16 eqeltrd N Unit /N 0
90 fvex Unit /N V
91 hashclb Unit /N V Unit /N Fin Unit /N 0
92 90 91 ax-mp Unit /N Fin Unit /N 0
93 89 92 sylibr N Unit /N Fin
94 93 ad2antrr N f D x Base /N f x 0 Unit /N Fin
95 simprr N f D x Base /N f x 0 f x 0
96 1 49 2 50 84 68 71 dchrn0 N f D x Base /N f x 0 f x 0 x Unit /N
97 95 96 mpbid N f D x Base /N f x 0 x Unit /N
98 84 85 unitgrpbas Unit /N = Base mulGrp /N 𝑠 Unit /N
99 eqid od mulGrp /N 𝑠 Unit /N = od mulGrp /N 𝑠 Unit /N
100 98 99 oddvds2 mulGrp /N 𝑠 Unit /N Grp Unit /N Fin x Unit /N od mulGrp /N 𝑠 Unit /N x Unit /N
101 87 94 97 100 syl3anc N f D x Base /N f x 0 od mulGrp /N 𝑠 Unit /N x Unit /N
102 88 ad2antrr N f D x Base /N f x 0 Unit /N = ϕ N
103 101 102 breqtrd N f D x Base /N f x 0 od mulGrp /N 𝑠 Unit /N x ϕ N
104 15 ad2antrr N f D x Base /N f x 0 ϕ N
105 104 nnzd N f D x Base /N f x 0 ϕ N
106 eqid mulGrp /N 𝑠 Unit /N = mulGrp /N 𝑠 Unit /N
107 eqid 0 mulGrp /N 𝑠 Unit /N = 0 mulGrp /N 𝑠 Unit /N
108 98 99 106 107 oddvds mulGrp /N 𝑠 Unit /N Grp x Unit /N ϕ N od mulGrp /N 𝑠 Unit /N x ϕ N ϕ N mulGrp /N 𝑠 Unit /N x = 0 mulGrp /N 𝑠 Unit /N
109 87 97 105 108 syl3anc N f D x Base /N f x 0 od mulGrp /N 𝑠 Unit /N x ϕ N ϕ N mulGrp /N 𝑠 Unit /N x = 0 mulGrp /N 𝑠 Unit /N
110 103 109 mpbid N f D x Base /N f x 0 ϕ N mulGrp /N 𝑠 Unit /N x = 0 mulGrp /N 𝑠 Unit /N
111 84 72 unitsubm /N Ring Unit /N SubMnd mulGrp /N
112 83 111 syl N f D x Base /N f x 0 Unit /N SubMnd mulGrp /N
113 74 85 106 submmulg Unit /N SubMnd mulGrp /N ϕ N 0 x Unit /N ϕ N mulGrp /N x = ϕ N mulGrp /N 𝑠 Unit /N x
114 112 70 97 113 syl3anc N f D x Base /N f x 0 ϕ N mulGrp /N x = ϕ N mulGrp /N 𝑠 Unit /N x
115 eqid 1 /N = 1 /N
116 72 115 ringidval 1 /N = 0 mulGrp /N
117 85 116 subm0 Unit /N SubMnd mulGrp /N 1 /N = 0 mulGrp /N 𝑠 Unit /N
118 112 117 syl N f D x Base /N f x 0 1 /N = 0 mulGrp /N 𝑠 Unit /N
119 110 114 118 3eqtr4d N f D x Base /N f x 0 ϕ N mulGrp /N x = 1 /N
120 119 fveq2d N f D x Base /N f x 0 f ϕ N mulGrp /N x = f 1 /N
121 77 120 eqtr3d N f D x Base /N f x 0 ϕ N mulGrp fld f x = f 1 /N
122 cnfldexp f x ϕ N 0 ϕ N mulGrp fld f x = f x ϕ N
123 66 70 122 syl2anc N f D x Base /N f x 0 ϕ N mulGrp fld f x = f x ϕ N
124 eqid mulGrp fld = mulGrp fld
125 cnfld1 1 = 1 fld
126 124 125 ringidval 1 = 0 mulGrp fld
127 116 126 mhm0 f mulGrp /N MndHom mulGrp fld f 1 /N = 1
128 69 127 syl N f D x Base /N f x 0 f 1 /N = 1
129 121 123 128 3eqtr3d N f D x Base /N f x 0 f x ϕ N = 1
130 129 oveq1d N f D x Base /N f x 0 f x ϕ N 1 = 1 1
131 1m1e0 1 1 = 0
132 130 131 eqtrdi N f D x Base /N f x 0 f x ϕ N 1 = 0
133 63 66 132 elrabd N f D x Base /N f x 0 f x z | z ϕ N 1 = 0
134 133 expr N f D x Base /N f x 0 f x z | z ϕ N 1 = 0
135 60 134 syl5bir N f D x Base /N ¬ f x 0 f x z | z ϕ N 1 = 0
136 135 orrd N f D x Base /N f x 0 f x z | z ϕ N 1 = 0
137 elun f x 0 z | z ϕ N 1 = 0 f x 0 f x z | z ϕ N 1 = 0
138 136 137 sylibr N f D x Base /N f x 0 z | z ϕ N 1 = 0
139 138 ralrimiva N f D x Base /N f x 0 z | z ϕ N 1 = 0
140 ffnfv f : Base /N 0 z | z ϕ N 1 = 0 f Fn Base /N x Base /N f x 0 z | z ϕ N 1 = 0
141 56 139 140 sylanbrc N f D f : Base /N 0 z | z ϕ N 1 = 0
142 141 ex N f D f : Base /N 0 z | z ϕ N 1 = 0
143 48 51 elmapd N f 0 z | z ϕ N 1 = 0 Base /N f : Base /N 0 z | z ϕ N 1 = 0
144 142 143 sylibrd N f D f 0 z | z ϕ N 1 = 0 Base /N
145 144 ssrdv N D 0 z | z ϕ N 1 = 0 Base /N
146 53 145 ssfid N D Fin