Description: Define the set of all paths (in an undirected graph).
According to Wikipedia ("Path (graph theory)", https://en.wikipedia.org/wiki/Path_(graph_theory) , 3-Oct-2017): "A path is a trail in which all vertices (except possibly the first and last) are distinct. ... use the term simple path to refer to a path which contains no repeated vertices."
According to Bollobas: "... a path is a walk with distinct vertices.", see Notation of Bollobas p. 5. (A walk with distinct vertices is actually a simple path, see upgrwlkdvspth ).
Therefore, a path can be represented by an injective mapping f from { 1 , ... , n } and a mapping p from { 0 , ... , n }, which is injective restricted to the set { 1 , ... , n }, where f enumerates the (indices of the) different edges, and p enumerates the vertices. So the path is also represented by the following sequence: p(0) e(f(1)) p(1) e(f(2)) ... p(n-1) e(f(n)) p(n). (Contributed by Alexander van der Vekens and Mario Carneiro, 4-Oct-2017) (Revised by AV, 9-Jan-2021)
Ref | Expression | ||
---|---|---|---|
Assertion | df-pths | ⊢ Paths = ( 𝑔 ∈ V ↦ { 〈 𝑓 , 𝑝 〉 ∣ ( 𝑓 ( Trails ‘ 𝑔 ) 𝑝 ∧ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ∧ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ ) } ) |
Step | Hyp | Ref | Expression |
---|---|---|---|
0 | cpths | ⊢ Paths | |
1 | vg | ⊢ 𝑔 | |
2 | cvv | ⊢ V | |
3 | vf | ⊢ 𝑓 | |
4 | vp | ⊢ 𝑝 | |
5 | 3 | cv | ⊢ 𝑓 |
6 | ctrls | ⊢ Trails | |
7 | 1 | cv | ⊢ 𝑔 |
8 | 7 6 | cfv | ⊢ ( Trails ‘ 𝑔 ) |
9 | 4 | cv | ⊢ 𝑝 |
10 | 5 9 8 | wbr | ⊢ 𝑓 ( Trails ‘ 𝑔 ) 𝑝 |
11 | c1 | ⊢ 1 | |
12 | cfzo | ⊢ ..^ | |
13 | chash | ⊢ ♯ | |
14 | 5 13 | cfv | ⊢ ( ♯ ‘ 𝑓 ) |
15 | 11 14 12 | co | ⊢ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) |
16 | 9 15 | cres | ⊢ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) |
17 | 16 | ccnv | ⊢ ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) |
18 | 17 | wfun | ⊢ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) |
19 | cc0 | ⊢ 0 | |
20 | 19 14 | cpr | ⊢ { 0 , ( ♯ ‘ 𝑓 ) } |
21 | 9 20 | cima | ⊢ ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) |
22 | 9 15 | cima | ⊢ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) |
23 | 21 22 | cin | ⊢ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) |
24 | c0 | ⊢ ∅ | |
25 | 23 24 | wceq | ⊢ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ |
26 | 10 18 25 | w3a | ⊢ ( 𝑓 ( Trails ‘ 𝑔 ) 𝑝 ∧ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ∧ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ ) |
27 | 26 3 4 | copab | ⊢ { 〈 𝑓 , 𝑝 〉 ∣ ( 𝑓 ( Trails ‘ 𝑔 ) 𝑝 ∧ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ∧ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ ) } |
28 | 1 2 27 | cmpt | ⊢ ( 𝑔 ∈ V ↦ { 〈 𝑓 , 𝑝 〉 ∣ ( 𝑓 ( Trails ‘ 𝑔 ) 𝑝 ∧ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ∧ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ ) } ) |
29 | 0 28 | wceq | ⊢ Paths = ( 𝑔 ∈ V ↦ { 〈 𝑓 , 𝑝 〉 ∣ ( 𝑓 ( Trails ‘ 𝑔 ) 𝑝 ∧ Fun ◡ ( 𝑝 ↾ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ∧ ( ( 𝑝 “ { 0 , ( ♯ ‘ 𝑓 ) } ) ∩ ( 𝑝 “ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) ) ) = ∅ ) } ) |