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 G being _Graph holds G is non _trivial iff
    ex H being Subgraph of G st H is non spanning
proof
  let G be _Graph;
  hereby
    assume A1: G is non _trivial;
    set v1 = the Vertex of G, v2 = the Vertex of G;
    reconsider H = the removeVertex of G, v1 as Subgraph of G;
    take H;
    A2: the_Vertices_of H = the_Vertices_of G \ {v1} by A1, Th47;
    v1 in {v1} by TARSKI:def 1;
    then the_Vertices_of H <> the_Vertices_of G by A2, XBOOLE_0:def 5;
    hence H is non spanning;
  end;
  given H being Subgraph of G such that
    A3: H is non spanning;
  A4: the_Vertices_of G <> the_Vertices_of H by A3;
  the_Vertices_of H c= the_Vertices_of G;
  then reconsider v1 = the Vertex of H as Vertex of G;
  not the_Vertices_of G c= the_Vertices_of H by A4, XBOOLE_0:def 10;
  then A5: the_Vertices_of G \ the_Vertices_of H <> {} by XBOOLE_1:37;
  set v2 = the Element of the_Vertices_of G \ the_Vertices_of H;
  reconsider v2 as Vertex of G by A5, TARSKI:def 3;
  A6: v1 <> v2 by A5, XBOOLE_0:def 5;
  card {v1, v2} c= card the_Vertices_of G by CARD_1:11;
  then A7: 2 c= card the_Vertices_of G by A6, CARD_2:57;
  assume G is _trivial;
  then A8: 2 c= 1 by A7;
  1 in {0,1} by TARSKI:def 2;
  then 1 in 1 by A8, CARD_1:50;
  hence contradiction;
end;
