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

theorem
  G is acyclic iff G | _GraphSelectors in G.allSpanningForests()
proof
  A1: G.allSpanningForests() = G.allSpanningSG() /\ G.allForests()
    by Th103;
  hereby
    assume G is acyclic;
    then A2: G | _GraphSelectors in G.allForests() by Th80;
    G | _GraphSelectors in G.allSpanningSG() by Th62;
    hence G | _GraphSelectors in G.allSpanningForests()
      by A1, A2, XBOOLE_0:def 4;
  end;
  assume G | _GraphSelectors in G.allSpanningForests();
  then G | _GraphSelectors in G.allForests() by A1;
  hence G is acyclic by Th80;
end;
