Step |
Hyp |
Ref |
Expression |
1 |
|
usgr2wspthon0.v |
|- V = ( Vtx ` G ) |
2 |
|
usgr2wspthon0.e |
|- E = ( Edg ` G ) |
3 |
|
2nn |
|- 2 e. NN |
4 |
|
ne0i |
|- ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> ( A ( 2 WSPathsNOn G ) C ) =/= (/) ) |
5 |
|
wspthsnonn0vne |
|- ( ( 2 e. NN /\ ( A ( 2 WSPathsNOn G ) C ) =/= (/) ) -> A =/= C ) |
6 |
3 4 5
|
sylancr |
|- ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> A =/= C ) |
7 |
|
simplr |
|- ( ( ( G e. USGraph /\ A =/= C ) /\ <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) ) -> A =/= C ) |
8 |
|
wpthswwlks2on |
|- ( ( G e. USGraph /\ A =/= C ) -> ( A ( 2 WSPathsNOn G ) C ) = ( A ( 2 WWalksNOn G ) C ) ) |
9 |
8
|
eleq2d |
|- ( ( G e. USGraph /\ A =/= C ) -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) <-> <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) |
10 |
9
|
biimpa |
|- ( ( ( G e. USGraph /\ A =/= C ) /\ <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) ) -> <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) |
11 |
7 10
|
jca |
|- ( ( ( G e. USGraph /\ A =/= C ) /\ <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) ) -> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) |
12 |
11
|
exp31 |
|- ( G e. USGraph -> ( A =/= C -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) ) |
13 |
12
|
com13 |
|- ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> ( A =/= C -> ( G e. USGraph -> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) ) |
14 |
6 13
|
mpd |
|- ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> ( G e. USGraph -> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) |
15 |
14
|
com12 |
|- ( G e. USGraph -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) -> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) |
16 |
9
|
biimprd |
|- ( ( G e. USGraph /\ A =/= C ) -> ( <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) -> <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) ) ) |
17 |
16
|
expimpd |
|- ( G e. USGraph -> ( ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) -> <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) ) ) |
18 |
15 17
|
impbid |
|- ( G e. USGraph -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) <-> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) |
19 |
18
|
adantr |
|- ( ( G e. USGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) <-> ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) ) ) |
20 |
|
usgrumgr |
|- ( G e. USGraph -> G e. UMGraph ) |
21 |
1 2
|
umgrwwlks2on |
|- ( ( G e. UMGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) <-> ( { A , B } e. E /\ { B , C } e. E ) ) ) |
22 |
20 21
|
sylan |
|- ( ( G e. USGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) <-> ( { A , B } e. E /\ { B , C } e. E ) ) ) |
23 |
22
|
anbi2d |
|- ( ( G e. USGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) <-> ( A =/= C /\ ( { A , B } e. E /\ { B , C } e. E ) ) ) ) |
24 |
|
3anass |
|- ( ( A =/= C /\ { A , B } e. E /\ { B , C } e. E ) <-> ( A =/= C /\ ( { A , B } e. E /\ { B , C } e. E ) ) ) |
25 |
23 24
|
bitr4di |
|- ( ( G e. USGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( ( A =/= C /\ <" A B C "> e. ( A ( 2 WWalksNOn G ) C ) ) <-> ( A =/= C /\ { A , B } e. E /\ { B , C } e. E ) ) ) |
26 |
19 25
|
bitrd |
|- ( ( G e. USGraph /\ ( A e. V /\ B e. V /\ C e. V ) ) -> ( <" A B C "> e. ( A ( 2 WSPathsNOn G ) C ) <-> ( A =/= C /\ { A , B } e. E /\ { B , C } e. E ) ) ) |