]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/metadata/metadataConstraints.mli
support for terms with metas in check
[helm.git] / helm / ocaml / metadata / metadataConstraints.mli
index ec6d81f38d35a53c9f7abfc5a03658c5825a646f..72f808efbc80ea7396a407704ee11e30696428f6 100644 (file)
@@ -35,13 +35,21 @@ type term_signature = (string * string list) option * StringSet.t
 
   (** @return sorted list of theorem URIs, first URIs in the least have higher
   * relevance *)
-val cmatch: dbh:Dbi.connection -> Cic.term -> string list
+val cmatch: dbd:Mysql.dbd -> ?facts:bool -> Cic.term -> string list
 
   (** as cmatch, but returned list is not sorted but rather tagged with
   * relevance information: higher the tag, higher the relevance *)
-val cmatch': dbh:Dbi.connection -> Cic.term -> (int * string) list
+val cmatch': dbd:Mysql.dbd -> ?facts:bool -> Cic.term -> (int * string) list
 
-val sigmatch: dbh:Dbi.connection -> term_signature -> (int * string) list
+type where = [ `Conclusion | `Statement ] (** signature matching extent *)
+
+  (** @param where defaults to `Conclusion *)
+val sigmatch:
+  dbd:Mysql.dbd ->
+  ?facts:bool ->
+  ?where:where -> 
+  term_signature ->
+    (int * string) list
 
 (** {2 Constraint engine} *)
 
@@ -54,12 +62,18 @@ type cardinality_condition =
   * @param full_card cardinality condition on the whole statement
   * @return list of URI satisfying given constraints *)
 val at_least:
-  dbh:Dbi.connection ->
+  dbd:Mysql.dbd ->
   ?concl_card:cardinality_condition ->
   ?full_card:cardinality_condition ->
   MetadataTypes.constr list ->
     string list
 
+  (** @param where defaults to `Conclusion *)
+val at_most:
+  dbd:Mysql.dbd ->
+  ?where:where -> StringSet.t ->
+    (string -> bool)
+
 val signature_of: Cic.term -> term_signature
 val constants_of: Cic.term -> StringSet.t