]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_kernel/nCicEnvironment.mli
The code for universes was not correct in many borderline cases.
[helm.git] / helm / software / components / ng_kernel / nCicEnvironment.mli
index 3e2cbff281cccf7be965e4de7b9223dce6a9797f..7fa352901fd63ea2b949d6d80a8a5262b315dd19 100644 (file)
 exception CircularDependency of string Lazy.t;;
 exception ObjectNotFound of string Lazy.t;;
 exception BadDependency of string Lazy.t;;
+exception BadConstraint of string Lazy.t;;
 
 val get_checked_obj: NUri.uri -> NCic.obj
 
+val get_relevance: NReference.reference -> bool list
+
+val type0: NCic.universe
+(* universe_* raise BadConstraints if the second arg. is an inferred universe *)
+val universe_eq: NCic.universe -> NCic.universe -> bool
+val universe_leq: NCic.universe -> NCic.universe -> bool
+(* add_le_constraint raise BadConstraint in case of universe inconsistency
+   or if the second argument is an inferred universe
+   true -> strict check (<); false -> loose check (<=)
+*)
+val add_le_constraint: bool -> NCic.universe -> NCic.universe -> unit
+
 val get_checked_def:
   NReference.reference -> 
     NCic.relevance * string * NCic.term * NCic.term * NCic.c_attr * int