]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_paramodulation/foUtils.mli
profile most operations, do not return a filtered varlist in unif (useless and expensive)
[helm.git] / helm / software / components / ng_paramodulation / foUtils.mli
index 5d83a987d8ff64312f41ab5691efd7d3a723c320..8a3b1739b79d69786e6a703615c065113c87a61a 100644 (file)
@@ -11,6 +11,8 @@
 
 (* $Id: terms.ml 9836 2009-06-05 15:33:35Z denes $ *)
 
+val lexicograph : ('a -> 'b -> int) -> 'a list -> 'b list -> int
+
 module Utils (B : Terms.Blob) :
   sig
     val eq_foterm : B.t Terms.foterm -> B.t Terms.foterm -> bool
@@ -24,9 +26,28 @@ module Utils (B : Terms.Blob) :
          int -> B.t Terms.foterm -> B.t Terms.foterm -> 
            B.t Terms.unit_clause * int
 
+    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
 
+
     val fresh_unit_clause : 
           int -> B.t Terms.unit_clause -> B.t Terms.unit_clause * int
+
+    (* relocate [maxvar] [varlist] -> [newmaxvar] * [varlist] * [relocsubst] *)
+    val relocate : 
+          int -> int list -> B.t Terms.substitution -> 
+            int * int list * B.t Terms.substitution 
+
+    val compare_passive_clauses_weight :
+      B.t Terms.passive_clause -> B.t Terms.passive_clause -> int
+
+    val compare_passive_clauses_age :
+      B.t Terms.passive_clause -> B.t Terms.passive_clause -> int
+
   end