]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/acic_content/termAcicContent.ml
Coercion hiding implemented. Notes:
[helm.git] / helm / software / components / acic_content / termAcicContent.ml
index 9176a8b56808af9bb6a3beaee3cc211e0998e603..81d0ef0a74f12211cb7a8e74ba7fd504fbf5311e 100644 (file)
@@ -154,11 +154,11 @@ let ast_of_acic0 ~output_type term_info acic k =
                      try HExtlib.split_nth (cpos+sats+1) tl with Failure _ -> [],[] 
                    in
                    if rest = [] then
-                     idref aid (List.nth (List.map k tl) cpos)
+                     idref aid (k (List.nth tl cpos))
                    else
                      idref aid (Ast.Appl (List.map k (List.nth tl cpos::rest)))
                  else
-                   idref aid (Ast.Appl (List.map k tl))
+                   idref aid (Ast.Appl (List.map k args))
            else
              idref aid (Ast.Appl (List.map k args)))
     | Cic.AAppl (aid,args) ->
@@ -497,7 +497,7 @@ let remove_interpretation id =
 let init () = List.iter (fun f -> f []) !load_patterns32s
 
 let instantiate_appl_pattern 
-  ~mk_appl ~mk_implicit ~term_of_uri env appl_pattern 
+  ~mk_appl ~mk_implicit ~term_of_uri ~term_of_nref env appl_pattern 
 =
   let lookup name =
     try List.assoc name env
@@ -507,6 +507,7 @@ let instantiate_appl_pattern
   in
   let rec aux = function
     | Ast.UriPattern uri -> term_of_uri uri
+    | Ast.NRefPattern nref -> term_of_nref nref
     | Ast.ImplicitPattern -> mk_implicit false
     | Ast.VarPattern name -> lookup name
     | Ast.ApplPattern terms -> mk_appl (List.map aux terms)