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

Theorem clwlkclwwlk 29931
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 29100 . . . . 5 (𝐺 ∈ USPGraph → 𝐸:dom 𝐸1-1-onto→(Edg‘𝐺))
3 f1of1 6799 . . . . 5 (𝐸:dom 𝐸1-1-onto→(Edg‘𝐺) → 𝐸:dom 𝐸1-1→(Edg‘𝐺))
42, 3syl 17 . . . 4 (𝐺 ∈ USPGraph → 𝐸:dom 𝐸1-1→(Edg‘𝐺))
5 clwlkclwwlklem3 29930 . . . 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 1163 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))) ↔ ((lastS‘𝑃) = (𝑃‘0) ∧ (∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸 ∧ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸))))
7 lencl 14498 . . . . . . . . . . . . . 14 (𝑃 ∈ Word 𝑉 → (♯‘𝑃) ∈ ℕ0)
8 ige2m1fz 13578 . . . . . . . . . . . . . 14 (((♯‘𝑃) ∈ ℕ0 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃)))
97, 8sylan 580 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃)))
10 pfxlen 14648 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ (0...(♯‘𝑃))) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = ((♯‘𝑃) − 1))
119, 10syldan 591 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = ((♯‘𝑃) − 1))
127nn0cnd 12505 . . . . . . . . . . . . . . . 16 (𝑃 ∈ Word 𝑉 → (♯‘𝑃) ∈ ℂ)
13 1cnd 11169 . . . . . . . . . . . . . . . 16 (𝑃 ∈ Word 𝑉 → 1 ∈ ℂ)
1412, 13subcld 11533 . . . . . . . . . . . . . . 15 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) ∈ ℂ)
1514subid1d 11522 . . . . . . . . . . . . . 14 (𝑃 ∈ Word 𝑉 → (((♯‘𝑃) − 1) − 0) = ((♯‘𝑃) − 1))
1615eqcomd 2735 . . . . . . . . . . . . 13 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) = (((♯‘𝑃) − 1) − 0))
1716adantr 480 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) = (((♯‘𝑃) − 1) − 0))
1811, 17eqtrd 2764 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘(𝑃 prefix ((♯‘𝑃) − 1))) = (((♯‘𝑃) − 1) − 0))
1918oveq1d 7402 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1) = ((((♯‘𝑃) − 1) − 0) − 1))
2019oveq2d 7403 . . . . . . . . 9 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) = (0..^((((♯‘𝑃) − 1) − 0) − 1)))
2111oveq1d 7402 . . . . . . . . . . . . 13 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1) = (((♯‘𝑃) − 1) − 1))
2221oveq2d 7403 . . . . . . . . . . . 12 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) = (0..^(((♯‘𝑃) − 1) − 1)))
2322eleq2d 2814 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)) ↔ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))))
24 simpll 766 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑃 ∈ Word 𝑉)
25 wrdlenge2n0 14517 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → 𝑃 ≠ ∅)
2625adantr 480 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑃 ≠ ∅)
27 nn0z 12554 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑃) ∈ ℕ0 → (♯‘𝑃) ∈ ℤ)
28 peano2zm 12576 . . . . . . . . . . . . . . . . . . 19 ((♯‘𝑃) ∈ ℤ → ((♯‘𝑃) − 1) ∈ ℤ)
2927, 28syl 17 . . . . . . . . . . . . . . . . . 18 ((♯‘𝑃) ∈ ℕ0 → ((♯‘𝑃) − 1) ∈ ℤ)
307, 29syl 17 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ Word 𝑉 → ((♯‘𝑃) − 1) ∈ ℤ)
3130adantr 480 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℤ)
32 elfzom1elfzo 13694 . . . . . . . . . . . . . . . 16 ((((♯‘𝑃) − 1) ∈ ℤ ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑖 ∈ (0..^((♯‘𝑃) − 1)))
3331, 32sylan 580 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → 𝑖 ∈ (0..^((♯‘𝑃) − 1)))
34 pfxtrcfv 14658 . . . . . . . . . . . . . . 15 ((𝑃 ∈ Word 𝑉𝑃 ≠ ∅ ∧ 𝑖 ∈ (0..^((♯‘𝑃) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖) = (𝑃𝑖))
3524, 26, 33, 34syl3anc 1373 . . . . . . . . . . . . . 14 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖) = (𝑃𝑖))
367adantr 480 . . . . . . . . . . . . . . . 16 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (♯‘𝑃) ∈ ℕ0)
37 elfzom1elp1fzo 13693 . . . . . . . . . . . . . . . . 17 ((((♯‘𝑃) − 1) ∈ ℤ ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
3829, 37sylan 580 . . . . . . . . . . . . . . . 16 (((♯‘𝑃) ∈ ℕ0𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
3936, 38sylan 580 . . . . . . . . . . . . . . 15 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1)))
40 pfxtrcfv 14658 . . . . . . . . . . . . . . 15 ((𝑃 ∈ Word 𝑉𝑃 ≠ ∅ ∧ (𝑖 + 1) ∈ (0..^((♯‘𝑃) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1)) = (𝑃‘(𝑖 + 1)))
4124, 26, 39, 40syl3anc 1373 . . . . . . . . . . . . . 14 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1)) = (𝑃‘(𝑖 + 1)))
4235, 41preq12d 4705 . . . . . . . . . . . . 13 (((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) ∧ 𝑖 ∈ (0..^(((♯‘𝑃) − 1) − 1))) → {((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} = {(𝑃𝑖), (𝑃‘(𝑖 + 1))})
4342eleq1d 2813 . . . . . . . . . . . 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 3305 . . . . . . . 8 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸 ↔ ∀𝑖 ∈ (0..^((((♯‘𝑃) − 1) − 0) − 1)){(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∈ ran 𝐸))
48 pfxtrcfvl 14662 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (lastS‘(𝑃 prefix ((♯‘𝑃) − 1))) = (𝑃‘((♯‘𝑃) − 2)))
49 pfxtrcfv0 14659 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((𝑃 prefix ((♯‘𝑃) − 1))‘0) = (𝑃‘0))
5048, 49preq12d 4705 . . . . . . . . 9 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} = {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)})
5150eleq1d 2813 . . . . . . . 8 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ({(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸 ↔ {(𝑃‘((♯‘𝑃) − 2)), (𝑃‘0)} ∈ ran 𝐸))
5247, 51anbi12d 632 . . . . . . 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 1130 . . . . 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 14642 . . . . . . 7 (𝑃 ∈ Word 𝑉 → (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉)
56553ad2ant2 1134 . . . . . 6 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 prefix ((♯‘𝑃) − 1)) ∈ Word 𝑉)
57563biant1d 1480 . . . . 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 630 . . 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 29105 . . . . . 6 (𝐺 ∈ USPGraph → 𝐺 ∈ UPGraph)
62 clwlkclwwlk.v . . . . . . . 8 𝑉 = (Vtx‘𝐺)
6362, 1isclwlkupgr 29708 . . . . . . 7 (𝐺 ∈ UPGraph → (𝑓(ClWalks‘𝐺)𝑃 ↔ ((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉) ∧ (∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))} ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓))))))
64 3an4anass 1104 . . . . . . 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 1921 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
69683adant3 1132 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)𝑃 ↔ ∃𝑓((𝑓 ∈ Word dom 𝐸𝑃:(0...(♯‘𝑓))⟶𝑉 ∧ ∀𝑖 ∈ (0..^(♯‘𝑓))(𝐸‘(𝑓𝑖)) = {(𝑃𝑖), (𝑃‘(𝑖 + 1))}) ∧ (𝑃‘0) = (𝑃‘(♯‘𝑓)))))
70 eqid 2729 . . . . . 6 (Edg‘𝐺) = (Edg‘𝐺)
7162, 70isclwwlk 29913 . . . . 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 12512 . . . . . . . . . . . 12 (((♯‘𝑃) ∈ ℕ0 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℕ)
747, 73sylan 580 . . . . . . . . . . 11 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → ((♯‘𝑃) − 1) ∈ ℕ)
75 nn0re 12451 . . . . . . . . . . . . . . 15 ((♯‘𝑃) ∈ ℕ0 → (♯‘𝑃) ∈ ℝ)
7675lem1d 12116 . . . . . . . . . . . . . 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 1128 . . . . . . . . . 10 ((𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ ℕ ∧ ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
81803adant1 1130 . . . . . . . . 9 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ((♯‘𝑃) − 1) ∈ ℕ ∧ ((♯‘𝑃) − 1) ≤ (♯‘𝑃)))
82 pfxn0 14651 . . . . . . . . 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 1442 . . . . 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 28976 . . . . . . . 8 (Edg‘𝐺) = ran (iEdg‘𝐺)
901eqcomi 2738 . . . . . . . . 9 (iEdg‘𝐺) = 𝐸
9190rneqi 5901 . . . . . . . 8 ran (iEdg‘𝐺) = ran 𝐸
9289, 91eqtri 2752 . . . . . . 7 (Edg‘𝐺) = ran 𝐸
9392eleq2i 2820 . . . . . 6 ({((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ↔ {((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸)
9493ralbii 3075 . . . . 5 (∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ (Edg‘𝐺) ↔ ∀𝑖 ∈ (0..^((♯‘(𝑃 prefix ((♯‘𝑃) − 1))) − 1)){((𝑃 prefix ((♯‘𝑃) − 1))‘𝑖), ((𝑃 prefix ((♯‘𝑃) − 1))‘(𝑖 + 1))} ∈ ran 𝐸)
9592eleq2i 2820 . . . . 5 ({(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ (Edg‘𝐺) ↔ {(lastS‘(𝑃 prefix ((♯‘𝑃) − 1))), ((𝑃 prefix ((♯‘𝑃) − 1))‘0)} ∈ ran 𝐸)
9688, 94, 953anbi123i 1155 . . . 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 630 . 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 1086   = wceq 1540  wex 1779  wcel 2109  wne 2925  wral 3044  c0 4296  {cpr 4591   class class class wbr 5107  dom cdm 5638  ran crn 5639  wf 6507  1-1wf1 6508  1-1-ontowf1o 6510  cfv 6511  (class class class)co 7387  0cc0 11068  1c1 11069   + caddc 11071  cle 11209  cmin 11405  cn 12186  2c2 12241  0cn0 12442  cz 12529  ...cfz 13468  ..^cfzo 13615  chash 14295  Word cword 14478  lastSclsw 14527   prefix cpfx 14635  Vtxcvtx 28923  iEdgciedg 28924  Edgcedg 28974  UPGraphcupgr 29007  USPGraphcuspgr 29075  ClWalkscclwlks 29700  ClWWalkscclwwlk 29910
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5234  ax-sep 5251  ax-nul 5261  ax-pow 5320  ax-pr 5387  ax-un 7711  ax-cnex 11124  ax-resscn 11125  ax-1cn 11126  ax-icn 11127  ax-addcl 11128  ax-addrcl 11129  ax-mulcl 11130  ax-mulrcl 11131  ax-mulcom 11132  ax-addass 11133  ax-mulass 11134  ax-distr 11135  ax-i2m1 11136  ax-1ne0 11137  ax-1rid 11138  ax-rnegex 11139  ax-rrecex 11140  ax-cnre 11141  ax-pre-lttri 11142  ax-pre-lttrn 11143  ax-pre-ltadd 11144  ax-pre-mulgt0 11145
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-ifp 1063  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-reu 3355  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-pss 3934  df-nul 4297  df-if 4489  df-pw 4565  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4872  df-int 4911  df-iun 4957  df-br 5108  df-opab 5170  df-mpt 5189  df-tr 5215  df-id 5533  df-eprel 5538  df-po 5546  df-so 5547  df-fr 5591  df-we 5593  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-pred 6274  df-ord 6335  df-on 6336  df-lim 6337  df-suc 6338  df-iota 6464  df-fun 6513  df-fn 6514  df-f 6515  df-f1 6516  df-fo 6517  df-f1o 6518  df-fv 6519  df-riota 7344  df-ov 7390  df-oprab 7391  df-mpo 7392  df-om 7843  df-1st 7968  df-2nd 7969  df-frecs 8260  df-wrecs 8291  df-recs 8340  df-rdg 8378  df-1o 8434  df-2o 8435  df-oadd 8438  df-er 8671  df-map 8801  df-pm 8802  df-en 8919  df-dom 8920  df-sdom 8921  df-fin 8922  df-dju 9854  df-card 9892  df-pnf 11210  df-mnf 11211  df-xr 11212  df-ltxr 11213  df-le 11214  df-sub 11407  df-neg 11408  df-nn 12187  df-2 12249  df-n0 12443  df-xnn0 12516  df-z 12530  df-uz 12794  df-fz 13469  df-fzo 13616  df-hash 14296  df-word 14479  df-lsw 14528  df-substr 14606  df-pfx 14636  df-edg 28975  df-uhgr 28985  df-upgr 29009  df-uspgr 29077  df-wlks 29527  df-clwlks 29701  df-clwwlk 29911
This theorem is referenced by:  clwlkclwwlk2  29932  clwlkclwwlkf  29937
  Copyright terms: Public domain W3C validator