Metamath Proof Explorer


Theorem cshw0

Description: A word cyclically shifted by 0 is the word itself. (Contributed by AV, 16-May-2018) (Revised by AV, 20-May-2018) (Revised by AV, 26-Oct-2018)

Ref Expression
Assertion cshw0 WWordVWcyclShift0=W

Proof

Step Hyp Ref Expression
1 0csh0 cyclShift0=
2 oveq1 =WcyclShift0=WcyclShift0
3 id =W=W
4 1 2 3 3eqtr3a =WWcyclShift0=W
5 4 a1d =WWWordVWcyclShift0=W
6 0z 0
7 cshword WWordV0WcyclShift0=Wsubstr0modWW++Wprefix0modW
8 6 7 mpan2 WWordVWcyclShift0=Wsubstr0modWW++Wprefix0modW
9 8 adantr WWordVWWcyclShift0=Wsubstr0modWW++Wprefix0modW
10 necom WW
11 lennncl WWordVWW
12 nnrp WW+
13 0mod W+0modW=0
14 13 opeq1d W+0modWW=0W
15 14 oveq2d W+Wsubstr0modWW=Wsubstr0W
16 13 oveq2d W+Wprefix0modW=Wprefix0
17 15 16 oveq12d W+Wsubstr0modWW++Wprefix0modW=Wsubstr0W++Wprefix0
18 11 12 17 3syl WWordVWWsubstr0modWW++Wprefix0modW=Wsubstr0W++Wprefix0
19 10 18 sylan2b WWordVWWsubstr0modWW++Wprefix0modW=Wsubstr0W++Wprefix0
20 9 19 eqtrd WWordVWWcyclShift0=Wsubstr0W++Wprefix0
21 lencl WWordVW0
22 pfxval WWordVW0WprefixW=Wsubstr0W
23 21 22 mpdan WWordVWprefixW=Wsubstr0W
24 pfxid WWordVWprefixW=W
25 23 24 eqtr3d WWordVWsubstr0W=W
26 25 adantr WWordVWWsubstr0W=W
27 pfx00 Wprefix0=
28 27 a1i WWordVWWprefix0=
29 26 28 oveq12d WWordVWWsubstr0W++Wprefix0=W++
30 ccatrid WWordVW++=W
31 30 adantr WWordVWW++=W
32 20 29 31 3eqtrd WWordVWWcyclShift0=W
33 32 expcom WWWordVWcyclShift0=W
34 5 33 pm2.61ine WWordVWcyclShift0=W