* http://cs.unibo.it/helm/.
*)
-exception NotRefinable of string
-exception Uncertain of string
-exception WrongUriToConstant of string
-exception WrongUriToVariable of string
-exception WrongUriToMutualInductiveDefinitions of string
-exception MutCaseFixAndCofixRefineNotImplemented;;
+exception RefineFailure of string;;
+exception Uncertain of string;;
+exception AssertFailure of string;;
-(* type_of_aux' metasenv context term *)
-(* refines [term] and returns the refined form of [term], *)
-(* its type, the computed substitution and the new metasenv. *)
-(* The substitution returned is already unwinded *)
+(* type_of_aux' metasenv context term graph *)
+(* refines [term] and returns the refined form of [term], *)
+(* its type, the new metasenv and universe graph. *)
val type_of_aux':
- Cic.metasenv -> Cic.context -> Cic.term ->
- Cic.term * Cic.term * CicMetaSubst.substitution * Cic.metasenv
+ Cic.metasenv -> Cic.context -> Cic.term -> CicUniv.universe_graph ->
+ Cic.term * Cic.term * Cic.metasenv * CicUniv.universe_graph
+
+(* typecheck metasenv uri obj graph *)
+(* refines [obj] and returns the refined form of [obj], *)
+(* the new metasenv and universe graph. *)
+(* the [uri] is required only for inductive definitions *)
+val typecheck :
+ Cic.metasenv -> UriManager.uri option -> Cic.obj ->
+ Cic.obj * Cic.metasenv * CicUniv.universe_graph