Step |
Hyp |
Ref |
Expression |
1 |
|
zcn |
|- ( M e. ZZ -> M e. CC ) |
2 |
|
zcn |
|- ( N e. ZZ -> N e. CC ) |
3 |
|
addcom |
|- ( ( M e. CC /\ N e. CC ) -> ( M + N ) = ( N + M ) ) |
4 |
1 2 3
|
syl2anr |
|- ( ( N e. ZZ /\ M e. ZZ ) -> ( M + N ) = ( N + M ) ) |
5 |
4
|
3adant1 |
|- ( ( W e. Word V /\ N e. ZZ /\ M e. ZZ ) -> ( M + N ) = ( N + M ) ) |
6 |
5
|
oveq2d |
|- ( ( W e. Word V /\ N e. ZZ /\ M e. ZZ ) -> ( W cyclShift ( M + N ) ) = ( W cyclShift ( N + M ) ) ) |
7 |
|
2cshw |
|- ( ( W e. Word V /\ M e. ZZ /\ N e. ZZ ) -> ( ( W cyclShift M ) cyclShift N ) = ( W cyclShift ( M + N ) ) ) |
8 |
7
|
3com23 |
|- ( ( W e. Word V /\ N e. ZZ /\ M e. ZZ ) -> ( ( W cyclShift M ) cyclShift N ) = ( W cyclShift ( M + N ) ) ) |
9 |
|
2cshw |
|- ( ( W e. Word V /\ N e. ZZ /\ M e. ZZ ) -> ( ( W cyclShift N ) cyclShift M ) = ( W cyclShift ( N + M ) ) ) |
10 |
6 8 9
|
3eqtr4rd |
|- ( ( W e. Word V /\ N e. ZZ /\ M e. ZZ ) -> ( ( W cyclShift N ) cyclShift M ) = ( ( W cyclShift M ) cyclShift N ) ) |