]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_kernel/nCic2OCic.ml
Never commit before trying to compile... stupid typo fixed.
[helm.git] / helm / software / components / ng_kernel / nCic2OCic.ml
index 70d174e60c84ce3ba4b274b39f679b91cea1fb68..ba226c0d848bcf48fc8b2f9c428d01ef83e4ed90 100644 (file)
@@ -12,21 +12,20 @@ let convert_term uri n_fl t =
      Cic.Prod (nn_2_on n,convert_term k s, convert_term (k+1) t)
  | NCic.Lambda  (n,s,t) -> 
      Cic.Lambda(nn_2_on n,convert_term k s, convert_term (k+1) t)
- | NCic.LetIn (n,_,s,t) -> 
-     Cic.LetIn (nn_2_on n,convert_term k s, convert_term (k+1) t)
+ | NCic.LetIn (n,ty_s,s,t) -> 
+     Cic.LetIn (nn_2_on n,convert_term k s,convert_term k ty_s, convert_term (k+1) t)
  | NCic.Sort NCic.Prop -> Cic.Sort Cic.Prop 
  | NCic.Sort NCic.CProp -> Cic.Sort Cic.CProp 
- | NCic.Sort NCic.Set -> Cic.Sort Cic.Set 
  | NCic.Sort (NCic.Type _) -> Cic.Sort (Cic.Type (CicUniv.fresh ()))
  | NCic.Implicit _ -> assert false
- | NCic.Const (NReference.Ref (_,u,NReference.Ind i)) -> 
+ | NCic.Const (NReference.Ref (_,u,NReference.Ind (_,i))) -> 
      Cic.MutInd (NUri.ouri_of_nuri u,i,[])
  | NCic.Const (NReference.Ref (_,u,NReference.Con (i,j))) -> 
      Cic.MutConstruct (NUri.ouri_of_nuri u,i,j,[])
  | NCic.Const (NReference.Ref (_,u,NReference.Def))
  | NCic.Const (NReference.Ref (_,u,NReference.Decl)) ->
      Cic.Const (NUri.ouri_of_nuri u,[])
- | NCic.Match (NReference.Ref (_,u,NReference.Ind i),oty,t,pl) ->
+ | NCic.Match (NReference.Ref (_,u,NReference.Ind (_,i)),oty,t,pl) ->
      Cic.MutCase (NUri.ouri_of_nuri u,i, convert_term k oty, convert_term k t,
        List.map (convert_term k) pl)
  | NCic.Const (NReference.Ref (_,u,NReference.Fix (i,_))) 
@@ -34,7 +33,12 @@ let convert_term uri n_fl t =
     if NUri.eq u uri then             
       Cic.Rel (n_fl - i + k)
     else
-      Cic.Const (NUri.ouri_of_nuri u,[])
+     let ouri = NUri.ouri_of_nuri u in
+     let ouri =
+      UriManager.uri_of_string 
+       (UriManager.buri_of_uri ouri ^ "/" ^
+        UriManager.name_of_uri ouri ^ string_of_int i ^ ".con") in
+      Cic.Const (ouri,[])
  | _ -> assert false
  in
   convert_term 0 t
@@ -69,7 +73,8 @@ let convert_nobj = function
  | u,_,_,_,NCic.Fixpoint (is_fix, fl, _) ->
      List.map 
       (fun nth ->
-        let name = UriManager.name_of_uri (NUri.ouri_of_nuri u) in
+        let name =
+         UriManager.name_of_uri (NUri.ouri_of_nuri u) ^ string_of_int nth in
         let buri = UriManager.buri_of_uri (NUri.ouri_of_nuri u) in
         let uri = UriManager.uri_of_string (buri ^"/"^name^".con") in
         uri,