reserve G, G1, G2 for _Graph, H for Subgraph of G;

theorem
  the_Edges_of G = G.loops() iff
    G.allTrees() = the set of all createGraph(v) where v is Vertex of G
proof
  set S = the set of all createGraph(v) where v is Vertex of G;
  hereby
    assume the_Edges_of G = G.loops();
    then A1: G.allTrees() is edgeless by Th157;
    now
      let x be object;
      hereby
        assume A2: x in G.allTrees();
        then reconsider H = x as plain Tree-like Subgraph of G by Th138;
        reconsider V = the_Vertices_of H as non empty Subset of
          the_Vertices_of G;
        set H9 = createGraph(V);
        reconsider H9 as plain Subgraph of G;
        A3: the_Vertices_of H = the_Vertices_of H9;
        A4: the_Edges_of H = {} by A1, A2;
        then the_Edges_of H = the_Edges_of H9;
        then H is Subgraph of H9 & H9 is Subgraph of H by A3, GLIB_000:44;
        then A5: H = H9 by GLIB_000:87, GLIB_009:44;
        H is edgeless by A4;
        then consider v being Vertex of H such that
          A6: the_Vertices_of H = {v} by GLIB_000:22;
        the_Vertices_of H c= the_Vertices_of G;
        then reconsider v as Vertex of G by TARSKI:def 3;
        H9 = createGraph(v) by A6;
        hence x in S by A5;
      end;
      assume x in S;
      then consider v being Vertex of G such that
        A7: x = createGraph(v);
      thus x in G.allTrees() by A7, Th142;
    end;
    hence G.allTrees() = S by TARSKI:2;
  end;
  assume A8: G.allTrees() = S;
  now
    let H be _Graph;
    assume H in G.allTrees();
    then consider v being Vertex of G such that
      A9: H = createGraph(v) by A8;
    thus H is edgeless by A9;
  end;
  then G.allTrees() is edgeless by GLIB_014:def 12;
  hence thesis by Th157;
end;
