Metamath Proof Explorer


Theorem clwwisshclwwslem

Description: Lemma for clwwisshclwws . (Contributed by AV, 24-Mar-2018) (Revised by AV, 28-Apr-2021)

Ref Expression
Assertion clwwisshclwwslem WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^WcyclShiftN1WcyclShiftNjWcyclShiftNj+1E

Proof

Step Hyp Ref Expression
1 elfzoelz N1..^WN
2 cshwlen WWordVNWcyclShiftN=W
3 1 2 sylan2 WWordVN1..^WWcyclShiftN=W
4 3 oveq1d WWordVN1..^WWcyclShiftN1=W1
5 4 oveq2d WWordVN1..^W0..^WcyclShiftN1=0..^W1
6 5 eleq2d WWordVN1..^Wj0..^WcyclShiftN1j0..^W1
7 6 adantr WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^WcyclShiftN1j0..^W1
8 simpll WWordVN1..^Wj0..^W1WWordV
9 1 ad2antlr WWordVN1..^Wj0..^W1N
10 lencl WWordVW0
11 nn0z W0W
12 peano2zm WW1
13 11 12 syl W0W1
14 nn0re W0W
15 14 lem1d W0W1W
16 eluz2 WW1W1WW1W
17 13 11 15 16 syl3anbrc W0WW1
18 10 17 syl WWordVWW1
19 18 adantr WWordVN1..^WWW1
20 fzoss2 WW10..^W10..^W
21 19 20 syl WWordVN1..^W0..^W10..^W
22 21 sselda WWordVN1..^Wj0..^W1j0..^W
23 cshwidxmod WWordVNj0..^WWcyclShiftNj=Wj+NmodW
24 8 9 22 23 syl3anc WWordVN1..^Wj0..^W1WcyclShiftNj=Wj+NmodW
25 elfzo1 N1..^WNWN<W
26 25 simp2bi N1..^WW
27 26 adantl WWordVN1..^WW
28 elfzom1p1elfzo Wj0..^W1j+10..^W
29 27 28 sylan WWordVN1..^Wj0..^W1j+10..^W
30 cshwidxmod WWordVNj+10..^WWcyclShiftNj+1=Wj+1+NmodW
31 8 9 29 30 syl3anc WWordVN1..^Wj0..^W1WcyclShiftNj+1=Wj+1+NmodW
32 24 31 preq12d WWordVN1..^Wj0..^W1WcyclShiftNjWcyclShiftNj+1=Wj+NmodWWj+1+NmodW
33 32 adantlr WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1WcyclShiftNjWcyclShiftNj+1=Wj+NmodWWj+1+NmodW
34 2z 2
35 34 a1i NWN<W2
36 nnz WW
37 36 3ad2ant2 NWN<WW
38 nnnn0 WW0
39 38 3ad2ant2 NWN<WW0
40 nnne0 WW0
41 40 3ad2ant2 NWN<WW0
42 1red NWN<W1
43 nnre NN
44 43 3ad2ant1 NWN<WN
45 nnre WW
46 45 3ad2ant2 NWN<WW
47 nnge1 N1N
48 47 3ad2ant1 NWN<W1N
49 simp3 NWN<WN<W
50 42 44 46 48 49 lelttrd NWN<W1<W
51 42 50 gtned NWN<WW1
52 nn0n0n1ge2 W0W0W12W
53 39 41 51 52 syl3anc NWN<W2W
54 eluz2 W22W2W
55 35 37 53 54 syl3anbrc NWN<WW2
56 25 55 sylbi N1..^WW2
57 56 ad3antlr WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1W2
58 elfzoelz j0..^W1j
59 58 adantl WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1j
60 1 ad3antlr WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1N
61 simplrl WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1i0..^W1WiWi+1E
62 lsw WWordVlastSW=WW1
63 62 adantr WWordVN1..^WlastSW=WW1
64 63 preq1d WWordVN1..^WlastSWW0=WW1W0
65 64 eleq1d WWordVN1..^WlastSWW0EWW1W0E
66 65 biimpcd lastSWW0EWWordVN1..^WWW1W0E
67 66 adantl i0..^W1WiWi+1ElastSWW0EWWordVN1..^WWW1W0E
68 67 impcom WWordVN1..^Wi0..^W1WiWi+1ElastSWW0EWW1W0E
69 68 adantr WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1WW1W0E
70 clwwisshclwwslemlem W2jNi0..^W1WiWi+1EWW1W0EWj+NmodWWj+1+NmodWE
71 57 59 60 61 69 70 syl311anc WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1Wj+NmodWWj+1+NmodWE
72 33 71 eqeltrd WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1WcyclShiftNjWcyclShiftNj+1E
73 72 ex WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^W1WcyclShiftNjWcyclShiftNj+1E
74 7 73 sylbid WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^WcyclShiftN1WcyclShiftNjWcyclShiftNj+1E
75 74 ralrimiv WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^WcyclShiftN1WcyclShiftNjWcyclShiftNj+1E
76 75 ex WWordVN1..^Wi0..^W1WiWi+1ElastSWW0Ej0..^WcyclShiftN1WcyclShiftNjWcyclShiftNj+1E