Metamath Proof Explorer


Theorem idomodle

Description: Limit on the number of N -th roots of unity in an integral domain. (Contributed by Stefan O'Rear, 12-Sep-2015)

Ref Expression
Hypotheses idomodle.g G = mulGrp R 𝑠 Unit R
idomodle.b B = Base G
idomodle.o O = od G
Assertion idomodle R IDomn N x B | O x N N

Proof

Step Hyp Ref Expression
1 idomodle.g G = mulGrp R 𝑠 Unit R
2 idomodle.b B = Base G
3 idomodle.o O = od G
4 2 fvexi B V
5 4 rabex x B | O x N V
6 hashxrcl x B | O x N V x B | O x N *
7 5 6 mp1i R IDomn N x B | O x N *
8 fvex Base R V
9 8 rabex x Base R | N mulGrp R x = 1 R V
10 hashxrcl x Base R | N mulGrp R x = 1 R V x Base R | N mulGrp R x = 1 R *
11 9 10 mp1i R IDomn N x Base R | N mulGrp R x = 1 R *
12 nnre N N
13 12 rexrd N N *
14 13 adantl R IDomn N N *
15 isidom R IDomn R CRing R Domn
16 15 simplbi R IDomn R CRing
17 16 adantr R IDomn N R CRing
18 crngring R CRing R Ring
19 17 18 syl R IDomn N R Ring
20 19 adantr R IDomn N x B R Ring
21 eqid Unit R = Unit R
22 21 1 unitgrp R Ring G Grp
23 20 22 syl R IDomn N x B G Grp
24 simpr R IDomn N x B x B
25 nnz N N
26 25 ad2antlr R IDomn N x B N
27 eqid G = G
28 eqid 0 G = 0 G
29 2 3 27 28 oddvds G Grp x B N O x N N G x = 0 G
30 23 24 26 29 syl3anc R IDomn N x B O x N N G x = 0 G
31 eqid mulGrp R = mulGrp R
32 21 31 unitsubm R Ring Unit R SubMnd mulGrp R
33 20 32 syl R IDomn N x B Unit R SubMnd mulGrp R
34 nnnn0 N N 0
35 34 ad2antlr R IDomn N x B N 0
36 21 1 unitgrpbas Unit R = Base G
37 2 36 eqtr4i B = Unit R
38 24 37 eleqtrdi R IDomn N x B x Unit R
39 eqid mulGrp R = mulGrp R
40 39 1 27 submmulg Unit R SubMnd mulGrp R N 0 x Unit R N mulGrp R x = N G x
41 33 35 38 40 syl3anc R IDomn N x B N mulGrp R x = N G x
42 eqid 1 R = 1 R
43 21 1 42 unitgrpid R Ring 1 R = 0 G
44 20 43 syl R IDomn N x B 1 R = 0 G
45 41 44 eqeq12d R IDomn N x B N mulGrp R x = 1 R N G x = 0 G
46 30 45 bitr4d R IDomn N x B O x N N mulGrp R x = 1 R
47 46 rabbidva R IDomn N x B | O x N = x B | N mulGrp R x = 1 R
48 47 fveq2d R IDomn N x B | O x N = x B | N mulGrp R x = 1 R
49 eqid Base R = Base R
50 49 37 unitss B Base R
51 rabss2 B Base R x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
52 50 51 mp1i R IDomn N x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
53 ssdomg x Base R | N mulGrp R x = 1 R V x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
54 9 52 53 mpsyl R IDomn N x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
55 hashdomi x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
56 54 55 syl R IDomn N x B | N mulGrp R x = 1 R x Base R | N mulGrp R x = 1 R
57 48 56 eqbrtrd R IDomn N x B | O x N x Base R | N mulGrp R x = 1 R
58 simpl R IDomn N R IDomn
59 49 42 ringidcl R Ring 1 R Base R
60 19 59 syl R IDomn N 1 R Base R
61 simpr R IDomn N N
62 49 39 idomrootle R IDomn 1 R Base R N x Base R | N mulGrp R x = 1 R N
63 58 60 61 62 syl3anc R IDomn N x Base R | N mulGrp R x = 1 R N
64 7 11 14 57 63 xrletrd R IDomn N x B | O x N N