let G be _Graph; for a, b being Vertex of G st a <> b & not a,b are_adjacent holds
for S being Subset of (the_Vertices_of G) holds
( S is VertexSeparator of a,b iff ( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) ) )
let a, b be Vertex of G; ( a <> b & not a,b are_adjacent implies for S being Subset of (the_Vertices_of G) holds
( S is VertexSeparator of a,b iff ( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) ) ) )
assume that
A1:
a <> b
and
A2:
not a,b are_adjacent
; for S being Subset of (the_Vertices_of G) holds
( S is VertexSeparator of a,b iff ( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) ) )
let S be Subset of (the_Vertices_of G); ( S is VertexSeparator of a,b iff ( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) ) )
hereby ( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) implies S is VertexSeparator of a,b )
assume A3:
S is
VertexSeparator of
a,
b
;
( not a in S & not b in S & ( for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() ) ) )hence
( not
a in S & not
b in S )
by A1, A2, Def8;
for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() )then A4:
not
(the_Vertices_of G) \ S is
empty
by XBOOLE_0:def 5;
let W be
Walk of
G;
( W is_Walk_from a,b implies ex x being Vertex of G st
( x in S & x in W .vertices() ) )assume A5:
W is_Walk_from a,
b
;
ex x being Vertex of G st
( x in S & x in W .vertices() )now assume A6:
for
x being
Vertex of
G holds
( not
x in S or not
x in W .vertices() )
;
for G2 being removeVertices of G,S holds contradictionlet G2 be
removeVertices of
G,
S;
contradictionA7:
the_Vertices_of G2 = (the_Vertices_of G) \ S
by A4, GLIB_000:def 37;
then A8:
the_Edges_of G2 = G .edgesBetween (the_Vertices_of G2)
by GLIB_000:def 37;
A9:
W .edges() c= G .edgesBetween (W .vertices())
by GLIB_001:109;
then A11:
W .vertices() c= the_Vertices_of G2
by TARSKI:def 3;
then
G .edgesBetween (W .vertices()) c= G .edgesBetween (the_Vertices_of G2)
by GLIB_000:36;
then
W .edges() c= the_Edges_of G2
by A8, A9, XBOOLE_1:1;
then reconsider W2 =
W as
Walk of
G2 by A11, GLIB_001:170;
W .last() = b
by A5, GLIB_001:def 23;
then A12:
W2 .last() = b
;
W .first() = a
by A5, GLIB_001:def 23;
then
W2 .first() = a
;
then
W2 is_Walk_from a,
b
by A12, GLIB_001:def 23;
hence
contradiction
by A1, A2, A3, Def8;
verum end; hence
ex
x being
Vertex of
G st
(
x in S &
x in W .vertices() )
;
verum
end;
assume that
A13:
not a in S
and
A14:
not b in S
and
A15:
for W being Walk of G st W is_Walk_from a,b holds
ex x being Vertex of G st
( x in S & x in W .vertices() )
; S is VertexSeparator of a,b
now let G2 be
removeVertices of
G,
S;
for W being Walk of G2 holds not W is_Walk_from a,bgiven W being
Walk of
G2 such that A16:
W is_Walk_from a,
b
;
contradictionreconsider W2 =
W as
Walk of
G by GLIB_001:167;
W .last() = b
by A16, GLIB_001:def 23;
then A17:
W2 .last() = b
;
then A18:
W2 .vertices() = W .vertices()
by TARSKI:1;
not
(the_Vertices_of G) \ S is
empty
by A13, XBOOLE_0:def 5;
then
the_Vertices_of G2 = (the_Vertices_of G) \ S
by GLIB_000:def 37;
then A19:
for
x being
Vertex of
G holds
( not
x in S or not
x in W2 .vertices() )
by A18, XBOOLE_0:def 5;
W .first() = a
by A16, GLIB_001:def 23;
then
W2 .first() = a
;
then
W2 is_Walk_from a,
b
by A17, GLIB_001:def 23;
hence
contradiction
by A15, A19;
verum end;
hence
S is VertexSeparator of a,b
by A1, A2, A13, A14, Def8; verum