Store a summary of the node (kind, topology) in the Ata.Config.t type.
[tatoo.git] / src / ata.mli
index bb94a7c..e2bf7e3 100644 (file)
@@ -14,7 +14,7 @@
 (***********************************************************************)
 
 (*
-  Time-stamp: <Last modified on 2013-04-04 18:42:38 CEST by Kim Nguyen>
+  Time-stamp: <Last modified on 2013-04-22 14:46:24 CEST by Kim Nguyen>
 *)
 
 type predicate =
@@ -81,10 +81,19 @@ val create : StateSet.t -> StateSet.t -> t
 val reset : t -> unit
 val get_trans : t -> QNameSet.elt -> StateSet.t -> TransList.t
 
-val eval_trans : t -> TransList.t
-  -> StateSet.t -> StateSet.t -> StateSet.t -> StateSet.t
-  -> bool -> bool -> bool -> bool -> Tree.NodeKind.t
-  -> TransList.t*StateSet.t
+type node_summary = private int
+val node_summary : bool -> bool -> bool -> bool -> Tree.NodeKind.t -> node_summary
+val dummy_summary : node_summary
+type config = {
+  sat : StateSet.t;
+  unsat : StateSet.t;
+  todo : TransList.t;
+  summary : node_summary;
+}
+
+module Config : Hcons.S with type data = config
+
+val eval_trans : t -> Config.t -> Config.t -> Config.t -> Config.t -> Config.t
 
 val add_trans : t -> State.t -> QNameSet.t -> SFormula.t -> unit
 val print : Format.formatter -> t -> unit