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

Theorem clwlkclwwlk 30095
Description: A closed walk as word of length at least 2 corresponds to a closed walk in a simple pseudograph. (Contributed by Alexander van der Vekens, 22-Jun-2018.) (Revised by AV, 24-Apr-2021.) (Revised by AV, 30-Oct-2022.)
Hypotheses
Ref Expression
clwlkclwwlk.v 𝑉 = (Vtx‘𝐺)
clwlkclwwlk.e 𝐸 = (iEdg‘𝐺)
Assertion
Ref Expression
clwlkclwwlk ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺))))
Distinct variable groups:   𝑓,𝐸   𝑃,𝑓   𝑓,𝑉   𝑓,𝐺

Proof of Theorem clwlkclwwlk
Dummy variable 𝑖 is distinct from all other variables.
StepHypRef Expression
1 clwlkclwwlk.e . . . . . 6 𝐸 = (iEdg‘𝐺)
21uspgrf1oedg 29264 . . . . 5 (𝐺 ∈ USPGraph → 𝐸:dom 𝐸1-1-onto→(Edg‘𝐺))
3 f1of1 6783 . . . . 5 (𝐸:dom 𝐸1-1-onto→(Edg‘𝐺) → 𝐸:dom 𝐸1-1→(Edg‘𝐺))
42, 3syl 17 . . . 4 (𝐺 ∈ USPGraph → 𝐸:dom 𝐸1-1→(Edg‘𝐺))
5 clwlkclwwlklem3 30094 . . . 4 ((𝐸:dom 𝐸1-1→(Edg‘𝐺) ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ (∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸))))
64, 5syl3an1 1164 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ (∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸))))
7 lencl 14470 . . . . . . . . . . . . . 14 (𝑃 ∈ Word 𝑉 → (♯‘𝑃) ∈ ℕ0)
8 ige2m1fz 13547 . . . . . . . . . . . . . 14 (((♯‘𝑃) ∈ ℕ0 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃)))
97, 8sylan 581 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃)))
10 pfxlen 14621 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃))) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = ((♯‘𝑃) − 1))
119, 10syldan 592 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = ((♯‘𝑃) − 1))
127nn0cnd 12478 . . . . . . . . . . . . . . . 16 (𝑃 ∈ Word 𝑉 → (♯‘𝑃) ∈ ℂ)
13 1cnd 11141 . . . . . . . . . . . . . . . 16 (𝑃 ∈ Word 𝑉 → 1 ∈ ℂ)
1412, 13subcld 11506 . . . . . . . . . . . . . . 15 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) ∈ ℂ)
1514subid1d 11495 . . . . . . . . . . . . . 14 (𝑃 ∈ Word 𝑉 → (((♯‘𝑃) − 1) − 0) = ((♯‘𝑃) − 1))
1615eqcomd 2743 . . . . . . . . . . . . 13 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) = (((♯‘𝑃) − 1) − 0))
1716adantr 480 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) = (((♯‘𝑃) − 1) − 0))
1811, 17eqtrd 2772 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = (((♯‘𝑃) − 1) − 0))
1918oveq1d 7385 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1) = ((((♯‘𝑃) − 1) − 0) − 1))
2019oveq2d 7386 . . . . . . . . 9 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) = (0..^((((♯‘𝑃) − 1) − 0) − 1)))
2111oveq1d 7385 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1) = (((♯‘𝑃) − 1) − 1))
2221oveq2d 7386 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) = (0..^(((♯‘𝑃) − 1) − 1)))
2322eleq2d 2823 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) ↔ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))))
24 simpll 767 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑃 ∈ Word 𝑉)
25 wrdlenge2n0 14489 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → 𝑃 ≠ ∅)
2625adantr 480 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑃 ≠ ∅)
27 nn0z 12526 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑃) ∈ ℕ0 → (♯‘𝑃) ∈ ℤ)
28 peano2zm 12548 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑃) ∈ ℤ → ((♯‘𝑃) − 1) ∈ ℤ)
2927, 28syl 17 . . . . . . . . . . . . . . . . . 18 ((♯‘𝑃) ∈ ℕ0 → ((♯‘𝑃) − 1) ∈ ℤ)
307, 29syl 17 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) ∈ ℤ)
3130adantr 480 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℤ)
32 elfzom1elfzo 13663 . . . . . . . . . . . . . . . 16 ((((♯‘𝑃) − 1) ∈ ℤ ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑖 ∈ (0..^((♯‘𝑃) − 1)))
3331, 32sylan 581 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑖 ∈ (0..^((♯‘𝑃) − 1)))
34 pfxtrcfv 14630 . . . . . . . . . . . . . . 15 ((𝑃 ∈ Word 𝑉𝑃 ≠ ∅ ∧ 𝑖 ∈ (0..^((♯‘𝑃) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖) = (𝑃𝑖))
3524, 26, 33, 34syl3anc 1374 . . . . . . . . . . . . . 14 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖) = (𝑃𝑖))
367adantr 480 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘𝑃) ∈ ℕ0)
37 elfzom1elp1fzo 13662 . . . . . . . . . . . . . . . . 17 ((((♯‘𝑃) − 1) ∈ ℤ ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
3829, 37sylan 581 . . . . . . . . . . . . . . . 16 (((♯‘𝑃) ∈ ℕ0𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
3936, 38sylan 581 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
40 pfxtrcfv 14630 . . . . . . . . . . . . . . 15 ((𝑃 ∈ Word 𝑉𝑃 ≠ ∅ ∧ (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1)) = (𝑃‘(𝑖 + 1)))
4124, 26, 39, 40syl3anc 1374 . . . . . . . . . . . . . 14 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1)) = (𝑃‘(𝑖 + 1)))
4235, 41preq12d 4700 . . . . . . . . . . . . 13 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → {((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} = {(𝑃𝑖), (𝑃‘(𝑖 + 1))})
4342eleq1d 2822 . . . . . . . . . . . 12 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸))
4443ex 412 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1)) → ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸)))
4523, 44sylbid 240 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) → ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸)))
4645imp 406 . . . . . . . . 9 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1))) → ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸))
4720, 46raleqbidva 3304 . . . . . . . 8 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ ∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸))
48 pfxtrcfvl 14634 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (lastS‘(𝑃 prefix ((♯‘𝑃) − 1))) = (𝑃‘((♯‘𝑃) − 2)))
49 pfxtrcfv0 14631 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((𝑃 prefix ((♯‘𝑃) − 1))‘0) = (𝑃‘0))
5048, 49preq12d 4700 . . . . . . . . 9 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} = {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)})
5150eleq1d 2822 . . . . . . . 8 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ({(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸 ↔ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸))
5247, 51anbi12d 633 . . . . . . 7 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸) ↔ (∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸)))
5352bicomd 223 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸) ↔ (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)))
54533adant1 1131 . . . . 5 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸) ↔ (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)))
55 pfxcl 14615 . . . . . . 7 (𝑃 ∈ Word 𝑉 → (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉)
56553ad2ant2 1135 . . . . . 6 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉)
57563biant1d 1481 . . . . 5 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)))
5854, 57bitrd 279 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)))
5958anbi2d 631 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (((lastS‘𝑃) = (𝑃‘0) ∧ (∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸)) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸))))
606, 59bitrd 279 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸))))
61 uspgrupgr 29269 . . . . . 6 (𝐺 ∈ USPGraph → 𝐺 ∈ UPGraph)
62 clwlkclwwlk.v . . . . . . . 8 𝑉 = (Vtx‘𝐺)
6362, 1isclwlkupgr 29869 . . . . . . 7 (𝐺 ∈ UPGraph → (𝑓(ClWalks‘𝐺)𝑃 ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉) ∧ (∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))))))
64 3an4anass 1105 . . . . . . 7 (((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))) ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉) ∧ (∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
6563, 64bitr4di 289 . . . . . 6 (𝐺 ∈ UPGraph → (𝑓(ClWalks‘𝐺)𝑃 ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
6661, 65syl 17 . . . . 5 (𝐺 ∈ USPGraph → (𝑓(ClWalks‘𝐺)𝑃 ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
6766adantr 480 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉) → (𝑓(ClWalks‘𝐺)𝑃 ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
6867exbidv 1923 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
69683adant3 1133 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
70 eqid 2737 . . . . . 6 (Edg‘𝐺) = (Edg‘𝐺)
7162, 70isclwwlk 30077 . . . . 5 ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺) ↔ (((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅) ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺)))
72 simpl 482 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → 𝑃 ∈ Word 𝑉)
73 nn0ge2m1nn 12485 . . . . . . . . . . . 12 (((♯‘𝑃) ∈ ℕ0 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℕ)
747, 73sylan 581 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℕ)
75 nn0re 12424 . . . . . . . . . . . . . . 15 ((♯‘𝑃) ∈ ℕ0 → (♯‘𝑃) ∈ ℝ)
7675lem1d 12089 . . . . . . . . . . . . . 14 ((♯‘𝑃) ∈ ℕ0 → ((♯‘𝑃) − 1) ≤ (♯‘𝑃))
7776a1d 25 . . . . . . . . . . . . 13 ((♯‘𝑃) ∈ ℕ0 → (2 ≤ (♯‘𝑃) → ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
787, 77syl 17 . . . . . . . . . . . 12 (𝑃 ∈ Word 𝑉 → (2 ≤ (♯‘𝑃) → ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
7978imp 406 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ≤ (♯‘𝑃))
8072, 74, 793jca 1129 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ ℕ ∧ ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
81803adant1 1131 . . . . . . . . 9 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ ℕ ∧ ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
82 pfxn0 14624 . . . . . . . . 9 ((𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ ℕ ∧ ((♯‘𝑃) − 1) ≤ (♯‘𝑃)) → (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅)
8381, 82syl 17 . . . . . . . 8 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅)
8483biantrud 531 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅)))
8584bicomd 223 . . . . . 6 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅) ↔ (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉))
86853anbi1d 1443 . . . . 5 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ≠ ∅) ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺)) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺))))
8771, 86bitrid 283 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺))))
88 biid 261 . . . . 5 ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ↔ (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉)
89 edgval 29140 . . . . . . . 8 (Edg‘𝐺) = ran (iEdg‘𝐺)
901eqcomi 2746 . . . . . . . . 9 (iEdg‘𝐺) = 𝐸
9190rneqi 5896 . . . . . . . 8 ran (iEdg‘𝐺) = ran 𝐸
9289, 91eqtri 2760 . . . . . . 7 (Edg‘𝐺) = ran 𝐸
9392eleq2i 2829 . . . . . 6 ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ↔ {((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸)
9493ralbii 3084 . . . . 5 (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ↔ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸)
9592eleq2i 2829 . . . . 5 ({(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺) ↔ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)
9688, 94, 953anbi123i 1156 . . . 4 (((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺)) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸))
9787, 96bitrdi 287 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺) ↔ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)))
9897anbi2d 631 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (((lastS‘𝑃) = (𝑃‘0) ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺)) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ ((𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉 ∧ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸))))
9960, 69, 983bitr4d 311 1 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ (𝑃 prefix ((♯‘𝑃) − 1)) ∈ (ClWWalks‘𝐺))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wex 1781  wcel 2114  wne 2933  wral 3052  c0 4287  {cpr 4584   class class class wbr 5100  dom cdm 5634  ran crn 5635  wf 6498  1-1wf1 6499  1-1-ontowf1o 6501  cfv 6502  (class class class)co 7370  0cc0 11040  1c1 11041   + caddc 11043  cle 11181  cmin 11378  cn 12159  2c2 12214  0cn0 12415  cz 12502  ...cfz 13437  ..^cfzo 13584  chash 14267  Word cword 14450  lastSclsw 14499   prefix cpfx 14608  Vtxcvtx 29087  iEdgciedg 29088  Edgcedg 29138  UPGraphcupgr 29171  USPGraphcuspgr 29239  ClWalkscclwlks 29861  ClWWalkscclwwlk 30074
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5226  ax-sep 5245  ax-nul 5255  ax-pow 5314  ax-pr 5381  ax-un 7692  ax-cnex 11096  ax-resscn 11097  ax-1cn 11098  ax-icn 11099  ax-addcl 11100  ax-addrcl 11101  ax-mulcl 11102  ax-mulrcl 11103  ax-mulcom 11104  ax-addass 11105  ax-mulass 11106  ax-distr 11107  ax-i2m1 11108  ax-1ne0 11109  ax-1rid 11110  ax-rnegex 11111  ax-rrecex 11112  ax-cnre 11113  ax-pre-lttri 11114  ax-pre-lttrn 11115  ax-pre-ltadd 11116  ax-pre-mulgt0 11117
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-ifp 1064  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-nel 3038  df-ral 3053  df-rex 3063  df-reu 3353  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-int 4905  df-iun 4950  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5529  df-eprel 5534  df-po 5542  df-so 5543  df-fr 5587  df-we 5589  df-xp 5640  df-rel 5641  df-cnv 5642  df-co 5643  df-dm 5644  df-rn 5645  df-res 5646  df-ima 5647  df-pred 6269  df-ord 6330  df-on 6331  df-lim 6332  df-suc 6333  df-iota 6458  df-fun 6504  df-fn 6505  df-f 6506  df-f1 6507  df-fo 6508  df-f1o 6509  df-fv 6510  df-riota 7327  df-ov 7373  df-oprab 7374  df-mpo 7375  df-om 7821  df-1st 7945  df-2nd 7946  df-frecs 8235  df-wrecs 8266  df-recs 8315  df-rdg 8353  df-1o 8409  df-2o 8410  df-oadd 8413  df-er 8647  df-map 8779  df-pm 8780  df-en 8898  df-dom 8899  df-sdom 8900  df-fin 8901  df-dju 9827  df-card 9865  df-pnf 11182  df-mnf 11183  df-xr 11184  df-ltxr 11185  df-le 11186  df-sub 11380  df-neg 11381  df-nn 12160  df-2 12222  df-n0 12416  df-xnn0 12489  df-z 12503  df-uz 12766  df-fz 13438  df-fzo 13585  df-hash 14268  df-word 14451  df-lsw 14500  df-substr 14579  df-pfx 14609  df-edg 29139  df-uhgr 29149  df-upgr 29173  df-uspgr 29241  df-wlks 29691  df-clwlks 29862  df-clwwlk 30075
This theorem is referenced by:  clwlkclwwlk2  30096  clwlkclwwlkf  30101
  Copyright terms: Public domain W3C validator