]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/cic_unification/coercGraph.mli
unification+pullback fix. It used to saturate a coercion (generating new metas)
[helm.git] / helm / software / components / cic_unification / coercGraph.mli
index 711a1527d940c17fdb66b2c0acabc85c5eb1d967..6c6ef2b50f2089230f39eabd50db0bccbaee0736 100644 (file)
@@ -34,17 +34,12 @@ type coercion_search_result =
   | SomeCoercion of (Cic.metasenv * Cic.term * Cic.term) list
   | SomeCoercionToTgt of (Cic.metasenv * Cic.term * Cic.term) list
   | NoCoercion
-  | NotMetaClosed
-  | NotHandled of string Lazy.t
+  | NotHandled
 
 val look_for_coercion :
   Cic.metasenv -> Cic.substitution -> Cic.context ->
    Cic.term -> Cic.term -> coercion_search_result
 
-val look_for_coercion' :
-  Cic.metasenv -> Cic.substitution -> Cic.context ->
-   CoercDb.coerc_carr -> CoercDb.coerc_carr -> coercion_search_result
-
 (* checks if term is a constant or 
  * a constant applyed that is marked with (`Class `Coercion) *)
 val is_composite: Cic.term -> bool
@@ -54,12 +49,12 @@ val source_of: Cic.term -> Cic.term
 val generate_dot_file: unit -> string
 
 (* given the Appl contents returns the argument of the head coercion *)
-val coerced_arg: Cic.term list -> Cic.term option
+val coerced_arg: Cic.term list -> (Cic.term * int) option
 
 (* returns: (carr,menv,(saturated coercion,last arg)option,idem) list *)
 val meets : 
   Cic.metasenv -> Cic.substitution -> Cic.context ->
-  CoercDb.coerc_carr -> CoercDb.coerc_carr -> 
+  bool * CoercDb.coerc_carr -> bool * CoercDb.coerc_carr -> 
     (CoercDb.coerc_carr * Cic.metasenv * 
       (Cic.term * Cic.term) option * (Cic.term * Cic.term) option) list