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

Theorem wwlkextproplem3 26037
Description: Lemma 3 for wwlkextprop 26038. (Contributed by Alexander van der Vekens, 1-Aug-2018.)
Hypotheses
Ref Expression
wwlkextprop.x 𝑋 = ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))
wwlkextprop.y 𝑌 = {𝑤 ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ∣ (𝑤‘0) = 𝑃}
Assertion
Ref Expression
wwlkextproplem3 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ 𝑌)
Distinct variable groups:   𝑤,𝐸   𝑤,𝑁   𝑤,𝑃   𝑤,𝑉   𝑤,𝑊
Allowed substitution hints:   𝑋(𝑤)   𝑌(𝑤)

Proof of Theorem wwlkextproplem3
Dummy variable 𝑖 is distinct from all other variables.
StepHypRef Expression
1 wwlknprop 25980 . . . . 5 (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → ((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ ((𝑁 + 1) ∈ ℕ0𝑊 ∈ Word 𝑉)))
2 peano2nn0 11180 . . . . . . . . . . . . . . . 16 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ0)
3 iswwlkn 25978 . . . . . . . . . . . . . . . 16 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ (𝑁 + 1) ∈ ℕ0) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) ↔ (𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1))))
42, 3syl3an3 1352 . . . . . . . . . . . . . . 15 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) ↔ (𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1))))
5 wwlkprop 25979 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑊 ∈ (𝑉 WWalks 𝐸) → (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑊 ∈ Word 𝑉))
6 lencl 13125 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑊 ∈ Word 𝑉 → (#‘𝑊) ∈ ℕ0)
7 eqcom 2616 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((#‘𝑊) = ((𝑁 + 1) + 1) ↔ ((𝑁 + 1) + 1) = (#‘𝑊))
8 nn0cn 11149 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ((#‘𝑊) ∈ ℕ0 → (#‘𝑊) ∈ ℂ)
98adantr 479 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → (#‘𝑊) ∈ ℂ)
10 1cnd 9912 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → 1 ∈ ℂ)
11 nn0cn 11149 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 ((𝑁 + 1) ∈ ℕ0 → (𝑁 + 1) ∈ ℂ)
122, 11syl 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℂ)
1312adantl 480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → (𝑁 + 1) ∈ ℂ)
14 subadd2 10136 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 (((#‘𝑊) ∈ ℂ ∧ 1 ∈ ℂ ∧ (𝑁 + 1) ∈ ℂ) → (((#‘𝑊) − 1) = (𝑁 + 1) ↔ ((𝑁 + 1) + 1) = (#‘𝑊)))
1514bicomd 211 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((#‘𝑊) ∈ ℂ ∧ 1 ∈ ℂ ∧ (𝑁 + 1) ∈ ℂ) → (((𝑁 + 1) + 1) = (#‘𝑊) ↔ ((#‘𝑊) − 1) = (𝑁 + 1)))
169, 10, 13, 15syl3anc 1317 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → (((𝑁 + 1) + 1) = (#‘𝑊) ↔ ((#‘𝑊) − 1) = (𝑁 + 1)))
177, 16syl5bb 270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → ((#‘𝑊) = ((𝑁 + 1) + 1) ↔ ((#‘𝑊) − 1) = (𝑁 + 1)))
18 eqcom 2616 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (((#‘𝑊) − 1) = (𝑁 + 1) ↔ (𝑁 + 1) = ((#‘𝑊) − 1))
1918biimpi 204 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (((#‘𝑊) − 1) = (𝑁 + 1) → (𝑁 + 1) = ((#‘𝑊) − 1))
2017, 19syl6bi 241 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((#‘𝑊) ∈ ℕ0𝑁 ∈ ℕ0) → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 + 1) = ((#‘𝑊) − 1)))
2120ex 448 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((#‘𝑊) ∈ ℕ0 → (𝑁 ∈ ℕ0 → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 + 1) = ((#‘𝑊) − 1))))
2221com23 83 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((#‘𝑊) ∈ ℕ0 → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 ∈ ℕ0 → (𝑁 + 1) = ((#‘𝑊) − 1))))
236, 22syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑊 ∈ Word 𝑉 → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 ∈ ℕ0 → (𝑁 + 1) = ((#‘𝑊) − 1))))
24233ad2ant3 1076 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑊 ∈ Word 𝑉) → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 ∈ ℕ0 → (𝑁 + 1) = ((#‘𝑊) − 1))))
255, 24syl 17 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑊 ∈ (𝑉 WWalks 𝐸) → ((#‘𝑊) = ((𝑁 + 1) + 1) → (𝑁 ∈ ℕ0 → (𝑁 + 1) = ((#‘𝑊) − 1))))
2625imp 443 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) → (𝑁 ∈ ℕ0 → (𝑁 + 1) = ((#‘𝑊) − 1)))
2726com12 32 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ0 → ((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) → (𝑁 + 1) = ((#‘𝑊) − 1)))
28273ad2ant3 1076 . . . . . . . . . . . . . . . . . . . 20 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0) → ((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) → (𝑁 + 1) = ((#‘𝑊) − 1)))
2928impcom 444 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → (𝑁 + 1) = ((#‘𝑊) − 1))
3029opeq2d 4341 . . . . . . . . . . . . . . . . . 18 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → ⟨0, (𝑁 + 1)⟩ = ⟨0, ((#‘𝑊) − 1)⟩)
3130oveq2d 6543 . . . . . . . . . . . . . . . . 17 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) = (𝑊 substr ⟨0, ((#‘𝑊) − 1)⟩))
32 simpll 785 . . . . . . . . . . . . . . . . . . . 20 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → 𝑊 ∈ (𝑉 WWalks 𝐸))
33 nn0ge0 11165 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ0 → 0 ≤ 𝑁)
34 2re 10937 . . . . . . . . . . . . . . . . . . . . . . . . . 26 2 ∈ ℝ
3534a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ0 → 2 ∈ ℝ)
36 nn0re 11148 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ0𝑁 ∈ ℝ)
3735, 36addge02d 10465 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ0 → (0 ≤ 𝑁 ↔ 2 ≤ (𝑁 + 2)))
3833, 37mpbid 220 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ ℕ0 → 2 ≤ (𝑁 + 2))
39 nn0cn 11149 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ0𝑁 ∈ ℂ)
40 1cnd 9912 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ0 → 1 ∈ ℂ)
4139, 40, 40addassd 9918 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ0 → ((𝑁 + 1) + 1) = (𝑁 + (1 + 1)))
42 1p1e2 10981 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (1 + 1) = 2
4342a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑁 ∈ ℕ0 → (1 + 1) = 2)
4443oveq2d 6543 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ ℕ0 → (𝑁 + (1 + 1)) = (𝑁 + 2))
4541, 44eqtrd 2643 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ ℕ0 → ((𝑁 + 1) + 1) = (𝑁 + 2))
4638, 45breqtrrd 4605 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ ℕ0 → 2 ≤ ((𝑁 + 1) + 1))
4746adantl 480 . . . . . . . . . . . . . . . . . . . . 21 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → 2 ≤ ((𝑁 + 1) + 1))
48 breq2 4581 . . . . . . . . . . . . . . . . . . . . . 22 ((#‘𝑊) = ((𝑁 + 1) + 1) → (2 ≤ (#‘𝑊) ↔ 2 ≤ ((𝑁 + 1) + 1)))
4948ad2antlr 758 . . . . . . . . . . . . . . . . . . . . 21 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → (2 ≤ (#‘𝑊) ↔ 2 ≤ ((𝑁 + 1) + 1)))
5047, 49mpbird 245 . . . . . . . . . . . . . . . . . . . 20 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → 2 ≤ (#‘𝑊))
5132, 50jca 552 . . . . . . . . . . . . . . . . . . 19 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → (𝑊 ∈ (𝑉 WWalks 𝐸) ∧ 2 ≤ (#‘𝑊)))
52513ad2antr3 1220 . . . . . . . . . . . . . . . . . 18 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → (𝑊 ∈ (𝑉 WWalks 𝐸) ∧ 2 ≤ (#‘𝑊)))
53 wwlkm1edg 26029 . . . . . . . . . . . . . . . . . 18 ((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ 2 ≤ (#‘𝑊)) → (𝑊 substr ⟨0, ((#‘𝑊) − 1)⟩) ∈ (𝑉 WWalks 𝐸))
5452, 53syl 17 . . . . . . . . . . . . . . . . 17 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → (𝑊 substr ⟨0, ((#‘𝑊) − 1)⟩) ∈ (𝑉 WWalks 𝐸))
5531, 54eqeltrd 2687 . . . . . . . . . . . . . . . 16 (((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ (𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0)) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸))
5655expcom 449 . . . . . . . . . . . . . . 15 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0) → ((𝑊 ∈ (𝑉 WWalks 𝐸) ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸)))
574, 56sylbid 228 . . . . . . . . . . . . . 14 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸)))
58573expia 1258 . . . . . . . . . . . . 13 ((𝑉 ∈ V ∧ 𝐸 ∈ V) → (𝑁 ∈ ℕ0 → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸))))
5958com23 83 . . . . . . . . . . . 12 ((𝑉 ∈ V ∧ 𝐸 ∈ V) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸))))
6059imp 443 . . . . . . . . . . 11 (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸)))
6160adantr 479 . . . . . . . . . 10 ((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸)))
6261imp 443 . . . . . . . . 9 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸))
63 wwlknimp 25981 . . . . . . . . . . . . 13 (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → (𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1) ∧ ∀𝑖 ∈ (0..^(𝑁 + 1)){(𝑊𝑖), (𝑊‘(𝑖 + 1))} ∈ ran 𝐸))
64 simpll 785 . . . . . . . . . . . . . . . 16 (((𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → 𝑊 ∈ Word 𝑉)
65 peano2nn0 11180 . . . . . . . . . . . . . . . . . . . . 21 ((𝑁 + 1) ∈ ℕ0 → ((𝑁 + 1) + 1) ∈ ℕ0)
662, 65syl 17 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ0 → ((𝑁 + 1) + 1) ∈ ℕ0)
67 peano2re 10060 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ ℝ → (𝑁 + 1) ∈ ℝ)
6836, 67syl 17 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℝ)
6968lep1d 10804 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ0 → (𝑁 + 1) ≤ ((𝑁 + 1) + 1))
70 elfz2nn0 12255 . . . . . . . . . . . . . . . . . . . 20 ((𝑁 + 1) ∈ (0...((𝑁 + 1) + 1)) ↔ ((𝑁 + 1) ∈ ℕ0 ∧ ((𝑁 + 1) + 1) ∈ ℕ0 ∧ (𝑁 + 1) ≤ ((𝑁 + 1) + 1)))
712, 66, 69, 70syl3anbrc 1238 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ (0...((𝑁 + 1) + 1)))
7271adantl 480 . . . . . . . . . . . . . . . . . 18 (((#‘𝑊) = ((𝑁 + 1) + 1) ∧ 𝑁 ∈ ℕ0) → (𝑁 + 1) ∈ (0...((𝑁 + 1) + 1)))
73 oveq2 6535 . . . . . . . . . . . . . . . . . . 19 ((#‘𝑊) = ((𝑁 + 1) + 1) → (0...(#‘𝑊)) = (0...((𝑁 + 1) + 1)))
7473adantr 479 . . . . . . . . . . . . . . . . . 18 (((#‘𝑊) = ((𝑁 + 1) + 1) ∧ 𝑁 ∈ ℕ0) → (0...(#‘𝑊)) = (0...((𝑁 + 1) + 1)))
7572, 74eleqtrrd 2690 . . . . . . . . . . . . . . . . 17 (((#‘𝑊) = ((𝑁 + 1) + 1) ∧ 𝑁 ∈ ℕ0) → (𝑁 + 1) ∈ (0...(#‘𝑊)))
7675adantll 745 . . . . . . . . . . . . . . . 16 (((𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → (𝑁 + 1) ∈ (0...(#‘𝑊)))
7764, 76jca 552 . . . . . . . . . . . . . . 15 (((𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) ∧ 𝑁 ∈ ℕ0) → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊))))
7877ex 448 . . . . . . . . . . . . . 14 ((𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1)) → (𝑁 ∈ ℕ0 → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊)))))
79783adant3 1073 . . . . . . . . . . . . 13 ((𝑊 ∈ Word 𝑉 ∧ (#‘𝑊) = ((𝑁 + 1) + 1) ∧ ∀𝑖 ∈ (0..^(𝑁 + 1)){(𝑊𝑖), (𝑊‘(𝑖 + 1))} ∈ ran 𝐸) → (𝑁 ∈ ℕ0 → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊)))))
8063, 79syl 17 . . . . . . . . . . . 12 (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → (𝑁 ∈ ℕ0 → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊)))))
8180ad2antlr 758 . . . . . . . . . . 11 ((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) → (𝑁 ∈ ℕ0 → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊)))))
8281imp 443 . . . . . . . . . 10 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → (𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊))))
83 swrd0len 13220 . . . . . . . . . 10 ((𝑊 ∈ Word 𝑉 ∧ (𝑁 + 1) ∈ (0...(#‘𝑊))) → (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1))
8482, 83syl 17 . . . . . . . . 9 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1))
8562, 84jca 552 . . . . . . . 8 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1)))
86 iswwlkn 25978 . . . . . . . . . . . 12 ((𝑉 ∈ V ∧ 𝐸 ∈ V ∧ 𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1))))
87863expia 1258 . . . . . . . . . . 11 ((𝑉 ∈ V ∧ 𝐸 ∈ V) → (𝑁 ∈ ℕ0 → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1)))))
8887adantr 479 . . . . . . . . . 10 (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) → (𝑁 ∈ ℕ0 → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1)))))
8988adantr 479 . . . . . . . . 9 ((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) → (𝑁 ∈ ℕ0 → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1)))))
9089imp 443 . . . . . . . 8 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ (𝑉 WWalks 𝐸) ∧ (#‘(𝑊 substr ⟨0, (𝑁 + 1)⟩)) = (𝑁 + 1))))
9185, 90mpbird 245 . . . . . . 7 (((((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ 𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))) ∧ (𝑊‘0) = 𝑃) ∧ 𝑁 ∈ ℕ0) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁))
9291exp41 635 . . . . . 6 ((𝑉 ∈ V ∧ 𝐸 ∈ V) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → ((𝑊‘0) = 𝑃 → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁)))))
9392adantr 479 . . . . 5 (((𝑉 ∈ V ∧ 𝐸 ∈ V) ∧ ((𝑁 + 1) ∈ ℕ0𝑊 ∈ Word 𝑉)) → (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → ((𝑊‘0) = 𝑃 → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁)))))
941, 93mpcom 37 . . . 4 (𝑊 ∈ ((𝑉 WWalksN 𝐸)‘(𝑁 + 1)) → ((𝑊‘0) = 𝑃 → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁))))
95 wwlkextprop.x . . . 4 𝑋 = ((𝑉 WWalksN 𝐸)‘(𝑁 + 1))
9694, 95eleq2s 2705 . . 3 (𝑊𝑋 → ((𝑊‘0) = 𝑃 → (𝑁 ∈ ℕ0 → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁))))
97963imp 1248 . 2 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁))
9895wwlkextproplem1 26035 . . . 4 ((𝑊𝑋𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0) = (𝑊‘0))
99983adant2 1072 . . 3 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0) = (𝑊‘0))
100 simp2 1054 . . 3 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → (𝑊‘0) = 𝑃)
10199, 100eqtrd 2643 . 2 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0) = 𝑃)
102 fveq1 6087 . . . 4 (𝑤 = (𝑊 substr ⟨0, (𝑁 + 1)⟩) → (𝑤‘0) = ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0))
103102eqeq1d 2611 . . 3 (𝑤 = (𝑊 substr ⟨0, (𝑁 + 1)⟩) → ((𝑤‘0) = 𝑃 ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0) = 𝑃))
104 wwlkextprop.y . . 3 𝑌 = {𝑤 ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ∣ (𝑤‘0) = 𝑃}
105103, 104elrab2 3332 . 2 ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ 𝑌 ↔ ((𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ ((𝑉 WWalksN 𝐸)‘𝑁) ∧ ((𝑊 substr ⟨0, (𝑁 + 1)⟩)‘0) = 𝑃))
10697, 101, 105sylanbrc 694 1 ((𝑊𝑋 ∧ (𝑊‘0) = 𝑃𝑁 ∈ ℕ0) → (𝑊 substr ⟨0, (𝑁 + 1)⟩) ∈ 𝑌)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 194  wa 382  w3a 1030   = wceq 1474  wcel 1976  wral 2895  {crab 2899  Vcvv 3172  {cpr 4126  cop 4130   class class class wbr 4577  ran crn 5029  cfv 5790  (class class class)co 6527  cc 9790  cr 9791  0cc0 9792  1c1 9793   + caddc 9795  cle 9931  cmin 10117  2c2 10917  0cn0 11139  ...cfz 12152  ..^cfzo 12289  #chash 12934  Word cword 13092   substr csubstr 13096   WWalks cwwlk 25971   WWalksN cwwlkn 25972
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1712  ax-4 1727  ax-5 1826  ax-6 1874  ax-7 1921  ax-8 1978  ax-9 1985  ax-10 2005  ax-11 2020  ax-12 2033  ax-13 2233  ax-ext 2589  ax-rep 4693  ax-sep 4703  ax-nul 4712  ax-pow 4764  ax-pr 4828  ax-un 6824  ax-cnex 9848  ax-resscn 9849  ax-1cn 9850  ax-icn 9851  ax-addcl 9852  ax-addrcl 9853  ax-mulcl 9854  ax-mulrcl 9855  ax-mulcom 9856  ax-addass 9857  ax-mulass 9858  ax-distr 9859  ax-i2m1 9860  ax-1ne0 9861  ax-1rid 9862  ax-rnegex 9863  ax-rrecex 9864  ax-cnre 9865  ax-pre-lttri 9866  ax-pre-lttrn 9867  ax-pre-ltadd 9868  ax-pre-mulgt0 9869
This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3or 1031  df-3an 1032  df-tru 1477  df-fal 1480  df-ex 1695  df-nf 1700  df-sb 1867  df-eu 2461  df-mo 2462  df-clab 2596  df-cleq 2602  df-clel 2605  df-nfc 2739  df-ne 2781  df-nel 2782  df-ral 2900  df-rex 2901  df-reu 2902  df-rab 2904  df-v 3174  df-sbc 3402  df-csb 3499  df-dif 3542  df-un 3544  df-in 3546  df-ss 3553  df-pss 3555  df-nul 3874  df-if 4036  df-pw 4109  df-sn 4125  df-pr 4127  df-tp 4129  df-op 4131  df-uni 4367  df-int 4405  df-iun 4451  df-br 4578  df-opab 4638  df-mpt 4639  df-tr 4675  df-eprel 4939  df-id 4943  df-po 4949  df-so 4950  df-fr 4987  df-we 4989  df-xp 5034  df-rel 5035  df-cnv 5036  df-co 5037  df-dm 5038  df-rn 5039  df-res 5040  df-ima 5041  df-pred 5583  df-ord 5629  df-on 5630  df-lim 5631  df-suc 5632  df-iota 5754  df-fun 5792  df-fn 5793  df-f 5794  df-f1 5795  df-fo 5796  df-f1o 5797  df-fv 5798  df-riota 6489  df-ov 6530  df-oprab 6531  df-mpt2 6532  df-om 6935  df-1st 7036  df-2nd 7037  df-wrecs 7271  df-recs 7332  df-rdg 7370  df-1o 7424  df-oadd 7428  df-er 7606  df-map 7723  df-pm 7724  df-en 7819  df-dom 7820  df-sdom 7821  df-fin 7822  df-card 8625  df-pnf 9932  df-mnf 9933  df-xr 9934  df-ltxr 9935  df-le 9936  df-sub 10119  df-neg 10120  df-nn 10868  df-2 10926  df-n0 11140  df-z 11211  df-uz 11520  df-fz 12153  df-fzo 12290  df-hash 12935  df-word 13100  df-substr 13104  df-wwlk 25973  df-wwlkn 25974
This theorem is referenced by:  wwlkextprop  26038
  Copyright terms: Public domain W3C validator