reserve G for _Graph;
reserve G2 for _Graph, G1 for Supergraph of G2;
reserve V for set;
reserve v for object;

theorem
  for G2 for v1, e being object, v2 being Vertex of G2
  for G1 being addAdjVertex of G2,v1,e,v2
  st not e in the_Edges_of G2 & not v1 in the_Vertices_of G2
  holds G1.order() = G2.order() +` 1 & G1.size() = G2.size() +` 1
proof
  let G2;
  let v1, e being object, v2 be Vertex of G2;
  let G1 be addAdjVertex of G2,v1,e,v2;
  assume A1: not e in the_Edges_of G2 & not v1 in the_Vertices_of G2;
  then A2: the_Vertices_of G1 = the_Vertices_of G2 \/ {v1} &
    the_Edges_of G1 = the_Edges_of G2 \/ {e} by Def14;
  A3: the_Vertices_of G2 misses {v1} & the_Edges_of G2 misses {e}
    by A1, ZFMISC_1:50;
  thus G1.order() = card the_Vertices_of G1 by GLIB_000:def 24
    .= card the_Vertices_of G2 +` card {v1} by A2, A3, CARD_2:35
    .= G2.order() +` card {v1} by GLIB_000:def 24
    .= G2.order() +` 1 by CARD_2:42;
  thus G1.size() = card the_Edges_of G1 by GLIB_000:def 25
    .= card the_Edges_of G2 +` card {e} by A2, A3, CARD_2:35
    .= G2.size() +` card {e} by GLIB_000:def 25
    .= G2.size() +` 1 by CARD_2:42;
end;
