Step |
Hyp |
Ref |
Expression |
1 |
|
clwlknon2num.v |
|- V = ( Vtx ` G ) |
2 |
|
clwlkwlk |
|- ( w e. ( ClWalks ` G ) -> w e. ( Walks ` G ) ) |
3 |
|
wlkop |
|- ( w e. ( Walks ` G ) -> w = <. ( 1st ` w ) , ( 2nd ` w ) >. ) |
4 |
2 3
|
syl |
|- ( w e. ( ClWalks ` G ) -> w = <. ( 1st ` w ) , ( 2nd ` w ) >. ) |
5 |
|
fvex |
|- ( 1st ` w ) e. _V |
6 |
|
hasheq0 |
|- ( ( 1st ` w ) e. _V -> ( ( # ` ( 1st ` w ) ) = 0 <-> ( 1st ` w ) = (/) ) ) |
7 |
5 6
|
ax-mp |
|- ( ( # ` ( 1st ` w ) ) = 0 <-> ( 1st ` w ) = (/) ) |
8 |
7
|
biimpi |
|- ( ( # ` ( 1st ` w ) ) = 0 -> ( 1st ` w ) = (/) ) |
9 |
8
|
adantr |
|- ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> ( 1st ` w ) = (/) ) |
10 |
9
|
3ad2ant3 |
|- ( ( X e. V /\ ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( 1st ` w ) = (/) ) |
11 |
9
|
adantl |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( 1st ` w ) = (/) ) |
12 |
11
|
breq1d |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) <-> (/) ( ClWalks ` G ) ( 2nd ` w ) ) ) |
13 |
1
|
1vgrex |
|- ( X e. V -> G e. _V ) |
14 |
1
|
0clwlk |
|- ( G e. _V -> ( (/) ( ClWalks ` G ) ( 2nd ` w ) <-> ( 2nd ` w ) : ( 0 ... 0 ) --> V ) ) |
15 |
13 14
|
syl |
|- ( X e. V -> ( (/) ( ClWalks ` G ) ( 2nd ` w ) <-> ( 2nd ` w ) : ( 0 ... 0 ) --> V ) ) |
16 |
15
|
adantr |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( (/) ( ClWalks ` G ) ( 2nd ` w ) <-> ( 2nd ` w ) : ( 0 ... 0 ) --> V ) ) |
17 |
12 16
|
bitrd |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) <-> ( 2nd ` w ) : ( 0 ... 0 ) --> V ) ) |
18 |
|
fz0sn |
|- ( 0 ... 0 ) = { 0 } |
19 |
18
|
feq2i |
|- ( ( 2nd ` w ) : ( 0 ... 0 ) --> V <-> ( 2nd ` w ) : { 0 } --> V ) |
20 |
|
c0ex |
|- 0 e. _V |
21 |
20
|
fsn2 |
|- ( ( 2nd ` w ) : { 0 } --> V <-> ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) |
22 |
|
simprr |
|- ( ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) /\ ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) -> ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) |
23 |
|
simprr |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 2nd ` w ) ` 0 ) = X ) |
24 |
23
|
adantr |
|- ( ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) /\ ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) -> ( ( 2nd ` w ) ` 0 ) = X ) |
25 |
24
|
opeq2d |
|- ( ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) /\ ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) -> <. 0 , ( ( 2nd ` w ) ` 0 ) >. = <. 0 , X >. ) |
26 |
25
|
sneqd |
|- ( ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) /\ ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) -> { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } = { <. 0 , X >. } ) |
27 |
22 26
|
eqtrd |
|- ( ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) /\ ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) ) -> ( 2nd ` w ) = { <. 0 , X >. } ) |
28 |
27
|
ex |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( ( ( 2nd ` w ) ` 0 ) e. V /\ ( 2nd ` w ) = { <. 0 , ( ( 2nd ` w ) ` 0 ) >. } ) -> ( 2nd ` w ) = { <. 0 , X >. } ) ) |
29 |
21 28
|
syl5bi |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 2nd ` w ) : { 0 } --> V -> ( 2nd ` w ) = { <. 0 , X >. } ) ) |
30 |
19 29
|
syl5bi |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 2nd ` w ) : ( 0 ... 0 ) --> V -> ( 2nd ` w ) = { <. 0 , X >. } ) ) |
31 |
17 30
|
sylbid |
|- ( ( X e. V /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) -> ( 2nd ` w ) = { <. 0 , X >. } ) ) |
32 |
31
|
ex |
|- ( X e. V -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) -> ( 2nd ` w ) = { <. 0 , X >. } ) ) ) |
33 |
32
|
com23 |
|- ( X e. V -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> ( 2nd ` w ) = { <. 0 , X >. } ) ) ) |
34 |
33
|
3imp |
|- ( ( X e. V /\ ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> ( 2nd ` w ) = { <. 0 , X >. } ) |
35 |
10 34
|
opeq12d |
|- ( ( X e. V /\ ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> <. ( 1st ` w ) , ( 2nd ` w ) >. = <. (/) , { <. 0 , X >. } >. ) |
36 |
35
|
3exp |
|- ( X e. V -> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> <. ( 1st ` w ) , ( 2nd ` w ) >. = <. (/) , { <. 0 , X >. } >. ) ) ) |
37 |
|
eleq1 |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( w e. ( ClWalks ` G ) <-> <. ( 1st ` w ) , ( 2nd ` w ) >. e. ( ClWalks ` G ) ) ) |
38 |
|
df-br |
|- ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) <-> <. ( 1st ` w ) , ( 2nd ` w ) >. e. ( ClWalks ` G ) ) |
39 |
37 38
|
bitr4di |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( w e. ( ClWalks ` G ) <-> ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) ) ) |
40 |
|
eqeq1 |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( w = <. (/) , { <. 0 , X >. } >. <-> <. ( 1st ` w ) , ( 2nd ` w ) >. = <. (/) , { <. 0 , X >. } >. ) ) |
41 |
40
|
imbi2d |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) <-> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> <. ( 1st ` w ) , ( 2nd ` w ) >. = <. (/) , { <. 0 , X >. } >. ) ) ) |
42 |
39 41
|
imbi12d |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( ( w e. ( ClWalks ` G ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) ) <-> ( ( 1st ` w ) ( ClWalks ` G ) ( 2nd ` w ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> <. ( 1st ` w ) , ( 2nd ` w ) >. = <. (/) , { <. 0 , X >. } >. ) ) ) ) |
43 |
36 42
|
syl5ibr |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( X e. V -> ( w e. ( ClWalks ` G ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) ) ) ) |
44 |
43
|
com23 |
|- ( w = <. ( 1st ` w ) , ( 2nd ` w ) >. -> ( w e. ( ClWalks ` G ) -> ( X e. V -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) ) ) ) |
45 |
4 44
|
mpcom |
|- ( w e. ( ClWalks ` G ) -> ( X e. V -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) ) ) |
46 |
45
|
com12 |
|- ( X e. V -> ( w e. ( ClWalks ` G ) -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) -> w = <. (/) , { <. 0 , X >. } >. ) ) ) |
47 |
46
|
impd |
|- ( X e. V -> ( ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) -> w = <. (/) , { <. 0 , X >. } >. ) ) |
48 |
|
eqidd |
|- ( X e. V -> (/) = (/) ) |
49 |
20
|
a1i |
|- ( X e. V -> 0 e. _V ) |
50 |
|
snidg |
|- ( X e. V -> X e. { X } ) |
51 |
49 50
|
fsnd |
|- ( X e. V -> { <. 0 , X >. } : { 0 } --> { X } ) |
52 |
1
|
0clwlkv |
|- ( ( X e. V /\ (/) = (/) /\ { <. 0 , X >. } : { 0 } --> { X } ) -> (/) ( ClWalks ` G ) { <. 0 , X >. } ) |
53 |
48 51 52
|
mpd3an23 |
|- ( X e. V -> (/) ( ClWalks ` G ) { <. 0 , X >. } ) |
54 |
|
hash0 |
|- ( # ` (/) ) = 0 |
55 |
54
|
a1i |
|- ( X e. V -> ( # ` (/) ) = 0 ) |
56 |
|
fvsng |
|- ( ( 0 e. _V /\ X e. V ) -> ( { <. 0 , X >. } ` 0 ) = X ) |
57 |
20 56
|
mpan |
|- ( X e. V -> ( { <. 0 , X >. } ` 0 ) = X ) |
58 |
53 55 57
|
jca32 |
|- ( X e. V -> ( (/) ( ClWalks ` G ) { <. 0 , X >. } /\ ( ( # ` (/) ) = 0 /\ ( { <. 0 , X >. } ` 0 ) = X ) ) ) |
59 |
|
eleq1 |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( w e. ( ClWalks ` G ) <-> <. (/) , { <. 0 , X >. } >. e. ( ClWalks ` G ) ) ) |
60 |
|
df-br |
|- ( (/) ( ClWalks ` G ) { <. 0 , X >. } <-> <. (/) , { <. 0 , X >. } >. e. ( ClWalks ` G ) ) |
61 |
59 60
|
bitr4di |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( w e. ( ClWalks ` G ) <-> (/) ( ClWalks ` G ) { <. 0 , X >. } ) ) |
62 |
|
0ex |
|- (/) e. _V |
63 |
|
snex |
|- { <. 0 , X >. } e. _V |
64 |
62 63
|
op1std |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( 1st ` w ) = (/) ) |
65 |
64
|
fveqeq2d |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( ( # ` ( 1st ` w ) ) = 0 <-> ( # ` (/) ) = 0 ) ) |
66 |
62 63
|
op2ndd |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( 2nd ` w ) = { <. 0 , X >. } ) |
67 |
66
|
fveq1d |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( ( 2nd ` w ) ` 0 ) = ( { <. 0 , X >. } ` 0 ) ) |
68 |
67
|
eqeq1d |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( ( ( 2nd ` w ) ` 0 ) = X <-> ( { <. 0 , X >. } ` 0 ) = X ) ) |
69 |
65 68
|
anbi12d |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) <-> ( ( # ` (/) ) = 0 /\ ( { <. 0 , X >. } ` 0 ) = X ) ) ) |
70 |
61 69
|
anbi12d |
|- ( w = <. (/) , { <. 0 , X >. } >. -> ( ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) <-> ( (/) ( ClWalks ` G ) { <. 0 , X >. } /\ ( ( # ` (/) ) = 0 /\ ( { <. 0 , X >. } ` 0 ) = X ) ) ) ) |
71 |
58 70
|
syl5ibrcom |
|- ( X e. V -> ( w = <. (/) , { <. 0 , X >. } >. -> ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) ) ) |
72 |
47 71
|
impbid |
|- ( X e. V -> ( ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) <-> w = <. (/) , { <. 0 , X >. } >. ) ) |
73 |
72
|
alrimiv |
|- ( X e. V -> A. w ( ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) <-> w = <. (/) , { <. 0 , X >. } >. ) ) |
74 |
|
rabeqsn |
|- ( { w e. ( ClWalks ` G ) | ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) } = { <. (/) , { <. 0 , X >. } >. } <-> A. w ( ( w e. ( ClWalks ` G ) /\ ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) ) <-> w = <. (/) , { <. 0 , X >. } >. ) ) |
75 |
73 74
|
sylibr |
|- ( X e. V -> { w e. ( ClWalks ` G ) | ( ( # ` ( 1st ` w ) ) = 0 /\ ( ( 2nd ` w ) ` 0 ) = X ) } = { <. (/) , { <. 0 , X >. } >. } ) |