let G2 be _Graph; for v being object
for G1 being addVertex of G2,v holds G1 is addAdjVertexAll of G2,v, {}
let v be object ; for G1 being addVertex of G2,v holds G1 is addAdjVertexAll of G2,v, {}
let G1 be addVertex of G2,v; G1 is addAdjVertexAll of G2,v, {}
per cases
( not v in the_Vertices_of G2 or v in the_Vertices_of G2 )
;
suppose A1:
not
v in the_Vertices_of G2
;
G1 is addAdjVertexAll of G2,v, {} A2:
{} c= the_Vertices_of G2
by XBOOLE_1:2;
now ( the_Vertices_of G1 = (the_Vertices_of G2) \/ {v} & ( for e being object holds
( not e Joins v,v,G1 & ( for v1 being object holds
( ( not v1 in {} implies not e Joins v1,v,G1 ) & ( for v2 being object st v1 <> v & v2 <> v & e DJoins v1,v2,G1 holds
e DJoins v1,v2,G2 ) ) ) ) ) & ex E being set st
( card {} = card E & E misses the_Edges_of G2 & the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) ) )thus
the_Vertices_of G1 = (the_Vertices_of G2) \/ {v}
by GLIB_006:def 10;
( ( for e being object holds
( not e Joins v,v,G1 & ( for v1 being object holds
( ( not v1 in {} implies not e Joins v1,v,G1 ) & ( for v2 being object st v1 <> v & v2 <> v & e DJoins v1,v2,G1 holds
e DJoins v1,v2,G2 ) ) ) ) ) & ex E being set st
( card {} = card E & E misses the_Edges_of G2 & the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) ) )hereby ex E being set st
( card {} = card E & E misses the_Edges_of G2 & the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) )
let e be
object ;
( not e Joins v,v,G1 & ( for v1 being object holds
( ( not v1 in {} implies not e Joins v1,v,G1 ) & ( for v2 being object st v1 <> v & v2 <> v & e DJoins v1,v2,G1 holds
e DJoins v1,v2,G2 ) ) ) )
not
e Joins v,
v,
G2
by A1, GLIB_000:13;
hence
not
e Joins v,
v,
G1
by GLIB_006:87;
for v1 being object holds
( ( not v1 in {} implies not e Joins v1,v,G1 ) & ( for v2 being object st v1 <> v & v2 <> v & e DJoins v1,v2,G1 holds
e DJoins v1,v2,G2 ) )let v1 be
object ;
( ( not v1 in {} implies not e Joins v1,v,G1 ) & ( for v2 being object st v1 <> v & v2 <> v & e DJoins v1,v2,G1 holds
e DJoins v1,v2,G2 ) )let v2 be
object ;
( v1 <> v & v2 <> v & e DJoins v1,v2,G1 implies e DJoins v1,v2,G2 )assume
(
v1 <> v &
v2 <> v &
e DJoins v1,
v2,
G1 )
;
e DJoins v1,v2,G2hence
e DJoins v1,
v2,
G2
by GLIB_006:85;
verum
end; take E =
{} ;
( card {} = card E & E misses the_Edges_of G2 & the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) )thus
card {} = card E
;
( E misses the_Edges_of G2 & the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) )thus
E misses the_Edges_of G2
by XBOOLE_1:65;
( the_Edges_of G1 = (the_Edges_of G2) \/ E & ( for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) ) )thus
the_Edges_of G1 = (the_Edges_of G2) \/ E
by GLIB_006:def 10;
for v1 being object st v1 in {} holds
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) )let v1 be
object ;
( v1 in {} implies ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) ) )assume
v1 in {}
;
ex e1 being object st
( e1 in E & e1 Joins v1,v,G1 & ( for e2 being object st e2 Joins v1,v,G1 holds
e1 = e2 ) )hence
ex
e1 being
object st
(
e1 in E &
e1 Joins v1,
v,
G1 & ( for
e2 being
object st
e2 Joins v1,
v,
G1 holds
e1 = e2 ) )
;
verum end; hence
G1 is
addAdjVertexAll of
G2,
v,
{}
by A1, A2, GLIB_007:def 4;
verum end; end;