Description: The length of a cyclically shifted word is the same as the length of the original word. (Contributed by AV, 16-May-2018) (Revised by AV, 20-May-2018) (Revised by AV, 27-Oct-2018) (Proof shortened by AV, 16-Oct-2022)
Ref | Expression | ||
---|---|---|---|
Assertion | cshwlen | |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | 0csh0 | |
|
2 | oveq1 | |
|
3 | id | |
|
4 | 1 2 3 | 3eqtr4a | |
5 | 4 | fveq2d | |
6 | 5 | a1d | |
7 | cshword | |
|
8 | 7 | fveq2d | |
9 | 8 | adantr | |
10 | swrdcl | |
|
11 | pfxcl | |
|
12 | ccatlen | |
|
13 | 10 11 12 | syl2anc | |
14 | 13 | ad2antrr | |
15 | lennncl | |
|
16 | pm3.21 | |
|
17 | 16 | ex | |
18 | 15 17 | syl | |
19 | 18 | ex | |
20 | 19 | com24 | |
21 | 20 | pm2.43i | |
22 | 21 | imp31 | |
23 | simpl | |
|
24 | zmodfzp1 | |
|
25 | 24 | ancoms | |
26 | 25 | adantl | |
27 | lencl | |
|
28 | nn0fz0 | |
|
29 | 27 28 | sylib | |
30 | 29 | adantr | |
31 | swrdlen | |
|
32 | 23 26 30 31 | syl3anc | |
33 | pfxlen | |
|
34 | 25 33 | sylan2 | |
35 | 32 34 | oveq12d | |
36 | 27 | nn0cnd | |
37 | zmodcl | |
|
38 | 37 | nn0cnd | |
39 | 38 | ancoms | |
40 | npcan | |
|
41 | 36 39 40 | syl2an | |
42 | 35 41 | eqtrd | |
43 | 22 42 | syl | |
44 | 9 14 43 | 3eqtrd | |
45 | 44 | expcom | |
46 | 6 45 | pm2.61ine | |