Metamath Proof Explorer


Theorem frgpmhm

Description: The "natural map" from words of the free monoid to their cosets in the free group is a surjective monoid homomorphism. (Contributed by Mario Carneiro, 2-Oct-2015)

Ref Expression
Hypotheses frgpmhm.m 𝑀 = ( freeMnd ‘ ( 𝐼 × 2o ) )
frgpmhm.w 𝑊 = ( Base ‘ 𝑀 )
frgpmhm.g 𝐺 = ( freeGrp ‘ 𝐼 )
frgpmhm.r = ( ~FG𝐼 )
frgpmhm.f 𝐹 = ( 𝑥𝑊 ↦ [ 𝑥 ] )
Assertion frgpmhm ( 𝐼𝑉𝐹 ∈ ( 𝑀 MndHom 𝐺 ) )

Proof

Step Hyp Ref Expression
1 frgpmhm.m 𝑀 = ( freeMnd ‘ ( 𝐼 × 2o ) )
2 frgpmhm.w 𝑊 = ( Base ‘ 𝑀 )
3 frgpmhm.g 𝐺 = ( freeGrp ‘ 𝐼 )
4 frgpmhm.r = ( ~FG𝐼 )
5 frgpmhm.f 𝐹 = ( 𝑥𝑊 ↦ [ 𝑥 ] )
6 2on 2o ∈ On
7 xpexg ( ( 𝐼𝑉 ∧ 2o ∈ On ) → ( 𝐼 × 2o ) ∈ V )
8 6 7 mpan2 ( 𝐼𝑉 → ( 𝐼 × 2o ) ∈ V )
9 1 frmdmnd ( ( 𝐼 × 2o ) ∈ V → 𝑀 ∈ Mnd )
10 8 9 syl ( 𝐼𝑉𝑀 ∈ Mnd )
11 3 frgpgrp ( 𝐼𝑉𝐺 ∈ Grp )
12 grpmnd ( 𝐺 ∈ Grp → 𝐺 ∈ Mnd )
13 11 12 syl ( 𝐼𝑉𝐺 ∈ Mnd )
14 1 2 frmdbas ( ( 𝐼 × 2o ) ∈ V → 𝑊 = Word ( 𝐼 × 2o ) )
15 wrdexg ( ( 𝐼 × 2o ) ∈ V → Word ( 𝐼 × 2o ) ∈ V )
16 fvi ( Word ( 𝐼 × 2o ) ∈ V → ( I ‘ Word ( 𝐼 × 2o ) ) = Word ( 𝐼 × 2o ) )
17 15 16 syl ( ( 𝐼 × 2o ) ∈ V → ( I ‘ Word ( 𝐼 × 2o ) ) = Word ( 𝐼 × 2o ) )
18 14 17 eqtr4d ( ( 𝐼 × 2o ) ∈ V → 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) ) )
19 8 18 syl ( 𝐼𝑉𝑊 = ( I ‘ Word ( 𝐼 × 2o ) ) )
20 19 eleq2d ( 𝐼𝑉 → ( 𝑥𝑊𝑥 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) )
21 20 biimpa ( ( 𝐼𝑉𝑥𝑊 ) → 𝑥 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) )
22 eqid ( I ‘ Word ( 𝐼 × 2o ) ) = ( I ‘ Word ( 𝐼 × 2o ) )
23 eqid ( Base ‘ 𝐺 ) = ( Base ‘ 𝐺 )
24 3 4 22 23 frgpeccl ( 𝑥 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) → [ 𝑥 ] ∈ ( Base ‘ 𝐺 ) )
25 21 24 syl ( ( 𝐼𝑉𝑥𝑊 ) → [ 𝑥 ] ∈ ( Base ‘ 𝐺 ) )
26 25 5 fmptd ( 𝐼𝑉𝐹 : 𝑊 ⟶ ( Base ‘ 𝐺 ) )
27 22 4 efger Er ( I ‘ Word ( 𝐼 × 2o ) )
28 ereq2 ( 𝑊 = ( I ‘ Word ( 𝐼 × 2o ) ) → ( Er 𝑊 Er ( I ‘ Word ( 𝐼 × 2o ) ) ) )
29 19 28 syl ( 𝐼𝑉 → ( Er 𝑊 Er ( I ‘ Word ( 𝐼 × 2o ) ) ) )
30 27 29 mpbiri ( 𝐼𝑉 Er 𝑊 )
31 30 adantr ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → Er 𝑊 )
32 2 fvexi 𝑊 ∈ V
33 32 a1i ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → 𝑊 ∈ V )
34 31 33 5 divsfval ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝐹 ‘ ( 𝑎 ++ 𝑏 ) ) = [ ( 𝑎 ++ 𝑏 ) ] )
35 eqid ( +g𝑀 ) = ( +g𝑀 )
36 1 2 35 frmdadd ( ( 𝑎𝑊𝑏𝑊 ) → ( 𝑎 ( +g𝑀 ) 𝑏 ) = ( 𝑎 ++ 𝑏 ) )
37 36 adantl ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝑎 ( +g𝑀 ) 𝑏 ) = ( 𝑎 ++ 𝑏 ) )
38 37 fveq2d ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝐹 ‘ ( 𝑎 ( +g𝑀 ) 𝑏 ) ) = ( 𝐹 ‘ ( 𝑎 ++ 𝑏 ) ) )
39 31 33 5 divsfval ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝐹𝑎 ) = [ 𝑎 ] )
40 31 33 5 divsfval ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝐹𝑏 ) = [ 𝑏 ] )
41 39 40 oveq12d ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) = ( [ 𝑎 ] ( +g𝐺 ) [ 𝑏 ] ) )
42 19 eleq2d ( 𝐼𝑉 → ( 𝑎𝑊𝑎 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) )
43 19 eleq2d ( 𝐼𝑉 → ( 𝑏𝑊𝑏 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) )
44 42 43 anbi12d ( 𝐼𝑉 → ( ( 𝑎𝑊𝑏𝑊 ) ↔ ( 𝑎 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ∧ 𝑏 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) ) )
45 44 biimpa ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝑎 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ∧ 𝑏 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) )
46 eqid ( +g𝐺 ) = ( +g𝐺 )
47 22 3 4 46 frgpadd ( ( 𝑎 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ∧ 𝑏 ∈ ( I ‘ Word ( 𝐼 × 2o ) ) ) → ( [ 𝑎 ] ( +g𝐺 ) [ 𝑏 ] ) = [ ( 𝑎 ++ 𝑏 ) ] )
48 45 47 syl ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( [ 𝑎 ] ( +g𝐺 ) [ 𝑏 ] ) = [ ( 𝑎 ++ 𝑏 ) ] )
49 41 48 eqtrd ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) = [ ( 𝑎 ++ 𝑏 ) ] )
50 34 38 49 3eqtr4d ( ( 𝐼𝑉 ∧ ( 𝑎𝑊𝑏𝑊 ) ) → ( 𝐹 ‘ ( 𝑎 ( +g𝑀 ) 𝑏 ) ) = ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) )
51 50 ralrimivva ( 𝐼𝑉 → ∀ 𝑎𝑊𝑏𝑊 ( 𝐹 ‘ ( 𝑎 ( +g𝑀 ) 𝑏 ) ) = ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) )
52 32 a1i ( 𝐼𝑉𝑊 ∈ V )
53 30 52 5 divsfval ( 𝐼𝑉 → ( 𝐹 ‘ ∅ ) = [ ∅ ] )
54 3 4 frgp0 ( 𝐼𝑉 → ( 𝐺 ∈ Grp ∧ [ ∅ ] = ( 0g𝐺 ) ) )
55 54 simprd ( 𝐼𝑉 → [ ∅ ] = ( 0g𝐺 ) )
56 53 55 eqtrd ( 𝐼𝑉 → ( 𝐹 ‘ ∅ ) = ( 0g𝐺 ) )
57 26 51 56 3jca ( 𝐼𝑉 → ( 𝐹 : 𝑊 ⟶ ( Base ‘ 𝐺 ) ∧ ∀ 𝑎𝑊𝑏𝑊 ( 𝐹 ‘ ( 𝑎 ( +g𝑀 ) 𝑏 ) ) = ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) ∧ ( 𝐹 ‘ ∅ ) = ( 0g𝐺 ) ) )
58 1 frmd0 ∅ = ( 0g𝑀 )
59 eqid ( 0g𝐺 ) = ( 0g𝐺 )
60 2 23 35 46 58 59 ismhm ( 𝐹 ∈ ( 𝑀 MndHom 𝐺 ) ↔ ( ( 𝑀 ∈ Mnd ∧ 𝐺 ∈ Mnd ) ∧ ( 𝐹 : 𝑊 ⟶ ( Base ‘ 𝐺 ) ∧ ∀ 𝑎𝑊𝑏𝑊 ( 𝐹 ‘ ( 𝑎 ( +g𝑀 ) 𝑏 ) ) = ( ( 𝐹𝑎 ) ( +g𝐺 ) ( 𝐹𝑏 ) ) ∧ ( 𝐹 ‘ ∅ ) = ( 0g𝐺 ) ) ) )
61 10 13 57 60 syl21anbrc ( 𝐼𝑉𝐹 ∈ ( 𝑀 MndHom 𝐺 ) )