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

Theorem elwspths2spth 26862
Description: A simple path of length 2 between two vertices as length 3 string in a pseudograph. (Contributed by Alexander van der Vekens, 28-Feb-2018.) (Revised by AV, 18-May-2021.)
Hypothesis
Ref Expression
elwwlks2.v  |-  V  =  (Vtx `  G )
Assertion
Ref Expression
elwspths2spth  |-  ( G  e. UPGraph  ->  ( W  e.  ( 2 WSPathsN  G )  <->  E. a  e.  V  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
Distinct variable groups:    G, a,
b, c, f, p    V, a, b, c, f, p    W, a, b, c, f, p

Proof of Theorem elwspths2spth
StepHypRef Expression
1 2nn0 11309 . . 3  |-  2  e.  NN0
2 elwwlks2.v . . . 4  |-  V  =  (Vtx `  G )
32wspthsnwspthsnon 26811 . . 3  |-  ( ( 2  e.  NN0  /\  G  e. UPGraph  )  ->  ( W  e.  ( 2 WSPathsN  G )  <->  E. a  e.  V  E. c  e.  V  W  e.  ( a ( 2 WSPathsNOn  G ) c ) ) )
41, 3mpan 706 . 2  |-  ( G  e. UPGraph  ->  ( W  e.  ( 2 WSPathsN  G )  <->  E. a  e.  V  E. c  e.  V  W  e.  ( a
( 2 WSPathsNOn  G )
c ) ) )
52elwspths2on 26853 . . . 4  |-  ( ( G  e. UPGraph  /\  a  e.  V  /\  c  e.  V )  ->  ( W  e.  ( a
( 2 WSPathsNOn  G )
c )  <->  E. b  e.  V  ( W  =  <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WSPathsNOn  G )
c ) ) ) )
653expb 1266 . . 3  |-  ( ( G  e. UPGraph  /\  (
a  e.  V  /\  c  e.  V )
)  ->  ( W  e.  ( a ( 2 WSPathsNOn  G ) c )  <->  E. b  e.  V  ( W  =  <" a b c ">  /\  <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c ) ) ) )
762rexbidva 3056 . 2  |-  ( G  e. UPGraph  ->  ( E. a  e.  V  E. c  e.  V  W  e.  ( a ( 2 WSPathsNOn  G ) c )  <->  E. a  e.  V  E. c  e.  V  E. b  e.  V  ( W  =  <" a b c ">  /\  <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c ) ) ) )
8 rexcom 3099 . . . 4  |-  ( E. c  e.  V  E. b  e.  V  ( W  =  <" a
b c ">  /\ 
<" a b c ">  e.  ( a ( 2 WSPathsNOn  G
) c ) )  <->  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c ) ) )
9 simpr 477 . . . . . . . . . 10  |-  ( ( G  e. UPGraph  /\  a  e.  V )  ->  a  e.  V )
10 simpr 477 . . . . . . . . . 10  |-  ( ( b  e.  V  /\  c  e.  V )  ->  c  e.  V )
119, 10anim12i 590 . . . . . . . . 9  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( a  e.  V  /\  c  e.  V ) )
122wspthnon 26743 . . . . . . . . 9  |-  ( ( a  e.  V  /\  c  e.  V )  ->  ( <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c )  <-> 
( <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  /\  E. f  f ( a (SPathsOn `  G
) c ) <" a b c "> ) ) )
1311, 12syl 17 . . . . . . . 8  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( <" a b c ">  e.  ( a ( 2 WSPathsNOn  G )
c )  <->  ( <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  /\  E. f  f ( a (SPathsOn `  G )
c ) <" a
b c "> ) ) )
1413adantr 481 . . . . . . 7  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c )  <-> 
( <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  /\  E. f  f ( a (SPathsOn `  G
) c ) <" a b c "> ) ) )
15 ancom 466 . . . . . . . . 9  |-  ( (
<" a b c ">  e.  ( a ( 2 WWalksNOn  G
) c )  /\  E. f  f ( a (SPathsOn `  G )
c ) <" a
b c "> ) 
<->  ( E. f  f ( a (SPathsOn `  G
) c ) <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) ) )
16 19.41v 1914 . . . . . . . . 9  |-  ( E. f ( f ( a (SPathsOn `  G
) c ) <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) )  <->  ( E. f  f ( a (SPathsOn `  G )
c ) <" a
b c ">  /\ 
<" a b c ">  e.  ( a ( 2 WWalksNOn  G
) c ) ) )
1715, 16bitr4i 267 . . . . . . . 8  |-  ( (
<" a b c ">  e.  ( a ( 2 WWalksNOn  G
) c )  /\  E. f  f ( a (SPathsOn `  G )
c ) <" a
b c "> ) 
<->  E. f ( f ( a (SPathsOn `  G
) c ) <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) ) )
18 vex 3203 . . . . . . . . . . . . . 14  |-  f  e. 
_V
19 s3cli 13626 . . . . . . . . . . . . . 14  |-  <" a
b c ">  e. Word  _V
2018, 19pm3.2i 471 . . . . . . . . . . . . 13  |-  ( f  e.  _V  /\  <" a b c ">  e. Word  _V )
212isspthonpth 26645 . . . . . . . . . . . . 13  |-  ( ( ( a  e.  V  /\  c  e.  V
)  /\  ( f  e.  _V  /\  <" a
b c ">  e. Word  _V ) )  -> 
( f ( a (SPathsOn `  G )
c ) <" a
b c ">  <->  (
f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c ) ) )
2211, 20, 21sylancl 694 . . . . . . . . . . . 12  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( f
( a (SPathsOn `  G
) c ) <" a b c ">  <->  ( f
(SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c ) ) )
232wwlknon 26742 . . . . . . . . . . . . . 14  |-  ( ( a  e.  V  /\  c  e.  V )  ->  ( <" a
b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  <-> 
( <" a b c ">  e.  ( 2 WWalksN  G )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
2411, 23syl 17 . . . . . . . . . . . . 13  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  <->  ( <" a b c ">  e.  ( 2 WWalksN  G )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
25 iswwlksn 26730 . . . . . . . . . . . . . . . 16  |-  ( 2  e.  NN0  ->  ( <" a b c ">  e.  ( 2 WWalksN  G )  <->  ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) ) ) )
261, 25ax-mp 5 . . . . . . . . . . . . . . 15  |-  ( <" a b c ">  e.  ( 2 WWalksN  G )  <->  ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) ) )
2726a1i 11 . . . . . . . . . . . . . 14  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( <" a b c ">  e.  ( 2 WWalksN  G )  <->  ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) ) ) )
28273anbi1d 1403 . . . . . . . . . . . . 13  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( ( <" a b c ">  e.  ( 2 WWalksN  G )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c )  <-> 
( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
2924, 28bitrd 268 . . . . . . . . . . . 12  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c )  <->  ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
3022, 29anbi12d 747 . . . . . . . . . . 11  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( (
f ( a (SPathsOn `  G ) c )
<" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) )  <->  ( (
f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) ) )
3130adantr 481 . . . . . . . . . 10  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( ( f ( a (SPathsOn `  G
) c ) <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) )  <->  ( (
f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) ) )
3219a1i 11 . . . . . . . . . . . . 13  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  <" a
b c ">  e. Word  _V )
33 simprl1 1106 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  f
(SPaths `  G ) <" a b c "> )
34 spthiswlk 26624 . . . . . . . . . . . . . . . . . . . 20  |-  ( f (SPaths `  G ) <" a b c ">  ->  f
(Walks `  G ) <" a b c "> )
35 wlklenvm1 26517 . . . . . . . . . . . . . . . . . . . 20  |-  ( f (Walks `  G ) <" a b c ">  ->  ( # `
 f )  =  ( ( # `  <" a b c "> )  -  1 ) )
36 simpl 473 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( # `  f
)  =  ( (
# `  <" a
b c "> )  -  1 )  /\  ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  ( # `  f
)  =  ( (
# `  <" a
b c "> )  -  1 ) )
37 oveq1 6657 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( (
# `  <" a
b c "> )  =  ( 2  +  1 )  -> 
( ( # `  <" a b c "> )  -  1 )  =  ( ( 2  +  1 )  -  1 ) )
38 2cn 11091 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  2  e.  CC
39 pncan1 10454 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( 2  e.  CC  ->  (
( 2  +  1 )  -  1 )  =  2 )
4038, 39ax-mp 5 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( 2  +  1 )  -  1 )  =  2
4137, 40syl6eq 2672 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( (
# `  <" a
b c "> )  =  ( 2  +  1 )  -> 
( ( # `  <" a b c "> )  -  1 )  =  2 )
4241adantl 482 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  -> 
( ( # `  <" a b c "> )  -  1 )  =  2 )
43423ad2ant1 1082 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c )  ->  ( ( # `  <" a b c "> )  -  1 )  =  2 )
4443adantl 482 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( # `  f
)  =  ( (
# `  <" a
b c "> )  -  1 )  /\  ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  ( ( # `
 <" a b c "> )  -  1 )  =  2 )
4536, 44eqtrd 2656 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( # `  f
)  =  ( (
# `  <" a
b c "> )  -  1 )  /\  ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  ( # `  f
)  =  2 )
4645ex 450 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
# `  f )  =  ( ( # `  <" a b c "> )  -  1 )  -> 
( ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c )  ->  ( # `  f
)  =  2 ) )
4734, 35, 463syl 18 . . . . . . . . . . . . . . . . . . 19  |-  ( f (SPaths `  G ) <" a b c ">  ->  (
( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c )  ->  ( # `  f
)  =  2 ) )
48473ad2ant1 1082 . . . . . . . . . . . . . . . . . 18  |-  ( ( f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  -> 
( ( ( <" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c )  ->  ( # `  f
)  =  2 ) )
4948imp 445 . . . . . . . . . . . . . . . . 17  |-  ( ( ( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c )  /\  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  ( # `  f
)  =  2 )
5049adantl 482 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  ( # `
 f )  =  2 )
51 vex 3203 . . . . . . . . . . . . . . . . . . . 20  |-  a  e. 
_V
52 s3fv0 13636 . . . . . . . . . . . . . . . . . . . 20  |-  ( a  e.  _V  ->  ( <" a b c "> `  0
)  =  a )
5351, 52ax-mp 5 . . . . . . . . . . . . . . . . . . 19  |-  ( <" a b c "> `  0
)  =  a
5453eqcomi 2631 . . . . . . . . . . . . . . . . . 18  |-  a  =  ( <" a
b c "> `  0 )
55 vex 3203 . . . . . . . . . . . . . . . . . . . 20  |-  b  e. 
_V
56 s3fv1 13637 . . . . . . . . . . . . . . . . . . . 20  |-  ( b  e.  _V  ->  ( <" a b c "> `  1
)  =  b )
5755, 56ax-mp 5 . . . . . . . . . . . . . . . . . . 19  |-  ( <" a b c "> `  1
)  =  b
5857eqcomi 2631 . . . . . . . . . . . . . . . . . 18  |-  b  =  ( <" a
b c "> `  1 )
59 vex 3203 . . . . . . . . . . . . . . . . . . . 20  |-  c  e. 
_V
60 s3fv2 13638 . . . . . . . . . . . . . . . . . . . 20  |-  ( c  e.  _V  ->  ( <" a b c "> `  2
)  =  c )
6159, 60ax-mp 5 . . . . . . . . . . . . . . . . . . 19  |-  ( <" a b c "> `  2
)  =  c
6261eqcomi 2631 . . . . . . . . . . . . . . . . . 18  |-  c  =  ( <" a
b c "> `  2 )
6354, 58, 623pm3.2i 1239 . . . . . . . . . . . . . . . . 17  |-  ( a  =  ( <" a
b c "> `  0 )  /\  b  =  ( <" a
b c "> `  1 )  /\  c  =  ( <" a
b c "> `  2 ) )
6463a1i 11 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  (
a  =  ( <" a b c "> `  0
)  /\  b  =  ( <" a b c "> `  1
)  /\  c  =  ( <" a b c "> `  2
) ) )
6533, 50, 643jca 1242 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  (
f (SPaths `  G
) <" a b c ">  /\  ( # `
 f )  =  2  /\  ( a  =  ( <" a
b c "> `  0 )  /\  b  =  ( <" a
b c "> `  1 )  /\  c  =  ( <" a
b c "> `  2 ) ) ) )
66 breq2 4657 . . . . . . . . . . . . . . . . 17  |-  ( p  =  <" a b c ">  ->  ( f (SPaths `  G
) p  <->  f (SPaths `  G ) <" a
b c "> ) )
67 fveq1 6190 . . . . . . . . . . . . . . . . . . 19  |-  ( p  =  <" a b c ">  ->  ( p `  0 )  =  ( <" a
b c "> `  0 ) )
6867eqeq2d 2632 . . . . . . . . . . . . . . . . . 18  |-  ( p  =  <" a b c ">  ->  ( a  =  ( p `
 0 )  <->  a  =  ( <" a b c "> `  0
) ) )
69 fveq1 6190 . . . . . . . . . . . . . . . . . . 19  |-  ( p  =  <" a b c ">  ->  ( p `  1 )  =  ( <" a
b c "> `  1 ) )
7069eqeq2d 2632 . . . . . . . . . . . . . . . . . 18  |-  ( p  =  <" a b c ">  ->  ( b  =  ( p `
 1 )  <->  b  =  ( <" a b c "> `  1
) ) )
71 fveq1 6190 . . . . . . . . . . . . . . . . . . 19  |-  ( p  =  <" a b c ">  ->  ( p `  2 )  =  ( <" a
b c "> `  2 ) )
7271eqeq2d 2632 . . . . . . . . . . . . . . . . . 18  |-  ( p  =  <" a b c ">  ->  ( c  =  ( p `
 2 )  <->  c  =  ( <" a b c "> `  2
) ) )
7368, 70, 723anbi123d 1399 . . . . . . . . . . . . . . . . 17  |-  ( p  =  <" a b c ">  ->  ( ( a  =  ( p `  0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) )  <->  ( a  =  ( <" a
b c "> `  0 )  /\  b  =  ( <" a
b c "> `  1 )  /\  c  =  ( <" a
b c "> `  2 ) ) ) )
7466, 733anbi13d 1401 . . . . . . . . . . . . . . . 16  |-  ( p  =  <" a b c ">  ->  ( ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) )  <->  ( f (SPaths `  G ) <" a
b c ">  /\  ( # `  f
)  =  2  /\  ( a  =  (
<" a b c "> `  0
)  /\  b  =  ( <" a b c "> `  1
)  /\  c  =  ( <" a b c "> `  2
) ) ) ) )
7574ad2antlr 763 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  (
( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) )  <->  ( f (SPaths `  G ) <" a
b c ">  /\  ( # `  f
)  =  2  /\  ( a  =  (
<" a b c "> `  0
)  /\  b  =  ( <" a b c "> `  1
)  /\  c  =  ( <" a b c "> `  2
) ) ) ) )
7665, 75mpbird 247 . . . . . . . . . . . . . 14  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  /\  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )  ->  (
f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) ) )
7776ex 450 . . . . . . . . . . . . 13  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  p  =  <" a
b c "> )  ->  ( ( ( f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  ( f
(SPaths `  G )
p  /\  ( # `  f
)  =  2  /\  ( a  =  ( p `  0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
7832, 77spcimedv 3292 . . . . . . . . . . . 12  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( (
( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c )  /\  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  ->  E. p
( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
79 spthiswlk 26624 . . . . . . . . . . . . . . . . . . . . 21  |-  ( f (SPaths `  G )
p  ->  f (Walks `  G ) p )
80 wlklenvp1 26514 . . . . . . . . . . . . . . . . . . . . 21  |-  ( f (Walks `  G )
p  ->  ( # `  p
)  =  ( (
# `  f )  +  1 ) )
81 oveq1 6657 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( (
# `  f )  =  2  ->  (
( # `  f )  +  1 )  =  ( 2  +  1 ) )
82 2p1e3 11151 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( 2  +  1 )  =  3
8381, 82syl6eq 2672 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( (
# `  f )  =  2  ->  (
( # `  f )  +  1 )  =  3 )
8483eqeq2d 2632 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( (
# `  f )  =  2  ->  (
( # `  p )  =  ( ( # `  f )  +  1 )  <->  ( # `  p
)  =  3 ) )
8584biimpcd 239 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
# `  p )  =  ( ( # `  f )  +  1 )  ->  ( ( # `
 f )  =  2  ->  ( # `  p
)  =  3 ) )
8679, 80, 853syl 18 . . . . . . . . . . . . . . . . . . . 20  |-  ( f (SPaths `  G )
p  ->  ( ( # `
 f )  =  2  ->  ( # `  p
)  =  3 ) )
8786imp 445 . . . . . . . . . . . . . . . . . . 19  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2 )  ->  ( # `
 p )  =  3 )
88873adant3 1081 . . . . . . . . . . . . . . . . . 18  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( # `  p
)  =  3 )
8988adantl 482 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  ( # `
 p )  =  3 )
90 eqcom 2629 . . . . . . . . . . . . . . . . . . . . 21  |-  ( a  =  ( p ` 
0 )  <->  ( p `  0 )  =  a )
91 eqcom 2629 . . . . . . . . . . . . . . . . . . . . 21  |-  ( b  =  ( p ` 
1 )  <->  ( p `  1 )  =  b )
92 eqcom 2629 . . . . . . . . . . . . . . . . . . . . 21  |-  ( c  =  ( p ` 
2 )  <->  ( p `  2 )  =  c )
9390, 91, 923anbi123i 1251 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) )  <-> 
( ( p ` 
0 )  =  a  /\  ( p ` 
1 )  =  b  /\  ( p ` 
2 )  =  c ) )
9493biimpi 206 . . . . . . . . . . . . . . . . . . 19  |-  ( ( a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) )  ->  ( ( p `
 0 )  =  a  /\  ( p `
 1 )  =  b  /\  ( p `
 2 )  =  c ) )
95943ad2ant3 1084 . . . . . . . . . . . . . . . . . 18  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( ( p `
 0 )  =  a  /\  ( p `
 1 )  =  b  /\  ( p `
 2 )  =  c ) )
9695adantl 482 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  (
( p `  0
)  =  a  /\  ( p `  1
)  =  b  /\  ( p `  2
)  =  c ) )
9789, 96jca 554 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  (
( # `  p )  =  3  /\  (
( p `  0
)  =  a  /\  ( p `  1
)  =  b  /\  ( p `  2
)  =  c ) ) )
982wlkpwrd 26513 . . . . . . . . . . . . . . . . . . 19  |-  ( f (Walks `  G )
p  ->  p  e. Word  V )
9979, 98syl 17 . . . . . . . . . . . . . . . . . 18  |-  ( f (SPaths `  G )
p  ->  p  e. Word  V )
100993ad2ant1 1082 . . . . . . . . . . . . . . . . 17  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  p  e. Word  V
)
1019anim1i 592 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( a  e.  V  /\  (
b  e.  V  /\  c  e.  V )
) )
102 3anass 1042 . . . . . . . . . . . . . . . . . 18  |-  ( ( a  e.  V  /\  b  e.  V  /\  c  e.  V )  <->  ( a  e.  V  /\  ( b  e.  V  /\  c  e.  V
) ) )
103101, 102sylibr 224 . . . . . . . . . . . . . . . . 17  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( a  e.  V  /\  b  e.  V  /\  c  e.  V ) )
104 eqwrds3 13704 . . . . . . . . . . . . . . . . 17  |-  ( ( p  e. Word  V  /\  ( a  e.  V  /\  b  e.  V  /\  c  e.  V
) )  ->  (
p  =  <" a
b c ">  <->  (
( # `  p )  =  3  /\  (
( p `  0
)  =  a  /\  ( p `  1
)  =  b  /\  ( p `  2
)  =  c ) ) ) )
105100, 103, 104syl2anr 495 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  (
p  =  <" a
b c ">  <->  (
( # `  p )  =  3  /\  (
( p `  0
)  =  a  /\  ( p `  1
)  =  b  /\  ( p `  2
)  =  c ) ) ) )
10697, 105mpbird 247 . . . . . . . . . . . . . . 15  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  p  =  <" a b c "> )
10766biimpcd 239 . . . . . . . . . . . . . . . . . . . 20  |-  ( f (SPaths `  G )
p  ->  ( p  =  <" a b c ">  ->  f (SPaths `  G ) <" a b c "> ) )
1081073ad2ant1 1082 . . . . . . . . . . . . . . . . . . 19  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( p  = 
<" a b c ">  ->  f
(SPaths `  G ) <" a b c "> ) )
109108adantl 482 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  (
p  =  <" a
b c ">  ->  f (SPaths `  G
) <" a b c "> )
)
110109imp 445 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  f (SPaths `  G
) <" a b c "> )
11153a1i 11 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( <" a
b c "> `  0 )  =  a )
112 fveq2 6191 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
# `  f )  =  2  ->  ( <" a b c "> `  ( # `
 f ) )  =  ( <" a
b c "> `  2 ) )
113112, 61syl6eq 2672 . . . . . . . . . . . . . . . . . . 19  |-  ( (
# `  f )  =  2  ->  ( <" a b c "> `  ( # `
 f ) )  =  c )
1141133ad2ant2 1083 . . . . . . . . . . . . . . . . . 18  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( <" a
b c "> `  ( # `  f
) )  =  c )
115114ad2antlr 763 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( <" a
b c "> `  ( # `  f
) )  =  c )
116110, 111, 1153jca 1242 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c ) )
117 wlkiswwlks1 26753 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( G  e. UPGraph  ->  ( f (Walks `  G ) p  ->  p  e.  (WWalks `  G
) ) )
118117adantr 481 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( G  e. UPGraph  /\  a  e.  V )  ->  (
f (Walks `  G
) p  ->  p  e.  (WWalks `  G )
) )
119118adantr 481 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( f
(Walks `  G )
p  ->  p  e.  (WWalks `  G ) ) )
12079, 119syl5com 31 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( f (SPaths `  G )
p  ->  ( (
( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  p  e.  (WWalks `  G ) ) )
1211203ad2ant1 1082 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  p  e.  (WWalks `  G ) ) )
122121impcom 446 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  p  e.  (WWalks `  G )
)
123122adantr 481 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  p  e.  (WWalks `  G ) )
124 eleq1 2689 . . . . . . . . . . . . . . . . . . . . 21  |-  ( p  =  <" a b c ">  ->  ( p  e.  (WWalks `  G )  <->  <" a
b c ">  e.  (WWalks `  G )
) )
125124bicomd 213 . . . . . . . . . . . . . . . . . . . 20  |-  ( p  =  <" a b c ">  ->  (
<" a b c ">  e.  (WWalks `  G )  <->  p  e.  (WWalks `  G ) ) )
126125adantl 482 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( <" a
b c ">  e.  (WWalks `  G )  <->  p  e.  (WWalks `  G
) ) )
127123, 126mpbird 247 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  <" a b c ">  e.  (WWalks `  G ) )
128 s3len 13639 . . . . . . . . . . . . . . . . . . 19  |-  ( # `  <" a b c "> )  =  3
129 df-3 11080 . . . . . . . . . . . . . . . . . . 19  |-  3  =  ( 2  +  1 )
130128, 129eqtri 2644 . . . . . . . . . . . . . . . . . 18  |-  ( # `  <" a b c "> )  =  ( 2  +  1 )
131127, 130jctir 561 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) ) )
13261a1i 11 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( <" a
b c "> `  2 )  =  c )
133131, 111, 1323jca 1242 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )
134116, 133jca 554 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  /\  p  =  <" a b c "> )  ->  ( ( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c )  /\  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
135106, 134mpdan 702 . . . . . . . . . . . . . 14  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) )  ->  (
( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c )  /\  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) )
136135ex 450 . . . . . . . . . . . . 13  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( (
f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) )  ->  ( ( f (SPaths `  G ) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) ) )
137136exlimdv 1861 . . . . . . . . . . . 12  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) )  ->  ( (
f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) ) ) )
13878, 137impbid 202 . . . . . . . . . . 11  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( (
( f (SPaths `  G ) <" a
b c ">  /\  ( <" a
b c "> `  0 )  =  a  /\  ( <" a
b c "> `  ( # `  f
) )  =  c )  /\  ( (
<" a b c ">  e.  (WWalks `  G )  /\  ( # `
 <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  <->  E. p ( f (SPaths `  G )
p  /\  ( # `  f
)  =  2  /\  ( a  =  ( p `  0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
139138adantr 481 . . . . . . . . . 10  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( ( ( f (SPaths `  G
) <" a b c ">  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  ( # `
 f ) )  =  c )  /\  ( ( <" a
b c ">  e.  (WWalks `  G )  /\  ( # `  <" a b c "> )  =  ( 2  +  1 ) )  /\  ( <" a b c "> `  0
)  =  a  /\  ( <" a b c "> `  2
)  =  c ) )  <->  E. p ( f (SPaths `  G )
p  /\  ( # `  f
)  =  2  /\  ( a  =  ( p `  0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
14031, 139bitrd 268 . . . . . . . . 9  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( ( f ( a (SPathsOn `  G
) c ) <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WWalksNOn  G ) c ) )  <->  E. p
( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
141140exbidv 1850 . . . . . . . 8  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( E. f
( f ( a (SPathsOn `  G )
c ) <" a
b c ">  /\ 
<" a b c ">  e.  ( a ( 2 WWalksNOn  G
) c ) )  <->  E. f E. p ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) ) ) )
14217, 141syl5bb 272 . . . . . . 7  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( ( <" a b c ">  e.  ( a ( 2 WWalksNOn  G
) c )  /\  E. f  f ( a (SPathsOn `  G )
c ) <" a
b c "> ) 
<->  E. f E. p
( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) )
14314, 142bitrd 268 . . . . . 6  |-  ( ( ( ( G  e. UPGraph  /\  a  e.  V
)  /\  ( b  e.  V  /\  c  e.  V ) )  /\  W  =  <" a
b c "> )  ->  ( <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c )  <->  E. f E. p ( f (SPaths `  G
) p  /\  ( # `
 f )  =  2  /\  ( a  =  ( p ` 
0 )  /\  b  =  ( p ` 
1 )  /\  c  =  ( p ` 
2 ) ) ) ) )
144143pm5.32da 673 . . . . 5  |-  ( ( ( G  e. UPGraph  /\  a  e.  V )  /\  (
b  e.  V  /\  c  e.  V )
)  ->  ( ( W  =  <" a
b c ">  /\ 
<" a b c ">  e.  ( a ( 2 WSPathsNOn  G
) c ) )  <-> 
( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
1451442rexbidva 3056 . . . 4  |-  ( ( G  e. UPGraph  /\  a  e.  V )  ->  ( E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c ) )  <->  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
1468, 145syl5bb 272 . . 3  |-  ( ( G  e. UPGraph  /\  a  e.  V )  ->  ( E. c  e.  V  E. b  e.  V  ( W  =  <" a b c ">  /\  <" a
b c ">  e.  ( a ( 2 WSPathsNOn  G ) c ) )  <->  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
147146rexbidva 3049 . 2  |-  ( G  e. UPGraph  ->  ( E. a  e.  V  E. c  e.  V  E. b  e.  V  ( W  =  <" a b c ">  /\  <" a b c ">  e.  ( a ( 2 WSPathsNOn  G )
c ) )  <->  E. a  e.  V  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G )
p  /\  ( # `  f
)  =  2  /\  ( a  =  ( p `  0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
1484, 7, 1473bitrd 294 1  |-  ( G  e. UPGraph  ->  ( W  e.  ( 2 WSPathsN  G )  <->  E. a  e.  V  E. b  e.  V  E. c  e.  V  ( W  =  <" a b c ">  /\  E. f E. p ( f (SPaths `  G ) p  /\  ( # `  f )  =  2  /\  (
a  =  ( p `
 0 )  /\  b  =  ( p `  1 )  /\  c  =  ( p `  2 ) ) ) ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 196    /\ wa 384    /\ w3a 1037    = wceq 1483   E.wex 1704    e. wcel 1990   E.wrex 2913   _Vcvv 3200   class class class wbr 4653   ` cfv 5888  (class class class)co 6650   CCcc 9934   0cc0 9936   1c1 9937    + caddc 9939    - cmin 10266   2c2 11070   3c3 11071   NN0cn0 11292   #chash 13117  Word cword 13291   <"cs3 13587  Vtxcvtx 25874   UPGraph cupgr 25975  Walkscwlks 26492  SPathscspths 26609  SPathsOncspthson 26611  WWalkscwwlks 26717   WWalksN cwwlksn 26718   WWalksNOn cwwlksnon 26719   WSPathsN cwwspthsn 26720   WSPathsNOn cwwspthsnon 26721
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949  ax-ac2 9285  ax-cnex 9992  ax-resscn 9993  ax-1cn 9994  ax-icn 9995  ax-addcl 9996  ax-addrcl 9997  ax-mulcl 9998  ax-mulrcl 9999  ax-mulcom 10000  ax-addass 10001  ax-mulass 10002  ax-distr 10003  ax-i2m1 10004  ax-1ne0 10005  ax-1rid 10006  ax-rnegex 10007  ax-rrecex 10008  ax-cnre 10009  ax-pre-lttri 10010  ax-pre-lttrn 10011  ax-pre-ltadd 10012  ax-pre-mulgt0 10013
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-ifp 1013  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-nel 2898  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-int 4476  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-se 5074  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-isom 5897  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-om 7066  df-1st 7168  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-2o 7561  df-oadd 7564  df-er 7742  df-map 7859  df-pm 7860  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-card 8765  df-ac 8939  df-cda 8990  df-pnf 10076  df-mnf 10077  df-xr 10078  df-ltxr 10079  df-le 10080  df-sub 10268  df-neg 10269  df-nn 11021  df-2 11079  df-3 11080  df-n0 11293  df-xnn0 11364  df-z 11378  df-uz 11688  df-fz 12327  df-fzo 12466  df-hash 13118  df-word 13299  df-concat 13301  df-s1 13302  df-s2 13593  df-s3 13594  df-edg 25940  df-uhgr 25953  df-upgr 25977  df-wlks 26495  df-wlkson 26496  df-trls 26589  df-trlson 26590  df-pths 26612  df-spths 26613  df-spthson 26615  df-wwlks 26722  df-wwlksn 26723  df-wwlksnon 26724  df-wspthsn 26725  df-wspthsnon 26726
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator