Metamath Proof Explorer


Theorem unitscyglem5

Description: Lemma for unitscyg . (Contributed by metakunt, 9-Aug-2025)

Ref Expression
Hypotheses unitscyglem5.1 𝐺 = ( ( mulGrp ‘ 𝑅 ) ↾s ( Unit ‘ 𝑅 ) )
unitscyglem5.2 ( 𝜑𝑅 ∈ IDomn )
unitscyglem5.3 ( 𝜑 → ( Base ‘ 𝑅 ) ∈ Fin )
unitscyglem5.4 ( 𝜑𝐷 ∈ ℕ )
unitscyglem5.5 ( 𝜑𝐷 ∥ ( ♯ ‘ ( Base ‘ 𝐺 ) ) )
Assertion unitscyglem5 ( 𝜑 → ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) ≠ ∅ )

Proof

Step Hyp Ref Expression
1 unitscyglem5.1 𝐺 = ( ( mulGrp ‘ 𝑅 ) ↾s ( Unit ‘ 𝑅 ) )
2 unitscyglem5.2 ( 𝜑𝑅 ∈ IDomn )
3 unitscyglem5.3 ( 𝜑 → ( Base ‘ 𝑅 ) ∈ Fin )
4 unitscyglem5.4 ( 𝜑𝐷 ∈ ℕ )
5 unitscyglem5.5 ( 𝜑𝐷 ∥ ( ♯ ‘ ( Base ‘ 𝐺 ) ) )
6 4 phicld ( 𝜑 → ( ϕ ‘ 𝐷 ) ∈ ℕ )
7 eqid ( Base ‘ 𝐺 ) = ( Base ‘ 𝐺 )
8 eqid ( .g𝐺 ) = ( .g𝐺 )
9 2 idomringd ( 𝜑𝑅 ∈ Ring )
10 eqid ( Unit ‘ 𝑅 ) = ( Unit ‘ 𝑅 )
11 10 1 unitgrp ( 𝑅 ∈ Ring → 𝐺 ∈ Grp )
12 9 11 syl ( 𝜑𝐺 ∈ Grp )
13 eqid ( Base ‘ ( mulGrp ‘ 𝑅 ) ) = ( Base ‘ ( mulGrp ‘ 𝑅 ) )
14 1 13 ressbasss ( Base ‘ 𝐺 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) )
15 14 a1i ( 𝜑 → ( Base ‘ 𝐺 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
16 eqid ( mulGrp ‘ 𝑅 ) = ( mulGrp ‘ 𝑅 )
17 eqid ( Base ‘ 𝑅 ) = ( Base ‘ 𝑅 )
18 16 17 mgpbas ( Base ‘ 𝑅 ) = ( Base ‘ ( mulGrp ‘ 𝑅 ) )
19 18 a1i ( 𝜑 → ( Base ‘ 𝑅 ) = ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
20 19 eqimsscd ( 𝜑 → ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ⊆ ( Base ‘ 𝑅 ) )
21 15 20 sstrd ( 𝜑 → ( Base ‘ 𝐺 ) ⊆ ( Base ‘ 𝑅 ) )
22 3 21 ssfid ( 𝜑 → ( Base ‘ 𝐺 ) ∈ Fin )
23 18 eqcomi ( Base ‘ ( mulGrp ‘ 𝑅 ) ) = ( Base ‘ 𝑅 )
24 23 10 unitss ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) )
25 24 a1i ( 𝜑 → ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
26 25 adantr ( ( 𝜑𝑦 ∈ ℕ ) → ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
27 26 adantr ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ 𝑧 ∈ ( Base ‘ 𝐺 ) ) → ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
28 1 13 ressbasssg ( Base ‘ 𝐺 ) ⊆ ( ( Unit ‘ 𝑅 ) ∩ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
29 28 a1i ( 𝜑 → ( Base ‘ 𝐺 ) ⊆ ( ( Unit ‘ 𝑅 ) ∩ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ) )
30 inss1 ( ( Unit ‘ 𝑅 ) ∩ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ) ⊆ ( Unit ‘ 𝑅 )
31 30 a1i ( 𝜑 → ( ( Unit ‘ 𝑅 ) ∩ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ) ⊆ ( Unit ‘ 𝑅 ) )
32 29 31 sstrd ( 𝜑 → ( Base ‘ 𝐺 ) ⊆ ( Unit ‘ 𝑅 ) )
33 32 adantr ( ( 𝜑𝑦 ∈ ℕ ) → ( Base ‘ 𝐺 ) ⊆ ( Unit ‘ 𝑅 ) )
34 33 sseld ( ( 𝜑𝑦 ∈ ℕ ) → ( 𝑧 ∈ ( Base ‘ 𝐺 ) → 𝑧 ∈ ( Unit ‘ 𝑅 ) ) )
35 34 imp ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ 𝑧 ∈ ( Base ‘ 𝐺 ) ) → 𝑧 ∈ ( Unit ‘ 𝑅 ) )
36 simpr ( ( 𝜑𝑦 ∈ ℕ ) → 𝑦 ∈ ℕ )
37 36 adantr ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ 𝑧 ∈ ( Base ‘ 𝐺 ) ) → 𝑦 ∈ ℕ )
38 1 27 35 37 ressmulgnnd ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ 𝑧 ∈ ( Base ‘ 𝐺 ) ) → ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) )
39 38 eqeq1d ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ 𝑧 ∈ ( Base ‘ 𝐺 ) ) → ( ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) ↔ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) ) )
40 39 rabbidva ( ( 𝜑𝑦 ∈ ℕ ) → { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } = { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } )
41 40 fveq2d ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ) = ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) )
42 fvex ( Base ‘ 𝐺 ) ∈ V
43 42 rabex { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ∈ V
44 43 a1i ( ( 𝜑𝑦 ∈ ℕ ) → { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ∈ V )
45 hashxrcl ( { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ∈ V → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ) ∈ ℝ* )
46 44 45 syl ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ) ∈ ℝ* )
47 41 46 eqeltrrd ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ∈ ℝ* )
48 fvex ( Base ‘ 𝑅 ) ∈ V
49 48 rabex { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ∈ V
50 49 a1i ( ( 𝜑𝑦 ∈ ℕ ) → { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ∈ V )
51 hashxrcl ( { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ∈ V → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ∈ ℝ* )
52 50 51 syl ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ∈ ℝ* )
53 nnre ( 𝑦 ∈ ℕ → 𝑦 ∈ ℝ )
54 53 adantl ( ( 𝜑𝑦 ∈ ℕ ) → 𝑦 ∈ ℝ )
55 54 rexrd ( ( 𝜑𝑦 ∈ ℕ ) → 𝑦 ∈ ℝ* )
56 simprl ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ ( 𝑧 ∈ ( Base ‘ 𝐺 ) ∧ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) ) ) → 𝑧 ∈ ( Base ‘ 𝐺 ) )
57 21 ad2antrr ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ ( 𝑧 ∈ ( Base ‘ 𝐺 ) ∧ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) ) ) → ( Base ‘ 𝐺 ) ⊆ ( Base ‘ 𝑅 ) )
58 57 sseld ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ ( 𝑧 ∈ ( Base ‘ 𝐺 ) ∧ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) ) ) → ( 𝑧 ∈ ( Base ‘ 𝐺 ) → 𝑧 ∈ ( Base ‘ 𝑅 ) ) )
59 56 58 mpd ( ( ( 𝜑𝑦 ∈ ℕ ) ∧ ( 𝑧 ∈ ( Base ‘ 𝐺 ) ∧ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) ) ) → 𝑧 ∈ ( Base ‘ 𝑅 ) )
60 59 rabss3d ( ( 𝜑𝑦 ∈ ℕ ) → { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ⊆ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } )
61 50 60 jca ( ( 𝜑𝑦 ∈ ℕ ) → ( { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ∈ V ∧ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ⊆ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) )
62 hashss ( ( { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ∈ V ∧ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ⊆ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) )
63 61 62 syl ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) )
64 2 adantr ( ( 𝜑𝑦 ∈ ℕ ) → 𝑅 ∈ IDomn )
65 eqid ( 1r𝑅 ) = ( 1r𝑅 )
66 10 1 65 unitgrpid ( 𝑅 ∈ Ring → ( 1r𝑅 ) = ( 0g𝐺 ) )
67 9 66 syl ( 𝜑 → ( 1r𝑅 ) = ( 0g𝐺 ) )
68 67 eqcomd ( 𝜑 → ( 0g𝐺 ) = ( 1r𝑅 ) )
69 17 65 ringidcl ( 𝑅 ∈ Ring → ( 1r𝑅 ) ∈ ( Base ‘ 𝑅 ) )
70 9 69 syl ( 𝜑 → ( 1r𝑅 ) ∈ ( Base ‘ 𝑅 ) )
71 68 70 eqeltrd ( 𝜑 → ( 0g𝐺 ) ∈ ( Base ‘ 𝑅 ) )
72 71 adantr ( ( 𝜑𝑦 ∈ ℕ ) → ( 0g𝐺 ) ∈ ( Base ‘ 𝑅 ) )
73 eqid ( .g ‘ ( mulGrp ‘ 𝑅 ) ) = ( .g ‘ ( mulGrp ‘ 𝑅 ) )
74 17 73 idomrootle ( ( 𝑅 ∈ IDomn ∧ ( 0g𝐺 ) ∈ ( Base ‘ 𝑅 ) ∧ 𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ 𝑦 )
75 64 72 36 74 syl3anc ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝑅 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ 𝑦 )
76 47 52 55 63 75 xrletrd ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ 𝑦 )
77 41 76 eqbrtrd ( ( 𝜑𝑦 ∈ ℕ ) → ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ 𝑦 )
78 77 ralrimiva ( 𝜑 → ∀ 𝑦 ∈ ℕ ( ♯ ‘ { 𝑧 ∈ ( Base ‘ 𝐺 ) ∣ ( 𝑦 ( .g𝐺 ) 𝑧 ) = ( 0g𝐺 ) } ) ≤ 𝑦 )
79 7 8 12 22 78 4 5 unitscyglem4 ( 𝜑 → ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) = ( ϕ ‘ 𝐷 ) )
80 79 eleq1d ( 𝜑 → ( ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∈ ℕ ↔ ( ϕ ‘ 𝐷 ) ∈ ℕ ) )
81 6 80 mpbird ( 𝜑 → ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∈ ℕ )
82 81 nngt0d ( 𝜑 → 0 < ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) )
83 42 rabex { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ∈ V
84 83 a1i ( 𝜑 → { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ∈ V )
85 hashneq0 ( { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ∈ V → ( 0 < ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ↔ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ≠ ∅ ) )
86 84 85 syl ( 𝜑 → ( 0 < ( ♯ ‘ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ↔ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ≠ ∅ ) )
87 82 86 mpbid ( 𝜑 → { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ≠ ∅ )
88 n0 ( { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ≠ ∅ ↔ ∃ 𝑚 𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } )
89 87 88 sylib ( 𝜑 → ∃ 𝑚 𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } )
90 nfv 𝑚 𝜑
91 fveqeq2 ( 𝑤 = 𝑚 → ( ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 ↔ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) )
92 91 elrab ( 𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ↔ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) )
93 92 bilani ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) → ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) )
94 simpll ( ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∧ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ) → 𝜑 )
95 simprl ( ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∧ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ) → 𝑚 ∈ ( Base ‘ 𝐺 ) )
96 simprr ( ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∧ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ) → ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 )
97 94 95 96 jca31 ( ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∧ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ) → ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) )
98 2 idomcringd ( 𝜑𝑅 ∈ CRing )
99 16 crngmgp ( 𝑅 ∈ CRing → ( mulGrp ‘ 𝑅 ) ∈ CMnd )
100 98 99 syl ( 𝜑 → ( mulGrp ‘ 𝑅 ) ∈ CMnd )
101 100 ad2antrr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( mulGrp ‘ 𝑅 ) ∈ CMnd )
102 4 ad2antrr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝐷 ∈ ℕ )
103 15 sselda ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) → 𝑚 ∈ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
104 103 adantr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ∈ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
105 9 ad2antrr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑅 ∈ Ring )
106 10 16 unitsubm ( 𝑅 ∈ Ring → ( Unit ‘ 𝑅 ) ∈ ( SubMnd ‘ ( mulGrp ‘ 𝑅 ) ) )
107 105 106 syl ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( Unit ‘ 𝑅 ) ∈ ( SubMnd ‘ ( mulGrp ‘ 𝑅 ) ) )
108 104 23 eleqtrdi ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ∈ ( Base ‘ 𝑅 ) )
109 101 cmnmndd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( mulGrp ‘ 𝑅 ) ∈ Mnd )
110 4 nnzd ( 𝜑𝐷 ∈ ℤ )
111 1zzd ( 𝜑 → 1 ∈ ℤ )
112 110 111 zsubcld ( 𝜑 → ( 𝐷 − 1 ) ∈ ℤ )
113 1cnd ( 𝜑 → 1 ∈ ℂ )
114 113 addridd ( 𝜑 → ( 1 + 0 ) = 1 )
115 4 nnge1d ( 𝜑 → 1 ≤ 𝐷 )
116 114 115 eqbrtrd ( 𝜑 → ( 1 + 0 ) ≤ 𝐷 )
117 1red ( 𝜑 → 1 ∈ ℝ )
118 0red ( 𝜑 → 0 ∈ ℝ )
119 4 nnred ( 𝜑𝐷 ∈ ℝ )
120 117 118 119 leaddsub2d ( 𝜑 → ( ( 1 + 0 ) ≤ 𝐷 ↔ 0 ≤ ( 𝐷 − 1 ) ) )
121 116 120 mpbid ( 𝜑 → 0 ≤ ( 𝐷 − 1 ) )
122 112 121 jca ( 𝜑 → ( ( 𝐷 − 1 ) ∈ ℤ ∧ 0 ≤ ( 𝐷 − 1 ) ) )
123 elnn0z ( ( 𝐷 − 1 ) ∈ ℕ0 ↔ ( ( 𝐷 − 1 ) ∈ ℤ ∧ 0 ≤ ( 𝐷 − 1 ) ) )
124 122 123 sylibr ( 𝜑 → ( 𝐷 − 1 ) ∈ ℕ0 )
125 124 adantr ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) → ( 𝐷 − 1 ) ∈ ℕ0 )
126 125 adantr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 − 1 ) ∈ ℕ0 )
127 18 73 109 126 108 mulgnn0cld ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ∈ ( Base ‘ 𝑅 ) )
128 simpr ( ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ∧ 𝑜 = ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ) → 𝑜 = ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
129 128 oveq1d ( ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ∧ 𝑜 = ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ) → ( 𝑜 ( .r𝑅 ) 𝑚 ) = ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( .r𝑅 ) 𝑚 ) )
130 129 eqeq1d ( ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ∧ 𝑜 = ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ) → ( ( 𝑜 ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) ↔ ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) ) )
131 eqid ( .r𝑅 ) = ( .r𝑅 )
132 16 131 mgpplusg ( .r𝑅 ) = ( +g ‘ ( mulGrp ‘ 𝑅 ) )
133 132 a1i ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( .r𝑅 ) = ( +g ‘ ( mulGrp ‘ 𝑅 ) ) )
134 133 oveqd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( .r𝑅 ) 𝑚 ) = ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
135 102 nncnd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝐷 ∈ ℂ )
136 1cnd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 1 ∈ ℂ )
137 135 136 npcand ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( 𝐷 − 1 ) + 1 ) = 𝐷 )
138 137 eqcomd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝐷 = ( ( 𝐷 − 1 ) + 1 ) )
139 138 oveq1d ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( ( ( 𝐷 − 1 ) + 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
140 eqid ( +g ‘ ( mulGrp ‘ 𝑅 ) ) = ( +g ‘ ( mulGrp ‘ 𝑅 ) )
141 13 73 140 mulgnn0p1 ( ( ( mulGrp ‘ 𝑅 ) ∈ Mnd ∧ ( 𝐷 − 1 ) ∈ ℕ0𝑚 ∈ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ) → ( ( ( 𝐷 − 1 ) + 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
142 109 126 104 141 syl3anc ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) + 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
143 139 142 eqtr2d ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( 𝐷 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
144 16 65 ringidval ( 1r𝑅 ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) )
145 144 a1i ( 𝜑 → ( 1r𝑅 ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) )
146 145 eqcomd ( 𝜑 → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 1r𝑅 ) )
147 10 65 1unit ( 𝑅 ∈ Ring → ( 1r𝑅 ) ∈ ( Unit ‘ 𝑅 ) )
148 9 147 syl ( 𝜑 → ( 1r𝑅 ) ∈ ( Unit ‘ 𝑅 ) )
149 146 148 eqeltrd ( 𝜑 → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) ∈ ( Unit ‘ 𝑅 ) )
150 149 adantr ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) ∈ ( Unit ‘ 𝑅 ) )
151 150 adantr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) ∈ ( Unit ‘ 𝑅 ) )
152 24 a1i ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) )
153 eqid ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) )
154 1 13 153 ress0g ( ( ( mulGrp ‘ 𝑅 ) ∈ Mnd ∧ ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) ∈ ( Unit ‘ 𝑅 ) ∧ ( Unit ‘ 𝑅 ) ⊆ ( Base ‘ ( mulGrp ‘ 𝑅 ) ) ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 0g𝐺 ) )
155 109 151 152 154 syl3anc ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 0g𝐺 ) )
156 simpr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 )
157 156 eqcomd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝐷 = ( ( od ‘ 𝐺 ) ‘ 𝑚 ) )
158 157 oveq1d ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 ( .g𝐺 ) 𝑚 ) = ( ( ( od ‘ 𝐺 ) ‘ 𝑚 ) ( .g𝐺 ) 𝑚 ) )
159 eqid ( od ‘ 𝐺 ) = ( od ‘ 𝐺 )
160 eqid ( 0g𝐺 ) = ( 0g𝐺 )
161 7 159 8 160 odid ( 𝑚 ∈ ( Base ‘ 𝐺 ) → ( ( ( od ‘ 𝐺 ) ‘ 𝑚 ) ( .g𝐺 ) 𝑚 ) = ( 0g𝐺 ) )
162 161 ad2antlr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( od ‘ 𝐺 ) ‘ 𝑚 ) ( .g𝐺 ) 𝑚 ) = ( 0g𝐺 ) )
163 158 162 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 ( .g𝐺 ) 𝑚 ) = ( 0g𝐺 ) )
164 163 eqcomd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 0g𝐺 ) = ( 𝐷 ( .g𝐺 ) 𝑚 ) )
165 155 164 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 𝐷 ( .g𝐺 ) 𝑚 ) )
166 32 sselda ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) → 𝑚 ∈ ( Unit ‘ 𝑅 ) )
167 166 adantr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ∈ ( Unit ‘ 𝑅 ) )
168 1 152 167 102 ressmulgnnd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 ( .g𝐺 ) 𝑚 ) = ( 𝐷 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) )
169 165 168 eqtr2d ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝐷 ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) )
170 143 169 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) )
171 144 a1i ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 1r𝑅 ) = ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) )
172 171 eqcomd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 0g ‘ ( mulGrp ‘ 𝑅 ) ) = ( 1r𝑅 ) )
173 170 172 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( +g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) = ( 1r𝑅 ) )
174 134 173 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( ( 𝐷 − 1 ) ( .g ‘ ( mulGrp ‘ 𝑅 ) ) 𝑚 ) ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) )
175 127 130 174 rspcedvd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ∃ 𝑜 ∈ ( Base ‘ 𝑅 ) ( 𝑜 ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) )
176 108 175 jca ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝑚 ∈ ( Base ‘ 𝑅 ) ∧ ∃ 𝑜 ∈ ( Base ‘ 𝑅 ) ( 𝑜 ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) ) )
177 eqid ( ∥r𝑅 ) = ( ∥r𝑅 )
178 17 177 131 dvdsr ( 𝑚 ( ∥r𝑅 ) ( 1r𝑅 ) ↔ ( 𝑚 ∈ ( Base ‘ 𝑅 ) ∧ ∃ 𝑜 ∈ ( Base ‘ 𝑅 ) ( 𝑜 ( .r𝑅 ) 𝑚 ) = ( 1r𝑅 ) ) )
179 176 178 sylibr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ( ∥r𝑅 ) ( 1r𝑅 ) )
180 98 adantr ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) → 𝑅 ∈ CRing )
181 180 adantr ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑅 ∈ CRing )
182 10 65 177 crngunit ( 𝑅 ∈ CRing → ( 𝑚 ∈ ( Unit ‘ 𝑅 ) ↔ 𝑚 ( ∥r𝑅 ) ( 1r𝑅 ) ) )
183 181 182 syl ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( 𝑚 ∈ ( Unit ‘ 𝑅 ) ↔ 𝑚 ( ∥r𝑅 ) ( 1r𝑅 ) ) )
184 179 183 mpbird ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ∈ ( Unit ‘ 𝑅 ) )
185 eqid ( od ‘ ( mulGrp ‘ 𝑅 ) ) = ( od ‘ ( mulGrp ‘ 𝑅 ) )
186 1 185 159 submod ( ( ( Unit ‘ 𝑅 ) ∈ ( SubMnd ‘ ( mulGrp ‘ 𝑅 ) ) ∧ 𝑚 ∈ ( Unit ‘ 𝑅 ) ) → ( ( od ‘ ( mulGrp ‘ 𝑅 ) ) ‘ 𝑚 ) = ( ( od ‘ 𝐺 ) ‘ 𝑚 ) )
187 107 184 186 syl2anc ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( od ‘ ( mulGrp ‘ 𝑅 ) ) ‘ 𝑚 ) = ( ( od ‘ 𝐺 ) ‘ 𝑚 ) )
188 187 156 eqtrd ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → ( ( od ‘ ( mulGrp ‘ 𝑅 ) ) ‘ 𝑚 ) = 𝐷 )
189 101 102 104 188 isprimroot2 ( ( ( 𝜑𝑚 ∈ ( Base ‘ 𝐺 ) ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) → 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) )
190 97 189 syl ( ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) ∧ ( 𝑚 ∈ ( Base ‘ 𝐺 ) ∧ ( ( od ‘ 𝐺 ) ‘ 𝑚 ) = 𝐷 ) ) → 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) )
191 93 190 mpdan ( ( 𝜑𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } ) → 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) )
192 191 ex ( 𝜑 → ( 𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } → 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) ) )
193 90 192 eximd ( 𝜑 → ( ∃ 𝑚 𝑚 ∈ { 𝑤 ∈ ( Base ‘ 𝐺 ) ∣ ( ( od ‘ 𝐺 ) ‘ 𝑤 ) = 𝐷 } → ∃ 𝑚 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) ) )
194 89 193 mpd ( 𝜑 → ∃ 𝑚 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) )
195 n0 ( ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) ≠ ∅ ↔ ∃ 𝑚 𝑚 ∈ ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) )
196 194 195 sylibr ( 𝜑 → ( ( mulGrp ‘ 𝑅 ) PrimRoots 𝐷 ) ≠ ∅ )