reachable: recovered reverse post-order (lost in 73ad4884441f), which is expected for all_preds/all_succs and required for topological_order;
authorwenzelm
Sun, 27 Sep 2009 19:39:40 +0200
changeset 32709 c5956b54a460
parent 32708 224ceb576bc3
child 32710 fa46afc8c05f
reachable: recovered reverse post-order (lost in 73ad4884441f), which is expected for all_preds/all_succs and required for topological_order;
src/Pure/General/graph.ML
--- a/src/Pure/General/graph.ML	Fri Sep 25 13:48:27 2009 +0100
+++ b/src/Pure/General/graph.ML	Sun Sep 27 19:39:40 2009 +0200
@@ -140,8 +140,8 @@
 fun imm_succs G = #2 o #2 o get_entry G;
 
 (*transitive*)
-fun all_preds G = flat o fst o reachable (imm_preds G);
-fun all_succs G = flat o fst o reachable (imm_succs G);
+fun all_preds G = flat o rev o fst o reachable (imm_preds G);
+fun all_succs G = flat o rev o fst o reachable (imm_succs G);
 
 (*strongly connected components; see: David King and John Launchbury,
   "Structuring Depth First Search Algorithms in Haskell"*)