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

Theorem iseupa 25170
Description: The property " <. F ,  P >. is an Eulerian path on the graph  <. V ,  E >.". An Eulerian path is defined as bijection  F from the edges to a set  1 ... N a function  P :
( 0 ... N
) --> V into the vertices such that for each 
1  <_  k  <_  N,  F ( k ) is an edge from  P ( k  -  1 ) to  P
( k ). (Since the edges are undirected and there are possibly many edges between any two given vertices, we need to list both the edges and the vertices of the path separately.) (Contributed by Mario Carneiro, 12-Mar-2015.) (Revised by Mario Carneiro, 3-May-2015.)
Assertion
Ref Expression
iseupa  |-  ( dom 
E  =  A  -> 
( F ( V EulPaths  E ) P  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
Distinct variable groups:    k, n, A    k, E, n    k, F, n    P, k, n   
k, V, n

Proof of Theorem iseupa
Dummy variables  e 
f  p  v are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-eupa 25168 . . . 4  |- EulPaths  =  ( v  e.  _V , 
e  e.  _V  |->  {
<. f ,  p >.  |  ( v UMGrph  e  /\  E. n  e.  NN0  (
f : ( 1 ... n ) -1-1-onto-> dom  e  /\  p : ( 0 ... n ) --> v  /\  A. k  e.  ( 1 ... n
) ( e `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) } )
21brovmpt2ex 6943 . . 3  |-  ( F ( V EulPaths  E ) P  ->  ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) ) )
32a1i 11 . 2  |-  ( dom 
E  =  A  -> 
( F ( V EulPaths  E ) P  -> 
( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) ) ) )
4 relumgra 24519 . . . . 5  |-  Rel UMGrph
5 brrelex12 5026 . . . . 5  |-  ( ( Rel UMGrph  /\  V UMGrph  E )  ->  ( V  e.  _V  /\  E  e.  _V )
)
64, 5mpan 668 . . . 4  |-  ( V UMGrph  E  ->  ( V  e. 
_V  /\  E  e.  _V ) )
7 f1of 5798 . . . . . . . 8  |-  ( F : ( 1 ... n ) -1-1-onto-> A  ->  F :
( 1 ... n
) --> A )
8 ovex 6298 . . . . . . . 8  |-  ( 1 ... n )  e. 
_V
9 fex 6120 . . . . . . . 8  |-  ( ( F : ( 1 ... n ) --> A  /\  ( 1 ... n )  e.  _V )  ->  F  e.  _V )
107, 8, 9sylancl 660 . . . . . . 7  |-  ( F : ( 1 ... n ) -1-1-onto-> A  ->  F  e.  _V )
11 ovex 6298 . . . . . . . 8  |-  ( 0 ... n )  e. 
_V
12 fex 6120 . . . . . . . 8  |-  ( ( P : ( 0 ... n ) --> V  /\  ( 0 ... n )  e.  _V )  ->  P  e.  _V )
1311, 12mpan2 669 . . . . . . 7  |-  ( P : ( 0 ... n ) --> V  ->  P  e.  _V )
1410, 13anim12i 564 . . . . . 6  |-  ( ( F : ( 1 ... n ) -1-1-onto-> A  /\  P : ( 0 ... n ) --> V )  ->  ( F  e. 
_V  /\  P  e.  _V ) )
15143adant3 1014 . . . . 5  |-  ( ( F : ( 1 ... n ) -1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( F `
 k ) )  =  { ( P `
 ( k  - 
1 ) ) ,  ( P `  k
) } )  -> 
( F  e.  _V  /\  P  e.  _V )
)
1615rexlimivw 2943 . . . 4  |-  ( E. n  e.  NN0  ( F : ( 1 ... n ) -1-1-onto-> A  /\  P :
( 0 ... n
) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( F `
 k ) )  =  { ( P `
 ( k  - 
1 ) ) ,  ( P `  k
) } )  -> 
( F  e.  _V  /\  P  e.  _V )
)
176, 16anim12i 564 . . 3  |-  ( ( V UMGrph  E  /\  E. n  e.  NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) )  ->  ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) ) )
1817a1i 11 . 2  |-  ( dom 
E  =  A  -> 
( ( V UMGrph  E  /\  E. n  e.  NN0  ( F : ( 1 ... n ) -1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( F `
 k ) )  =  { ( P `
 ( k  - 
1 ) ) ,  ( P `  k
) } ) )  ->  ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) ) ) )
191a1i 11 . . . . . 6  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  -> EulPaths  =  ( v  e. 
_V ,  e  e. 
_V  |->  { <. f ,  p >.  |  (
v UMGrph  e  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> dom  e  /\  p : ( 0 ... n ) --> v  /\  A. k  e.  ( 1 ... n ) ( e `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) } ) )
20 breq12 4444 . . . . . . . . 9  |-  ( ( v  =  V  /\  e  =  E )  ->  ( v UMGrph  e  <->  V UMGrph  E ) )
2120adantl 464 . . . . . . . 8  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( v UMGrph  e  <->  V UMGrph  E ) )
22 simprr 755 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
e  =  E )
2322dmeqd 5194 . . . . . . . . . . . 12  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  ->  dom  e  =  dom  E )
24 simplr 753 . . . . . . . . . . . 12  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  ->  dom  E  =  A )
2523, 24eqtrd 2495 . . . . . . . . . . 11  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  ->  dom  e  =  A
)
26 f1oeq3 5791 . . . . . . . . . . 11  |-  ( dom  e  =  A  -> 
( f : ( 1 ... n ) -1-1-onto-> dom  e  <->  f : ( 1 ... n ) -1-1-onto-> A ) )
2725, 26syl 16 . . . . . . . . . 10  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( f : ( 1 ... n ) -1-1-onto-> dom  e  <->  f : ( 1 ... n ) -1-1-onto-> A ) )
28 feq3 5697 . . . . . . . . . . 11  |-  ( v  =  V  ->  (
p : ( 0 ... n ) --> v  <-> 
p : ( 0 ... n ) --> V ) )
2928ad2antrl 725 . . . . . . . . . 10  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( p : ( 0 ... n ) --> v  <->  p : ( 0 ... n ) --> V ) )
3022fveq1d 5850 . . . . . . . . . . . 12  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( e `  (
f `  k )
)  =  ( E `
 ( f `  k ) ) )
3130eqeq1d 2456 . . . . . . . . . . 11  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( ( e `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) }  <-> 
( E `  (
f `  k )
)  =  { ( p `  ( k  -  1 ) ) ,  ( p `  k ) } ) )
3231ralbidv 2893 . . . . . . . . . 10  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( A. k  e.  ( 1 ... n
) ( e `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) }  <->  A. k  e.  (
1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) )
3327, 29, 323anbi123d 1297 . . . . . . . . 9  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( ( f : ( 1 ... n
)
-1-1-onto-> dom  e  /\  p : ( 0 ... n ) --> v  /\  A. k  e.  ( 1 ... n ) ( e `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } )  <->  ( f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n
) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) )
3433rexbidv 2965 . . . . . . . 8  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( E. n  e. 
NN0  ( f : ( 1 ... n
)
-1-1-onto-> dom  e  /\  p : ( 0 ... n ) --> v  /\  A. k  e.  ( 1 ... n ) ( e `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } )  <->  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) )
3521, 34anbi12d 708 . . . . . . 7  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  -> 
( ( v UMGrph  e  /\  E. n  e.  NN0  ( f : ( 1 ... n ) -1-1-onto-> dom  e  /\  p : ( 0 ... n
) --> v  /\  A. k  e.  ( 1 ... n ) ( e `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) )  <-> 
( V UMGrph  E  /\  E. n  e.  NN0  (
f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) ) )
3635opabbidv 4502 . . . . . 6  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( v  =  V  /\  e  =  E ) )  ->  { <. f ,  p >.  |  ( v UMGrph  e  /\  E. n  e.  NN0  ( f : ( 1 ... n ) -1-1-onto-> dom  e  /\  p : ( 0 ... n
) --> v  /\  A. k  e.  ( 1 ... n ) ( e `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) }  =  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) } )
37 simplll 757 . . . . . 6  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  V  e.  _V )
38 simpllr 758 . . . . . 6  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  E  e.  _V )
39 simpr 459 . . . . . . . . . . . . . . 15  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  dom  E  =  A )
40 dmexg 6704 . . . . . . . . . . . . . . . 16  |-  ( E  e.  _V  ->  dom  E  e.  _V )
4138, 40syl 16 . . . . . . . . . . . . . . 15  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  dom  E  e.  _V )
4239, 41eqeltrrd 2543 . . . . . . . . . . . . . 14  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  A  e.  _V )
4342adantr 463 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  A  e.  _V )
44 nnex 10537 . . . . . . . . . . . . . 14  |-  NN  e.  _V
4544a1i 11 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  NN  e.  _V )
46 simpr1 1000 . . . . . . . . . . . . . 14  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  f : ( 1 ... n ) -1-1-onto-> A )
47 f1of 5798 . . . . . . . . . . . . . 14  |-  ( f : ( 1 ... n ) -1-1-onto-> A  ->  f :
( 1 ... n
) --> A )
4846, 47syl 16 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  f : ( 1 ... n ) --> A )
49 elfznn 11717 . . . . . . . . . . . . . . 15  |-  ( k  e.  ( 1 ... n )  ->  k  e.  NN )
5049ssriv 3493 . . . . . . . . . . . . . 14  |-  ( 1 ... n )  C_  NN
5150a1i 11 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  (
1 ... n )  C_  NN )
52 elpm2r 7429 . . . . . . . . . . . . 13  |-  ( ( ( A  e.  _V  /\  NN  e.  _V )  /\  ( f : ( 1 ... n ) --> A  /\  ( 1 ... n )  C_  NN ) )  ->  f  e.  ( A  ^pm  NN ) )
5343, 45, 48, 51, 52syl22anc 1227 . . . . . . . . . . . 12  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  f  e.  ( A  ^pm  NN ) )
5437adantr 463 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  V  e.  _V )
55 nn0ex 10797 . . . . . . . . . . . . . 14  |-  NN0  e.  _V
5655a1i 11 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  NN0  e.  _V )
57 simpr2 1001 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  p : ( 0 ... n ) --> V )
58 elfznn0 11775 . . . . . . . . . . . . . . 15  |-  ( k  e.  ( 0 ... n )  ->  k  e.  NN0 )
5958ssriv 3493 . . . . . . . . . . . . . 14  |-  ( 0 ... n )  C_  NN0
6059a1i 11 . . . . . . . . . . . . 13  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  (
0 ... n )  C_  NN0 )
61 elpm2r 7429 . . . . . . . . . . . . 13  |-  ( ( ( V  e.  _V  /\ 
NN0  e.  _V )  /\  ( p : ( 0 ... n ) --> V  /\  ( 0 ... n )  C_  NN0 ) )  ->  p  e.  ( V  ^pm  NN0 )
)
6254, 56, 57, 60, 61syl22anc 1227 . . . . . . . . . . . 12  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  p  e.  ( V  ^pm  NN0 )
)
6353, 62jca 530 . . . . . . . . . . 11  |-  ( ( ( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  /\  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  (
f  e.  ( A 
^pm  NN )  /\  p  e.  ( V  ^pm  NN0 )
) )
6463ex 432 . . . . . . . . . 10  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( ( f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n
) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } )  -> 
( f  e.  ( A  ^pm  NN )  /\  p  e.  ( V  ^pm  NN0 ) ) ) )
6564rexlimdvw 2949 . . . . . . . . 9  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } )  ->  ( f  e.  ( A  ^pm  NN )  /\  p  e.  ( V  ^pm  NN0 ) ) ) )
6665adantld 465 . . . . . . . 8  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( ( V UMGrph  E  /\  E. n  e. 
NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  ->  (
f  e.  ( A 
^pm  NN )  /\  p  e.  ( V  ^pm  NN0 )
) ) )
6766ssopab2dv 4765 . . . . . . 7  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }  C_  {
<. f ,  p >.  |  ( f  e.  ( A  ^pm  NN )  /\  p  e.  ( V  ^pm  NN0 ) ) } )
68 df-xp 4994 . . . . . . . 8  |-  ( ( A  ^pm  NN )  X.  ( V  ^pm  NN0 )
)  =  { <. f ,  p >.  |  ( f  e.  ( A 
^pm  NN )  /\  p  e.  ( V  ^pm  NN0 )
) }
69 ovex 6298 . . . . . . . . 9  |-  ( A 
^pm  NN )  e.  _V
70 ovex 6298 . . . . . . . . 9  |-  ( V 
^pm  NN0 )  e.  _V
7169, 70xpex 6577 . . . . . . . 8  |-  ( ( A  ^pm  NN )  X.  ( V  ^pm  NN0 )
)  e.  _V
7268, 71eqeltrri 2539 . . . . . . 7  |-  { <. f ,  p >.  |  ( f  e.  ( A 
^pm  NN )  /\  p  e.  ( V  ^pm  NN0 )
) }  e.  _V
73 ssexg 4583 . . . . . . 7  |-  ( ( { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }  C_  {
<. f ,  p >.  |  ( f  e.  ( A  ^pm  NN )  /\  p  e.  ( V  ^pm  NN0 ) ) }  /\  { <. f ,  p >.  |  (
f  e.  ( A 
^pm  NN )  /\  p  e.  ( V  ^pm  NN0 )
) }  e.  _V )  ->  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }  e.  _V )
7467, 72, 73sylancl 660 . . . . . 6  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }  e.  _V )
7519, 36, 37, 38, 74ovmpt2d 6403 . . . . 5  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( V EulPaths  E )  =  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) } )
7675breqd 4450 . . . 4  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( F ( V EulPaths  E ) P  <->  F { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  (
f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) } P ) )
77 f1oeq1 5789 . . . . . . . . . 10  |-  ( f  =  F  ->  (
f : ( 1 ... n ) -1-1-onto-> A  <->  F :
( 1 ... n
)
-1-1-onto-> A ) )
7877adantr 463 . . . . . . . . 9  |-  ( ( f  =  F  /\  p  =  P )  ->  ( f : ( 1 ... n ) -1-1-onto-> A  <-> 
F : ( 1 ... n ) -1-1-onto-> A ) )
79 feq1 5695 . . . . . . . . . 10  |-  ( p  =  P  ->  (
p : ( 0 ... n ) --> V  <-> 
P : ( 0 ... n ) --> V ) )
8079adantl 464 . . . . . . . . 9  |-  ( ( f  =  F  /\  p  =  P )  ->  ( p : ( 0 ... n ) --> V  <->  P : ( 0 ... n ) --> V ) )
81 fveq1 5847 . . . . . . . . . . . . 13  |-  ( f  =  F  ->  (
f `  k )  =  ( F `  k ) )
8281fveq2d 5852 . . . . . . . . . . . 12  |-  ( f  =  F  ->  ( E `  ( f `  k ) )  =  ( E `  ( F `  k )
) )
8382adantr 463 . . . . . . . . . . 11  |-  ( ( f  =  F  /\  p  =  P )  ->  ( E `  (
f `  k )
)  =  ( E `
 ( F `  k ) ) )
84 simpr 459 . . . . . . . . . . . . 13  |-  ( ( f  =  F  /\  p  =  P )  ->  p  =  P )
8584fveq1d 5850 . . . . . . . . . . . 12  |-  ( ( f  =  F  /\  p  =  P )  ->  ( p `  (
k  -  1 ) )  =  ( P `
 ( k  - 
1 ) ) )
8684fveq1d 5850 . . . . . . . . . . . 12  |-  ( ( f  =  F  /\  p  =  P )  ->  ( p `  k
)  =  ( P `
 k ) )
8785, 86preq12d 4103 . . . . . . . . . . 11  |-  ( ( f  =  F  /\  p  =  P )  ->  { ( p `  ( k  -  1 ) ) ,  ( p `  k ) }  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } )
8883, 87eqeq12d 2476 . . . . . . . . . 10  |-  ( ( f  =  F  /\  p  =  P )  ->  ( ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) }  <-> 
( E `  ( F `  k )
)  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) )
8988ralbidv 2893 . . . . . . . . 9  |-  ( ( f  =  F  /\  p  =  P )  ->  ( A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) }  <->  A. k  e.  (
1 ... n ) ( E `  ( F `
 k ) )  =  { ( P `
 ( k  - 
1 ) ) ,  ( P `  k
) } ) )
9078, 80, 893anbi123d 1297 . . . . . . . 8  |-  ( ( f  =  F  /\  p  =  P )  ->  ( ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } )  <->  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) )
9190rexbidv 2965 . . . . . . 7  |-  ( ( f  =  F  /\  p  =  P )  ->  ( E. n  e. 
NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } )  <->  E. n  e.  NN0  ( F : ( 1 ... n ) -1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( F `
 k ) )  =  { ( P `
 ( k  - 
1 ) ) ,  ( P `  k
) } ) ) )
9291anbi2d 701 . . . . . 6  |-  ( ( f  =  F  /\  p  =  P )  ->  ( ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) )  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
93 eqid 2454 . . . . . 6  |-  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }  =  { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) }
9492, 93brabga 4750 . . . . 5  |-  ( ( F  e.  _V  /\  P  e.  _V )  ->  ( F { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  ( f : ( 1 ... n
)
-1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( f `  k
) )  =  {
( p `  (
k  -  1 ) ) ,  ( p `
 k ) } ) ) } P  <->  ( V UMGrph  E  /\  E. n  e.  NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
9594ad2antlr 724 . . . 4  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( F { <. f ,  p >.  |  ( V UMGrph  E  /\  E. n  e.  NN0  (
f : ( 1 ... n ) -1-1-onto-> A  /\  p : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n ) ( E `  ( f `
 k ) )  =  { ( p `
 ( k  - 
1 ) ) ,  ( p `  k
) } ) ) } P  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
9676, 95bitrd 253 . . 3  |-  ( ( ( ( V  e. 
_V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  /\  dom  E  =  A )  ->  ( F ( V EulPaths  E ) P  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
9796expcom 433 . 2  |-  ( dom 
E  =  A  -> 
( ( ( V  e.  _V  /\  E  e.  _V )  /\  ( F  e.  _V  /\  P  e.  _V ) )  -> 
( F ( V EulPaths  E ) P  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) ) )
983, 18, 97pm5.21ndd 352 1  |-  ( dom 
E  =  A  -> 
( F ( V EulPaths  E ) P  <->  ( V UMGrph  E  /\  E. n  e. 
NN0  ( F :
( 1 ... n
)
-1-1-onto-> A  /\  P : ( 0 ... n ) --> V  /\  A. k  e.  ( 1 ... n
) ( E `  ( F `  k ) )  =  { ( P `  ( k  -  1 ) ) ,  ( P `  k ) } ) ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 367    /\ w3a 971    = wceq 1398    e. wcel 1823   A.wral 2804   E.wrex 2805   _Vcvv 3106    C_ wss 3461   {cpr 4018   class class class wbr 4439   {copab 4496    X. cxp 4986   dom cdm 4988   Rel wrel 4993   -->wf 5566   -1-1-onto->wf1o 5569   ` cfv 5570  (class class class)co 6270    |-> cmpt2 6272    ^pm cpm 7413   0cc0 9481   1c1 9482    - cmin 9796   NNcn 10531   NN0cn0 10791   ...cfz 11675   UMGrph cumg 24517   EulPaths ceup 25167
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1623  ax-4 1636  ax-5 1709  ax-6 1752  ax-7 1795  ax-8 1825  ax-9 1827  ax-10 1842  ax-11 1847  ax-12 1859  ax-13 2004  ax-ext 2432  ax-rep 4550  ax-sep 4560  ax-nul 4568  ax-pow 4615  ax-pr 4676  ax-un 6565  ax-cnex 9537  ax-resscn 9538  ax-1cn 9539  ax-icn 9540  ax-addcl 9541  ax-addrcl 9542  ax-mulcl 9543  ax-mulrcl 9544  ax-mulcom 9545  ax-addass 9546  ax-mulass 9547  ax-distr 9548  ax-i2m1 9549  ax-1ne0 9550  ax-1rid 9551  ax-rnegex 9552  ax-rrecex 9553  ax-cnre 9554  ax-pre-lttri 9555  ax-pre-lttrn 9556  ax-pre-ltadd 9557  ax-pre-mulgt0 9558
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3or 972  df-3an 973  df-tru 1401  df-ex 1618  df-nf 1622  df-sb 1745  df-eu 2288  df-mo 2289  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2651  df-nel 2652  df-ral 2809  df-rex 2810  df-reu 2811  df-rab 2813  df-v 3108  df-sbc 3325  df-csb 3421  df-dif 3464  df-un 3466  df-in 3468  df-ss 3475  df-pss 3477  df-nul 3784  df-if 3930  df-pw 4001  df-sn 4017  df-pr 4019  df-tp 4021  df-op 4023  df-uni 4236  df-iun 4317  df-br 4440  df-opab 4498  df-mpt 4499  df-tr 4533  df-eprel 4780  df-id 4784  df-po 4789  df-so 4790  df-fr 4827  df-we 4829  df-ord 4870  df-on 4871  df-lim 4872  df-suc 4873  df-xp 4994  df-rel 4995  df-cnv 4996  df-co 4997  df-dm 4998  df-rn 4999  df-res 5000  df-ima 5001  df-iota 5534  df-fun 5572  df-fn 5573  df-f 5574  df-f1 5575  df-fo 5576  df-f1o 5577  df-fv 5578  df-riota 6232  df-ov 6273  df-oprab 6274  df-mpt2 6275  df-om 6674  df-1st 6773  df-2nd 6774  df-recs 7034  df-rdg 7068  df-er 7303  df-pm 7415  df-en 7510  df-dom 7511  df-sdom 7512  df-pnf 9619  df-mnf 9620  df-xr 9621  df-ltxr 9622  df-le 9623  df-sub 9798  df-neg 9799  df-nn 10532  df-n0 10792  df-z 10861  df-uz 11083  df-fz 11676  df-umgra 24518  df-eupa 25168
This theorem is referenced by:  eupagra  25171  eupai  25172  eupatrl  25173  eupa0  25179  eupares  25180  eupap1  25181
  Copyright terms: Public domain W3C validator