reserve G for _Graph;
reserve V for non empty set, E for Relation of V;

theorem
  for V1 being non empty set, V2 being non empty Subset of V1
  for E1 being (Relation of V1), E2 being Relation of V2 st E2 c= E1
  holds createGraph(V2,E2) is inducedSubgraph of createGraph(V1,E1),V2,E2
proof
  let V1 be non empty set, V2 be non empty Subset of V1;
  let E1 be (Relation of V1), E2 be Relation of V2;
  assume A1: E2 c= E1;
  set G1 = createGraph(V1,E1), G2 = createGraph(V2,E2);
  A2: the_Vertices_of G2 = V2 & the_Edges_of G2 = E2;
  A3: V2 is non empty Subset of the_Vertices_of G1;
  now
    let e be object;
    set v = (the_Source_of G2).e, w = (the_Target_of G2).e;
    assume A4: e in E2;
    then e in the_Edges_of G2;
    then A5: e DJoins v,w,G2 by GLIB_000:def 14;
    then e Joins v,w,G2 by GLIB_000:16;
    then v in the_Vertices_of G2 & w in the_Vertices_of G2 by GLIB_000:13;
    then A6: v in V2 & w in V2;
    e = [v,w] by A5, Th64;
    then e DJoins v,w,G1 by A1, A4, Th63;
    then e in the_Edges_of G1 & (the_Source_of G1).e = v &
      (the_Target_of G1).e = w by GLIB_000:def 14;
    hence e in G1.edgesBetween(V2) by A6, GLIB_000:31;
  end;
  then A7: E2 c= G1.edgesBetween(V2) by TARSKI:def 3;
  G2 is Subgraph of G1
  proof
    A9: the_Edges_of G2 c= the_Edges_of G1 by A1;
    now
      let e be set;
      assume A10: e in the_Edges_of G2;
      set v = (the_Source_of G2).e, w = (the_Target_of G2).e;
      e DJoins v,w,G2 by A10, GLIB_000:def 14;
      then A11: e = [v,w] by Th64;
      e in E2 by A10;
      then e DJoins v,w,G1 by A1, A11, Th63;
      hence v = (the_Source_of G1).e & w = (the_Target_of G1).e
        by GLIB_000:def 14;
    end;
    hence thesis by A9, GLIB_000:def 32;
  end;
  hence thesis by A2, A3, A7, GLIB_000:def 37;
end;
