
theorem Th120:
  for G1 being _Graph, G3 being DSimpleGraph of G1
  ex G2 being removeDParallelEdges of G1 st G3 is removeLoops of G2
proof
  let G1 be _Graph, G3 be DSimpleGraph of G1;
  consider E being RepDEdgeSelection of G1 such that
    A1: G3 is inducedSubgraph of G1,the_Vertices_of G1,E\G1.loops() by Def10;
  set G2 = the inducedSubgraph of G1, the_Vertices_of G1, E;
  reconsider G2 as removeDParallelEdges of G1 by Def8;
  take G2;
  A2: the_Vertices_of G1 c= the_Vertices_of G1 &
    the_Edges_of G1 = G1.edgesBetween(the_Vertices_of G1) by GLIB_000:34;
  then A3: the_Vertices_of G3 = the_Vertices_of G1 &
    the_Edges_of G3 = E \ G1.loops() by A1, GLIB_000:def 37;
  A4: the_Vertices_of G2 = the_Vertices_of G1 & the_Edges_of G2 = E
    by A2, GLIB_000:def 37;
  A5: the_Vertices_of G3 = the_Vertices_of G2 by A3, A4;
  for e being object holds e in the_Edges_of G3 iff
    e in the_Edges_of G2 \ G2.loops()
  proof
    let e be object;
    hereby
      assume e in the_Edges_of G3;
      then A6: e in the_Edges_of G2 & not e in G1.loops()
        by A3, A4, XBOOLE_0:def 5;
      not e in G2.loops()
      proof
        assume e in G2.loops();
        then consider v being object such that
          A7: e Joins v,v,G2 by Def2;
        e is set & v is set by TARSKI:1;
        then e Joins v,v,G1 by A7, GLIB_000:72;
        hence contradiction by A6, Def2;
      end;
      hence e in the_Edges_of G2 \ G2.loops() by A6, XBOOLE_0:def 5;
    end;
    assume e in the_Edges_of G2 \ G2.loops();
    then A8: e in the_Edges_of G2 & not e in G2.loops() by XBOOLE_0:def 5;
    not e in G1.loops()
    proof
      assume e in G1.loops();
      then consider v being object such that
        A9: e Joins v,v,G1 by Def2;
      e is set & v is set by TARSKI:1;
      then e Joins v,v,G2 by A8, A9, GLIB_000:73;
      hence contradiction by A8, Def2;
    end;
    hence e in the_Edges_of G3 by A3, A4, A8, XBOOLE_0:def 5;
  end;
  then A10: the_Edges_of G3 = the_Edges_of G2 \ G2.loops() by TARSKI:2;
  E \ G1.loops() c= E by XBOOLE_1:36;
  then A11: G3 is Subgraph of G2 by A2, A1, GLIB_000:46;
  the_Vertices_of G2 c= the_Vertices_of G2 &
    the_Edges_of G2 = G2.edgesBetween(the_Vertices_of G2) by GLIB_000:34;
  hence thesis by A5, A10, A11, GLIB_000:def 37;
end;
