MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  crctcshwlkn0lem5 Structured version   Visualization version   GIF version

Theorem crctcshwlkn0lem5 27594
Description: Lemma for crctcshwlkn0 27601. (Contributed by AV, 12-Mar-2021.)
Hypotheses
Ref Expression
crctcshwlkn0lem.s (𝜑𝑆 ∈ (1..^𝑁))
crctcshwlkn0lem.q 𝑄 = (𝑥 ∈ (0...𝑁) ↦ if(𝑥 ≤ (𝑁𝑆), (𝑃‘(𝑥 + 𝑆)), (𝑃‘((𝑥 + 𝑆) − 𝑁))))
crctcshwlkn0lem.h 𝐻 = (𝐹 cyclShift 𝑆)
crctcshwlkn0lem.n 𝑁 = (♯‘𝐹)
crctcshwlkn0lem.f (𝜑𝐹 ∈ Word 𝐴)
crctcshwlkn0lem.p (𝜑 → ∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))))
Assertion
Ref Expression
crctcshwlkn0lem5 (𝜑 → ∀𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)if-((𝑄𝑗) = (𝑄‘(𝑗 + 1)), (𝐼‘(𝐻𝑗)) = {(𝑄𝑗)}, {(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗))))
Distinct variable groups:   𝑥,𝑁   𝑥,𝑃   𝑥,𝑆   𝜑,𝑥   𝑖,𝐹   𝑖,𝐼   𝑖,𝑁   𝑃,𝑖   𝑆,𝑖   𝜑,𝑖,𝑗   𝑥,𝑗
Allowed substitution hints:   𝐴(𝑥,𝑖,𝑗)   𝑃(𝑗)   𝑄(𝑥,𝑖,𝑗)   𝑆(𝑗)   𝐹(𝑥,𝑗)   𝐻(𝑥,𝑖,𝑗)   𝐼(𝑥,𝑗)   𝑁(𝑗)

