Metamath Proof Explorer


Theorem frgpup3lem

Description: The evaluation map has the intended behavior on the generators. (Contributed by Mario Carneiro, 2-Oct-2015) (Revised by Mario Carneiro, 28-Feb-2016)

Ref Expression
Hypotheses frgpup.b 𝐵 = ( Base ‘ 𝐻 )
frgpup.n 𝑁 = ( invg𝐻 )
frgpup.t 𝑇 = ( 𝑦𝐼 , 𝑧 ∈ 2o ↦ if ( 𝑧 = ∅ , ( 𝐹𝑦 ) , ( 𝑁 ‘ ( 𝐹𝑦 ) ) ) )
frgpup.h ( 𝜑𝐻 ∈ Grp )
frgpup.i ( 𝜑𝐼𝑉 )
frgpup.a ( 𝜑𝐹 : 𝐼𝐵 )
frgpup.w 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) )
frgpup.r = ( ~FG𝐼 )
frgpup.g 𝐺 = ( freeGrp ‘ 𝐼 )
frgpup.x 𝑋 = ( Base ‘ 𝐺 )
frgpup.e 𝐸 = ran ( 𝑔𝑊 ↦ ⟨ [ 𝑔 ] , ( 𝐻 Σg ( 𝑇𝑔 ) ) ⟩ )
frgpup.u 𝑈 = ( varFGrp𝐼 )
frgpup3.k ( 𝜑𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) )
frgpup3.e ( 𝜑 → ( 𝐾𝑈 ) = 𝐹 )
Assertion frgpup3lem ( 𝜑𝐾 = 𝐸 )

Proof

