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

theorem Th170:
  G.allSpanningTrees() = G.allConnectedSG() /\ G.allSpanningForests()
proof
  now
    let x be object;
    hereby
      assume x in G.allSpanningTrees();
      then x is plain spanning acyclic Subgraph of G & x is connected _Graph
        by Th168;
      hence x in G.allConnectedSG() & x in G.allSpanningForests() by Th102,
Th124;
    end;
    assume x in G.allConnectedSG() & x in G.allSpanningForests();
    then x is plain spanning Subgraph of G & x is plain Tree-like Subgraph of G
      by Th102;
    hence x in G.allSpanningTrees() by Th168;
  end;
  hence thesis by XBOOLE_0:def 4;
end;
