reserve G, G2 for _Graph, V, E for set,
  v for object;

theorem Th40:
  for G2, v, V for G1 being addAdjVertexToAll of G2,v,V
  st V c= the_Vertices_of G2 & not v in the_Vertices_of G2
  for e, v1, v2 being object st v1 <> v
  holds e DJoins v1,v2,G1 implies e DJoins v1,v2,G2
proof
  let G2, v, V;
  let G1 be addAdjVertexToAll of G2,v,V;
  assume V c= the_Vertices_of G2 & not v in the_Vertices_of G2;
  then A1: the_Vertices_of G1 = the_Vertices_of G2 \/ {v} &
    the_Edges_of G1 = the_Edges_of G2 \/ (V --> the_Edges_of G2) &
    the_Source_of G1 = the_Source_of G2 +* ((V --> the_Edges_of G2) --> v)
    by Def2;
  let e,v1,v2 be object;
  assume A2: v1 <> v;
  assume A3: e DJoins v1,v2,G1;
  then A4: e in the_Edges_of G1 by GLIB_000:def 14;
  A5: e in the_Edges_of G2
  proof
    assume not e in the_Edges_of G2;
    then A6: e in (V --> the_Edges_of G2) by A1, A4, XBOOLE_0:def 3;
    then e in dom ((V --> the_Edges_of G2) --> v);
    then (the_Source_of G1).e
       = ((V --> the_Edges_of G2) --> v).e by A1, FUNCT_4:13
      .= v by A6, FUNCOP_1:7;
    hence contradiction by A2, A3, GLIB_000:def 14;
  end;
  reconsider e1=e as set by TARSKI:1;
  (the_Source_of G1).e1 = (the_Source_of G2).e1 &
    (the_Target_of G1).e1 = (the_Target_of G2).e1 by A5, GLIB_006:def 9;
  then v1 = (the_Source_of G2).e1 & v2 = (the_Target_of G2).e1
    by A3, GLIB_000:def 14;
  hence thesis by A5, GLIB_000:def 14;
end;
