reserve E,V for set, G,G1,G2 for _Graph, c,c1,c2 for Cardinal, n for Nat;
reserve f for VColoring of G;
reserve g for EColoring of G;
reserve t for TColoring of G;

theorem Th154:
  for G1 being addVertices of G2, V
  for t1 being TColoring of G1, t2 being TColoring of G2, h being Function
  st dom h = V\the_Vertices_of G2 & t1_V = t2_V+*h & t1_E = t2_E & t2 is proper
  holds t1 is proper
proof
  let G1 be addVertices of G2, V;
  let t1 be TColoring of G1, t2 be TColoring of G2, h be Function;
  assume that A1: dom h = V \ the_Vertices_of G2 and
    A2: t1_V = t2_V +* h & t1_E = t2_E & t2 is proper;
  A3: t1_V is proper & t1_E is proper by A1, A2, Th19, Th92;
  now
    let v be Vertex of G1;
    per cases;
    suppose A4: v in the_Vertices_of G2;
      then reconsider v2 = v as Vertex of G2;
      A5: t1_E.:v.edgesInOut() = t2_E.:v2.edgesInOut() by A2, GLIBPRE0:45;
      not v in dom h by A1, A4, XBOOLE_0:def 5;
      then t1_V.v = t2_V.v2 by A2, FUNCT_4:11;
      hence not t1_V.v in t1_E.:v.edgesInOut() by A2, A5;
    end;
    suppose A6: not v in the_Vertices_of G2;
      the_Vertices_of G1 = the_Vertices_of G2 \/ V by GLIB_006:def 10;
      then v in V by A6, XBOOLE_0:def 3;
      then v in V \ the_Vertices_of G2 by A6, XBOOLE_0:def 5;
      then v.edgesInOut() = {} by GLIB_006:88, GLIB_000:def 49;
      hence not t1_V.v in t1_E.:v.edgesInOut();
    end;
  end;
  hence thesis by A3;
end;
