Metamath Proof Explorer


Theorem ablfac2

Description: Choose generators for each cyclic group in ablfac . (Contributed by Mario Carneiro, 28-Apr-2016)

Ref Expression
Hypotheses ablfac.b 𝐵 = ( Base ‘ 𝐺 )
ablfac.c 𝐶 = { 𝑟 ∈ ( SubGrp ‘ 𝐺 ) ∣ ( 𝐺s 𝑟 ) ∈ ( CycGrp ∩ ran pGrp ) }
ablfac.1 ( 𝜑𝐺 ∈ Abel )
ablfac.2 ( 𝜑𝐵 ∈ Fin )
ablfac2.m · = ( .g𝐺 )
ablfac2.s 𝑆 = ( 𝑘 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) )
Assertion ablfac2 ( 𝜑 → ∃ 𝑤 ∈ Word 𝐵 ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) )

Proof

Step Hyp Ref Expression
1 ablfac.b 𝐵 = ( Base ‘ 𝐺 )
2 ablfac.c 𝐶 = { 𝑟 ∈ ( SubGrp ‘ 𝐺 ) ∣ ( 𝐺s 𝑟 ) ∈ ( CycGrp ∩ ran pGrp ) }
3 ablfac.1 ( 𝜑𝐺 ∈ Abel )
4 ablfac.2 ( 𝜑𝐵 ∈ Fin )
5 ablfac2.m · = ( .g𝐺 )
6 ablfac2.s 𝑆 = ( 𝑘 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) )
7 wrdf ( 𝑠 ∈ Word 𝐶𝑠 : ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ⟶ 𝐶 )
8 7 ad2antlr ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → 𝑠 : ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ⟶ 𝐶 )
9 8 fdmd ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → dom 𝑠 = ( 0 ..^ ( ♯ ‘ 𝑠 ) ) )
10 fzofi ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ∈ Fin
11 9 10 eqeltrdi ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → dom 𝑠 ∈ Fin )
12 8 ffdmd ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → 𝑠 : dom 𝑠𝐶 )
13 12 ffvelrnda ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝑠𝑘 ) ∈ 𝐶 )
14 oveq2 ( 𝑟 = ( 𝑠𝑘 ) → ( 𝐺s 𝑟 ) = ( 𝐺s ( 𝑠𝑘 ) ) )
15 14 eleq1d ( 𝑟 = ( 𝑠𝑘 ) → ( ( 𝐺s 𝑟 ) ∈ ( CycGrp ∩ ran pGrp ) ↔ ( 𝐺s ( 𝑠𝑘 ) ) ∈ ( CycGrp ∩ ran pGrp ) ) )
16 15 2 elrab2 ( ( 𝑠𝑘 ) ∈ 𝐶 ↔ ( ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) ∧ ( 𝐺s ( 𝑠𝑘 ) ) ∈ ( CycGrp ∩ ran pGrp ) ) )
17 16 simplbi ( ( 𝑠𝑘 ) ∈ 𝐶 → ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) )
18 13 17 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) )
19 1 subgss ( ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) → ( 𝑠𝑘 ) ⊆ 𝐵 )
20 18 19 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝑠𝑘 ) ⊆ 𝐵 )
21 16 simprbi ( ( 𝑠𝑘 ) ∈ 𝐶 → ( 𝐺s ( 𝑠𝑘 ) ) ∈ ( CycGrp ∩ ran pGrp ) )
22 13 21 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝐺s ( 𝑠𝑘 ) ) ∈ ( CycGrp ∩ ran pGrp ) )
23 22 elin1d ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝐺s ( 𝑠𝑘 ) ) ∈ CycGrp )
24 eqid ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) )
25 eqid ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) = ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) )
26 24 25 iscyg ( ( 𝐺s ( 𝑠𝑘 ) ) ∈ CycGrp ↔ ( ( 𝐺s ( 𝑠𝑘 ) ) ∈ Grp ∧ ∃ 𝑥 ∈ ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ) )
27 26 simprbi ( ( 𝐺s ( 𝑠𝑘 ) ) ∈ CycGrp → ∃ 𝑥 ∈ ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
28 23 27 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ∃ 𝑥 ∈ ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
29 eqid ( 𝐺s ( 𝑠𝑘 ) ) = ( 𝐺s ( 𝑠𝑘 ) )
30 29 subgbas ( ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) → ( 𝑠𝑘 ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
31 18 30 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( 𝑠𝑘 ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
32 31 rexeqdv ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ↔ ∃ 𝑥 ∈ ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ) )
33 28 32 mpbird ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
34 18 ad2antrr ( ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) ∧ 𝑛 ∈ ℤ ) → ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) )
35 simpr ( ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) ∧ 𝑛 ∈ ℤ ) → 𝑛 ∈ ℤ )
36 simplr ( ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) ∧ 𝑛 ∈ ℤ ) → 𝑥 ∈ ( 𝑠𝑘 ) )
37 5 29 25 subgmulg ( ( ( 𝑠𝑘 ) ∈ ( SubGrp ‘ 𝐺 ) ∧ 𝑛 ∈ ℤ ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) → ( 𝑛 · 𝑥 ) = ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) )
38 34 35 36 37 syl3anc ( ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) ∧ 𝑛 ∈ ℤ ) → ( 𝑛 · 𝑥 ) = ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) )
39 38 mpteq2dva ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) → ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) )
40 39 rneqd ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) )
41 31 adantr ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) → ( 𝑠𝑘 ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) )
42 40 41 eqeq12d ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) ∧ 𝑥 ∈ ( 𝑠𝑘 ) ) → ( ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) ↔ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ) )
43 42 rexbidva ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ( ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) ↔ ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 ( .g ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) 𝑥 ) ) = ( Base ‘ ( 𝐺s ( 𝑠𝑘 ) ) ) ) )
44 33 43 mpbird ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) )
45 ssrexv ( ( 𝑠𝑘 ) ⊆ 𝐵 → ( ∃ 𝑥 ∈ ( 𝑠𝑘 ) ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) → ∃ 𝑥𝐵 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) ) )
46 20 44 45 sylc ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ 𝑘 ∈ dom 𝑠 ) → ∃ 𝑥𝐵 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) )
47 46 ralrimiva ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ∀ 𝑘 ∈ dom 𝑠𝑥𝐵 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) )
48 oveq2 ( 𝑥 = ( 𝑤𝑘 ) → ( 𝑛 · 𝑥 ) = ( 𝑛 · ( 𝑤𝑘 ) ) )
49 48 mpteq2dv ( 𝑥 = ( 𝑤𝑘 ) → ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) )
50 49 rneqd ( 𝑥 = ( 𝑤𝑘 ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) )
51 50 eqeq1d ( 𝑥 = ( 𝑤𝑘 ) → ( ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) ↔ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) )
52 51 ac6sfi ( ( dom 𝑠 ∈ Fin ∧ ∀ 𝑘 ∈ dom 𝑠𝑥𝐵 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · 𝑥 ) ) = ( 𝑠𝑘 ) ) → ∃ 𝑤 ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) )
53 11 47 52 syl2anc ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ∃ 𝑤 ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) )
54 simprl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑤 : dom 𝑠𝐵 )
55 9 adantr ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → dom 𝑠 = ( 0 ..^ ( ♯ ‘ 𝑠 ) ) )
56 55 feq2d ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝑤 : dom 𝑠𝐵𝑤 : ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ⟶ 𝐵 ) )
57 54 56 mpbid ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑤 : ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ⟶ 𝐵 )
58 iswrdi ( 𝑤 : ( 0 ..^ ( ♯ ‘ 𝑠 ) ) ⟶ 𝐵𝑤 ∈ Word 𝐵 )
59 57 58 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑤 ∈ Word 𝐵 )
60 54 fdmd ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → dom 𝑤 = dom 𝑠 )
61 60 eleq2d ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝑗 ∈ dom 𝑤𝑗 ∈ dom 𝑠 ) )
62 61 biimpa ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) ∧ 𝑗 ∈ dom 𝑤 ) → 𝑗 ∈ dom 𝑠 )
63 simprr ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) )
64 simpl ( ( 𝑘 = 𝑗𝑛 ∈ ℤ ) → 𝑘 = 𝑗 )
65 64 fveq2d ( ( 𝑘 = 𝑗𝑛 ∈ ℤ ) → ( 𝑤𝑘 ) = ( 𝑤𝑗 ) )
66 65 oveq2d ( ( 𝑘 = 𝑗𝑛 ∈ ℤ ) → ( 𝑛 · ( 𝑤𝑘 ) ) = ( 𝑛 · ( 𝑤𝑗 ) ) )
67 66 mpteq2dva ( 𝑘 = 𝑗 → ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
68 67 rneqd ( 𝑘 = 𝑗 → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
69 fveq2 ( 𝑘 = 𝑗 → ( 𝑠𝑘 ) = ( 𝑠𝑗 ) )
70 68 69 eqeq12d ( 𝑘 = 𝑗 → ( ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ↔ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) = ( 𝑠𝑗 ) ) )
71 70 rspccva ( ( ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ∧ 𝑗 ∈ dom 𝑠 ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) = ( 𝑠𝑗 ) )
72 63 71 sylan ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) ∧ 𝑗 ∈ dom 𝑠 ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) = ( 𝑠𝑗 ) )
73 12 adantr ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑠 : dom 𝑠𝐶 )
74 73 ffvelrnda ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) ∧ 𝑗 ∈ dom 𝑠 ) → ( 𝑠𝑗 ) ∈ 𝐶 )
75 72 74 eqeltrd ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) ∧ 𝑗 ∈ dom 𝑠 ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) ∈ 𝐶 )
76 62 75 syldan ( ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) ∧ 𝑗 ∈ dom 𝑤 ) → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) ∈ 𝐶 )
77 fveq2 ( 𝑘 = 𝑗 → ( 𝑤𝑘 ) = ( 𝑤𝑗 ) )
78 77 oveq2d ( 𝑘 = 𝑗 → ( 𝑛 · ( 𝑤𝑘 ) ) = ( 𝑛 · ( 𝑤𝑗 ) ) )
79 78 mpteq2dv ( 𝑘 = 𝑗 → ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
80 79 rneqd ( 𝑘 = 𝑗 → ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
81 80 cbvmptv ( 𝑘 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) ) = ( 𝑗 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
82 6 81 eqtri 𝑆 = ( 𝑗 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑗 ) ) ) )
83 76 82 fmptd ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑆 : dom 𝑤𝐶 )
84 simprl ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → 𝐺 dom DProd 𝑠 )
85 84 adantr ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝐺 dom DProd 𝑠 )
86 60 raleqdv ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( ∀ 𝑘 ∈ dom 𝑤 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ↔ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) )
87 63 86 mpbird ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ∀ 𝑘 ∈ dom 𝑤 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) )
88 mpteq12 ( ( dom 𝑤 = dom 𝑠 ∧ ∀ 𝑘 ∈ dom 𝑤 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) → ( 𝑘 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) ) = ( 𝑘 ∈ dom 𝑠 ↦ ( 𝑠𝑘 ) ) )
89 60 87 88 syl2anc ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝑘 ∈ dom 𝑤 ↦ ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) ) = ( 𝑘 ∈ dom 𝑠 ↦ ( 𝑠𝑘 ) ) )
90 6 89 eqtrid ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑆 = ( 𝑘 ∈ dom 𝑠 ↦ ( 𝑠𝑘 ) ) )
91 dprdf ( 𝐺 dom DProd 𝑠𝑠 : dom 𝑠 ⟶ ( SubGrp ‘ 𝐺 ) )
92 85 91 syl ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑠 : dom 𝑠 ⟶ ( SubGrp ‘ 𝐺 ) )
93 92 feqmptd ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑠 = ( 𝑘 ∈ dom 𝑠 ↦ ( 𝑠𝑘 ) ) )
94 90 93 eqtr4d ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝑆 = 𝑠 )
95 85 94 breqtrrd ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → 𝐺 dom DProd 𝑆 )
96 94 oveq2d ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝐺 DProd 𝑆 ) = ( 𝐺 DProd 𝑠 ) )
97 simplrr ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝐺 DProd 𝑠 ) = 𝐵 )
98 96 97 eqtrd ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝐺 DProd 𝑆 ) = 𝐵 )
99 83 95 98 3jca ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) )
100 59 99 jca ( ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) ∧ ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) ) → ( 𝑤 ∈ Word 𝐵 ∧ ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ) )
101 100 ex ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ( ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) → ( 𝑤 ∈ Word 𝐵 ∧ ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ) ) )
102 101 eximdv ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ( ∃ 𝑤 ( 𝑤 : dom 𝑠𝐵 ∧ ∀ 𝑘 ∈ dom 𝑠 ran ( 𝑛 ∈ ℤ ↦ ( 𝑛 · ( 𝑤𝑘 ) ) ) = ( 𝑠𝑘 ) ) → ∃ 𝑤 ( 𝑤 ∈ Word 𝐵 ∧ ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ) ) )
103 53 102 mpd ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ∃ 𝑤 ( 𝑤 ∈ Word 𝐵 ∧ ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ) )
104 df-rex ( ∃ 𝑤 ∈ Word 𝐵 ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ↔ ∃ 𝑤 ( 𝑤 ∈ Word 𝐵 ∧ ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) ) )
105 103 104 sylibr ( ( ( 𝜑𝑠 ∈ Word 𝐶 ) ∧ ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) ) → ∃ 𝑤 ∈ Word 𝐵 ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) )
106 1 2 3 4 ablfac ( 𝜑 → ∃ 𝑠 ∈ Word 𝐶 ( 𝐺 dom DProd 𝑠 ∧ ( 𝐺 DProd 𝑠 ) = 𝐵 ) )
107 105 106 r19.29a ( 𝜑 → ∃ 𝑤 ∈ Word 𝐵 ( 𝑆 : dom 𝑤𝐶𝐺 dom DProd 𝑆 ∧ ( 𝐺 DProd 𝑆 ) = 𝐵 ) )