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