]> matita.cs.unibo.it Git - helm.git/blobdiff - components/library/librarySync.mli
Added an hook useful in many situations.
[helm.git] / components / library / librarySync.mli
index 812685c5361816b701eb3fabae9b816ab3453eee..d8e432e75b9035888478ed3d1277dbe730344dcc 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) list) ref
+
 (* adds an object to the library together with all auxiliary lemmas on it *)
 (* (e.g. elimination principles, projections, etc.)                       *)
 (* it returns the list of the uris of the auxiliary lemmas generated      *)
 val add_obj: 
   RefinementTool.kit -> 
-  UriManager.uri -> Cic.obj -> basedir:string -> 
+  UriManager.uri -> Cic.obj -> 
     UriManager.uri list
 
 (* inverse of add_obj;                                                   *)
@@ -43,9 +48,10 @@ val remove_obj: UriManager.uri -> unit
 (* is true are added to the library.                                     *)
 (* The list of added objects is returned.                                *)
 val add_coercion: 
-  basedir:string -> add_composites:bool -> 
-  RefinementTool.kit -> UriManager.uri -> 
-    UriManager.uri list
+  add_composites:bool -> 
+  RefinementTool.kit -> UriManager.uri -> int (* arity *) ->
+   int (* saturations *) -> string (* baseuri *) ->
+    (UriManager.uri * int * int) list (* URI, arity, saturations *)
 
 (* inverse of add_coercion, removes both the eventually created composite   *)
 (* coercions and the information that [uri] and the composites are coercion *)