]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/components/ng_refiner/nCicRefiner.mli
- ng_refiner:
[helm.git] / matita / components / ng_refiner / nCicRefiner.mli
index 6ec18e3657f516251612d8ba01a88e58087ceb20..7da885e7e6a5e3048aca1c849e31bf12cef73019 100644 (file)
@@ -15,11 +15,16 @@ exception RefineFailure of (Stdpp.location * string) Lazy.t;;
 exception Uncertain of (Stdpp.location * string) Lazy.t;;
 exception AssertFailure of string Lazy.t;;
 
+type 'a expected_type = [ `XTNone       (* unknown *)
+                        | `XTSome of 'a (* the given term *) 
+                       | `XTSort       (* any sort *)
+                       | `XTInd        (* any (co)inductive type *)
+                        ]
 val typeof :
  #NCicCoercion.status ->
  ?localise:(NCic.term -> Stdpp.location) ->
   NCic.metasenv -> NCic.substitution -> NCic.context -> 
-  NCic.term -> NCic.term option -> (* term, expected type *)
+  NCic.term -> NCic.term expected_type -> (* term, expected type *)
     NCic.metasenv * NCic.substitution * NCic.term * NCic.term
     (*  menv, subst,refined term, type *)