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)
Ref | Expression | ||
---|---|---|---|
Hypotheses | frgpup.b | |- B = ( Base ` H ) |
|
frgpup.n | |- N = ( invg ` H ) |
||
frgpup.t | |- T = ( y e. I , z e. 2o |-> if ( z = (/) , ( F ` y ) , ( N ` ( F ` y ) ) ) ) |
||
frgpup.h | |- ( ph -> H e. Grp ) |
||
frgpup.i | |- ( ph -> I e. V ) |
||
frgpup.a | |- ( ph -> F : I --> B ) |
||
frgpup.w | |- W = ( _I ` Word ( I X. 2o ) ) |
||
frgpup.r | |- .~ = ( ~FG ` I ) |
||
frgpup.g | |- G = ( freeGrp ` I ) |
||
frgpup.x | |- X = ( Base ` G ) |
||
frgpup.e | |- E = ran ( g e. W |-> <. [ g ] .~ , ( H gsum ( T o. g ) ) >. ) |
||
Assertion | frgpupval | |- ( ( ph /\ A e. W ) -> ( E ` [ A ] .~ ) = ( H gsum ( T o. A ) ) ) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | frgpup.b | |- B = ( Base ` H ) |
|
2 | frgpup.n | |- N = ( invg ` H ) |
|
3 | frgpup.t | |- T = ( y e. I , z e. 2o |-> if ( z = (/) , ( F ` y ) , ( N ` ( F ` y ) ) ) ) |
|
4 | frgpup.h | |- ( ph -> H e. Grp ) |
|
5 | frgpup.i | |- ( ph -> I e. V ) |
|
6 | frgpup.a | |- ( ph -> F : I --> B ) |
|
7 | frgpup.w | |- W = ( _I ` Word ( I X. 2o ) ) |
|
8 | frgpup.r | |- .~ = ( ~FG ` I ) |
|
9 | frgpup.g | |- G = ( freeGrp ` I ) |
|
10 | frgpup.x | |- X = ( Base ` G ) |
|
11 | frgpup.e | |- E = ran ( g e. W |-> <. [ g ] .~ , ( H gsum ( T o. g ) ) >. ) |
|
12 | ovexd | |- ( ( ph /\ g e. W ) -> ( H gsum ( T o. g ) ) e. _V ) |
|
13 | 7 8 | efger | |- .~ Er W |
14 | 13 | a1i | |- ( ph -> .~ Er W ) |
15 | 7 | fvexi | |- W e. _V |
16 | 15 | a1i | |- ( ph -> W e. _V ) |
17 | coeq2 | |- ( g = A -> ( T o. g ) = ( T o. A ) ) |
|
18 | 17 | oveq2d | |- ( g = A -> ( H gsum ( T o. g ) ) = ( H gsum ( T o. A ) ) ) |
19 | 1 2 3 4 5 6 7 8 9 10 11 | frgpupf | |- ( ph -> E : X --> B ) |
20 | 19 | ffund | |- ( ph -> Fun E ) |
21 | 11 12 14 16 18 20 | qliftval | |- ( ( ph /\ A e. W ) -> ( E ` [ A ] .~ ) = ( H gsum ( T o. A ) ) ) |