This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The set of walks (in an undirected graph). (Contributed by AV, 30-Dec-2020)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | wksfval.v | |- V = ( Vtx ` G ) |
|
| wksfval.i | |- I = ( iEdg ` G ) |
||
| Assertion | wksfval | |- ( G e. W -> ( Walks ` G ) = { <. f , p >. | ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | wksfval.v | |- V = ( Vtx ` G ) |
|
| 2 | wksfval.i | |- I = ( iEdg ` G ) |
|
| 3 | df-wlks | |- Walks = ( g e. _V |-> { <. f , p >. | ( f e. Word dom ( iEdg ` g ) /\ p : ( 0 ... ( # ` f ) ) --> ( Vtx ` g ) /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) ) ) } ) |
|
| 4 | fveq2 | |- ( g = G -> ( iEdg ` g ) = ( iEdg ` G ) ) |
|
| 5 | 4 2 | eqtr4di | |- ( g = G -> ( iEdg ` g ) = I ) |
| 6 | 5 | dmeqd | |- ( g = G -> dom ( iEdg ` g ) = dom I ) |
| 7 | wrdeq | |- ( dom ( iEdg ` g ) = dom I -> Word dom ( iEdg ` g ) = Word dom I ) |
|
| 8 | 6 7 | syl | |- ( g = G -> Word dom ( iEdg ` g ) = Word dom I ) |
| 9 | 8 | eleq2d | |- ( g = G -> ( f e. Word dom ( iEdg ` g ) <-> f e. Word dom I ) ) |
| 10 | fveq2 | |- ( g = G -> ( Vtx ` g ) = ( Vtx ` G ) ) |
|
| 11 | 10 1 | eqtr4di | |- ( g = G -> ( Vtx ` g ) = V ) |
| 12 | 11 | feq3d | |- ( g = G -> ( p : ( 0 ... ( # ` f ) ) --> ( Vtx ` g ) <-> p : ( 0 ... ( # ` f ) ) --> V ) ) |
| 13 | 5 | fveq1d | |- ( g = G -> ( ( iEdg ` g ) ` ( f ` k ) ) = ( I ` ( f ` k ) ) ) |
| 14 | 13 | eqeq1d | |- ( g = G -> ( ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } <-> ( I ` ( f ` k ) ) = { ( p ` k ) } ) ) |
| 15 | 13 | sseq2d | |- ( g = G -> ( { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) <-> { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) |
| 16 | 14 15 | ifpbi23d | |- ( g = G -> ( if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) ) <-> if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) |
| 17 | 16 | ralbidv | |- ( g = G -> ( A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) ) <-> A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) |
| 18 | 9 12 17 | 3anbi123d | |- ( g = G -> ( ( f e. Word dom ( iEdg ` g ) /\ p : ( 0 ... ( # ` f ) ) --> ( Vtx ` g ) /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) ) ) <-> ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) ) |
| 19 | 18 | opabbidv | |- ( g = G -> { <. f , p >. | ( f e. Word dom ( iEdg ` g ) /\ p : ( 0 ... ( # ` f ) ) --> ( Vtx ` g ) /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( ( iEdg ` g ) ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( ( iEdg ` g ) ` ( f ` k ) ) ) ) } = { <. f , p >. | ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } ) |
| 20 | elex | |- ( G e. W -> G e. _V ) |
|
| 21 | 3anass | |- ( ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) <-> ( f e. Word dom I /\ ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) ) |
|
| 22 | 21 | opabbii | |- { <. f , p >. | ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } = { <. f , p >. | ( f e. Word dom I /\ ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) } |
| 23 | 2 | fvexi | |- I e. _V |
| 24 | 23 | dmex | |- dom I e. _V |
| 25 | wrdexg | |- ( dom I e. _V -> Word dom I e. _V ) |
|
| 26 | 24 25 | mp1i | |- ( G e. W -> Word dom I e. _V ) |
| 27 | ovex | |- ( 0 ... ( # ` f ) ) e. _V |
|
| 28 | 1 | fvexi | |- V e. _V |
| 29 | 28 | a1i | |- ( ( G e. W /\ f e. Word dom I ) -> V e. _V ) |
| 30 | mapex | |- ( ( ( 0 ... ( # ` f ) ) e. _V /\ V e. _V ) -> { p | p : ( 0 ... ( # ` f ) ) --> V } e. _V ) |
|
| 31 | 27 29 30 | sylancr | |- ( ( G e. W /\ f e. Word dom I ) -> { p | p : ( 0 ... ( # ` f ) ) --> V } e. _V ) |
| 32 | simpl | |- ( ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) -> p : ( 0 ... ( # ` f ) ) --> V ) |
|
| 33 | 32 | ss2abi | |- { p | ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } C_ { p | p : ( 0 ... ( # ` f ) ) --> V } |
| 34 | 33 | a1i | |- ( ( G e. W /\ f e. Word dom I ) -> { p | ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } C_ { p | p : ( 0 ... ( # ` f ) ) --> V } ) |
| 35 | 31 34 | ssexd | |- ( ( G e. W /\ f e. Word dom I ) -> { p | ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } e. _V ) |
| 36 | 26 35 | opabex3d | |- ( G e. W -> { <. f , p >. | ( f e. Word dom I /\ ( p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) ) } e. _V ) |
| 37 | 22 36 | eqeltrid | |- ( G e. W -> { <. f , p >. | ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } e. _V ) |
| 38 | 3 19 20 37 | fvmptd3 | |- ( G e. W -> ( Walks ` G ) = { <. f , p >. | ( f e. Word dom I /\ p : ( 0 ... ( # ` f ) ) --> V /\ A. k e. ( 0 ..^ ( # ` f ) ) if- ( ( p ` k ) = ( p ` ( k + 1 ) ) , ( I ` ( f ` k ) ) = { ( p ` k ) } , { ( p ` k ) , ( p ` ( k + 1 ) ) } C_ ( I ` ( f ` k ) ) ) ) } ) |