Metamath Proof Explorer


Theorem frgpup1

Description: Any assignment of the generators to target elements can be extended (uniquely) to a homomorphism from a free monoid to an arbitrary other monoid. (Contributed by Mario Carneiro, 2-Oct-2015) (Revised by Mario Carneiro, 28-Feb-2016)

Ref Expression
Hypotheses frgpup.b ⊢ B = Base H
frgpup.n ⊢ N = inv g ⁡ H
frgpup.t ⊢ T = y ∈ I , z ∈ 2 𝑜 ⟼ if z = ∅ F ⁡ y N ⁡ F ⁡ y
frgpup.h ⊢ φ → H ∈ Grp
frgpup.i ⊢ φ → I ∈ V
frgpup.a ⊢ φ → F : I ⟶ B
frgpup.w ⊢ W = I ⁡ Word I × 2 𝑜
frgpup.r ⊢ ∼ ˙ = ~ FG ⁡ I
frgpup.g ⊢ G = freeGrp ⁡ I
frgpup.x ⊢ X = Base G
frgpup.e ⊢ E = ran ⁡ g ∈ W ⟼ g ∼ ˙ ∑ H T ∘ g
Assertion frgpup1 ⊢ φ → E ∈ G GrpHom H

Proof

Step Hyp Ref Expression
1 frgpup.b ⊢ B = Base H
2 frgpup.n ⊢ N = inv g ⁡ H
3 frgpup.t ⊢ T = y ∈ I , z ∈ 2 𝑜 ⟼ if z = ∅ F ⁡ y N ⁡ F ⁡ y
4 frgpup.h ⊢ φ → H ∈ Grp
5 frgpup.i ⊢ φ → I ∈ V
6 frgpup.a ⊢ φ → F : I ⟶ B
7 frgpup.w ⊢ W = I ⁡ Word I × 2 𝑜
8 frgpup.r ⊢ ∼ ˙ = ~ FG ⁡ I
9 frgpup.g ⊢ G = freeGrp ⁡ I
10 frgpup.x ⊢ X = Base G
11 frgpup.e ⊢ E = ran ⁡ g ∈ W ⟼ g ∼ ˙ ∑ H T ∘ g
12 eqid ⊢ + G = + G
13 eqid ⊢ + H = + H
14 9 frgpgrp ⊢ I ∈ V → G ∈ Grp
15 5 14 syl ⊢ φ → G ∈ Grp
16 1 2 3 4 5 6 7 8 9 10 11 frgpupf ⊢ φ → E : X ⟶ B
17 eqid ⊢ freeMnd ⁡ I × 2 𝑜 = freeMnd ⁡ I × 2 𝑜
18 9 17 8 frgpval ⊢ I ∈ V → G = freeMnd ⁡ I × 2 𝑜 / 𝑠 ∼ ˙
19 5 18 syl ⊢ φ → G = freeMnd ⁡ I × 2 𝑜 / 𝑠 ∼ ˙
20 2on ⊢ 2 𝑜 ∈ On
21 xpexg ⊢ I ∈ V ∧ 2 𝑜 ∈ On → I × 2 𝑜 ∈ V
22 5 20 21 sylancl ⊢ φ → I × 2 𝑜 ∈ V
23 wrdexg ⊢ I × 2 𝑜 ∈ V → Word I × 2 𝑜 ∈ V
24 fvi ⊢ Word I × 2 𝑜 ∈ V → I ⁡ Word I × 2 𝑜 = Word I × 2 𝑜
25 22 23 24 3syl ⊢ φ → I ⁡ Word I × 2 𝑜 = Word I × 2 𝑜
26 7 25 eqtrid ⊢ φ → W = Word I × 2 𝑜
27 eqid ⊢ Base freeMnd ⁡ I × 2 𝑜 = Base freeMnd ⁡ I × 2 𝑜
28 17 27 frmdbas ⊢ I × 2 𝑜 ∈ V → Base freeMnd ⁡ I × 2 𝑜 = Word I × 2 𝑜
29 22 28 syl ⊢ φ → Base freeMnd ⁡ I × 2 𝑜 = Word I × 2 𝑜
30 26 29 eqtr4d ⊢ φ → W = Base freeMnd ⁡ I × 2 𝑜
31 8 fvexi ⊢ ∼ ˙ ∈ V
32 31 a1i ⊢ φ → ∼ ˙ ∈ V
33 fvexd ⊢ φ → freeMnd ⁡ I × 2 𝑜 ∈ V
34 19 30 32 33 qusbas ⊢ φ → W / ∼ ˙ = Base G
35 10 34 eqtr4id ⊢ φ → X = W / ∼ ˙
36 eqimss ⊢ X = W / ∼ ˙ → X ⊆ W / ∼ ˙
37 35 36 syl ⊢ φ → X ⊆ W / ∼ ˙
38 37 adantr ⊢ φ ∧ a ∈ X → X ⊆ W / ∼ ˙
39 38 sselda ⊢ φ ∧ a ∈ X ∧ c ∈ X → c ∈ W / ∼ ˙
40 eqid ⊢ W / ∼ ˙ = W / ∼ ˙
41 oveq2 ⊢ u ∼ ˙ = c → a + G u ∼ ˙ = a + G c
42 41 fveq2d ⊢ u ∼ ˙ = c → E ⁡ a + G u ∼ ˙ = E ⁡ a + G c
43 fveq2 ⊢ u ∼ ˙ = c → E ⁡ u ∼ ˙ = E ⁡ c
44 43 oveq2d ⊢ u ∼ ˙ = c → E ⁡ a + H E ⁡ u ∼ ˙ = E ⁡ a + H E ⁡ c
45 42 44 eqeq12d ⊢ u ∼ ˙ = c → E ⁡ a + G u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙ ↔ E ⁡ a + G c = E ⁡ a + H E ⁡ c
46 37 sselda ⊢ φ ∧ a ∈ X → a ∈ W / ∼ ˙
47 46 adantlr ⊢ φ ∧ u ∈ W ∧ a ∈ X → a ∈ W / ∼ ˙
48 fvoveq1 ⊢ t ∼ ˙ = a → E ⁡ t ∼ ˙ + G u ∼ ˙ = E ⁡ a + G u ∼ ˙
49 fveq2 ⊢ t ∼ ˙ = a → E ⁡ t ∼ ˙ = E ⁡ a
50 49 oveq1d ⊢ t ∼ ˙ = a → E ⁡ t ∼ ˙ + H E ⁡ u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙
51 48 50 eqeq12d ⊢ t ∼ ˙ = a → E ⁡ t ∼ ˙ + G u ∼ ˙ = E ⁡ t ∼ ˙ + H E ⁡ u ∼ ˙ ↔ E ⁡ a + G u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙
52 fviss ⊢ I ⁡ Word I × 2 𝑜 ⊆ Word I × 2 𝑜
53 7 52 eqsstri ⊢ W ⊆ Word I × 2 𝑜
54 53 sseli ⊢ t ∈ W → t ∈ Word I × 2 𝑜
55 53 sseli ⊢ u ∈ W → u ∈ Word I × 2 𝑜
56 ccatcl ⊢ t ∈ Word I × 2 𝑜 ∧ u ∈ Word I × 2 𝑜 → t ++ u ∈ Word I × 2 𝑜
57 54 55 56 syl2an ⊢ t ∈ W ∧ u ∈ W → t ++ u ∈ Word I × 2 𝑜
58 7 efgrcl ⊢ t ∈ W → I ∈ V ∧ W = Word I × 2 𝑜
59 58 adantr ⊢ t ∈ W ∧ u ∈ W → I ∈ V ∧ W = Word I × 2 𝑜
60 59 simprd ⊢ t ∈ W ∧ u ∈ W → W = Word I × 2 𝑜
61 57 60 eleqtrrd ⊢ t ∈ W ∧ u ∈ W → t ++ u ∈ W
62 1 2 3 4 5 6 7 8 9 10 11 frgpupval ⊢ φ ∧ t ++ u ∈ W → E ⁡ t ++ u ∼ ˙ = ∑ H T ∘ t ++ u
63 61 62 sylan2 ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ++ u ∼ ˙ = ∑ H T ∘ t ++ u
64 54 ad2antrl ⊢ φ ∧ t ∈ W ∧ u ∈ W → t ∈ Word I × 2 𝑜
65 55 ad2antll ⊢ φ ∧ t ∈ W ∧ u ∈ W → u ∈ Word I × 2 𝑜
66 1 2 3 4 5 6 frgpuptf ⊢ φ → T : I × 2 𝑜 ⟶ B
67 66 adantr ⊢ φ ∧ t ∈ W ∧ u ∈ W → T : I × 2 𝑜 ⟶ B
68 ccatco ⊢ t ∈ Word I × 2 𝑜 ∧ u ∈ Word I × 2 𝑜 ∧ T : I × 2 𝑜 ⟶ B → T ∘ t ++ u = T ∘ t ++ T ∘ u
69 64 65 67 68 syl3anc ⊢ φ ∧ t ∈ W ∧ u ∈ W → T ∘ t ++ u = T ∘ t ++ T ∘ u
70 69 oveq2d ⊢ φ ∧ t ∈ W ∧ u ∈ W → ∑ H T ∘ t ++ u = ∑ H T ∘ t ++ T ∘ u
71 4 grpmndd ⊢ φ → H ∈ Mnd
72 71 adantr ⊢ φ ∧ t ∈ W ∧ u ∈ W → H ∈ Mnd
73 wrdco ⊢ t ∈ Word I × 2 𝑜 ∧ T : I × 2 𝑜 ⟶ B → T ∘ t ∈ Word B
74 54 66 73 syl2anr ⊢ φ ∧ t ∈ W → T ∘ t ∈ Word B
75 74 adantrr ⊢ φ ∧ t ∈ W ∧ u ∈ W → T ∘ t ∈ Word B
76 wrdco ⊢ u ∈ Word I × 2 𝑜 ∧ T : I × 2 𝑜 ⟶ B → T ∘ u ∈ Word B
77 65 67 76 syl2anc ⊢ φ ∧ t ∈ W ∧ u ∈ W → T ∘ u ∈ Word B
78 1 13 gsumccat ⊢ H ∈ Mnd ∧ T ∘ t ∈ Word B ∧ T ∘ u ∈ Word B → ∑ H T ∘ t ++ T ∘ u = ∑ H T ∘ t + H ∑ H T ∘ u
79 72 75 77 78 syl3anc ⊢ φ ∧ t ∈ W ∧ u ∈ W → ∑ H T ∘ t ++ T ∘ u = ∑ H T ∘ t + H ∑ H T ∘ u
80 63 70 79 3eqtrd ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ++ u ∼ ˙ = ∑ H T ∘ t + H ∑ H T ∘ u
81 7 9 8 12 frgpadd ⊢ t ∈ W ∧ u ∈ W → t ∼ ˙ + G u ∼ ˙ = t ++ u ∼ ˙
82 81 adantl ⊢ φ ∧ t ∈ W ∧ u ∈ W → t ∼ ˙ + G u ∼ ˙ = t ++ u ∼ ˙
83 82 fveq2d ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ∼ ˙ + G u ∼ ˙ = E ⁡ t ++ u ∼ ˙
84 1 2 3 4 5 6 7 8 9 10 11 frgpupval ⊢ φ ∧ t ∈ W → E ⁡ t ∼ ˙ = ∑ H T ∘ t
85 84 adantrr ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ∼ ˙ = ∑ H T ∘ t
86 1 2 3 4 5 6 7 8 9 10 11 frgpupval ⊢ φ ∧ u ∈ W → E ⁡ u ∼ ˙ = ∑ H T ∘ u
87 86 adantrl ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ u ∼ ˙ = ∑ H T ∘ u
88 85 87 oveq12d ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ∼ ˙ + H E ⁡ u ∼ ˙ = ∑ H T ∘ t + H ∑ H T ∘ u
89 80 83 88 3eqtr4d ⊢ φ ∧ t ∈ W ∧ u ∈ W → E ⁡ t ∼ ˙ + G u ∼ ˙ = E ⁡ t ∼ ˙ + H E ⁡ u ∼ ˙
90 89 anass1rs ⊢ φ ∧ u ∈ W ∧ t ∈ W → E ⁡ t ∼ ˙ + G u ∼ ˙ = E ⁡ t ∼ ˙ + H E ⁡ u ∼ ˙
91 40 51 90 ectocld ⊢ φ ∧ u ∈ W ∧ a ∈ W / ∼ ˙ → E ⁡ a + G u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙
92 47 91 syldan ⊢ φ ∧ u ∈ W ∧ a ∈ X → E ⁡ a + G u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙
93 92 an32s ⊢ φ ∧ a ∈ X ∧ u ∈ W → E ⁡ a + G u ∼ ˙ = E ⁡ a + H E ⁡ u ∼ ˙
94 40 45 93 ectocld ⊢ φ ∧ a ∈ X ∧ c ∈ W / ∼ ˙ → E ⁡ a + G c = E ⁡ a + H E ⁡ c
95 39 94 syldan ⊢ φ ∧ a ∈ X ∧ c ∈ X → E ⁡ a + G c = E ⁡ a + H E ⁡ c
96 95 anasss ⊢ φ ∧ a ∈ X ∧ c ∈ X → E ⁡ a + G c = E ⁡ a + H E ⁡ c
97 10 1 12 13 15 4 16 96 isghmd ⊢ φ → E ∈ G GrpHom H