reserve GS for GraphStruct;
reserve G,G1,G2,G3 for _Graph;
reserve e,x,x1,x2,y,y1,y2,E,V,X,Y for set;
reserve n,n1,n2 for Nat;
reserve v,v1,v2 for Vertex of G;

theorem
  for G1 being _Graph, V being set, G2 being inducedSubgraph of G1, V
  st G2 is spanning holds G1 == G2
proof
  let G1 be _Graph, V be set, G2 be inducedSubgraph of G1, V;
  assume G2 is spanning;
  then A1: the_Vertices_of G1 = the_Vertices_of G2;
  per cases;
  suppose V is non empty Subset of the_Vertices_of G1;
    then the_Vertices_of G2 = V & the_Edges_of G2 = G1.edgesBetween(V)
      by Def37;
    then A2: the_Edges_of G2 = the_Edges_of G1 by A1, Th34;
    G1 is Subgraph of G1 by Lm3;
    hence thesis by A1, A2, Th86;
  end;
  suppose not V is non empty Subset of the_Vertices_of G1;
    hence thesis by Def37;
  end;
end;
