From 6104889dac72e3ff37b13ea997dafc4c0ef45ac3 Mon Sep 17 00:00:00 2001 From: Claudio Sacerdoti Coen Date: Fri, 25 Jul 2003 12:31:42 +0000 Subject: [PATCH] URIs of inductive types and constructors fixed. --- .../content_expressions.ml | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/helm/ocaml/cic_transformations/content_expressions.ml b/helm/ocaml/cic_transformations/content_expressions.ml index da6eb714a..b78d1380a 100644 --- a/helm/ocaml/cic_transformations/content_expressions.ml +++ b/helm/ocaml/cic_transformations/content_expressions.ml @@ -65,34 +65,34 @@ and let symbol_table = Hashtbl.create 503;; (* eq *) -Hashtbl.add symbol_table "cic:/Coq/Init/Logic/eq.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic/eq.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> Appl (Some aid, (Symbol (Some sid, "eq", - None, Some "cic:/Coq/Init/Logic/eq.ind#(/1/0)")) + None, Some "cic:/Coq/Init/Logic/eq.ind")) :: List.map acic2cexpr (List.tl args)));; -Hashtbl.add symbol_table "cic:/Coq/Init/Logic_Type/eqT.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic_Type/eqT.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> Appl (Some aid, (Symbol (Some sid, "eq", - None, Some "cic:/Coq/Init/Logic/eqT.ind#(/1/0)")) + None, Some "cic:/Coq/Init/Logic/eqT.ind")) :: List.map acic2cexpr (List.tl args)));; (* and *) -Hashtbl.add symbol_table "cic:/Coq/Init/Logic/and.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic/and.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> Appl (Some aid, (Symbol (Some sid, "and", - None, Some "cic:/Coq/Init/Logic/and.ind#(/1/0)")) + None, Some "cic:/Coq/Init/Logic/and.ind")) :: List.map acic2cexpr args));; (* or *) -Hashtbl.add symbol_table "cic:/Coq/Init/Logic/or.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic/or.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> Appl (Some aid, (Symbol (Some sid, "or", - None, Some "cic:/Coq/Init/Logic/or.ind#(/1/0)")) + None, Some "cic:/Coq/Init/Logic/or.ind")) :: List.map acic2cexpr args));; (* iff *) @@ -112,7 +112,7 @@ Hashtbl.add symbol_table "cic:/Coq/Init/Logic/not.con" :: List.map acic2cexpr args));; (* exists *) -Hashtbl.add symbol_table "cic:/Coq/Init/Logic/ex.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic/ex.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> match (List.tl args) with [Cic.ALambda (_,Cic.Name n,s,t)] -> @@ -120,7 +120,7 @@ Hashtbl.add symbol_table "cic:/Coq/Init/Logic/ex.ind#(/1/0)" (Some aid, "Exists", (n,acic2cexpr s),acic2cexpr t) | _ -> raise Not_found);; -Hashtbl.add symbol_table "cic:/Coq/Init/Logic_Type/exT.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Logic_Type/exT.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> match (List.tl args) with [Cic.ALambda (_,Cic.Name n,s,t)] -> @@ -129,11 +129,11 @@ Hashtbl.add symbol_table "cic:/Coq/Init/Logic_Type/exT.ind#(/1/0)" | _ -> raise Not_found);; (* leq *) -Hashtbl.add symbol_table "cic:/Coq/Init/Peano/le.ind#(/1/0)" +Hashtbl.add symbol_table "cic:/Coq/Init/Peano/le.ind#xpointer(1/1)" (fun aid sid args acic2cexpr -> Appl (Some aid, (Symbol (Some sid, "leq", - None, Some "cic:/Coq/Init/Peano/le.ind#(/1/0)")) + None, Some "cic:/Coq/Init/Peano/le.ind")) :: List.map acic2cexpr args));; Hashtbl.add symbol_table "cic:/Coq/Reals/Rdefinitions/Rle.con" @@ -326,13 +326,14 @@ let acic2cexpr ids_to_inner_sorts t = ) in let (name,_,_,_) = List.nth inductive_types i in let uri_str = UriManager.string_of_uri uri in - let puri_str = (uri_str ^ "#(/1/" ^ (string_of_int i) ^ ")") in + let puri_str = + uri_str ^ "#xpointer(1/" ^ (string_of_int (i + 1)) ^ ")" in (try (let f = Hashtbl.find symbol_table puri_str in f aid sid tl acic2cexpr) with notfound -> Appl (Some aid, Symbol (Some sid, name, - make_subst subst, Some puri_str)::List.map acic2cexpr tl)) + make_subst subst, Some uri_str)::List.map acic2cexpr tl)) | C.AAppl (id,li) -> Appl (Some id, List.map acic2cexpr li) | C.AConst (id,uri,subst) -> @@ -348,14 +349,12 @@ let acic2cexpr ids_to_inner_sorts t = ) in let (name,_,_,_) = List.nth inductive_types i in let uri_str = UriManager.string_of_uri uri in - let puri_str = (uri_str ^ "#(/1/" ^ (string_of_int i) ^ ")") in - Symbol (Some id, name, make_subst subst, Some puri_str) + Symbol (Some id, name, make_subst subst, Some uri_str) | C.AMutConstruct (id,uri,i,j,subst) -> let constructors = get_constructors uri i in let (name,_) = List.nth constructors (j-1) in let uri_str = UriManager.string_of_uri uri in - let puri_str = (uri_str ^ "#(/1/" ^ (string_of_int i) ^ "/" ^ (string_of_int j) ^ ")") in - Symbol (Some id, name, make_subst subst, Some puri_str) + Symbol (Some id, name, make_subst subst, Some uri_str) | C.AMutCase (id,uri,typeno,ty,te,patterns) -> let constructors = get_constructors uri typeno in let named_patterns = -- 2.39.2