Proof of Theorem eleclclwwlknlem2
| Step | Hyp | Ref
| Expression |
| 1 | | simpl 482 |
. . . . 5
⊢ ((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) → 𝑘 ∈ (0...𝑁)) |
| 2 | 1 | anim1i 615 |
. . . 4
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑘 ∈ (0...𝑁) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊))) |
| 3 | 2 | adantr 480 |
. . 3
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚)) → (𝑘 ∈ (0...𝑁) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊))) |
| 4 | | simpr 484 |
. . . . 5
⊢ ((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) → 𝑋 = (𝑥 cyclShift 𝑘)) |
| 5 | 4 | adantr 480 |
. . . 4
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → 𝑋 = (𝑥 cyclShift 𝑘)) |
| 6 | 5 | anim1i 615 |
. . 3
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚)) → (𝑋 = (𝑥 cyclShift 𝑘) ∧ ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚))) |
| 7 | | erclwwlkn1.w |
. . . 4
⊢ 𝑊 = (𝑁 ClWWalksN 𝐺) |
| 8 | 7 | eleclclwwlknlem1 30079 |
. . 3
⊢ ((𝑘 ∈ (0...𝑁) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → ((𝑋 = (𝑥 cyclShift 𝑘) ∧ ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚)) → ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛))) |
| 9 | 3, 6, 8 | sylc 65 |
. 2
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚)) → ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) |
| 10 | | eqid 2737 |
. . . . . . . . . . . 12
⊢
(Vtx‘𝐺) =
(Vtx‘𝐺) |
| 11 | 10 | clwwlknbp 30054 |
. . . . . . . . . . 11
⊢ (𝑥 ∈ (𝑁 ClWWalksN 𝐺) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁)) |
| 12 | 11, 7 | eleq2s 2859 |
. . . . . . . . . 10
⊢ (𝑥 ∈ 𝑊 → (𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁)) |
| 13 | | fznn0sub2 13675 |
. . . . . . . . . . . 12
⊢ (𝑘 ∈ (0...𝑁) → (𝑁 − 𝑘) ∈ (0...𝑁)) |
| 14 | | oveq1 7438 |
. . . . . . . . . . . . 13
⊢
((♯‘𝑥) =
𝑁 →
((♯‘𝑥) −
𝑘) = (𝑁 − 𝑘)) |
| 15 | 14 | eleq1d 2826 |
. . . . . . . . . . . 12
⊢
((♯‘𝑥) =
𝑁 →
(((♯‘𝑥) −
𝑘) ∈ (0...𝑁) ↔ (𝑁 − 𝑘) ∈ (0...𝑁))) |
| 16 | 13, 15 | imbitrrid 246 |
. . . . . . . . . . 11
⊢
((♯‘𝑥) =
𝑁 → (𝑘 ∈ (0...𝑁) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 17 | 16 | adantl 481 |
. . . . . . . . . 10
⊢ ((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) → (𝑘 ∈ (0...𝑁) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 18 | 12, 17 | syl 17 |
. . . . . . . . 9
⊢ (𝑥 ∈ 𝑊 → (𝑘 ∈ (0...𝑁) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 19 | 18 | adantl 481 |
. . . . . . . 8
⊢ ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → (𝑘 ∈ (0...𝑁) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 20 | 19 | com12 32 |
. . . . . . 7
⊢ (𝑘 ∈ (0...𝑁) → ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 21 | 20 | adantr 480 |
. . . . . 6
⊢ ((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) → ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁))) |
| 22 | 21 | imp 406 |
. . . . 5
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁)) |
| 23 | 22 | adantr 480 |
. . . 4
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → ((♯‘𝑥) − 𝑘) ∈ (0...𝑁)) |
| 24 | | simpr 484 |
. . . . . 6
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) |
| 25 | 24 | ancomd 461 |
. . . . 5
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑥 ∈ 𝑊 ∧ 𝑋 ∈ 𝑊)) |
| 26 | 25 | adantr 480 |
. . . 4
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → (𝑥 ∈ 𝑊 ∧ 𝑋 ∈ 𝑊)) |
| 27 | 23, 26 | jca 511 |
. . 3
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → (((♯‘𝑥) − 𝑘) ∈ (0...𝑁) ∧ (𝑥 ∈ 𝑊 ∧ 𝑋 ∈ 𝑊))) |
| 28 | | simpll 767 |
. . . . . . . . . . . . 13
⊢ (((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) ∧ 𝑘 ∈ (0...𝑁)) → 𝑥 ∈ Word (Vtx‘𝐺)) |
| 29 | | oveq2 7439 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑁 = (♯‘𝑥) → (0...𝑁) = (0...(♯‘𝑥))) |
| 30 | 29 | eleq2d 2827 |
. . . . . . . . . . . . . . . 16
⊢ (𝑁 = (♯‘𝑥) → (𝑘 ∈ (0...𝑁) ↔ 𝑘 ∈ (0...(♯‘𝑥)))) |
| 31 | 30 | eqcoms 2745 |
. . . . . . . . . . . . . . 15
⊢
((♯‘𝑥) =
𝑁 → (𝑘 ∈ (0...𝑁) ↔ 𝑘 ∈ (0...(♯‘𝑥)))) |
| 32 | 31 | adantl 481 |
. . . . . . . . . . . . . 14
⊢ ((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) → (𝑘 ∈ (0...𝑁) ↔ 𝑘 ∈ (0...(♯‘𝑥)))) |
| 33 | 32 | biimpa 476 |
. . . . . . . . . . . . 13
⊢ (((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) ∧ 𝑘 ∈ (0...𝑁)) → 𝑘 ∈ (0...(♯‘𝑥))) |
| 34 | 28, 33 | jca 511 |
. . . . . . . . . . . 12
⊢ (((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) ∧ 𝑘 ∈ (0...𝑁)) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥)))) |
| 35 | 34 | ex 412 |
. . . . . . . . . . 11
⊢ ((𝑥 ∈ Word (Vtx‘𝐺) ∧ (♯‘𝑥) = 𝑁) → (𝑘 ∈ (0...𝑁) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))))) |
| 36 | 12, 35 | syl 17 |
. . . . . . . . . 10
⊢ (𝑥 ∈ 𝑊 → (𝑘 ∈ (0...𝑁) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))))) |
| 37 | 36 | adantl 481 |
. . . . . . . . 9
⊢ ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → (𝑘 ∈ (0...𝑁) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))))) |
| 38 | 37 | com12 32 |
. . . . . . . 8
⊢ (𝑘 ∈ (0...𝑁) → ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))))) |
| 39 | 38 | adantr 480 |
. . . . . . 7
⊢ ((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) → ((𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))))) |
| 40 | 39 | imp 406 |
. . . . . 6
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥)))) |
| 41 | 4 | eqcomd 2743 |
. . . . . . 7
⊢ ((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) → (𝑥 cyclShift 𝑘) = 𝑋) |
| 42 | 41 | adantr 480 |
. . . . . 6
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑥 cyclShift 𝑘) = 𝑋) |
| 43 | | oveq1 7438 |
. . . . . . . 8
⊢ (𝑋 = (𝑥 cyclShift 𝑘) → (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) = ((𝑥 cyclShift 𝑘) cyclShift ((♯‘𝑥) − 𝑘))) |
| 44 | 43 | eqcoms 2745 |
. . . . . . 7
⊢ ((𝑥 cyclShift 𝑘) = 𝑋 → (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) = ((𝑥 cyclShift 𝑘) cyclShift ((♯‘𝑥) − 𝑘))) |
| 45 | | elfzelz 13564 |
. . . . . . . 8
⊢ (𝑘 ∈
(0...(♯‘𝑥))
→ 𝑘 ∈
ℤ) |
| 46 | | 2cshwid 14852 |
. . . . . . . 8
⊢ ((𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ ℤ) → ((𝑥 cyclShift 𝑘) cyclShift ((♯‘𝑥) − 𝑘)) = 𝑥) |
| 47 | 45, 46 | sylan2 593 |
. . . . . . 7
⊢ ((𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))) → ((𝑥 cyclShift 𝑘) cyclShift ((♯‘𝑥) − 𝑘)) = 𝑥) |
| 48 | 44, 47 | sylan9eqr 2799 |
. . . . . 6
⊢ (((𝑥 ∈ Word (Vtx‘𝐺) ∧ 𝑘 ∈ (0...(♯‘𝑥))) ∧ (𝑥 cyclShift 𝑘) = 𝑋) → (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) = 𝑥) |
| 49 | 40, 42, 48 | syl2anc 584 |
. . . . 5
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) = 𝑥) |
| 50 | 49 | eqcomd 2743 |
. . . 4
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → 𝑥 = (𝑋 cyclShift ((♯‘𝑥) − 𝑘))) |
| 51 | 50 | anim1i 615 |
. . 3
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → (𝑥 = (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛))) |
| 52 | 7 | eleclclwwlknlem1 30079 |
. . 3
⊢
((((♯‘𝑥)
− 𝑘) ∈
(0...𝑁) ∧ (𝑥 ∈ 𝑊 ∧ 𝑋 ∈ 𝑊)) → ((𝑥 = (𝑋 cyclShift ((♯‘𝑥) − 𝑘)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚))) |
| 53 | 27, 51, 52 | sylc 65 |
. 2
⊢ ((((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) ∧ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛)) → ∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚)) |
| 54 | 9, 53 | impbida 801 |
1
⊢ (((𝑘 ∈ (0...𝑁) ∧ 𝑋 = (𝑥 cyclShift 𝑘)) ∧ (𝑋 ∈ 𝑊 ∧ 𝑥 ∈ 𝑊)) → (∃𝑚 ∈ (0...𝑁)𝑌 = (𝑥 cyclShift 𝑚) ↔ ∃𝑛 ∈ (0...𝑁)𝑌 = (𝑋 cyclShift 𝑛))) |