Proof of Theorem clwwnisshclwwn
Step | Hyp | Ref
| Expression |
1 | | clwwlknprop 26300 |
. . . . . . 7
⊢ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → ((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁))) |
2 | | simpl 472 |
. . . . . . . . . . 11
⊢ ((𝑁 ∈ ℕ0
∧ (#‘𝑊) = 𝑁) → 𝑁 ∈
ℕ0) |
3 | 2 | anim2i 591 |
. . . . . . . . . 10
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ (𝑁 ∈ ℕ0
∧ (#‘𝑊) = 𝑁)) → ((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑁 ∈
ℕ0)) |
4 | | df-3an 1033 |
. . . . . . . . . 10
⊢ ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)
↔ ((𝑉 ∈ V ∧
𝐸 ∈ V) ∧ 𝑁 ∈
ℕ0)) |
5 | 3, 4 | sylibr 223 |
. . . . . . . . 9
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ (𝑁 ∈ ℕ0
∧ (#‘𝑊) = 𝑁)) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈
ℕ0)) |
6 | 5 | 3adant2 1073 |
. . . . . . . 8
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈
ℕ0)) |
7 | | clwwlkisclwwlkn 26319 |
. . . . . . . 8
⊢ ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)
→ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → 𝑊 ∈ (𝑉 ClWWalks 𝐸))) |
8 | 6, 7 | syl 17 |
. . . . . . 7
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → 𝑊 ∈ (𝑉 ClWWalks 𝐸))) |
9 | 1, 8 | mpcom 37 |
. . . . . 6
⊢ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → 𝑊 ∈ (𝑉 ClWWalks 𝐸)) |
10 | 9 | adantl 481 |
. . . . 5
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → 𝑊 ∈ (𝑉 ClWWalks 𝐸)) |
11 | 10 | adantr 480 |
. . . 4
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → 𝑊 ∈ (𝑉 ClWWalks 𝐸)) |
12 | | eqcom 2617 |
. . . . . . . . . . . 12
⊢
((#‘𝑊) = 𝑁 ↔ 𝑁 = (#‘𝑊)) |
13 | 12 | biimpi 205 |
. . . . . . . . . . 11
⊢
((#‘𝑊) = 𝑁 → 𝑁 = (#‘𝑊)) |
14 | 13 | adantl 481 |
. . . . . . . . . 10
⊢ ((𝑁 ∈ ℕ0
∧ (#‘𝑊) = 𝑁) → 𝑁 = (#‘𝑊)) |
15 | 14 | 3ad2ant3 1077 |
. . . . . . . . 9
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → 𝑁 = (#‘𝑊)) |
16 | 1, 15 | syl 17 |
. . . . . . . 8
⊢ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → 𝑁 = (#‘𝑊)) |
17 | 16 | adantl 481 |
. . . . . . 7
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → 𝑁 = (#‘𝑊)) |
18 | 17 | oveq2d 6565 |
. . . . . 6
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → (0...𝑁) = (0...(#‘𝑊))) |
19 | 18 | eleq2d 2673 |
. . . . 5
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → (𝑀 ∈ (0...𝑁) ↔ 𝑀 ∈ (0...(#‘𝑊)))) |
20 | 19 | biimpa 500 |
. . . 4
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → 𝑀 ∈ (0...(#‘𝑊))) |
21 | | clwwisshclwwn 26336 |
. . . 4
⊢ ((𝑊 ∈ (𝑉 ClWWalks 𝐸) ∧ 𝑀 ∈ (0...(#‘𝑊))) → (𝑊 cyclShift 𝑀) ∈ (𝑉 ClWWalks 𝐸)) |
22 | 11, 20, 21 | syl2anc 691 |
. . 3
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → (𝑊 cyclShift 𝑀) ∈ (𝑉 ClWWalks 𝐸)) |
23 | | elfzelz 12213 |
. . . . . . . . . 10
⊢ (𝑀 ∈ (0...(#‘𝑊)) → 𝑀 ∈ ℤ) |
24 | | cshwlen 13396 |
. . . . . . . . . 10
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑀 ∈ ℤ) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)) |
25 | 23, 24 | sylan2 490 |
. . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑀 ∈ (0...(#‘𝑊))) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)) |
26 | 25 | ex 449 |
. . . . . . . 8
⊢ (𝑊 ∈ Word 𝑉 → (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊))) |
27 | 26 | 3ad2ant2 1076 |
. . . . . . 7
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊))) |
28 | | oveq2 6557 |
. . . . . . . . . . . 12
⊢ (𝑁 = (#‘𝑊) → (0...𝑁) = (0...(#‘𝑊))) |
29 | 28 | eleq2d 2673 |
. . . . . . . . . . 11
⊢ (𝑁 = (#‘𝑊) → (𝑀 ∈ (0...𝑁) ↔ 𝑀 ∈ (0...(#‘𝑊)))) |
30 | | eqeq2 2621 |
. . . . . . . . . . 11
⊢ (𝑁 = (#‘𝑊) → ((#‘(𝑊 cyclShift 𝑀)) = 𝑁 ↔ (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊))) |
31 | 29, 30 | imbi12d 333 |
. . . . . . . . . 10
⊢ (𝑁 = (#‘𝑊) → ((𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁) ↔ (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)))) |
32 | 31 | eqcoms 2618 |
. . . . . . . . 9
⊢
((#‘𝑊) = 𝑁 → ((𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁) ↔ (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)))) |
33 | 32 | adantl 481 |
. . . . . . . 8
⊢ ((𝑁 ∈ ℕ0
∧ (#‘𝑊) = 𝑁) → ((𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁) ↔ (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)))) |
34 | 33 | 3ad2ant3 1077 |
. . . . . . 7
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → ((𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁) ↔ (𝑀 ∈ (0...(#‘𝑊)) → (#‘(𝑊 cyclShift 𝑀)) = (#‘𝑊)))) |
35 | 27, 34 | mpbird 246 |
. . . . . 6
⊢ (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ Word 𝑉 ∧ (𝑁 ∈ ℕ0 ∧
(#‘𝑊) = 𝑁)) → (𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁)) |
36 | 1, 35 | syl 17 |
. . . . 5
⊢ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → (𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁)) |
37 | 36 | adantl 481 |
. . . 4
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → (𝑀 ∈ (0...𝑁) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁)) |
38 | 37 | imp 444 |
. . 3
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → (#‘(𝑊 cyclShift 𝑀)) = 𝑁) |
39 | 1 | simp1d 1066 |
. . . . . . . 8
⊢ (𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) → (𝑉 ∈ V ∧ 𝐸 ∈ V)) |
40 | 39 | anim1i 590 |
. . . . . . 7
⊢ ((𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) ∧ 𝑁 ∈ ℕ0) → ((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑁 ∈
ℕ0)) |
41 | 40, 4 | sylibr 223 |
. . . . . 6
⊢ ((𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) ∧ 𝑁 ∈ ℕ0) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈
ℕ0)) |
42 | 41 | ancoms 468 |
. . . . 5
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈
ℕ0)) |
43 | 42 | adantr 480 |
. . . 4
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈
ℕ0)) |
44 | | isclwwlkn 26297 |
. . . 4
⊢ ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)
→ ((𝑊 cyclShift 𝑀) ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) ↔ ((𝑊 cyclShift 𝑀) ∈ (𝑉 ClWWalks 𝐸) ∧ (#‘(𝑊 cyclShift 𝑀)) = 𝑁))) |
45 | 43, 44 | syl 17 |
. . 3
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → ((𝑊 cyclShift 𝑀) ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁) ↔ ((𝑊 cyclShift 𝑀) ∈ (𝑉 ClWWalks 𝐸) ∧ (#‘(𝑊 cyclShift 𝑀)) = 𝑁))) |
46 | 22, 38, 45 | mpbir2and 959 |
. 2
⊢ (((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) ∧ 𝑀 ∈ (0...𝑁)) → (𝑊 cyclShift 𝑀) ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) |
47 | 46 | ex 449 |
1
⊢ ((𝑁 ∈ ℕ0
∧ 𝑊 ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁)) → (𝑀 ∈ (0...𝑁) → (𝑊 cyclShift 𝑀) ∈ ((𝑉 ClWWalksN 𝐸)‘𝑁))) |