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

Theorem clwwlkext2edg 30436
Description: If a word concatenated with a vertex represents a closed walk in (in a graph), there is an edge between this vertex and the last vertex of the word, and between this vertex and the first vertex of the word. (Contributed by Alexander van der Vekens, 3-Oct-2018.) (Revised by AV, 27-Apr-2021.) (Proof shortened by AV, 22-Mar-2022.)
Hypotheses
Ref Expression
clwwlkext2edg.v 𝑉 = (Vtx‘𝐺)
clwwlkext2edg.e 𝐸 = (Edg‘𝐺)
Assertion
Ref Expression
clwwlkext2edg (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺)) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸))

Proof of Theorem clwwlkext2edg
Dummy variable 𝑖 is distinct from all other variables.
StepHypRef Expression
1 clwwlknnn 30413 . . 3 ((𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺) → 𝑁 ∈ ℕ)
2 clwwlkext2edg.v . . . . 5 𝑉 = (Vtx‘𝐺)
3 clwwlkext2edg.e . . . . 5 𝐸 = (Edg‘𝐺)
42, 3isclwwlknx 30416 . . . 4 (𝑁 ∈ ℕ → ((𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺) ↔ (((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁)))
5 ige2m2fzo 13769 . . . . . . . . . . . . . . 15 (𝑁 ∈ (ℤ‘2) → (𝑁 − 2) ∈ (0..^(𝑁 − 1)))
653ad2ant3 1153 . . . . . . . . . . . . . 14 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → (𝑁 − 2) ∈ (0..^(𝑁 − 1)))
76adantr 486 . . . . . . . . . . . . 13 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (𝑁 − 2) ∈ (0..^(𝑁 − 1)))
8 oveq1 7423 . . . . . . . . . . . . . . . 16 ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1) = (𝑁 − 1))
98oveq2d 7432 . . . . . . . . . . . . . . 15 ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)) = (0..^(𝑁 − 1)))
109eleq2d 2851 . . . . . . . . . . . . . 14 ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → ((𝑁 − 2) ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)) ↔ (𝑁 − 2) ∈ (0..^(𝑁 − 1))))
1110adantl 487 . . . . . . . . . . . . 13 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑁 − 2) ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)) ↔ (𝑁 − 2) ∈ (0..^(𝑁 − 1))))
127, 11mpbird 260 . . . . . . . . . . . 12 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (𝑁 − 2) ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)))
13 fveq2 6885 . . . . . . . . . . . . . . 15 (𝑖 = (𝑁 − 2) → ((𝑊 ++ ⟨“𝑍”⟩)‘𝑖) = ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)))
14 fvoveq1 7439 . . . . . . . . . . . . . . 15 (𝑖 = (𝑁 − 2) → ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1)) = ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1)))
1513, 14preq12d 4709 . . . . . . . . . . . . . 14 (𝑖 = (𝑁 − 2) → {((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} = {((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))})
1615eleq1d 2850 . . . . . . . . . . . . 13 (𝑖 = (𝑁 − 2) → ({((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ↔ {((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))} ∈ 𝐸))
1716rspcv 3579 . . . . . . . . . . . 12 ((𝑁 − 2) ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)) → (∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 → {((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))} ∈ 𝐸))
1812, 17syl 18 . . . . . . . . . . 11 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 → {((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))} ∈ 𝐸))
19 wrdlenccats1lenm1 14675 . . . . . . . . . . . . . . . . . . . . . 22 (𝑊 ∈ Word 𝑉 → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1) = (♯‘𝑊))
2019eqcomd 2771 . . . . . . . . . . . . . . . . . . . . 21 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) = ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1))
2120adantr 486 . . . . . . . . . . . . . . . . . . . 20 ((𝑊 ∈ Word 𝑉𝑍𝑉) → (♯‘𝑊) = ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1))
2221, 8sylan9eq 2820 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ Word 𝑉𝑍𝑉) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (♯‘𝑊) = (𝑁 − 1))
2322ex 418 . . . . . . . . . . . . . . . . . 18 ((𝑊 ∈ Word 𝑉𝑍𝑉) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (♯‘𝑊) = (𝑁 − 1)))
24233adant3 1150 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (♯‘𝑊) = (𝑁 − 1)))
25 eluzelcn 12885 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℂ)
26 1cnd 11213 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → 1 ∈ ℂ)
2725, 26, 26subsub4d 11611 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → ((𝑁 − 1) − 1) = (𝑁 − (1 + 1)))
28 1p1e2 12375 . . . . . . . . . . . . . . . . . . . . . . 23 (1 + 1) = 2
2928a1i 11 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → (1 + 1) = 2)
3029oveq2d 7432 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → (𝑁 − (1 + 1)) = (𝑁 − 2))
3127, 30eqtr2d 2801 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (𝑁 − 2) = ((𝑁 − 1) − 1))
32313ad2ant3 1153 . . . . . . . . . . . . . . . . . . 19 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → (𝑁 − 2) = ((𝑁 − 1) − 1))
33 oveq1 7423 . . . . . . . . . . . . . . . . . . . 20 ((♯‘𝑊) = (𝑁 − 1) → ((♯‘𝑊) − 1) = ((𝑁 − 1) − 1))
3433eqcomd 2771 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑊) = (𝑁 − 1) → ((𝑁 − 1) − 1) = ((♯‘𝑊) − 1))
3532, 34sylan9eq 2820 . . . . . . . . . . . . . . . . . 18 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (𝑁 − 2) = ((♯‘𝑊) − 1))
3635ex 418 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘𝑊) = (𝑁 − 1) → (𝑁 − 2) = ((♯‘𝑊) − 1)))
3724, 36syld 48 . . . . . . . . . . . . . . . 16 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (𝑁 − 2) = ((♯‘𝑊) − 1)))
3837imp 412 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (𝑁 − 2) = ((♯‘𝑊) − 1))
3938fveq2d 6889 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)) = ((𝑊 ++ ⟨“𝑍”⟩)‘((♯‘𝑊) − 1)))
40 simpl1 1210 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 𝑊 ∈ Word 𝑉)
41 s1cl 14654 . . . . . . . . . . . . . . . . . . . . 21 (𝑍𝑉 → ⟨“𝑍”⟩ ∈ Word 𝑉)
42413ad2ant2 1152 . . . . . . . . . . . . . . . . . . . 20 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ⟨“𝑍”⟩ ∈ Word 𝑉)
4342adantr 486 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → ⟨“𝑍”⟩ ∈ Word 𝑉)
44 eluz2 12879 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ (ℤ‘2) ↔ (2 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 2 ≤ 𝑁))
45 zre 12606 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑁 ∈ ℤ → 𝑁 ∈ ℝ)
46 1red 11220 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 1 ∈ ℝ)
47 2re 12326 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2 ∈ ℝ
4847a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 2 ∈ ℝ)
49 simpl 488 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 𝑁 ∈ ℝ)
50 1lt2 12424 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 1 < 2
5150a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 1 < 2)
52 simpr 490 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 2 ≤ 𝑁)
5346, 48, 49, 51, 52ltletrd 11381 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 1 < 𝑁)
54 1red 11220 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (𝑁 ∈ ℝ → 1 ∈ ℝ)
55 id 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (𝑁 ∈ ℝ → 𝑁 ∈ ℝ)
5654, 55posdifd 11812 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑁 ∈ ℝ → (1 < 𝑁 ↔ 0 < (𝑁 − 1)))
5756adantr 486 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → (1 < 𝑁 ↔ 0 < (𝑁 − 1)))
5853, 57mpbid 235 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((𝑁 ∈ ℝ ∧ 2 ≤ 𝑁) → 0 < (𝑁 − 1))
5958ex 418 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑁 ∈ ℝ → (2 ≤ 𝑁 → 0 < (𝑁 − 1)))
6045, 59syl 18 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑁 ∈ ℤ → (2 ≤ 𝑁 → 0 < (𝑁 − 1)))
6160a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . 25 (2 ∈ ℤ → (𝑁 ∈ ℤ → (2 ≤ 𝑁 → 0 < (𝑁 − 1))))
62613imp 1128 . . . . . . . . . . . . . . . . . . . . . . . 24 ((2 ∈ ℤ ∧ 𝑁 ∈ ℤ ∧ 2 ≤ 𝑁) → 0 < (𝑁 − 1))
6344, 62sylbi 220 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ (ℤ‘2) → 0 < (𝑁 − 1))
6463ad2antlr 740 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 0 < (𝑁 − 1))
65 breq2 5115 . . . . . . . . . . . . . . . . . . . . . . 23 ((♯‘𝑊) = (𝑁 − 1) → (0 < (♯‘𝑊) ↔ 0 < (𝑁 − 1)))
6665adantl 487 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (0 < (♯‘𝑊) ↔ 0 < (𝑁 − 1)))
6764, 66mpbird 260 . . . . . . . . . . . . . . . . . . . . 21 (((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 0 < (♯‘𝑊))
68 hashneq0 14413 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑊 ∈ Word 𝑉 → (0 < (♯‘𝑊) ↔ 𝑊 ≠ ∅))
6968adantr 486 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) → (0 < (♯‘𝑊) ↔ 𝑊 ≠ ∅))
7069adantr 486 . . . . . . . . . . . . . . . . . . . . 21 (((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (0 < (♯‘𝑊) ↔ 𝑊 ≠ ∅))
7167, 70mpbid 235 . . . . . . . . . . . . . . . . . . . 20 (((𝑊 ∈ Word 𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 𝑊 ≠ ∅)
72713adantl2 1186 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 𝑊 ≠ ∅)
7340, 43, 723jca 1146 . . . . . . . . . . . . . . . . . 18 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉𝑊 ≠ ∅))
7473ex 418 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘𝑊) = (𝑁 − 1) → (𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉𝑊 ≠ ∅)))
7524, 74syld 48 . . . . . . . . . . . . . . . 16 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉𝑊 ≠ ∅)))
7675imp 412 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉𝑊 ≠ ∅))
77 ccatval1lsw 14635 . . . . . . . . . . . . . . 15 ((𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉𝑊 ≠ ∅) → ((𝑊 ++ ⟨“𝑍”⟩)‘((♯‘𝑊) − 1)) = (lastS‘𝑊))
7876, 77syl 18 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘((♯‘𝑊) − 1)) = (lastS‘𝑊))
7939, 78eqtrd 2800 . . . . . . . . . . . . 13 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)) = (lastS‘𝑊))
80 2m1e1 12376 . . . . . . . . . . . . . . . . . . . . . . 23 (2 − 1) = 1
8180a1i 11 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → (2 − 1) = 1)
8281eqcomd 2771 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → 1 = (2 − 1))
8382oveq2d 7432 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (𝑁 − 1) = (𝑁 − (2 − 1)))
84 2cnd 12330 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → 2 ∈ ℂ)
8525, 84, 26subsubd 11608 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (𝑁 − (2 − 1)) = ((𝑁 − 2) + 1))
8683, 85eqtr2d 2801 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ (ℤ‘2) → ((𝑁 − 2) + 1) = (𝑁 − 1))
87863ad2ant3 1153 . . . . . . . . . . . . . . . . . 18 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((𝑁 − 2) + 1) = (𝑁 − 1))
88 eqeq2 2777 . . . . . . . . . . . . . . . . . 18 ((♯‘𝑊) = (𝑁 − 1) → (((𝑁 − 2) + 1) = (♯‘𝑊) ↔ ((𝑁 − 2) + 1) = (𝑁 − 1)))
8987, 88syl5ibrcom 250 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘𝑊) = (𝑁 − 1) → ((𝑁 − 2) + 1) = (♯‘𝑊)))
9024, 89syld 48 . . . . . . . . . . . . . . . 16 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → ((𝑁 − 2) + 1) = (♯‘𝑊)))
9190imp 412 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑁 − 2) + 1) = (♯‘𝑊))
9291fveq2d 6889 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1)) = ((𝑊 ++ ⟨“𝑍”⟩)‘(♯‘𝑊)))
93 id 23 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉) → (𝑊 ∈ Word 𝑉𝑍𝑉))
94933adant3 1150 . . . . . . . . . . . . . . . 16 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → (𝑊 ∈ Word 𝑉𝑍𝑉))
9594adantr 486 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (𝑊 ∈ Word 𝑉𝑍𝑉))
96 ccatws1ls 14686 . . . . . . . . . . . . . . 15 ((𝑊 ∈ Word 𝑉𝑍𝑉) → ((𝑊 ++ ⟨“𝑍”⟩)‘(♯‘𝑊)) = 𝑍)
9795, 96syl 18 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘(♯‘𝑊)) = 𝑍)
9892, 97eqtrd 2800 . . . . . . . . . . . . 13 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1)) = 𝑍)
9979, 98preq12d 4709 . . . . . . . . . . . 12 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → {((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))} = {(lastS‘𝑊), 𝑍})
10099eleq1d 2850 . . . . . . . . . . 11 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ({((𝑊 ++ ⟨“𝑍”⟩)‘(𝑁 − 2)), ((𝑊 ++ ⟨“𝑍”⟩)‘((𝑁 − 2) + 1))} ∈ 𝐸 ↔ {(lastS‘𝑊), 𝑍} ∈ 𝐸))
10118, 100sylibd 242 . . . . . . . . . 10 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → (∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 → {(lastS‘𝑊), 𝑍} ∈ 𝐸))
102101ex 418 . . . . . . . . 9 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → (∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 → {(lastS‘𝑊), 𝑍} ∈ 𝐸)))
103102com13 89 . . . . . . . 8 (∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → {(lastS‘𝑊), 𝑍} ∈ 𝐸)))
1041033ad2ant2 1152 . . . . . . 7 (((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → {(lastS‘𝑊), 𝑍} ∈ 𝐸)))
105104imp31 423 . . . . . 6 (((((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → {(lastS‘𝑊), 𝑍} ∈ 𝐸)
10694adantr 486 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (𝑊 ∈ Word 𝑉𝑍𝑉))
107 lswccats1 14687 . . . . . . . . . . . . . . 15 ((𝑊 ∈ Word 𝑉𝑍𝑉) → (lastS‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑍)
108106, 107syl 18 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (lastS‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑍)
109633ad2ant3 1153 . . . . . . . . . . . . . . . . 17 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → 0 < (𝑁 − 1))
110109adantr 486 . . . . . . . . . . . . . . . 16 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 0 < (𝑁 − 1))
11165adantl 487 . . . . . . . . . . . . . . . 16 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → (0 < (♯‘𝑊) ↔ 0 < (𝑁 − 1)))
112110, 111mpbird 260 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → 0 < (♯‘𝑊))
113 ccatfv0 14634 . . . . . . . . . . . . . . 15 ((𝑊 ∈ Word 𝑉 ∧ ⟨“𝑍”⟩ ∈ Word 𝑉 ∧ 0 < (♯‘𝑊)) → ((𝑊 ++ ⟨“𝑍”⟩)‘0) = (𝑊‘0))
11440, 43, 112, 113syl3anc 1398 . . . . . . . . . . . . . 14 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → ((𝑊 ++ ⟨“𝑍”⟩)‘0) = (𝑊‘0))
115108, 114preq12d 4709 . . . . . . . . . . . . 13 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (♯‘𝑊) = (𝑁 − 1)) → {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} = {𝑍, (𝑊‘0)})
116115ex 418 . . . . . . . . . . . 12 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘𝑊) = (𝑁 − 1) → {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} = {𝑍, (𝑊‘0)}))
11724, 116syld 48 . . . . . . . . . . 11 ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 → {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} = {𝑍, (𝑊‘0)}))
118117impcom 413 . . . . . . . . . 10 (((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} = {𝑍, (𝑊‘0)})
119118eleq1d 2850 . . . . . . . . 9 (((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → ({(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸 ↔ {𝑍, (𝑊‘0)} ∈ 𝐸))
120119biimpcd 252 . . . . . . . 8 ({(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸 → (((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → {𝑍, (𝑊‘0)} ∈ 𝐸))
1211203ad2ant3 1153 . . . . . . 7 (((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) → (((♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁 ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → {𝑍, (𝑊‘0)} ∈ 𝐸))
122121impl 461 . . . . . 6 (((((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → {𝑍, (𝑊‘0)} ∈ 𝐸)
123105, 122jca 521 . . . . 5 (((((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) ∧ (𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2))) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸))
124123ex 418 . . . 4 ((((𝑊 ++ ⟨“𝑍”⟩) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑊 ++ ⟨“𝑍”⟩)) − 1)){((𝑊 ++ ⟨“𝑍”⟩)‘𝑖), ((𝑊 ++ ⟨“𝑍”⟩)‘(𝑖 + 1))} ∈ 𝐸 ∧ {(lastS‘(𝑊 ++ ⟨“𝑍”⟩)), ((𝑊 ++ ⟨“𝑍”⟩)‘0)} ∈ 𝐸) ∧ (♯‘(𝑊 ++ ⟨“𝑍”⟩)) = 𝑁) → ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸)))
1254, 124biimtrdi 256 . . 3 (𝑁 ∈ ℕ → ((𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺) → ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸))))
1261, 125mpcom 39 . 2 ((𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺) → ((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸)))
127126impcom 413 1 (((𝑊 ∈ Word 𝑉𝑍𝑉𝑁 ∈ (ℤ‘2)) ∧ (𝑊 ++ ⟨“𝑍”⟩) ∈ (𝑁 ClWWalksN 𝐺)) → ({(lastS‘𝑊), 𝑍} ∈ 𝐸 ∧ {𝑍, (𝑊‘0)} ∈ 𝐸))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2146  wne 2960  wral 3081  c0 4286  {cpr 4593   class class class wbr 5111  cfv 6540  (class class class)co 7416  cr 11110  0cc0 11111  1c1 11112   + caddc 11114   < clt 11254  cle 11255  cmin 11452  cn 12244  2c2 12306  cz 12602  cuz 12873  ..^cfzo 13694  chash 14379  Word cword 14563  lastSclsw 14612   ++ cconcat 14620  ⟨“cs1 14647  Vtxcvtx 29375  Edgcedg 29426   ClWWalksN cclwwlkn 30404
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7738  ax-cnex 11167  ax-resscn 11168  ax-1cn 11169  ax-icn 11170  ax-addcl 11171  ax-addrcl 11172  ax-mulcl 11173  ax-mulrcl 11174  ax-mulcom 11175  ax-addass 11176  ax-mulass 11177  ax-distr 11178  ax-i2m1 11179  ax-1ne0 11180  ax-1rid 11181  ax-rnegex 11182  ax-rrecex 11183  ax-cnre 11184  ax-pre-lttri 11185  ax-pre-lttrn 11186  ax-pre-ltadd 11187  ax-pre-mulgt0 11188
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-int 4915  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7865  df-1st 7988  df-2nd 7989  df-frecs 8280  df-wrecs 8311  df-recs 8360  df-rdg 8399  df-1o 8455  df-oadd 8459  df-er 8696  df-map 8828  df-en 8946  df-dom 8947  df-sdom 8948  df-fin 8949  df-card 9937  df-pnf 11256  df-mnf 11257  df-xr 11258  df-ltxr 11259  df-le 11260  df-sub 11454  df-neg 11455  df-nn 12245  df-2 12314  df-n0 12516  df-xnn0 12589  df-z 12603  df-uz 12874  df-rp 13028  df-fz 13547  df-fzo 13695  df-hash 14380  df-word 14564  df-lsw 14613  df-concat 14621  df-s1 14648  df-clwwlk 30362  df-clwwlkn 30405
This theorem is used by:  numclwwlk2lem1  30756
  Copyright terms: Public domain W3C validator