]> matita.cs.unibo.it Git - helm.git/blobdiff - components/tactics/paramodulation/indexing.mli
added (but not yet used) remove_local_context
[helm.git] / components / tactics / paramodulation / indexing.mli
index 8af265f907f945c4a597b24e299e64b5da29dc22..7caaa78f47974b9d8b5f01b0d0d71d3c85ec532b 100644 (file)
@@ -25,6 +25,8 @@
 
 (* $Id$ *)
 
+type goal = Equality.goal_proof * Cic.metasenv * Cic.term
+
 module Index :
   sig
     module PosEqSet : Set.S 
@@ -38,24 +40,26 @@ val index : Index.t -> Equality.equality -> Index.t
 val remove_index : Index.t -> Equality.equality -> Index.t
 val in_index : Index.t -> Equality.equality -> bool
 val empty : Index.t
-val match_unif_time_ok : float ref
-val match_unif_time_no : float ref
-val indexing_retrieval_time : float ref
 val init_index : unit -> unit
-val build_newtarget_time : float ref
+val unification :
+  Cic.metasenv * Cic.context * CicUniv.universe_graph ->
+  Index.t ->
+  Equality.equality ->
+  (Subst.substitution * Equality.equality * bool) option
 val subsumption :
   Cic.metasenv * Cic.context * CicUniv.universe_graph ->
   Index.t ->
   Equality.equality ->
-  (Subst.substitution * Equality.equality) option
+  (Subst.substitution * Equality.equality * bool) option
 val superposition_left :
-  int ->
   Cic.conjecture list * Cic.context * CicUniv.universe_graph ->
   Index.t ->
-  Equality.equality ->
-   int * Equality.equality list
+  goal ->
+   goal list
 
 val superposition_right :
+  ?subterms_only:bool ->
+    UriManager.uri ->
   int ->
   'a * Cic.context * CicUniv.universe_graph ->
   Index.t ->
@@ -64,17 +68,16 @@ val superposition_right :
 
 val demodulation_equality :
   ?from:string -> 
+  UriManager.uri ->
   int ->
   Cic.metasenv * Cic.context * CicUniv.universe_graph ->
   Index.t ->
   Utils.equality_sign -> Equality.equality -> int * Equality.equality
 val demodulation_goal :
-  int ->
   Cic.metasenv * Cic.context * CicUniv.universe_graph ->
   Index.t ->
-  Equality.goal_proof * Cic.metasenv * Index.key ->
-  bool * int * 
-   (Equality.goal_proof * Cic.metasenv * Index.key)
+  goal ->
+  bool * goal
 val demodulation_theorem :
   'a ->
   Cic.metasenv * Cic.context * CicUniv.universe_graph ->
@@ -85,3 +88,5 @@ val check_target:
   Cic.context ->
     Equality.equality -> string -> unit
 
+    (** profiling *)
+val get_stats: unit -> string