X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic%2FlibraryObjects.ml;h=adbc219cc3fd72771b314a3e61eeea85a98cfc52;hb=5104e38ee747fd1052ce21f3f9f2ecc778d590ba;hp=967318721736a1e1d3a081f165ce63b6608c86e3;hpb=7730ab45cb810e7ea0dfa804321b339c822ee87a;p=helm.git diff --git a/helm/ocaml/cic/libraryObjects.ml b/helm/ocaml/cic/libraryObjects.ml index 967318721..adbc219cc 100644 --- a/helm/ocaml/cic/libraryObjects.ml +++ b/helm/ocaml/cic/libraryObjects.ml @@ -23,8 +23,21 @@ * http://helm.cs.unibo.it/ *) +(* $Id$ *) + (**** TABLES ****) +let default_eq_URIs = + [HelmLibraryObjects.Logic.eq_URI, + HelmLibraryObjects.Logic.sym_eq_URI, + HelmLibraryObjects.Logic.trans_eq_URI, + HelmLibraryObjects.Logic.eq_ind_URI, + HelmLibraryObjects.Logic.eq_ind_r_URI];; + +let default_true_URIs = [HelmLibraryObjects.Logic.true_URI] +let default_false_URIs = [HelmLibraryObjects.Logic.false_URI] +let default_absurd_URIs = [HelmLibraryObjects.Logic.absurd_URI] + (* eq, sym_eq, trans_eq, eq_ind, eq_ind_R *) let eq_URIs_ref = ref [HelmLibraryObjects.Logic.eq_URI, @@ -65,6 +78,12 @@ let set_default what l = absurd_URIs_ref := insert_unique absurd_URI (fun x -> x) !absurd_URIs_ref | _,_ -> raise NotRecognized +let reset_defaults () = + eq_URIs_ref := default_eq_URIs; + true_URIs_ref := default_true_URIs; + false_URIs_ref := default_false_URIs; + absurd_URIs_ref := default_absurd_URIs + (**** LOOKUP FUNCTIONS ****) let eq_URI () = let eq,_,_,_,_ = List.hd !eq_URIs_ref in eq @@ -72,6 +91,12 @@ let eq_URI () = let eq,_,_,_,_ = List.hd !eq_URIs_ref in eq let is_eq_URI uri = List.exists (fun (eq,_,_,_,_) -> UriManager.eq eq uri) !eq_URIs_ref +let is_eq_ind_URI uri = + List.exists (fun (_,_,_,eq_ind,_) -> UriManager.eq eq_ind uri) !eq_URIs_ref + +let is_eq_ind_r_URI uri = + List.exists (fun (_,_,_,_,eq_ind_r) -> UriManager.eq eq_ind_r uri) !eq_URIs_ref + let sym_eq_URI ~eq:uri = try let _,x,_,_,_ = List.find (fun eq,_,_,_,_ -> UriManager.eq eq uri) !eq_URIs_ref in x