]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_refiner/nCicRefiner.mli
Added initial support for inversion principles in Matita NG.
[helm.git] / helm / software / components / ng_refiner / nCicRefiner.mli
index 25227e550577ee41a42271737627b02359436303..b75ee3a815c6cf07dc0c60a0c5239929ac7e67f6 100644 (file)
 
 (* $Id$ *)
 
-(*
-exception RefineFailure of string Lazy.t;;
-exception Uncertain of string Lazy.t;;
+exception RefineFailure of (Stdpp.location * string) Lazy.t;;
+exception Uncertain of (Stdpp.location * string) Lazy.t;;
 exception AssertFailure of string Lazy.t;;
 
-(* 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':
- ?localization_tbl:Stdpp.location Cic.CicHash.t ->
-  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 : 
- localization_tbl:Stdpp.location Cic.CicHash.t ->
-  Cic.metasenv -> UriManager.uri option -> Cic.obj ->
-   Cic.obj * Cic.metasenv * CicUniv.universe_graph
-
-val insert_coercions: bool ref (* initially true *)
+val typeof :
+ #NRstatus.status ->
+ ?localise:(NCic.term -> Stdpp.location) ->
+  NCic.metasenv -> NCic.substitution -> NCic.context -> 
+  NCic.term -> NCic.term option -> (* term, expected type *)
+    NCic.metasenv * NCic.substitution * NCic.term * NCic.term
+    (*  menv, subst,refined term, type *)
 
-val pack_coercion_obj: Cic.obj -> Cic.obj
+val typeof_obj :
+ #NRstatus.status ->
+ ?localise:(NCic.term -> Stdpp.location) ->
+  NCic.obj -> NCic.obj
 
-val pack_coercion_metasenv: Cic.metasenv -> Cic.metasenv
-*)