This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Lemma for eupth2lem3 , formerly part of proof of eupth2lem3 : If a loop { ( PN ) , ( P( N + 1 ) ) } is added to a trail, the degree of the vertices with odd degree remains odd (regarding the subgraphs induced by the involved trails). (Contributed by Mario Carneiro, 8-Apr-2015) (Revised by AV, 21-Feb-2021)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | trlsegvdeg.v | |- V = ( Vtx ` G ) |
|
| trlsegvdeg.i | |- I = ( iEdg ` G ) |
||
| trlsegvdeg.f | |- ( ph -> Fun I ) |
||
| trlsegvdeg.n | |- ( ph -> N e. ( 0 ..^ ( # ` F ) ) ) |
||
| trlsegvdeg.u | |- ( ph -> U e. V ) |
||
| trlsegvdeg.w | |- ( ph -> F ( Trails ` G ) P ) |
||
| trlsegvdeg.vx | |- ( ph -> ( Vtx ` X ) = V ) |
||
| trlsegvdeg.vy | |- ( ph -> ( Vtx ` Y ) = V ) |
||
| trlsegvdeg.vz | |- ( ph -> ( Vtx ` Z ) = V ) |
||
| trlsegvdeg.ix | |- ( ph -> ( iEdg ` X ) = ( I |` ( F " ( 0 ..^ N ) ) ) ) |
||
| trlsegvdeg.iy | |- ( ph -> ( iEdg ` Y ) = { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } ) |
||
| trlsegvdeg.iz | |- ( ph -> ( iEdg ` Z ) = ( I |` ( F " ( 0 ... N ) ) ) ) |
||
| eupth2lem3.o | |- ( ph -> { x e. V | -. 2 || ( ( VtxDeg ` X ) ` x ) } = if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) ) |
||
| eupth2lem3lem3.e | |- ( ph -> if- ( ( P ` N ) = ( P ` ( N + 1 ) ) , ( I ` ( F ` N ) ) = { ( P ` N ) } , { ( P ` N ) , ( P ` ( N + 1 ) ) } C_ ( I ` ( F ` N ) ) ) ) |
||
| Assertion | eupth2lem3lem3 | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( -. 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) <-> U e. if ( ( P ` 0 ) = ( P ` ( N + 1 ) ) , (/) , { ( P ` 0 ) , ( P ` ( N + 1 ) ) } ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | trlsegvdeg.v | |- V = ( Vtx ` G ) |
|
| 2 | trlsegvdeg.i | |- I = ( iEdg ` G ) |
|
| 3 | trlsegvdeg.f | |- ( ph -> Fun I ) |
|
| 4 | trlsegvdeg.n | |- ( ph -> N e. ( 0 ..^ ( # ` F ) ) ) |
|
| 5 | trlsegvdeg.u | |- ( ph -> U e. V ) |
|
| 6 | trlsegvdeg.w | |- ( ph -> F ( Trails ` G ) P ) |
|
| 7 | trlsegvdeg.vx | |- ( ph -> ( Vtx ` X ) = V ) |
|
| 8 | trlsegvdeg.vy | |- ( ph -> ( Vtx ` Y ) = V ) |
|
| 9 | trlsegvdeg.vz | |- ( ph -> ( Vtx ` Z ) = V ) |
|
| 10 | trlsegvdeg.ix | |- ( ph -> ( iEdg ` X ) = ( I |` ( F " ( 0 ..^ N ) ) ) ) |
|
| 11 | trlsegvdeg.iy | |- ( ph -> ( iEdg ` Y ) = { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } ) |
|
| 12 | trlsegvdeg.iz | |- ( ph -> ( iEdg ` Z ) = ( I |` ( F " ( 0 ... N ) ) ) ) |
|
| 13 | eupth2lem3.o | |- ( ph -> { x e. V | -. 2 || ( ( VtxDeg ` X ) ` x ) } = if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) ) |
|
| 14 | eupth2lem3lem3.e | |- ( ph -> if- ( ( P ` N ) = ( P ` ( N + 1 ) ) , ( I ` ( F ` N ) ) = { ( P ` N ) } , { ( P ` N ) , ( P ` ( N + 1 ) ) } C_ ( I ` ( F ` N ) ) ) ) |
|
| 15 | fveq2 | |- ( x = U -> ( ( VtxDeg ` X ) ` x ) = ( ( VtxDeg ` X ) ` U ) ) |
|
| 16 | 15 | breq2d | |- ( x = U -> ( 2 || ( ( VtxDeg ` X ) ` x ) <-> 2 || ( ( VtxDeg ` X ) ` U ) ) ) |
| 17 | 16 | notbid | |- ( x = U -> ( -. 2 || ( ( VtxDeg ` X ) ` x ) <-> -. 2 || ( ( VtxDeg ` X ) ` U ) ) ) |
| 18 | 17 | elrab3 | |- ( U e. V -> ( U e. { x e. V | -. 2 || ( ( VtxDeg ` X ) ` x ) } <-> -. 2 || ( ( VtxDeg ` X ) ` U ) ) ) |
| 19 | 5 18 | syl | |- ( ph -> ( U e. { x e. V | -. 2 || ( ( VtxDeg ` X ) ` x ) } <-> -. 2 || ( ( VtxDeg ` X ) ` U ) ) ) |
| 20 | 13 | eleq2d | |- ( ph -> ( U e. { x e. V | -. 2 || ( ( VtxDeg ` X ) ` x ) } <-> U e. if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) ) ) |
| 21 | 19 20 | bitr3d | |- ( ph -> ( -. 2 || ( ( VtxDeg ` X ) ` U ) <-> U e. if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) ) ) |
| 22 | 21 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( -. 2 || ( ( VtxDeg ` X ) ` U ) <-> U e. if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) ) ) |
| 23 | 2z | |- 2 e. ZZ |
|
| 24 | 23 | a1i | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> 2 e. ZZ ) |
| 25 | 1 2 3 4 5 6 7 8 9 10 11 12 | eupth2lem3lem1 | |- ( ph -> ( ( VtxDeg ` X ) ` U ) e. NN0 ) |
| 26 | 25 | nn0zd | |- ( ph -> ( ( VtxDeg ` X ) ` U ) e. ZZ ) |
| 27 | 26 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( ( VtxDeg ` X ) ` U ) e. ZZ ) |
| 28 | 1 2 3 4 5 6 7 8 9 10 11 12 | eupth2lem3lem2 | |- ( ph -> ( ( VtxDeg ` Y ) ` U ) e. NN0 ) |
| 29 | 28 | nn0zd | |- ( ph -> ( ( VtxDeg ` Y ) ` U ) e. ZZ ) |
| 30 | 29 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( ( VtxDeg ` Y ) ` U ) e. ZZ ) |
| 31 | z2even | |- 2 || 2 |
|
| 32 | 8 | ad2antrr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( Vtx ` Y ) = V ) |
| 33 | fvexd | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( F ` N ) e. _V ) |
|
| 34 | 5 | ad2antrr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> U e. V ) |
| 35 | 11 | ad2antrr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( iEdg ` Y ) = { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } ) |
| 36 | 14 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> if- ( ( P ` N ) = ( P ` ( N + 1 ) ) , ( I ` ( F ` N ) ) = { ( P ` N ) } , { ( P ` N ) , ( P ` ( N + 1 ) ) } C_ ( I ` ( F ` N ) ) ) ) |
| 37 | ifptru | |- ( ( P ` N ) = ( P ` ( N + 1 ) ) -> ( if- ( ( P ` N ) = ( P ` ( N + 1 ) ) , ( I ` ( F ` N ) ) = { ( P ` N ) } , { ( P ` N ) , ( P ` ( N + 1 ) ) } C_ ( I ` ( F ` N ) ) ) <-> ( I ` ( F ` N ) ) = { ( P ` N ) } ) ) |
|
| 38 | 37 | adantl | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( if- ( ( P ` N ) = ( P ` ( N + 1 ) ) , ( I ` ( F ` N ) ) = { ( P ` N ) } , { ( P ` N ) , ( P ` ( N + 1 ) ) } C_ ( I ` ( F ` N ) ) ) <-> ( I ` ( F ` N ) ) = { ( P ` N ) } ) ) |
| 39 | 36 38 | mpbid | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( I ` ( F ` N ) ) = { ( P ` N ) } ) |
| 40 | sneq | |- ( ( P ` N ) = U -> { ( P ` N ) } = { U } ) |
|
| 41 | 40 | eqcoms | |- ( U = ( P ` N ) -> { ( P ` N ) } = { U } ) |
| 42 | 39 41 | sylan9eq | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( I ` ( F ` N ) ) = { U } ) |
| 43 | 42 | opeq2d | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> <. ( F ` N ) , ( I ` ( F ` N ) ) >. = <. ( F ` N ) , { U } >. ) |
| 44 | 43 | sneqd | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } = { <. ( F ` N ) , { U } >. } ) |
| 45 | 35 44 | eqtrd | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( iEdg ` Y ) = { <. ( F ` N ) , { U } >. } ) |
| 46 | 32 33 34 45 | 1loopgrvd2 | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> ( ( VtxDeg ` Y ) ` U ) = 2 ) |
| 47 | 31 46 | breqtrrid | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U = ( P ` N ) ) -> 2 || ( ( VtxDeg ` Y ) ` U ) ) |
| 48 | z0even | |- 2 || 0 |
|
| 49 | 8 | ad2antrr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( Vtx ` Y ) = V ) |
| 50 | fvexd | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( F ` N ) e. _V ) |
|
| 51 | 1 2 3 4 5 6 | trlsegvdeglem1 | |- ( ph -> ( ( P ` N ) e. V /\ ( P ` ( N + 1 ) ) e. V ) ) |
| 52 | 51 | simpld | |- ( ph -> ( P ` N ) e. V ) |
| 53 | 52 | ad2antrr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( P ` N ) e. V ) |
| 54 | 11 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( iEdg ` Y ) = { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } ) |
| 55 | 39 | opeq2d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> <. ( F ` N ) , ( I ` ( F ` N ) ) >. = <. ( F ` N ) , { ( P ` N ) } >. ) |
| 56 | 55 | sneqd | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> { <. ( F ` N ) , ( I ` ( F ` N ) ) >. } = { <. ( F ` N ) , { ( P ` N ) } >. } ) |
| 57 | 54 56 | eqtrd | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( iEdg ` Y ) = { <. ( F ` N ) , { ( P ` N ) } >. } ) |
| 58 | 57 | adantr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( iEdg ` Y ) = { <. ( F ` N ) , { ( P ` N ) } >. } ) |
| 59 | 5 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> U e. V ) |
| 60 | 59 | anim1i | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( U e. V /\ U =/= ( P ` N ) ) ) |
| 61 | eldifsn | |- ( U e. ( V \ { ( P ` N ) } ) <-> ( U e. V /\ U =/= ( P ` N ) ) ) |
|
| 62 | 60 61 | sylibr | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> U e. ( V \ { ( P ` N ) } ) ) |
| 63 | 49 50 53 58 62 | 1loopgrvd0 | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> ( ( VtxDeg ` Y ) ` U ) = 0 ) |
| 64 | 48 63 | breqtrrid | |- ( ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) /\ U =/= ( P ` N ) ) -> 2 || ( ( VtxDeg ` Y ) ` U ) ) |
| 65 | 47 64 | pm2.61dane | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> 2 || ( ( VtxDeg ` Y ) ` U ) ) |
| 66 | dvdsadd2b | |- ( ( 2 e. ZZ /\ ( ( VtxDeg ` X ) ` U ) e. ZZ /\ ( ( ( VtxDeg ` Y ) ` U ) e. ZZ /\ 2 || ( ( VtxDeg ` Y ) ` U ) ) ) -> ( 2 || ( ( VtxDeg ` X ) ` U ) <-> 2 || ( ( ( VtxDeg ` Y ) ` U ) + ( ( VtxDeg ` X ) ` U ) ) ) ) |
|
| 67 | 24 27 30 65 66 | syl112anc | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( 2 || ( ( VtxDeg ` X ) ` U ) <-> 2 || ( ( ( VtxDeg ` Y ) ` U ) + ( ( VtxDeg ` X ) ` U ) ) ) ) |
| 68 | 28 | nn0cnd | |- ( ph -> ( ( VtxDeg ` Y ) ` U ) e. CC ) |
| 69 | 25 | nn0cnd | |- ( ph -> ( ( VtxDeg ` X ) ` U ) e. CC ) |
| 70 | 68 69 | addcomd | |- ( ph -> ( ( ( VtxDeg ` Y ) ` U ) + ( ( VtxDeg ` X ) ` U ) ) = ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) ) |
| 71 | 70 | breq2d | |- ( ph -> ( 2 || ( ( ( VtxDeg ` Y ) ` U ) + ( ( VtxDeg ` X ) ` U ) ) <-> 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) ) ) |
| 72 | 71 | adantr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( 2 || ( ( ( VtxDeg ` Y ) ` U ) + ( ( VtxDeg ` X ) ` U ) ) <-> 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) ) ) |
| 73 | 67 72 | bitrd | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( 2 || ( ( VtxDeg ` X ) ` U ) <-> 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) ) ) |
| 74 | 73 | notbid | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( -. 2 || ( ( VtxDeg ` X ) ` U ) <-> -. 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) ) ) |
| 75 | simpr | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( P ` N ) = ( P ` ( N + 1 ) ) ) |
|
| 76 | 75 | eqeq2d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( ( P ` 0 ) = ( P ` N ) <-> ( P ` 0 ) = ( P ` ( N + 1 ) ) ) ) |
| 77 | 75 | preq2d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> { ( P ` 0 ) , ( P ` N ) } = { ( P ` 0 ) , ( P ` ( N + 1 ) ) } ) |
| 78 | 76 77 | ifbieq2d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) = if ( ( P ` 0 ) = ( P ` ( N + 1 ) ) , (/) , { ( P ` 0 ) , ( P ` ( N + 1 ) ) } ) ) |
| 79 | 78 | eleq2d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( U e. if ( ( P ` 0 ) = ( P ` N ) , (/) , { ( P ` 0 ) , ( P ` N ) } ) <-> U e. if ( ( P ` 0 ) = ( P ` ( N + 1 ) ) , (/) , { ( P ` 0 ) , ( P ` ( N + 1 ) ) } ) ) ) |
| 80 | 22 74 79 | 3bitr3d | |- ( ( ph /\ ( P ` N ) = ( P ` ( N + 1 ) ) ) -> ( -. 2 || ( ( ( VtxDeg ` X ) ` U ) + ( ( VtxDeg ` Y ) ` U ) ) <-> U e. if ( ( P ` 0 ) = ( P ` ( N + 1 ) ) , (/) , { ( P ` 0 ) , ( P ` ( N + 1 ) ) } ) ) ) |