]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/paramodulation/inference.mli
Mysql ==> HMysql
[helm.git] / helm / ocaml / paramodulation / inference.mli
index 76d48603d62d6388dfe59f8c3473771f72f14378..4bb43ea8fa2761538273c750d5d7f7896445b0e4 100644 (file)
@@ -13,10 +13,11 @@ and proof =
   | BasicProof of Cic.term
   | ProofBlock of
       Cic.substitution * UriManager.uri *
+        (Cic.name * Cic.term) * Cic.term * 
         (* name, ty, eq_ty, left, right *)
-        (Cic.name * Cic.term * Cic.term * Cic.term * Cic.term) * 
+(*         (Cic.name * Cic.term * Cic.term * Cic.term * Cic.term) *  *)
         (Utils.pos * equality) * proof
-  | ProofGoalBlock of proof * equality
+  | ProofGoalBlock of proof * proof (* equality *)
   | ProofSymBlock of Cic.term Cic.explicit_named_substitution * proof
 
 
@@ -66,6 +67,8 @@ exception TermIsNotAnEquality;;
 val equality_of_term: ?eq_uri:UriManager.uri -> Cic.term -> Cic.term ->
   equality
 
+val term_is_equality: ?eq_uri:UriManager.uri -> Cic.term -> bool
+
 (**
    superposition_left env target source
    returns a list of new clauses inferred with a left superposition step
@@ -85,6 +88,8 @@ val equality_of_term: ?eq_uri:UriManager.uri -> Cic.term -> Cic.term ->
 
 (* val demodulation: int -> environment -> equality -> equality -> int * equality *)
 
+val meta_convertibility: Cic.term -> Cic.term -> bool
+  
 val meta_convertibility_eq: equality -> equality -> bool
 
 val is_identity: environment -> equality -> bool
@@ -100,5 +105,8 @@ val fix_metas: int -> equality -> int * equality
 val extract_differing_subterms:
   Cic.term -> Cic.term -> (Cic.term * Cic.term) option
 
-
 val build_proof_term: equality -> Cic.term
+
+val find_library_equalities:
+  dbd:HMysql.dbd -> Cic.context -> ProofEngineTypes.status -> int ->
+  equality list * int