]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_paramodulation/foUtils.mli
New functorialization: paramod is abstracted over a Orderings.Blob, that is like...
[helm.git] / helm / software / components / ng_paramodulation / foUtils.mli
index d0fb30367e6547451383e5bc574d695e480dacab..d725d3c7f89126e3f76afb95fd5de9b75d439400 100644 (file)
@@ -13,7 +13,7 @@
 
 val lexicograph : ('a -> 'b -> int) -> 'a list -> 'b list -> int
 
-module Utils (B : Terms.Blob) :
+module Utils (B : Orderings.Blob) :
   sig
     val eq_foterm : B.t Terms.foterm -> B.t Terms.foterm -> bool
     val compare_foterm : B.t Terms.foterm -> B.t Terms.foterm -> int
@@ -29,6 +29,9 @@ module Utils (B : Terms.Blob) :
     val mk_passive_clause :
       B.t Terms.unit_clause -> B.t Terms.passive_clause
 
+    val mk_passive_goal :
+      B.t Terms.unit_clause -> B.t Terms.passive_clause
+
     val eq_unit_clause : B.t Terms.unit_clause -> B.t Terms.unit_clause -> bool
     val compare_unit_clause : B.t Terms.unit_clause -> B.t Terms.unit_clause -> int
 
@@ -37,16 +40,14 @@ module Utils (B : Terms.Blob) :
           int -> B.t Terms.unit_clause -> B.t Terms.unit_clause * int
 
     (* relocate [maxvar] [varlist] -> [newmaxvar] * [varlist] * [relocsubst] *)
-    val relocate : int -> int list -> int * int list * B.t Terms.substitution 
+    val relocate : 
+          int -> int list -> B.t Terms.substitution -> 
+            int * int list * B.t Terms.substitution 
 
-    (* also gives a fresh ID to the clause *)
-    val add_to_bag : 
-          B.t Terms.bag -> B.t Terms.unit_clause -> 
-            B.t Terms.bag * B.t Terms.unit_clause
-
-    val empty_bag : B.t Terms.bag
+    val compare_passive_clauses_weight :
+      B.t Terms.passive_clause -> B.t Terms.passive_clause -> int
 
-    val compare_passive_clauses :
+    val compare_passive_clauses_age :
       B.t Terms.passive_clause -> B.t Terms.passive_clause -> int
 
   end