| Step |
Hyp |
Ref |
Expression |
| 1 |
|
oveq2 |
|- ( W = (/) -> ( G gsum W ) = ( G gsum (/) ) ) |
| 2 |
|
eqid |
|- ( 0g ` G ) = ( 0g ` G ) |
| 3 |
2
|
gsum0 |
|- ( G gsum (/) ) = ( 0g ` G ) |
| 4 |
1 3
|
eqtrdi |
|- ( W = (/) -> ( G gsum W ) = ( 0g ` G ) ) |
| 5 |
4
|
eleq1d |
|- ( W = (/) -> ( ( G gsum W ) e. S <-> ( 0g ` G ) e. S ) ) |
| 6 |
|
eqid |
|- ( Base ` G ) = ( Base ` G ) |
| 7 |
|
eqid |
|- ( +g ` G ) = ( +g ` G ) |
| 8 |
|
submrcl |
|- ( S e. ( SubMnd ` G ) -> G e. Mnd ) |
| 9 |
8
|
ad2antrr |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> G e. Mnd ) |
| 10 |
|
lennncl |
|- ( ( W e. Word S /\ W =/= (/) ) -> ( # ` W ) e. NN ) |
| 11 |
10
|
adantll |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( # ` W ) e. NN ) |
| 12 |
|
nnm1nn0 |
|- ( ( # ` W ) e. NN -> ( ( # ` W ) - 1 ) e. NN0 ) |
| 13 |
11 12
|
syl |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( ( # ` W ) - 1 ) e. NN0 ) |
| 14 |
|
nn0uz |
|- NN0 = ( ZZ>= ` 0 ) |
| 15 |
13 14
|
eleqtrdi |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( ( # ` W ) - 1 ) e. ( ZZ>= ` 0 ) ) |
| 16 |
|
wrdf |
|- ( W e. Word S -> W : ( 0 ..^ ( # ` W ) ) --> S ) |
| 17 |
16
|
ad2antlr |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> W : ( 0 ..^ ( # ` W ) ) --> S ) |
| 18 |
11
|
nnzd |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( # ` W ) e. ZZ ) |
| 19 |
|
fzoval |
|- ( ( # ` W ) e. ZZ -> ( 0 ..^ ( # ` W ) ) = ( 0 ... ( ( # ` W ) - 1 ) ) ) |
| 20 |
18 19
|
syl |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( 0 ..^ ( # ` W ) ) = ( 0 ... ( ( # ` W ) - 1 ) ) ) |
| 21 |
20
|
feq2d |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( W : ( 0 ..^ ( # ` W ) ) --> S <-> W : ( 0 ... ( ( # ` W ) - 1 ) ) --> S ) ) |
| 22 |
17 21
|
mpbid |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> W : ( 0 ... ( ( # ` W ) - 1 ) ) --> S ) |
| 23 |
6
|
submss |
|- ( S e. ( SubMnd ` G ) -> S C_ ( Base ` G ) ) |
| 24 |
23
|
ad2antrr |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> S C_ ( Base ` G ) ) |
| 25 |
22 24
|
fssd |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> W : ( 0 ... ( ( # ` W ) - 1 ) ) --> ( Base ` G ) ) |
| 26 |
6 7 9 15 25
|
gsumval2 |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( G gsum W ) = ( seq 0 ( ( +g ` G ) , W ) ` ( ( # ` W ) - 1 ) ) ) |
| 27 |
22
|
ffvelcdmda |
|- ( ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) /\ x e. ( 0 ... ( ( # ` W ) - 1 ) ) ) -> ( W ` x ) e. S ) |
| 28 |
7
|
submcl |
|- ( ( S e. ( SubMnd ` G ) /\ x e. S /\ y e. S ) -> ( x ( +g ` G ) y ) e. S ) |
| 29 |
28
|
3expb |
|- ( ( S e. ( SubMnd ` G ) /\ ( x e. S /\ y e. S ) ) -> ( x ( +g ` G ) y ) e. S ) |
| 30 |
29
|
ad4ant14 |
|- ( ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) /\ ( x e. S /\ y e. S ) ) -> ( x ( +g ` G ) y ) e. S ) |
| 31 |
15 27 30
|
seqcl |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( seq 0 ( ( +g ` G ) , W ) ` ( ( # ` W ) - 1 ) ) e. S ) |
| 32 |
26 31
|
eqeltrd |
|- ( ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) /\ W =/= (/) ) -> ( G gsum W ) e. S ) |
| 33 |
2
|
subm0cl |
|- ( S e. ( SubMnd ` G ) -> ( 0g ` G ) e. S ) |
| 34 |
33
|
adantr |
|- ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) -> ( 0g ` G ) e. S ) |
| 35 |
5 32 34
|
pm2.61ne |
|- ( ( S e. ( SubMnd ` G ) /\ W e. Word S ) -> ( G gsum W ) e. S ) |