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

Theorem vfwlkniswwlkn 25005
Description: If the edge function of a walk has length n, then the vertex function of the walk is a word representing the walk as word of length n. (Contributed by Alexander van der Vekens, 25-Aug-2018.)
Assertion
Ref Expression
vfwlkniswwlkn  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  ( 2nd `  W )  e.  ( ( V WWalksN  E
) `  N )
)

Proof of Theorem vfwlkniswwlkn
Dummy variable  i is distinct from all other variables.
StepHypRef Expression
1 wlkcpr 24828 . . . . 5  |-  ( W  e.  ( V Walks  E
)  <->  ( 1st `  W
) ( V Walks  E
) ( 2nd `  W
) )
2 wlkn0 24826 . . . . 5  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( 2nd `  W )  =/=  (/) )
31, 2sylbi 195 . . . 4  |-  ( W  e.  ( V Walks  E
)  ->  ( 2nd `  W )  =/=  (/) )
4 wlkelwrd 24829 . . . . 5  |-  ( W  e.  ( V Walks  E
)  ->  ( ( 1st `  W )  e. Word  dom  E  /\  ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W
) ) ) --> V ) )
5 ffz0iswrd 12526 . . . . . 6  |-  ( ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V  ->  ( 2nd `  W )  e. Word  V )
65adantl 464 . . . . 5  |-  ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V )  -> 
( 2nd `  W
)  e. Word  V )
74, 6syl 17 . . . 4  |-  ( W  e.  ( V Walks  E
)  ->  ( 2nd `  W )  e. Word  V
)
8 edgwlk 24830 . . . . . 6  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  A. i  e.  ( 0..^ ( # `  ( 1st `  W
) ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )
9 wlklenvm1 24831 . . . . . . . 8  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( # `  ( 1st `  W ) )  =  ( ( # `  ( 2nd `  W
) )  -  1 ) )
109oveq2d 6248 . . . . . . 7  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( 0..^ ( # `  ( 1st `  W ) ) )  =  ( 0..^ ( ( # `  ( 2nd `  W ) )  -  1 ) ) )
1110raleqdv 3007 . . . . . 6  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( A. i  e.  ( 0..^ ( # `  ( 1st `  W ) ) ) { ( ( 2nd `  W ) `
 i ) ,  ( ( 2nd `  W
) `  ( i  +  1 ) ) }  e.  ran  E  <->  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W ) )  -  1 ) ) { ( ( 2nd `  W ) `  i
) ,  ( ( 2nd `  W ) `
 ( i  +  1 ) ) }  e.  ran  E ) )
