Metamath Proof Explorer


Theorem proot1hash

Description: If an integral domain has a primitive N -th root of unity, it has exactly ( phiN ) of them. (Contributed by Stefan O'Rear, 12-Sep-2015)

Ref Expression
Hypotheses proot1hash.g G=mulGrpR𝑠UnitR
proot1hash.o O=odG
Assertion proot1hash RIDomnNXO-1NO-1N=ϕN

Proof

Step Hyp Ref Expression
1 proot1hash.g G=mulGrpR𝑠UnitR
2 proot1hash.o O=odG
3 eqid BaseG=BaseG
4 3 2 odf O:BaseG0
5 ffn O:BaseG0OFnBaseG
6 fniniseg2 OFnBaseGO-1N=xBaseG|Ox=N
7 4 5 6 mp2b O-1N=xBaseG|Ox=N
8 simp3 RIDomnNXO-1NXO-1N
9 fniniseg OFnBaseGXO-1NXBaseGOX=N
10 4 5 9 mp2b XO-1NXBaseGOX=N
11 8 10 sylib RIDomnNXO-1NXBaseGOX=N
12 11 simprd RIDomnNXO-1NOX=N
13 12 eqeq2d RIDomnNXO-1NOx=OXOx=N
14 13 rabbidv RIDomnNXO-1NxmrClsSubGrpGX|Ox=OX=xmrClsSubGrpGX|Ox=N
15 isidom RIDomnRCRingRDomn
16 15 simprbi RIDomnRDomn
17 16 3ad2ant1 RIDomnNXO-1NRDomn
18 domnring RDomnRRing
19 eqid UnitR=UnitR
20 19 1 unitgrp RRingGGrp
21 17 18 20 3syl RIDomnNXO-1NGGrp
22 3 subgacs GGrpSubGrpGACSBaseG
23 acsmre SubGrpGACSBaseGSubGrpGMooreBaseG
24 21 22 23 3syl RIDomnNXO-1NSubGrpGMooreBaseG
25 eqid mrClsSubGrpG=mrClsSubGrpG
26 25 mrcssv SubGrpGMooreBaseGmrClsSubGrpGXBaseG
27 dfrab3ss mrClsSubGrpGXBaseGxmrClsSubGrpGX|Ox=N=mrClsSubGrpGXxBaseG|Ox=N
28 24 26 27 3syl RIDomnNXO-1NxmrClsSubGrpGX|Ox=N=mrClsSubGrpGXxBaseG|Ox=N
29 incom mrClsSubGrpGXxBaseG|Ox=N=xBaseG|Ox=NmrClsSubGrpGX
30 simpl1 RIDomnNXO-1NxO-1NRIDomn
31 simpl2 RIDomnNXO-1NxO-1NN
32 simpr RIDomnNXO-1NxO-1NxO-1N
33 simpl3 RIDomnNXO-1NxO-1NXO-1N
34 1 2 25 proot1mul RIDomnNxO-1NXO-1NxmrClsSubGrpGX
35 30 31 32 33 34 syl22anc RIDomnNXO-1NxO-1NxmrClsSubGrpGX
36 35 ex RIDomnNXO-1NxO-1NxmrClsSubGrpGX
37 36 ssrdv RIDomnNXO-1NO-1NmrClsSubGrpGX
38 7 37 eqsstrrid RIDomnNXO-1NxBaseG|Ox=NmrClsSubGrpGX
39 df-ss xBaseG|Ox=NmrClsSubGrpGXxBaseG|Ox=NmrClsSubGrpGX=xBaseG|Ox=N
40 38 39 sylib RIDomnNXO-1NxBaseG|Ox=NmrClsSubGrpGX=xBaseG|Ox=N
41 29 40 eqtrid RIDomnNXO-1NmrClsSubGrpGXxBaseG|Ox=N=xBaseG|Ox=N
42 14 28 41 3eqtrrd RIDomnNXO-1NxBaseG|Ox=N=xmrClsSubGrpGX|Ox=OX
43 7 42 eqtrid RIDomnNXO-1NO-1N=xmrClsSubGrpGX|Ox=OX
44 43 fveq2d RIDomnNXO-1NO-1N=xmrClsSubGrpGX|Ox=OX
45 11 simpld RIDomnNXO-1NXBaseG
46 simp2 RIDomnNXO-1NN
47 12 46 eqeltrd RIDomnNXO-1NOX
48 3 2 25 odngen GGrpXBaseGOXxmrClsSubGrpGX|Ox=OX=ϕOX
49 21 45 47 48 syl3anc RIDomnNXO-1NxmrClsSubGrpGX|Ox=OX=ϕOX
50 12 fveq2d RIDomnNXO-1NϕOX=ϕN
51 44 49 50 3eqtrd RIDomnNXO-1NO-1N=ϕN