Proof of Theorem crctcshwlkn0lem5
StepHypRef Expression
1 crctcshwlkn0lem.p . . . . 5 (𝜑 → ∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))))
2 crctcshwlkn0lem.s . . . . . . 7 (𝜑𝑆 ∈ (1..^𝑁))
3 elfzoelz 13041 . . . . . . . . . . . 12 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → 𝑗 ∈ ℤ)
43zcnd 12091 . . . . . . . . . . 11 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → 𝑗 ∈ ℂ)
54adantl 484 . . . . . . . . . 10 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑗 ∈ ℂ)
6 1cnd 10638 . . . . . . . . . 10 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 1 ∈ ℂ)
7 elfzoelz 13041 . . . . . . . . . . . 12 (𝑆 ∈ (1..^𝑁) → 𝑆 ∈ ℤ)
87zcnd 12091 . . . . . . . . . . 11 (𝑆 ∈ (1..^𝑁) → 𝑆 ∈ ℂ)
98adantr 483 . . . . . . . . . 10 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑆 ∈ ℂ)
10 elfzoel2 13040 . . . . . . . . . . . 12 (𝑆 ∈ (1..^𝑁) → 𝑁 ∈ ℤ)
1110zcnd 12091 . . . . . . . . . . 11 (𝑆 ∈ (1..^𝑁) → 𝑁 ∈ ℂ)
1211adantr 483 . . . . . . . . . 10 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑁 ∈ ℂ)
135, 6, 9, 122addsubd 11049 . . . . . . . . 9 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (((𝑗 + 1) + 𝑆) − 𝑁) = (((𝑗 + 𝑆) − 𝑁) + 1))
1413eqcomd 2829 . . . . . . . 8 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁))
15 elfzo1 13090 . . . . . . . . . . . 12 (𝑆 ∈ (1..^𝑁) ↔ (𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁))
16 nnz 12007 . . . . . . . . . . . . . . . . 17 (𝑁 ∈ ℕ → 𝑁 ∈ ℤ)
17163ad2ant2 1130 . . . . . . . . . . . . . . . 16 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ∈ ℤ)
1817adantr 483 . . . . . . . . . . . . . . 15 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑁 ∈ ℤ)
193adantl 484 . . . . . . . . . . . . . . . 16 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑗 ∈ ℤ)
20 nnz 12007 . . . . . . . . . . . . . . . . . 18 (𝑆 ∈ ℕ → 𝑆 ∈ ℤ)
21203ad2ant1 1129 . . . . . . . . . . . . . . . . 17 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑆 ∈ ℤ)
2221adantr 483 . . . . . . . . . . . . . . . 16 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑆 ∈ ℤ)
2319, 22zaddcld 12094 . . . . . . . . . . . . . . 15 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝑗 + 𝑆) ∈ ℤ)
24 elfzo2 13044 . . . . . . . . . . . . . . . . 17 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) ↔ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁))
25 eluz2 12252 . . . . . . . . . . . . . . . . . . . 20 (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ↔ (((𝑁𝑆) + 1) ∈ ℤ ∧ 𝑗 ∈ ℤ ∧ ((𝑁𝑆) + 1) ≤ 𝑗))
26 zre 11988 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑗 ∈ ℤ → 𝑗 ∈ ℝ)
27 nnre 11647 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑆 ∈ ℕ → 𝑆 ∈ ℝ)
28 nnre 11647 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ)
2927, 28anim12i 614 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ))
30 simplr 767 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → 𝑁 ∈ ℝ)
31 simpll 765 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → 𝑆 ∈ ℝ)
3230, 31resubcld 11070 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → (𝑁𝑆) ∈ ℝ)
3332lep1d 11573 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → (𝑁𝑆) ≤ ((𝑁𝑆) + 1))
34 1red 10644 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → 1 ∈ ℝ)
3532, 34readdcld 10672 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → ((𝑁𝑆) + 1) ∈ ℝ)
36 simpr 487 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → 𝑗 ∈ ℝ)
37 letr 10736 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((𝑁𝑆) ∈ ℝ ∧ ((𝑁𝑆) + 1) ∈ ℝ ∧ 𝑗 ∈ ℝ) → (((𝑁𝑆) ≤ ((𝑁𝑆) + 1) ∧ ((𝑁𝑆) + 1) ≤ 𝑗) → (𝑁𝑆) ≤ 𝑗))
3832, 35, 36, 37syl3anc 1367 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → (((𝑁𝑆) ≤ ((𝑁𝑆) + 1) ∧ ((𝑁𝑆) + 1) ≤ 𝑗) → (𝑁𝑆) ≤ 𝑗))
3933, 38mpand 693 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → (((𝑁𝑆) + 1) ≤ 𝑗 → (𝑁𝑆) ≤ 𝑗))
4030, 31, 36lesubaddd 11239 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → ((𝑁𝑆) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆)))
4139, 40sylibd 241 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℝ) → (((𝑁𝑆) + 1) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆)))
4241ex 415 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑗 ∈ ℝ → (((𝑁𝑆) + 1) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆))))
4329, 42syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑗 ∈ ℝ → (((𝑁𝑆) + 1) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆))))
44433adant3 1128 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑗 ∈ ℝ → (((𝑁𝑆) + 1) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆))))
4526, 44syl5com 31 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑗 ∈ ℤ → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (((𝑁𝑆) + 1) ≤ 𝑗𝑁 ≤ (𝑗 + 𝑆))))
4645com23 86 . . . . . . . . . . . . . . . . . . . . . 22 (𝑗 ∈ ℤ → (((𝑁𝑆) + 1) ≤ 𝑗 → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆))))
4746imp 409 . . . . . . . . . . . . . . . . . . . . 21 ((𝑗 ∈ ℤ ∧ ((𝑁𝑆) + 1) ≤ 𝑗) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
48473adant1 1126 . . . . . . . . . . . . . . . . . . . 20 ((((𝑁𝑆) + 1) ∈ ℤ ∧ 𝑗 ∈ ℤ ∧ ((𝑁𝑆) + 1) ≤ 𝑗) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
4925, 48sylbi 219 . . . . . . . . . . . . . . . . . . 19 (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
50493ad2ant1 1129 . . . . . . . . . . . . . . . . . 18 ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
5150com12 32 . . . . . . . . . . . . . . . . 17 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
5224, 51syl5bi 244 . . . . . . . . . . . . . . . 16 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → 𝑁 ≤ (𝑗 + 𝑆)))
5352imp 409 . . . . . . . . . . . . . . 15 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑁 ≤ (𝑗 + 𝑆))
54 eluz2 12252 . . . . . . . . . . . . . . 15 ((𝑗 + 𝑆) ∈ (ℤ𝑁) ↔ (𝑁 ∈ ℤ ∧ (𝑗 + 𝑆) ∈ ℤ ∧ 𝑁 ≤ (𝑗 + 𝑆)))
5518, 23, 53, 54syl3anbrc 1339 . . . . . . . . . . . . . 14 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝑗 + 𝑆) ∈ (ℤ𝑁))
56 uznn0sub 12280 . . . . . . . . . . . . . 14 ((𝑗 + 𝑆) ∈ (ℤ𝑁) → ((𝑗 + 𝑆) − 𝑁) ∈ ℕ0)
5755, 56syl 17 . . . . . . . . . . . . 13 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝑗 + 𝑆) − 𝑁) ∈ ℕ0)
58 simpl2 1188 . . . . . . . . . . . . 13 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑁 ∈ ℕ)
5926adantl 484 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → 𝑗 ∈ ℝ)
60 simpll 765 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → 𝑆 ∈ ℝ)
61 ax-1 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑁 ∈ ℝ → (𝑆 ∈ ℝ → 𝑁 ∈ ℝ))
6261imdistanri 572 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑁 ∈ ℝ ∧ 𝑁 ∈ ℝ))
6362adantr 483 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → (𝑁 ∈ ℝ ∧ 𝑁 ∈ ℝ))
64 lt2add 11127 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑗 ∈ ℝ ∧ 𝑆 ∈ ℝ) ∧ (𝑁 ∈ ℝ ∧ 𝑁 ∈ ℝ)) → ((𝑗 < 𝑁𝑆 < 𝑁) → (𝑗 + 𝑆) < (𝑁 + 𝑁)))
6559, 60, 63, 64syl21anc 835 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → ((𝑗 < 𝑁𝑆 < 𝑁) → (𝑗 + 𝑆) < (𝑁 + 𝑁)))
6659, 60readdcld 10672 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → (𝑗 + 𝑆) ∈ ℝ)
67 simplr 767 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → 𝑁 ∈ ℝ)
6866, 67, 67ltsubaddd 11238 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → (((𝑗 + 𝑆) − 𝑁) < 𝑁 ↔ (𝑗 + 𝑆) < (𝑁 + 𝑁)))
6965, 68sylibrd 261 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) ∧ 𝑗 ∈ ℤ) → ((𝑗 < 𝑁𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁))
7069ex 415 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑗 ∈ ℤ → ((𝑗 < 𝑁𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
7170com23 86 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → ((𝑗 < 𝑁𝑆 < 𝑁) → (𝑗 ∈ ℤ → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
7271expcomd 419 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑆 < 𝑁 → (𝑗 < 𝑁 → (𝑗 ∈ ℤ → ((𝑗 + 𝑆) − 𝑁) < 𝑁))))
7329, 72syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑆 < 𝑁 → (𝑗 < 𝑁 → (𝑗 ∈ ℤ → ((𝑗 + 𝑆) − 𝑁) < 𝑁))))
74733impia 1113 . . . . . . . . . . . . . . . . . . . 20 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑗 < 𝑁 → (𝑗 ∈ ℤ → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
7574com13 88 . . . . . . . . . . . . . . . . . . 19 (𝑗 ∈ ℤ → (𝑗 < 𝑁 → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
76753ad2ant2 1130 . . . . . . . . . . . . . . . . . 18 ((((𝑁𝑆) + 1) ∈ ℤ ∧ 𝑗 ∈ ℤ ∧ ((𝑁𝑆) + 1) ≤ 𝑗) → (𝑗 < 𝑁 → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
7725, 76sylbi 219 . . . . . . . . . . . . . . . . 17 (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) → (𝑗 < 𝑁 → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁)))
7877imp 409 . . . . . . . . . . . . . . . 16 ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑗 < 𝑁) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁))
79783adant2 1127 . . . . . . . . . . . . . . 15 ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁))
8024, 79sylbi 219 . . . . . . . . . . . . . 14 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 + 𝑆) − 𝑁) < 𝑁))
8180impcom 410 . . . . . . . . . . . . 13 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝑗 + 𝑆) − 𝑁) < 𝑁)
8257, 58, 813jca 1124 . . . . . . . . . . . 12 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (((𝑗 + 𝑆) − 𝑁) ∈ ℕ0𝑁 ∈ ℕ ∧ ((𝑗 + 𝑆) − 𝑁) < 𝑁))
8315, 82sylanb 583 . . . . . . . . . . 11 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (((𝑗 + 𝑆) − 𝑁) ∈ ℕ0𝑁 ∈ ℕ ∧ ((𝑗 + 𝑆) − 𝑁) < 𝑁))
84 elfzo0 13081 . . . . . . . . . . 11 (((𝑗 + 𝑆) − 𝑁) ∈ (0..^𝑁) ↔ (((𝑗 + 𝑆) − 𝑁) ∈ ℕ0𝑁 ∈ ℕ ∧ ((𝑗 + 𝑆) − 𝑁) < 𝑁))
8583, 84sylibr 236 . . . . . . . . . 10 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝑗 + 𝑆) − 𝑁) ∈ (0..^𝑁))
8685adantr 483 . . . . . . . . 9 (((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) → ((𝑗 + 𝑆) − 𝑁) ∈ (0..^𝑁))
87 fveq2 6672 . . . . . . . . . . . 12 (𝑖 = ((𝑗 + 𝑆) − 𝑁) → (𝑃𝑖) = (𝑃‘((𝑗 + 𝑆) − 𝑁)))
8887adantl 484 . . . . . . . . . . 11 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → (𝑃𝑖) = (𝑃‘((𝑗 + 𝑆) − 𝑁)))
89 fvoveq1 7181 . . . . . . . . . . . 12 (𝑖 = ((𝑗 + 𝑆) − 𝑁) → (𝑃‘(𝑖 + 1)) = (𝑃‘(((𝑗 + 𝑆) − 𝑁) + 1)))
90 simpr 487 . . . . . . . . . . . . 13 (((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) → (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁))
9190fveq2d 6676 . . . . . . . . . . . 12 (((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) → (𝑃‘(((𝑗 + 𝑆) − 𝑁) + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)))
9289, 91sylan9eqr 2880 . . . . . . . . . . 11 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → (𝑃‘(𝑖 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)))
9388, 92eqeq12d 2839 . . . . . . . . . 10 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → ((𝑃𝑖) = (𝑃‘(𝑖 + 1)) ↔ (𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))))
94 2fveq3 6677 . . . . . . . . . . . 12 (𝑖 = ((𝑗 + 𝑆) − 𝑁) → (𝐼‘(𝐹𝑖)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))
9587sneqd 4581 . . . . . . . . . . . 12 (𝑖 = ((𝑗 + 𝑆) − 𝑁) → {(𝑃𝑖)} = {(𝑃‘((𝑗 + 𝑆) − 𝑁))})
9694, 95eqeq12d 2839 . . . . . . . . . . 11 (𝑖 = ((𝑗 + 𝑆) − 𝑁) → ((𝐼‘(𝐹𝑖)) = {(𝑃𝑖)} ↔ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}))
9796adantl 484 . . . . . . . . . 10 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → ((𝐼‘(𝐹𝑖)) = {(𝑃𝑖)} ↔ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}))
9888, 92preq12d 4679 . . . . . . . . . . 11 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → {(𝑃𝑖), (𝑃‘(𝑖 + 1))} = {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))})
99 simpr 487 . . . . . . . . . . . . 13 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → 𝑖 = ((𝑗 + 𝑆) − 𝑁))
10099fveq2d 6676 . . . . . . . . . . . 12 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → (𝐹𝑖) = (𝐹‘((𝑗 + 𝑆) − 𝑁)))
101100fveq2d 6676 . . . . . . . . . . 11 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → (𝐼‘(𝐹𝑖)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))
10298, 101sseq12d 4002 . . . . . . . . . 10 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → ({(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖)) ↔ {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))))
10393, 97, 102ifpbi123d 1072 . . . . . . . . 9 ((((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) ∧ 𝑖 = ((𝑗 + 𝑆) − 𝑁)) → (if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))) ↔ if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
10486, 103rspcdv 3617 . . . . . . . 8 (((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) ∧ (((𝑗 + 𝑆) − 𝑁) + 1) = (((𝑗 + 1) + 𝑆) − 𝑁)) → (∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
10514, 104mpdan 685 . . . . . . 7 ((𝑆 ∈ (1..^𝑁) ∧ 𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
1062, 105sylan 582 . . . . . 6 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
107106ex 415 . . . . 5 (𝜑 → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → (∀𝑖 ∈ (0..^𝑁)if-((𝑃𝑖) = (𝑃‘(𝑖 + 1)), (𝐼‘(𝐹𝑖)) = {(𝑃𝑖)}, {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ⊆ (𝐼‘(𝐹𝑖))) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))))))
1081, 107mpid 44 . . . 4 (𝜑 → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
109108imp 409 . . 3 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))))
110 elfzofz 13056 . . . . 5 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → 𝑗 ∈ (((𝑁𝑆) + 1)...𝑁))
111 crctcshwlkn0lem.q . . . . . 6 𝑄 = (𝑥 ∈ (0...𝑁) ↦ if(𝑥 ≤ (𝑁𝑆), (𝑃‘(𝑥 + 𝑆)), (𝑃‘((𝑥 + 𝑆) − 𝑁))))
1122, 111crctcshwlkn0lem3 27592 . . . . 5 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)...𝑁)) → (𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)))
113110, 112sylan2 594 . . . 4 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)))
114 fzofzp1 13137 . . . . 5 (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → (𝑗 + 1) ∈ (((𝑁𝑆) + 1)...𝑁))
1152, 111crctcshwlkn0lem3 27592 . . . . 5 ((𝜑 ∧ (𝑗 + 1) ∈ (((𝑁𝑆) + 1)...𝑁)) → (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)))
116114, 115sylan2 594 . . . 4 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)))
117 crctcshwlkn0lem.h . . . . . . 7 𝐻 = (𝐹 cyclShift 𝑆)
118117fveq1i 6673 . . . . . 6 (𝐻𝑗) = ((𝐹 cyclShift 𝑆)‘𝑗)
119 crctcshwlkn0lem.f . . . . . . . . 9 (𝜑𝐹 ∈ Word 𝐴)
120119adantr 483 . . . . . . . 8 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝐹 ∈ Word 𝐴)
1212, 7syl 17 . . . . . . . . 9 (𝜑𝑆 ∈ ℤ)
122121adantr 483 . . . . . . . 8 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑆 ∈ ℤ)
123 ltle 10731 . . . . . . . . . . . . . . . . 17 ((𝑆 ∈ ℝ ∧ 𝑁 ∈ ℝ) → (𝑆 < 𝑁𝑆𝑁))
12429, 123syl 17 . . . . . . . . . . . . . . . 16 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑆 < 𝑁𝑆𝑁))
1251243impia 1113 . . . . . . . . . . . . . . 15 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑆𝑁)
126 nnnn0 11907 . . . . . . . . . . . . . . . . . 18 (𝑆 ∈ ℕ → 𝑆 ∈ ℕ0)
127 nnnn0 11907 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ ℕ → 𝑁 ∈ ℕ0)
128126, 127anim12i 614 . . . . . . . . . . . . . . . . 17 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝑆 ∈ ℕ0𝑁 ∈ ℕ0))
1291283adant3 1128 . . . . . . . . . . . . . . . 16 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑆 ∈ ℕ0𝑁 ∈ ℕ0))
130 nn0sub 11950 . . . . . . . . . . . . . . . 16 ((𝑆 ∈ ℕ0𝑁 ∈ ℕ0) → (𝑆𝑁 ↔ (𝑁𝑆) ∈ ℕ0))
131129, 130syl 17 . . . . . . . . . . . . . . 15 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑆𝑁 ↔ (𝑁𝑆) ∈ ℕ0))
132125, 131mpbid 234 . . . . . . . . . . . . . 14 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑁𝑆) ∈ ℕ0)
13315, 132sylbi 219 . . . . . . . . . . . . 13 (𝑆 ∈ (1..^𝑁) → (𝑁𝑆) ∈ ℕ0)
134 1nn0 11916 . . . . . . . . . . . . . 14 1 ∈ ℕ0
135134a1i 11 . . . . . . . . . . . . 13 (𝑆 ∈ (1..^𝑁) → 1 ∈ ℕ0)
136133, 135nn0addcld 11962 . . . . . . . . . . . 12 (𝑆 ∈ (1..^𝑁) → ((𝑁𝑆) + 1) ∈ ℕ0)
137 elnn0uz 12286 . . . . . . . . . . . 12 (((𝑁𝑆) + 1) ∈ ℕ0 ↔ ((𝑁𝑆) + 1) ∈ (ℤ‘0))
138136, 137sylib 220 . . . . . . . . . . 11 (𝑆 ∈ (1..^𝑁) → ((𝑁𝑆) + 1) ∈ (ℤ‘0))
139 fzoss1 13067 . . . . . . . . . . 11 (((𝑁𝑆) + 1) ∈ (ℤ‘0) → (((𝑁𝑆) + 1)..^𝑁) ⊆ (0..^𝑁))
1402, 138, 1393syl 18 . . . . . . . . . 10 (𝜑 → (((𝑁𝑆) + 1)..^𝑁) ⊆ (0..^𝑁))
141140sselda 3969 . . . . . . . . 9 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑗 ∈ (0..^𝑁))
142 crctcshwlkn0lem.n . . . . . . . . . 10 𝑁 = (♯‘𝐹)
143142oveq2i 7169 . . . . . . . . 9 (0..^𝑁) = (0..^(♯‘𝐹))
144141, 143eleqtrdi 2925 . . . . . . . 8 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → 𝑗 ∈ (0..^(♯‘𝐹)))
145 cshwidxmod 14167 . . . . . . . 8 ((𝐹 ∈ Word 𝐴𝑆 ∈ ℤ ∧ 𝑗 ∈ (0..^(♯‘𝐹))) → ((𝐹 cyclShift 𝑆)‘𝑗) = (𝐹‘((𝑗 + 𝑆) mod (♯‘𝐹))))
146120, 122, 144, 145syl3anc 1367 . . . . . . 7 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝐹 cyclShift 𝑆)‘𝑗) = (𝐹‘((𝑗 + 𝑆) mod (♯‘𝐹))))
147142eqcomi 2832 . . . . . . . . . 10 (♯‘𝐹) = 𝑁
148147oveq2i 7169 . . . . . . . . 9 ((𝑗 + 𝑆) mod (♯‘𝐹)) = ((𝑗 + 𝑆) mod 𝑁)
149 eluzelre 12257 . . . . . . . . . . . . . . . . . . 19 (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) → 𝑗 ∈ ℝ)
1501493ad2ant1 1129 . . . . . . . . . . . . . . . . . 18 ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁) → 𝑗 ∈ ℝ)
151150adantl 484 . . . . . . . . . . . . . . . . 17 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑗 ∈ ℝ)
152273ad2ant1 1129 . . . . . . . . . . . . . . . . . 18 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑆 ∈ ℝ)
153152adantr 483 . . . . . . . . . . . . . . . . 17 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑆 ∈ ℝ)
154151, 153readdcld 10672 . . . . . . . . . . . . . . . 16 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → (𝑗 + 𝑆) ∈ ℝ)
155 nnrp 12403 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ+)
1561553ad2ant2 1130 . . . . . . . . . . . . . . . . 17 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → 𝑁 ∈ ℝ+)
157156adantr 483 . . . . . . . . . . . . . . . 16 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑁 ∈ ℝ+)
15850impcom 410 . . . . . . . . . . . . . . . . 17 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑁 ≤ (𝑗 + 𝑆))
159157rpred 12434 . . . . . . . . . . . . . . . . . 18 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑁 ∈ ℝ)
160 simpr3 1192 . . . . . . . . . . . . . . . . . 18 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑗 < 𝑁)
161 simpl3 1189 . . . . . . . . . . . . . . . . . 18 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → 𝑆 < 𝑁)
162151, 153, 159, 160, 161lt2addmuld 11890 . . . . . . . . . . . . . . . . 17 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → (𝑗 + 𝑆) < (2 · 𝑁))
163158, 162jca 514 . . . . . . . . . . . . . . . 16 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁)))
164154, 157, 163jca31 517 . . . . . . . . . . . . . . 15 (((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) ∧ (𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁)) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁))))
165164ex 415 . . . . . . . . . . . . . 14 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → ((𝑗 ∈ (ℤ‘((𝑁𝑆) + 1)) ∧ 𝑁 ∈ ℤ ∧ 𝑗 < 𝑁) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁)))))
16624, 165syl5bi 244 . . . . . . . . . . . . 13 ((𝑆 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑆 < 𝑁) → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁)))))
16715, 166sylbi 219 . . . . . . . . . . . 12 (𝑆 ∈ (1..^𝑁) → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁)))))
1682, 167syl 17 . . . . . . . . . . 11 (𝜑 → (𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁)))))
169168imp 409 . . . . . . . . . 10 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁))))
170 2submod 13303 . . . . . . . . . 10 ((((𝑗 + 𝑆) ∈ ℝ ∧ 𝑁 ∈ ℝ+) ∧ (𝑁 ≤ (𝑗 + 𝑆) ∧ (𝑗 + 𝑆) < (2 · 𝑁))) → ((𝑗 + 𝑆) mod 𝑁) = ((𝑗 + 𝑆) − 𝑁))
171169, 170syl 17 . . . . . . . . 9 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝑗 + 𝑆) mod 𝑁) = ((𝑗 + 𝑆) − 𝑁))
172148, 171syl5eq 2870 . . . . . . . 8 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝑗 + 𝑆) mod (♯‘𝐹)) = ((𝑗 + 𝑆) − 𝑁))
173172fveq2d 6676 . . . . . . 7 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝐹‘((𝑗 + 𝑆) mod (♯‘𝐹))) = (𝐹‘((𝑗 + 𝑆) − 𝑁)))
174146, 173eqtrd 2858 . . . . . 6 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → ((𝐹 cyclShift 𝑆)‘𝑗) = (𝐹‘((𝑗 + 𝑆) − 𝑁)))
175118, 174syl5eq 2870 . . . . 5 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝐻𝑗) = (𝐹‘((𝑗 + 𝑆) − 𝑁)))
176175fveq2d 6676 . . . 4 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))
177 simp1 1132 . . . . . 6 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → (𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)))
178 simp2 1133 . . . . . 6 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)))
179177, 178eqeq12d 2839 . . . . 5 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → ((𝑄𝑗) = (𝑄‘(𝑗 + 1)) ↔ (𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))))
180 simp3 1134 . . . . . 6 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))
181177sneqd 4581 . . . . . 6 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → {(𝑄𝑗)} = {(𝑃‘((𝑗 + 𝑆) − 𝑁))})
182180, 181eqeq12d 2839 . . . . 5 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → ((𝐼‘(𝐻𝑗)) = {(𝑄𝑗)} ↔ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}))
183177, 178preq12d 4679 . . . . . 6 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → {(𝑄𝑗), (𝑄‘(𝑗 + 1))} = {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))})
184183, 180sseq12d 4002 . . . . 5 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → ({(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗)) ↔ {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))))
185179, 182, 184ifpbi123d 1072 . . . 4 (((𝑄𝑗) = (𝑃‘((𝑗 + 𝑆) − 𝑁)) ∧ (𝑄‘(𝑗 + 1)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)) ∧ (𝐼‘(𝐻𝑗)) = (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁)))) → (if-((𝑄𝑗) = (𝑄‘(𝑗 + 1)), (𝐼‘(𝐻𝑗)) = {(𝑄𝑗)}, {(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗))) ↔ if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
186113, 116, 176, 185syl3anc 1367 . . 3 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → (if-((𝑄𝑗) = (𝑄‘(𝑗 + 1)), (𝐼‘(𝐻𝑗)) = {(𝑄𝑗)}, {(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗))) ↔ if-((𝑃‘((𝑗 + 𝑆) − 𝑁)) = (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁)), (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))) = {(𝑃‘((𝑗 + 𝑆) − 𝑁))}, {(𝑃‘((𝑗 + 𝑆) − 𝑁)), (𝑃‘(((𝑗 + 1) + 𝑆) − 𝑁))} ⊆ (𝐼‘(𝐹‘((𝑗 + 𝑆) − 𝑁))))))
187109, 186mpbird 259 . 2 ((𝜑𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)) → if-((𝑄𝑗) = (𝑄‘(𝑗 + 1)), (𝐼‘(𝐻𝑗)) = {(𝑄𝑗)}, {(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗))))
188187ralrimiva 3184 1 (𝜑 → ∀𝑗 ∈ (((𝑁𝑆) + 1)..^𝑁)if-((𝑄𝑗) = (𝑄‘(𝑗 + 1)), (𝐼‘(𝐻𝑗)) = {(𝑄𝑗)}, {(𝑄𝑗), (𝑄‘(𝑗 + 1))} ⊆ (𝐼‘(𝐻𝑗))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  if-wif 1057  w3a 1083   = wceq 1537  wcel 2114  wral 3140  wss 3938  ifcif 4469  {csn 4569  {cpr 4571   class class class wbr 5068  cmpt 5148  cfv 6357  (class class class)co 7158  cc 10537  cr 10538  0cc0 10539  1c1 10540   + caddc 10542   · cmul 10544   < clt 10677  cle 10678  cmin 10872  cn 11640  2c2 11695  0cn0 11900  cz 11984  cuz 12246  +crp 12392  ...cfz 12895  ..^cfzo 13036   mod cmo 13240  chash 13693  Word cword 13864   cyclShift ccsh 14152
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2795  ax-rep 5192  ax-sep 5205  ax-nul 5212  ax-pow 5268  ax-pr 5332  ax-un 7463  ax-cnex 10595  ax-resscn 10596  ax-1cn 10597  ax-icn 10598  ax-addcl 10599  ax-addrcl 10600  ax-mulcl 10601  ax-mulrcl 10602  ax-mulcom 10603  ax-addass 10604  ax-mulass 10605  ax-distr 10606  ax-i2m1 10607  ax-1ne0 10608  ax-1rid 10609  ax-rnegex 10610  ax-rrecex 10611  ax-cnre 10612  ax-pre-lttri 10613  ax-pre-lttrn 10614  ax-pre-ltadd 10615  ax-pre-mulgt0 10616  ax-pre-sup 10617
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-ifp 1058  df-3or 1084  df-3an 1085  df-tru 1540  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622  df-eu 2654  df-clab 2802  df-cleq 2816  df-clel 2895  df-nfc 2965  df-ne 3019  df-nel 3126  df-ral 3145  df-rex 3146  df-reu 3147  df-rmo 3148  df-rab 3149  df-v 3498  df-sbc 3775  df-csb 3886  df-dif 3941  df-un 3943  df-in 3945  df-ss 3954  df-pss 3956  df-nul 4294  df-if 4470  df-pw 4543  df-sn 4570  df-pr 4572  df-tp 4574  df-op 4576  df-uni 4841  df-int 4879  df-iun 4923  df-br 5069  df-opab 5131  df-mpt 5149  df-tr 5175  df-id 5462  df-eprel 5467  df-po 5476  df-so 5477  df-fr 5516  df-we 5518  df-xp 5563  df-rel 5564  df-cnv 5565  df-co 5566  df-dm 5567  df-rn 5568  df-res 5569  df-ima 5570  df-pred 6150  df-ord 6196  df-on 6197  df-lim 6198  df-suc 6199  df-iota 6316  df-fun 6359  df-fn 6360  df-f 6361  df-f1 6362  df-fo 6363  df-f1o 6364  df-fv 6365  df-riota 7116  df-ov 7161  df-oprab 7162  df-mpo 7163  df-om 7583  df-1st 7691  df-2nd 7692  df-wrecs 7949  df-recs 8010  df-rdg 8048  df-1o 8104  df-oadd 8108  df-er 8291  df-en 8512  df-dom 8513  df-sdom 8514  df-fin 8515  df-sup 8908  df-inf 8909  df-card 9370  df-pnf 10679  df-mnf 10680  df-xr 10681  df-ltxr 10682  df-le 10683  df-sub 10874  df-neg 10875  df-div 11300  df-nn 11641  df-2 11703  df-n0 11901  df-z 11985  df-uz 12247  df-rp 12393  df-fz 12896  df-fzo 13037  df-fl 13165  df-mod 13241  df-hash 13694  df-word 13865  df-concat 13925  df-substr 14005  df-pfx 14035  df-csh 14153
This theorem is referenced by:  crctcshwlkn0lem7  27596
  Copyright terms: Public domain W3C validator