128, 11mpbid 210 . . . . 5  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  A. i  e.  ( 0..^ ( (
# `  ( 2nd `  W ) )  - 
1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )
131, 12sylbi 195 . . . 4  |-  ( W  e.  ( V Walks  E
)  ->  A. i  e.  ( 0..^ ( (
# `  ( 2nd `  W ) )  - 
1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )
143, 7, 133jca 1175 . . 3  |-  ( W  e.  ( V Walks  E
)  ->  ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W
)  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W ) )  -  1 ) ) { ( ( 2nd `  W ) `  i
) ,  ( ( 2nd `  W ) `
 ( i  +  1 ) ) }  e.  ran  E ) )
1514ad2antrl 726 . 2  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  (
( 2nd `  W
)  =/=  (/)  /\  ( 2nd `  W )  e. Word  V  /\  A. i  e.  ( 0..^ ( (
# `  ( 2nd `  W ) )  - 
1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E ) )
16 id 22 . . . . . 6  |-  ( N  e.  NN0  ->  N  e. 
NN0 )
17 oveq2 6240 . . . . . . . . . . 11  |-  ( (
# `  ( 1st `  W ) )  =  N  ->  ( 0 ... ( # `  ( 1st `  W ) ) )  =  ( 0 ... N ) )
1817adantl 464 . . . . . . . . . 10  |-  ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( # `  ( 1st `  W ) )  =  N )  ->  (
0 ... ( # `  ( 1st `  W ) ) )  =  ( 0 ... N ) )
1918feq2d 5655 . . . . . . . . 9  |-  ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( # `  ( 1st `  W ) )  =  N )  ->  (
( 2nd `  W
) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V  <->  ( 2nd `  W ) : ( 0 ... N ) --> V ) )
2019biimpd 207 . . . . . . . 8  |-  ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( # `  ( 1st `  W ) )  =  N )  ->  (
( 2nd `  W
) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V  ->  ( 2nd `  W ) : ( 0 ... N
) --> V ) )
2120impancom 438 . . . . . . 7  |-  ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V )  -> 
( ( # `  ( 1st `  W ) )  =  N  ->  ( 2nd `  W ) : ( 0 ... N
) --> V ) )
2221imp 427 . . . . . 6  |-  ( ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V )  /\  ( # `  ( 1st `  W ) )  =  N )  ->  ( 2nd `  W ) : ( 0 ... N
) --> V )
23 hashfzdm 12452 . . . . . 6  |-  ( ( N  e.  NN0  /\  ( 2nd `  W ) : ( 0 ... N ) --> V )  ->  ( # `  ( 2nd `  W ) )  =  ( N  + 
1 ) )
2416, 22, 23syl2anr 476 . . . . 5  |-  ( ( ( ( ( 1st `  W )  e. Word  dom  E  /\  ( 2nd `  W
) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V )  /\  ( # `  ( 1st `  W ) )  =  N )  /\  N  e.  NN0 )  ->  ( # `
 ( 2nd `  W
) )  =  ( N  +  1 ) )
2524ex 432 . . . 4  |-  ( ( ( ( 1st `  W
)  e. Word  dom  E  /\  ( 2nd `  W ) : ( 0 ... ( # `  ( 1st `  W ) ) ) --> V )  /\  ( # `  ( 1st `  W ) )  =  N )  ->  ( N  e.  NN0  ->  ( # `
 ( 2nd `  W
) )  =  ( N  +  1 ) ) )
264, 25sylan 469 . . 3  |-  ( ( W  e.  ( V Walks 
E )  /\  ( # `
 ( 1st `  W
) )  =  N )  ->  ( N  e.  NN0  ->  ( # `  ( 2nd `  W ) )  =  ( N  + 
1 ) ) )
2726impcom 428 . 2  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  ( # `
 ( 2nd `  W
) )  =  ( N  +  1 ) )
28 wlkbprop 24822 . . . . . . . 8  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( ( # `
 ( 1st `  W
) )  e.  NN0  /\  ( V  e.  _V  /\  E  e.  _V )  /\  ( ( 1st `  W
)  e.  _V  /\  ( 2nd `  W )  e.  _V ) ) )
2928simp2d 1008 . . . . . . 7  |-  ( ( 1st `  W ) ( V Walks  E ) ( 2nd `  W
)  ->  ( V  e.  _V  /\  E  e. 
_V ) )
301, 29sylbi 195 . . . . . 6  |-  ( W  e.  ( V Walks  E
)  ->  ( V  e.  _V  /\  E  e. 
_V ) )
31 simpll 752 . . . . . . . 8  |-  ( ( ( V  e.  _V  /\  E  e.  _V )  /\  N  e.  NN0 )  ->  V  e.  _V )
32 simpr 459 . . . . . . . . 9  |-  ( ( V  e.  _V  /\  E  e.  _V )  ->  E  e.  _V )
3332adantr 463 . . . . . . . 8  |-  ( ( ( V  e.  _V  /\  E  e.  _V )  /\  N  e.  NN0 )  ->  E  e.  _V )
34 simpr 459 . . . . . . . 8  |-  ( ( ( V  e.  _V  /\  E  e.  _V )  /\  N  e.  NN0 )  ->  N  e.  NN0 )
3531, 33, 343jca 1175 . . . . . . 7  |-  ( ( ( V  e.  _V  /\  E  e.  _V )  /\  N  e.  NN0 )  ->  ( V  e. 
_V  /\  E  e.  _V  /\  N  e.  NN0 ) )
3635ex 432 . . . . . 6  |-  ( ( V  e.  _V  /\  E  e.  _V )  ->  ( N  e.  NN0  ->  ( V  e.  _V  /\  E  e.  _V  /\  N  e.  NN0 ) ) )
3730, 36syl 17 . . . . 5  |-  ( W  e.  ( V Walks  E
)  ->  ( N  e.  NN0  ->  ( V  e.  _V  /\  E  e. 
_V  /\  N  e.  NN0 ) ) )
3837adantr 463 . . . 4  |-  ( ( W  e.  ( V Walks 
E )  /\  ( # `
 ( 1st `  W
) )  =  N )  ->  ( N  e.  NN0  ->  ( V  e.  _V  /\  E  e. 
_V  /\  N  e.  NN0 ) ) )
3938impcom 428 . . 3  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  ( V  e.  _V  /\  E  e.  _V  /\  N  e. 
NN0 ) )
40 iswwlkn 24983 . . . 4  |-  ( ( V  e.  _V  /\  E  e.  _V  /\  N  e.  NN0 )  ->  (
( 2nd `  W
)  e.  ( ( V WWalksN  E ) `  N
)  <->  ( ( 2nd `  W )  e.  ( V WWalks  E )  /\  ( # `  ( 2nd `  W ) )  =  ( N  +  1 ) ) ) )
41 iswwlk 24982 . . . . . 6  |-  ( ( V  e.  _V  /\  E  e.  _V )  ->  ( ( 2nd `  W
)  e.  ( V WWalks  E )  <->  ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W
)  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W ) )  -  1 ) ) { ( ( 2nd `  W ) `  i
) ,  ( ( 2nd `  W ) `
 ( i  +  1 ) ) }  e.  ran  E ) ) )
42413adant3 1015 . . . . 5  |-  ( ( V  e.  _V  /\  E  e.  _V  /\  N  e.  NN0 )  ->  (
( 2nd `  W
)  e.  ( V WWalks  E )  <->  ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W
)  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W ) )  -  1 ) ) { ( ( 2nd `  W ) `  i
) ,  ( ( 2nd `  W ) `
 ( i  +  1 ) ) }  e.  ran  E ) ) )
4342anbi1d 703 . . . 4  |-  ( ( V  e.  _V  /\  E  e.  _V  /\  N  e.  NN0 )  ->  (
( ( 2nd `  W
)  e.  ( V WWalks  E )  /\  ( # `
 ( 2nd `  W
) )  =  ( N  +  1 ) )  <->  ( ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W )  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W
) )  -  1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )  /\  ( # `  ( 2nd `  W
) )  =  ( N  +  1 ) ) ) )
4440, 43bitrd 253 . . 3  |-  ( ( V  e.  _V  /\  E  e.  _V  /\  N  e.  NN0 )  ->  (
( 2nd `  W
)  e.  ( ( V WWalksN  E ) `  N
)  <->  ( ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W )  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W
) )  -  1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )  /\  ( # `  ( 2nd `  W
) )  =  ( N  +  1 ) ) ) )
4539, 44syl 17 . 2  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  (
( 2nd `  W
)  e.  ( ( V WWalksN  E ) `  N
)  <->  ( ( ( 2nd `  W )  =/=  (/)  /\  ( 2nd `  W )  e. Word  V  /\  A. i  e.  ( 0..^ ( ( # `  ( 2nd `  W
) )  -  1 ) ) { ( ( 2nd `  W
) `  i ) ,  ( ( 2nd `  W ) `  (
i  +  1 ) ) }  e.  ran  E )  /\  ( # `  ( 2nd `  W
) )  =  ( N  +  1 ) ) ) )
4615, 27, 45mpbir2and 921 1  |-  ( ( N  e.  NN0  /\  ( W  e.  ( V Walks  E )  /\  ( # `
 ( 1st `  W
) )  =  N ) )  ->  ( 2nd `  W )  e.  ( ( V WWalksN  E
) `  N )
)
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 367    /\ w3a 972    = wceq 1403    e. wcel 1840    =/= wne 2596   A.wral 2751   _Vcvv 3056   (/)c0 3735   {cpr 3971   class class class wbr 4392   dom cdm 4940   ran crn 4941   -->wf 5519   ` cfv 5523  (class class class)co 6232   1stc1st 6734   2ndc2nd 6735   0cc0 9440   1c1 9441    + caddc 9443    - cmin 9759   NN0cn0 10754   ...cfz 11641  ..^cfzo 11765   #chash 12357  Word cword 12488   Walks cwalk 24797   WWalks cwwlk 24976   WWalksN cwwlkn 24977
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1637  ax-4 1650  ax-5 1723  ax-6 1769  ax-7 1812  ax-8 1842  ax-9 1844  ax-10 1859  ax-11 1864  ax-12 1876  ax-13 2024  ax-ext 2378  ax-rep 4504  ax-sep 4514  ax-nul 4522  ax-pow 4569  ax-pr 4627  ax-un 6528  ax-cnex 9496  ax-resscn 9497  ax-1cn 9498  ax-icn 9499  ax-addcl 9500  ax-addrcl 9501  ax-mulcl 9502  ax-mulrcl 9503  ax-mulcom 9504  ax-addass 9505  ax-mulass 9506  ax-distr 9507  ax-i2m1 9508  ax-1ne0 9509  ax-1rid 9510  ax-rnegex 9511  ax-rrecex 9512  ax-cnre 9513  ax-pre-lttri 9514  ax-pre-lttrn 9515  ax-pre-ltadd 9516  ax-pre-mulgt0 9517
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3or 973  df-3an 974  df-tru 1406  df-ex 1632  df-nf 1636  df-sb 1762  df-eu 2240  df-mo 2241  df-clab 2386  df-cleq 2392  df-clel 2395  df-nfc 2550  df-ne 2598  df-nel 2599  df-ral 2756  df-rex 2757  df-reu 2758  df-rmo 2759  df-rab 2760  df-v 3058  df-sbc 3275  df-csb 3371  df-dif 3414  df-un 3416  df-in 3418  df-ss 3425  df-pss 3427  df-nul 3736  df-if 3883  df-pw 3954  df-sn 3970  df-pr 3972  df-tp 3974  df-op 3976  df-uni 4189  df-int 4225  df-iun 4270  df-br 4393  df-opab 4451  df-mpt 4452  df-tr 4487  df-eprel 4731  df-id 4735  df-po 4741  df-so 4742  df-fr 4779  df-we 4781  df-ord 4822  df-on 4823  df-lim 4824  df-suc 4825  df-xp 4946  df-rel 4947  df-cnv 4948  df-co 4949  df-dm 4950  df-rn 4951  df-res 4952  df-ima 4953  df-iota 5487  df-fun 5525  df-fn 5526  df-f 5527  df-f1 5528  df-fo 5529  df-f1o 5530  df-fv 5531  df-riota 6194  df-ov 6235  df-oprab 6236  df-mpt2 6237  df-om 6637  df-1st 6736  df-2nd 6737  df-recs 6997  df-rdg 7031  df-1o 7085  df-oadd 7089  df-er 7266  df-map 7377  df-pm 7378  df-en 7473  df-dom 7474  df-sdom 7475  df-fin 7476  df-card 8270  df-cda 8498  df-pnf 9578  df-mnf 9579  df-xr 9580  df-ltxr 9581  df-le 9582  df-sub 9761  df-neg 9762  df-nn 10495  df-2 10553  df-n0 10755  df-z 10824  df-uz 11044  df-fz 11642  df-fzo 11766  df-hash 12358  df-word 12496  df-wlk 24807  df-wwlk 24978  df-wwlkn 24979
This theorem is referenced by:  wlknwwlknfun  25009  wlkiswwlkfun  25016
  Copyright terms: Public domain W3C validator