Step Hyp Ref Expression
1 frgpup.b 𝐵 = ( Base ‘ 𝐻 )
2 frgpup.n 𝑁 = ( invg𝐻 )
3 frgpup.t 𝑇 = ( 𝑦𝐼 , 𝑧 ∈ 2o ↦ if ( 𝑧 = ∅ , ( 𝐹𝑦 ) , ( 𝑁 ‘ ( 𝐹𝑦 ) ) ) )
4 frgpup.h ( 𝜑𝐻 ∈ Grp )
5 frgpup.i ( 𝜑𝐼𝑉 )
6 frgpup.a ( 𝜑𝐹 : 𝐼𝐵 )
7 frgpup.w 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) )
8 frgpup.r = ( ~FG𝐼 )
9 frgpup.g 𝐺 = ( freeGrp ‘ 𝐼 )
10 frgpup.x 𝑋 = ( Base ‘ 𝐺 )
11 frgpup.e 𝐸 = ran ( 𝑔𝑊 ↦ ⟨ [ 𝑔 ] , ( 𝐻 Σg ( 𝑇𝑔 ) ) ⟩ )
12 frgpup.u 𝑈 = ( varFGrp𝐼 )
13 frgpup3.k ( 𝜑𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) )
14 frgpup3.e ( 𝜑 → ( 𝐾𝑈 ) = 𝐹 )
15 10 1 ghmf ( 𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) → 𝐾 : 𝑋𝐵 )
16 ffn ( 𝐾 : 𝑋𝐵𝐾 Fn 𝑋 )
17 13 15 16 3syl ( 𝜑𝐾 Fn 𝑋 )
18 1 2 3 4 5 6 7 8 9 10 11 frgpup1 ( 𝜑𝐸 ∈ ( 𝐺 GrpHom 𝐻 ) )
19 10 1 ghmf ( 𝐸 ∈ ( 𝐺 GrpHom 𝐻 ) → 𝐸 : 𝑋𝐵 )
20 ffn ( 𝐸 : 𝑋𝐵𝐸 Fn 𝑋 )
21 18 19 20 3syl ( 𝜑𝐸 Fn 𝑋 )
22 eqid ( freeMnd ‘ ( 𝐼 × 2o ) ) = ( freeMnd ‘ ( 𝐼 × 2o ) )
23 9 22 8 frgpval ( 𝐼𝑉𝐺 = ( ( freeMnd ‘ ( 𝐼 × 2o ) ) /s ) )
24 5 23 syl ( 𝜑𝐺 = ( ( freeMnd ‘ ( 𝐼 × 2o ) ) /s ) )
25 2on 2o ∈ On
26 xpexg ( ( 𝐼𝑉 ∧ 2o ∈ On ) → ( 𝐼 × 2o ) ∈ V )
27 5 25 26 sylancl ( 𝜑 → ( 𝐼 × 2o ) ∈ V )
28 wrdexg ( ( 𝐼 × 2o ) ∈ V → Word ( 𝐼 × 2o ) ∈ V )
29 fvi ( Word ( 𝐼 × 2o ) ∈ V → ( I ‘ Word ( 𝐼 × 2o ) ) = Word ( 𝐼 × 2o ) )
30 27 28 29 3syl ( 𝜑 → ( I ‘ Word ( 𝐼 × 2o ) ) = Word ( 𝐼 × 2o ) )
31 7 30 syl5eq ( 𝜑𝑊 = Word ( 𝐼 × 2o ) )
32 eqid ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) )
33 22 32 frmdbas ( ( 𝐼 × 2o ) ∈ V → ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word ( 𝐼 × 2o ) )
34 27 33 syl ( 𝜑 → ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word ( 𝐼 × 2o ) )
35 31 34 eqtr4d ( 𝜑𝑊 = ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) )
36 8 fvexi ∈ V
37 36 a1i ( 𝜑 ∈ V )
38 fvexd ( 𝜑 → ( freeMnd ‘ ( 𝐼 × 2o ) ) ∈ V )
39 24 35 37 38 qusbas ( 𝜑 → ( 𝑊 / ) = ( Base ‘ 𝐺 ) )
40 10 39 eqtr4id ( 𝜑𝑋 = ( 𝑊 / ) )
41 eqimss ( 𝑋 = ( 𝑊 / ) → 𝑋 ⊆ ( 𝑊 / ) )
42 40 41 syl ( 𝜑𝑋 ⊆ ( 𝑊 / ) )
43 42 sselda ( ( 𝜑𝑎𝑋 ) → 𝑎 ∈ ( 𝑊 / ) )
44 eqid ( 𝑊 / ) = ( 𝑊 / )
45 fveq2 ( [ 𝑡 ] = 𝑎 → ( 𝐾 ‘ [ 𝑡 ] ) = ( 𝐾𝑎 ) )
46 fveq2 ( [ 𝑡 ] = 𝑎 → ( 𝐸 ‘ [ 𝑡 ] ) = ( 𝐸𝑎 ) )
47 45 46 eqeq12d ( [ 𝑡 ] = 𝑎 → ( ( 𝐾 ‘ [ 𝑡 ] ) = ( 𝐸 ‘ [ 𝑡 ] ) ↔ ( 𝐾𝑎 ) = ( 𝐸𝑎 ) ) )
48 simpr ( ( 𝜑𝑡𝑊 ) → 𝑡𝑊 )
49 31 adantr ( ( 𝜑𝑡𝑊 ) → 𝑊 = Word ( 𝐼 × 2o ) )
50 48 49 eleqtrd ( ( 𝜑𝑡𝑊 ) → 𝑡 ∈ Word ( 𝐼 × 2o ) )
51 wrdf ( 𝑡 ∈ Word ( 𝐼 × 2o ) → 𝑡 : ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ⟶ ( 𝐼 × 2o ) )
52 50 51 syl ( ( 𝜑𝑡𝑊 ) → 𝑡 : ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ⟶ ( 𝐼 × 2o ) )
53 52 ffvelrnda ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ( 𝑡𝑛 ) ∈ ( 𝐼 × 2o ) )
54 elxp2 ( ( 𝑡𝑛 ) ∈ ( 𝐼 × 2o ) ↔ ∃ 𝑖𝐼𝑗 ∈ 2o ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ )
55 53 54 sylib ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ∃ 𝑖𝐼𝑗 ∈ 2o ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ )
56 fveq2 ( 𝑦 = 𝑖 → ( 𝐹𝑦 ) = ( 𝐹𝑖 ) )
57 56 fveq2d ( 𝑦 = 𝑖 → ( 𝑁 ‘ ( 𝐹𝑦 ) ) = ( 𝑁 ‘ ( 𝐹𝑖 ) ) )
58 56 57 ifeq12d ( 𝑦 = 𝑖 → if ( 𝑧 = ∅ , ( 𝐹𝑦 ) , ( 𝑁 ‘ ( 𝐹𝑦 ) ) ) = if ( 𝑧 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) )
59 eqeq1 ( 𝑧 = 𝑗 → ( 𝑧 = ∅ ↔ 𝑗 = ∅ ) )
60 59 ifbid ( 𝑧 = 𝑗 → if ( 𝑧 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) )
61 fvex ( 𝐹𝑖 ) ∈ V
62 fvex ( 𝑁 ‘ ( 𝐹𝑖 ) ) ∈ V
63 61 62 ifex if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) ∈ V
64 58 60 3 63 ovmpo ( ( 𝑖𝐼𝑗 ∈ 2o ) → ( 𝑖 𝑇 𝑗 ) = if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) )
65 64 adantl ( ( 𝜑 ∧ ( 𝑖𝐼𝑗 ∈ 2o ) ) → ( 𝑖 𝑇 𝑗 ) = if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) )
66 elpri ( 𝑗 ∈ { ∅ , 1o } → ( 𝑗 = ∅ ∨ 𝑗 = 1o ) )
67 df2o3 2o = { ∅ , 1o }
68 66 67 eleq2s ( 𝑗 ∈ 2o → ( 𝑗 = ∅ ∨ 𝑗 = 1o ) )
69 14 adantr ( ( 𝜑𝑖𝐼 ) → ( 𝐾𝑈 ) = 𝐹 )
70 69 fveq1d ( ( 𝜑𝑖𝐼 ) → ( ( 𝐾𝑈 ) ‘ 𝑖 ) = ( 𝐹𝑖 ) )
71 8 12 9 10 vrgpf ( 𝐼𝑉𝑈 : 𝐼𝑋 )
72 5 71 syl ( 𝜑𝑈 : 𝐼𝑋 )
73 fvco3 ( ( 𝑈 : 𝐼𝑋𝑖𝐼 ) → ( ( 𝐾𝑈 ) ‘ 𝑖 ) = ( 𝐾 ‘ ( 𝑈𝑖 ) ) )
74 72 73 sylan ( ( 𝜑𝑖𝐼 ) → ( ( 𝐾𝑈 ) ‘ 𝑖 ) = ( 𝐾 ‘ ( 𝑈𝑖 ) ) )
75 70 74 eqtr3d ( ( 𝜑𝑖𝐼 ) → ( 𝐹𝑖 ) = ( 𝐾 ‘ ( 𝑈𝑖 ) ) )
76 75 adantr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → ( 𝐹𝑖 ) = ( 𝐾 ‘ ( 𝑈𝑖 ) ) )
77 iftrue ( 𝑗 = ∅ → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐹𝑖 ) )
78 77 adantl ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐹𝑖 ) )
79 simpr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → 𝑗 = ∅ )
80 79 opeq2d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → ⟨ 𝑖 , 𝑗 ⟩ = ⟨ 𝑖 , ∅ ⟩ )
81 80 s1eqd ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ = ⟨“ ⟨ 𝑖 , ∅ ⟩ ”⟩ )
82 81 eceq1d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] = [ ⟨“ ⟨ 𝑖 , ∅ ⟩ ”⟩ ] )
83 8 12 vrgpval ( ( 𝐼𝑉𝑖𝐼 ) → ( 𝑈𝑖 ) = [ ⟨“ ⟨ 𝑖 , ∅ ⟩ ”⟩ ] )
84 5 83 sylan ( ( 𝜑𝑖𝐼 ) → ( 𝑈𝑖 ) = [ ⟨“ ⟨ 𝑖 , ∅ ⟩ ”⟩ ] )
85 84 adantr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → ( 𝑈𝑖 ) = [ ⟨“ ⟨ 𝑖 , ∅ ⟩ ”⟩ ] )
86 82 85 eqtr4d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] = ( 𝑈𝑖 ) )
87 86 fveq2d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) = ( 𝐾 ‘ ( 𝑈𝑖 ) ) )
88 76 78 87 3eqtr4d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = ∅ ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
89 75 fveq2d ( ( 𝜑𝑖𝐼 ) → ( 𝑁 ‘ ( 𝐹𝑖 ) ) = ( 𝑁 ‘ ( 𝐾 ‘ ( 𝑈𝑖 ) ) ) )
90 72 ffvelrnda ( ( 𝜑𝑖𝐼 ) → ( 𝑈𝑖 ) ∈ 𝑋 )
91 eqid ( invg𝐺 ) = ( invg𝐺 )
92 10 91 2 ghminv ( ( 𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) ∧ ( 𝑈𝑖 ) ∈ 𝑋 ) → ( 𝐾 ‘ ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) ) = ( 𝑁 ‘ ( 𝐾 ‘ ( 𝑈𝑖 ) ) ) )
93 13 90 92 syl2an2r ( ( 𝜑𝑖𝐼 ) → ( 𝐾 ‘ ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) ) = ( 𝑁 ‘ ( 𝐾 ‘ ( 𝑈𝑖 ) ) ) )
94 89 93 eqtr4d ( ( 𝜑𝑖𝐼 ) → ( 𝑁 ‘ ( 𝐹𝑖 ) ) = ( 𝐾 ‘ ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) ) )
95 94 adantr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ( 𝑁 ‘ ( 𝐹𝑖 ) ) = ( 𝐾 ‘ ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) ) )
96 1n0 1o ≠ ∅
97 simpr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → 𝑗 = 1o )
98 97 neeq1d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ( 𝑗 ≠ ∅ ↔ 1o ≠ ∅ ) )
99 96 98 mpbiri ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → 𝑗 ≠ ∅ )
100 ifnefalse ( 𝑗 ≠ ∅ → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝑁 ‘ ( 𝐹𝑖 ) ) )
101 99 100 syl ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝑁 ‘ ( 𝐹𝑖 ) ) )
102 97 opeq2d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ⟨ 𝑖 , 𝑗 ⟩ = ⟨ 𝑖 , 1o ⟩ )
103 102 s1eqd ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ = ⟨“ ⟨ 𝑖 , 1o ⟩ ”⟩ )
104 103 eceq1d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] = [ ⟨“ ⟨ 𝑖 , 1o ⟩ ”⟩ ] )
105 8 12 9 91 vrgpinv ( ( 𝐼𝑉𝑖𝐼 ) → ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) = [ ⟨“ ⟨ 𝑖 , 1o ⟩ ”⟩ ] )
106 5 105 sylan ( ( 𝜑𝑖𝐼 ) → ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) = [ ⟨“ ⟨ 𝑖 , 1o ⟩ ”⟩ ] )
107 106 adantr ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) = [ ⟨“ ⟨ 𝑖 , 1o ⟩ ”⟩ ] )
108 104 107 eqtr4d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] = ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) )
109 108 fveq2d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) = ( 𝐾 ‘ ( ( invg𝐺 ) ‘ ( 𝑈𝑖 ) ) ) )
110 95 101 109 3eqtr4d ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 = 1o ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
111 88 110 jaodan ( ( ( 𝜑𝑖𝐼 ) ∧ ( 𝑗 = ∅ ∨ 𝑗 = 1o ) ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
112 68 111 sylan2 ( ( ( 𝜑𝑖𝐼 ) ∧ 𝑗 ∈ 2o ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
113 112 anasss ( ( 𝜑 ∧ ( 𝑖𝐼𝑗 ∈ 2o ) ) → if ( 𝑗 = ∅ , ( 𝐹𝑖 ) , ( 𝑁 ‘ ( 𝐹𝑖 ) ) ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
114 65 113 eqtrd ( ( 𝜑 ∧ ( 𝑖𝐼𝑗 ∈ 2o ) ) → ( 𝑖 𝑇 𝑗 ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
115 fveq2 ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝑇 ‘ ⟨ 𝑖 , 𝑗 ⟩ ) )
116 df-ov ( 𝑖 𝑇 𝑗 ) = ( 𝑇 ‘ ⟨ 𝑖 , 𝑗 ⟩ )
117 115 116 eqtr4di ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝑖 𝑇 𝑗 ) )
118 s1eq ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ⟨“ ( 𝑡𝑛 ) ”⟩ = ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ )
119 118 eceq1d ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] = [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] )
120 119 fveq2d ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) )
121 117 120 eqeq12d ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ↔ ( 𝑖 𝑇 𝑗 ) = ( 𝐾 ‘ [ ⟨“ ⟨ 𝑖 , 𝑗 ⟩ ”⟩ ] ) ) )
122 114 121 syl5ibrcom ( ( 𝜑 ∧ ( 𝑖𝐼𝑗 ∈ 2o ) ) → ( ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ) )
123 122 rexlimdvva ( 𝜑 → ( ∃ 𝑖𝐼𝑗 ∈ 2o ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ) )
124 123 ad2antrr ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ( ∃ 𝑖𝐼𝑗 ∈ 2o ( 𝑡𝑛 ) = ⟨ 𝑖 , 𝑗 ⟩ → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ) )
125 55 124 mpd ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ( 𝑇 ‘ ( 𝑡𝑛 ) ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) )
126 125 mpteq2dva ( ( 𝜑𝑡𝑊 ) → ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝑇 ‘ ( 𝑡𝑛 ) ) ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ) )
127 1 2 3 4 5 6 frgpuptf ( 𝜑𝑇 : ( 𝐼 × 2o ) ⟶ 𝐵 )
128 fcompt ( ( 𝑇 : ( 𝐼 × 2o ) ⟶ 𝐵𝑡 : ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ⟶ ( 𝐼 × 2o ) ) → ( 𝑇𝑡 ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝑇 ‘ ( 𝑡𝑛 ) ) ) )
129 127 52 128 syl2an2r ( ( 𝜑𝑡𝑊 ) → ( 𝑇𝑡 ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝑇 ‘ ( 𝑡𝑛 ) ) ) )
130 53 s1cld ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ⟨“ ( 𝑡𝑛 ) ”⟩ ∈ Word ( 𝐼 × 2o ) )
131 31 ad2antrr ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → 𝑊 = Word ( 𝐼 × 2o ) )
132 130 131 eleqtrrd ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → ⟨“ ( 𝑡𝑛 ) ”⟩ ∈ 𝑊 )
133 9 8 7 10 frgpeccl ( ⟨“ ( 𝑡𝑛 ) ”⟩ ∈ 𝑊 → [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] 𝑋 )
134 132 133 syl ( ( ( 𝜑𝑡𝑊 ) ∧ 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ) → [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] 𝑋 )
135 52 feqmptd ( ( 𝜑𝑡𝑊 ) → 𝑡 = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝑡𝑛 ) ) )
136 5 adantr ( ( 𝜑𝑡𝑊 ) → 𝐼𝑉 )
137 136 25 26 sylancl ( ( 𝜑𝑡𝑊 ) → ( 𝐼 × 2o ) ∈ V )
138 eqid ( varFMnd ‘ ( 𝐼 × 2o ) ) = ( varFMnd ‘ ( 𝐼 × 2o ) )
139 138 vrmdfval ( ( 𝐼 × 2o ) ∈ V → ( varFMnd ‘ ( 𝐼 × 2o ) ) = ( 𝑤 ∈ ( 𝐼 × 2o ) ↦ ⟨“ 𝑤 ”⟩ ) )
140 137 139 syl ( ( 𝜑𝑡𝑊 ) → ( varFMnd ‘ ( 𝐼 × 2o ) ) = ( 𝑤 ∈ ( 𝐼 × 2o ) ↦ ⟨“ 𝑤 ”⟩ ) )
141 s1eq ( 𝑤 = ( 𝑡𝑛 ) → ⟨“ 𝑤 ”⟩ = ⟨“ ( 𝑡𝑛 ) ”⟩ )
142 53 135 140 141 fmptco ( ( 𝜑𝑡𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ⟨“ ( 𝑡𝑛 ) ”⟩ ) )
143 eqidd ( ( 𝜑𝑡𝑊 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) = ( 𝑤𝑊 ↦ [ 𝑤 ] ) )
144 eceq1 ( 𝑤 = ⟨“ ( 𝑡𝑛 ) ”⟩ → [ 𝑤 ] = [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] )
145 132 142 143 144 fmptco ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) )
146 13 adantr ( ( 𝜑𝑡𝑊 ) → 𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) )
147 146 15 syl ( ( 𝜑𝑡𝑊 ) → 𝐾 : 𝑋𝐵 )
148 147 feqmptd ( ( 𝜑𝑡𝑊 ) → 𝐾 = ( 𝑤𝑋 ↦ ( 𝐾𝑤 ) ) )
149 fveq2 ( 𝑤 = [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] → ( 𝐾𝑤 ) = ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) )
150 134 145 148 149 fmptco ( ( 𝜑𝑡𝑊 ) → ( 𝐾 ∘ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) = ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑡 ) ) ↦ ( 𝐾 ‘ [ ⟨“ ( 𝑡𝑛 ) ”⟩ ] ) ) )
151 126 129 150 3eqtr4d ( ( 𝜑𝑡𝑊 ) → ( 𝑇𝑡 ) = ( 𝐾 ∘ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) )
152 151 oveq2d ( ( 𝜑𝑡𝑊 ) → ( 𝐻 Σg ( 𝑇𝑡 ) ) = ( 𝐻 Σg ( 𝐾 ∘ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) )
153 1 2 3 4 5 6 7 8 9 10 11 frgpupval ( ( 𝜑𝑡𝑊 ) → ( 𝐸 ‘ [ 𝑡 ] ) = ( 𝐻 Σg ( 𝑇𝑡 ) ) )
154 ghmmhm ( 𝐾 ∈ ( 𝐺 GrpHom 𝐻 ) → 𝐾 ∈ ( 𝐺 MndHom 𝐻 ) )
155 146 154 syl ( ( 𝜑𝑡𝑊 ) → 𝐾 ∈ ( 𝐺 MndHom 𝐻 ) )
156 138 vrmdf ( ( 𝐼 × 2o ) ∈ V → ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ Word ( 𝐼 × 2o ) )
157 137 156 syl ( ( 𝜑𝑡𝑊 ) → ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ Word ( 𝐼 × 2o ) )
158 49 feq3d ( ( 𝜑𝑡𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ 𝑊 ↔ ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ Word ( 𝐼 × 2o ) ) )
159 157 158 mpbird ( ( 𝜑𝑡𝑊 ) → ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ 𝑊 )
160 wrdco ( ( 𝑡 ∈ Word ( 𝐼 × 2o ) ∧ ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ 𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word 𝑊 )
161 50 159 160 syl2anc ( ( 𝜑𝑡𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word 𝑊 )
162 35 adantr ( ( 𝜑𝑡𝑊 ) → 𝑊 = ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) )
163 162 mpteq1d ( ( 𝜑𝑡𝑊 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) = ( 𝑤 ∈ ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ↦ [ 𝑤 ] ) )
164 eqid ( 𝑤 ∈ ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ↦ [ 𝑤 ] ) = ( 𝑤 ∈ ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ↦ [ 𝑤 ] )
165 22 32 9 8 164 frgpmhm ( 𝐼𝑉 → ( 𝑤 ∈ ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ↦ [ 𝑤 ] ) ∈ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) MndHom 𝐺 ) )
166 136 165 syl ( ( 𝜑𝑡𝑊 ) → ( 𝑤 ∈ ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ↦ [ 𝑤 ] ) ∈ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) MndHom 𝐺 ) )
167 163 166 eqeltrd ( ( 𝜑𝑡𝑊 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∈ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) MndHom 𝐺 ) )
168 32 10 mhmf ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∈ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) MndHom 𝐺 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) : ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ⟶ 𝑋 )
169 167 168 syl ( ( 𝜑𝑡𝑊 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) : ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ⟶ 𝑋 )
170 162 feq2d ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) : 𝑊𝑋 ↔ ( 𝑤𝑊 ↦ [ 𝑤 ] ) : ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ⟶ 𝑋 ) )
171 169 170 mpbird ( ( 𝜑𝑡𝑊 ) → ( 𝑤𝑊 ↦ [ 𝑤 ] ) : 𝑊𝑋 )
172 wrdco ( ( ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word 𝑊 ∧ ( 𝑤𝑊 ↦ [ 𝑤 ] ) : 𝑊𝑋 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ∈ Word 𝑋 )
173 161 171 172 syl2anc ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ∈ Word 𝑋 )
174 10 gsumwmhm ( ( 𝐾 ∈ ( 𝐺 MndHom 𝐻 ) ∧ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ∈ Word 𝑋 ) → ( 𝐾 ‘ ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) = ( 𝐻 Σg ( 𝐾 ∘ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) )
175 155 173 174 syl2anc ( ( 𝜑𝑡𝑊 ) → ( 𝐾 ‘ ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) = ( 𝐻 Σg ( 𝐾 ∘ ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) )
176 152 153 175 3eqtr4d ( ( 𝜑𝑡𝑊 ) → ( 𝐸 ‘ [ 𝑡 ] ) = ( 𝐾 ‘ ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) )
177 22 138 frmdgsum ( ( ( 𝐼 × 2o ) ∈ V ∧ 𝑡 ∈ Word ( 𝐼 × 2o ) ) → ( ( freeMnd ‘ ( 𝐼 × 2o ) ) Σg ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) = 𝑡 )
178 27 50 177 syl2an2r ( ( 𝜑𝑡𝑊 ) → ( ( freeMnd ‘ ( 𝐼 × 2o ) ) Σg ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) = 𝑡 )
179 178 fveq2d ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ‘ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) Σg ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) = ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ‘ 𝑡 ) )
180 wrdco ( ( 𝑡 ∈ Word ( 𝐼 × 2o ) ∧ ( varFMnd ‘ ( 𝐼 × 2o ) ) : ( 𝐼 × 2o ) ⟶ Word ( 𝐼 × 2o ) ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word Word ( 𝐼 × 2o ) )
181 50 157 180 syl2anc ( ( 𝜑𝑡𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word Word ( 𝐼 × 2o ) )
182 34 adantr ( ( 𝜑𝑡𝑊 ) → ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word ( 𝐼 × 2o ) )
183 wrdeq ( ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word ( 𝐼 × 2o ) → Word ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word Word ( 𝐼 × 2o ) )
184 182 183 syl ( ( 𝜑𝑡𝑊 ) → Word ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) = Word Word ( 𝐼 × 2o ) )
185 181 184 eleqtrrd ( ( 𝜑𝑡𝑊 ) → ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) )
186 32 gsumwmhm ( ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∈ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) MndHom 𝐺 ) ∧ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ∈ Word ( Base ‘ ( freeMnd ‘ ( 𝐼 × 2o ) ) ) ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ‘ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) Σg ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) = ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) )
187 167 185 186 syl2anc ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ‘ ( ( freeMnd ‘ ( 𝐼 × 2o ) ) Σg ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) = ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) )
188 7 8 efger Er 𝑊
189 188 a1i ( ( 𝜑𝑡𝑊 ) → Er 𝑊 )
190 7 fvexi 𝑊 ∈ V
191 190 a1i ( ( 𝜑𝑡𝑊 ) → 𝑊 ∈ V )
192 eqid ( 𝑤𝑊 ↦ [ 𝑤 ] ) = ( 𝑤𝑊 ↦ [ 𝑤 ] )
193 189 191 192 divsfval ( ( 𝜑𝑡𝑊 ) → ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ‘ 𝑡 ) = [ 𝑡 ] )
194 179 187 193 3eqtr3d ( ( 𝜑𝑡𝑊 ) → ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) = [ 𝑡 ] )
195 194 fveq2d ( ( 𝜑𝑡𝑊 ) → ( 𝐾 ‘ ( 𝐺 Σg ( ( 𝑤𝑊 ↦ [ 𝑤 ] ) ∘ ( ( varFMnd ‘ ( 𝐼 × 2o ) ) ∘ 𝑡 ) ) ) ) = ( 𝐾 ‘ [ 𝑡 ] ) )
196 176 195 eqtr2d ( ( 𝜑𝑡𝑊 ) → ( 𝐾 ‘ [ 𝑡 ] ) = ( 𝐸 ‘ [ 𝑡 ] ) )
197 44 47 196 ectocld ( ( 𝜑𝑎 ∈ ( 𝑊 / ) ) → ( 𝐾𝑎 ) = ( 𝐸𝑎 ) )
198 43 197 syldan ( ( 𝜑𝑎𝑋 ) → ( 𝐾𝑎 ) = ( 𝐸𝑎 ) )
199 17 21 198 eqfnfvd ( 𝜑𝐾 = 𝐸 )