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 Th115:
  for G1, G2 being _Graph, v being set
  st G1 == G2 & (G1 is _trivial or not v in the_Vertices_of G1)
  holds G2 is removeVertex of G1, v
proof
  let G1, G2 be _Graph, v be set;
  assume that
    A1: G1 == G2 and
    A2: G1 is _trivial or not v in the_Vertices_of G1;
  A3: G2 is Subgraph of G1 by A1, Th87;
  set V = the_Vertices_of G1 \ {v};
  per cases by A2;
  suppose G1 is _trivial;
    then consider v1 being Vertex of G1 such that
      A4: the_Vertices_of G1 = {v1} by Th22;
    per cases;
    suppose v = v1;
      then V = {} by A4, XBOOLE_1:37;
      hence thesis by A1, A3, Def37;
    end;
    suppose v <> v1;
      then not v in the_Vertices_of G1 by A4, TARSKI:def 1;
      hence thesis by A1, Lm11;
    end;
  end;
  suppose not v in the_Vertices_of G1;
    hence thesis by A1, Lm11;
  end;
end;
