]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/library/librarySync.mli
aded some whd, you should be able to declare something like:
[helm.git] / helm / software / components / library / librarySync.mli
index b29a0aa0342b33442b57272f144556029cc24d46..13a6479bd6c1a312550b5e197c995e3bd267841f 100644 (file)
 
 exception AlreadyDefined of UriManager.uri
 
+val set_object_declaration_hook : (UriManager.uri -> Cic.obj -> unit) -> unit
+
 (* this is a pointer to the function which builds the inversion principle *)
-val build_inversion_principle: (UriManager.uri-> Cic.obj -> (UriManager.uri * Cic.obj) option) ref
+val build_inversion_principle: (UriManager.uri-> Cic.obj -> (UriManager.uri * Cic.obj) list) ref
 
 (* adds an object to the library together with all auxiliary lemmas on it *)
 (* (e.g. elimination principles, projections, etc.)                       *)
@@ -47,13 +49,16 @@ val remove_obj: UriManager.uri -> unit
 (* The list of added objects is returned.                                *)
 val add_coercion: 
   add_composites:bool -> 
-  RefinementTool.kit -> UriManager.uri -> 
-    UriManager.uri list
+  RefinementTool.kit -> UriManager.uri -> int (* arity *) ->
+   int (* saturations *) -> string (* baseuri *) ->
+    (UriManager.uri * int * int * int) list (* URI, arity, saturations, cpos *)
 
 (* inverse of add_coercion, removes both the eventually created composite   *)
 (* coercions and the information that [uri] and the composites are coercion *)
 val remove_coercion: UriManager.uri -> unit
 
-(* mh... *)
+(* this is used when resetting, but the more gracefull push/pop can be used to
+ * suspend/resume an execution *)
 val remove_all_coercions: unit -> unit
-
+val push: unit -> unit
+val pop: unit -> unit