]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/tactics/proofEngineHelpers.ml
moved hard coded uris to HelmLibraryObjects
[helm.git] / helm / ocaml / tactics / proofEngineHelpers.ml
index 79304211deb0e8a69f3f1072a8657dc2a33510fa..ccac132ef6b631b46504d9e63b96c1af5ed8804c 100644 (file)
@@ -61,36 +61,12 @@ let mk_fresh_name context name ~typ =
       try_next 1
 ;;
 
-(* identity_relocation_list_for_metavariable i canonical_context         *)
-(* returns the identity relocation list, which is the list [1 ; ... ; n] *)
-(* where n = List.length [canonical_context]                             *)
-(*CSC: ma mi basta la lunghezza del contesto canonico!!!*)
-let identity_relocation_list_for_metavariable canonical_context =
- let canonical_context_length = List.length canonical_context in
-  let rec aux =
-   function
-      (_,[]) -> []
-    | (n,None::tl) -> None::(aux ((n+1),tl))
-    | (n,_::tl) -> (Some (Cic.Rel n))::(aux ((n+1),tl))
-  in
-   aux (1,canonical_context)
-
-(* Returns the first meta whose number is above the *)
-(* number of the higher meta.                       *)
-let new_meta ~proof =
- let (_,metasenv,_,_) = proof in
-  let rec aux =
-   function
-      None,[] -> 1
-    | Some n,[] -> n
-    | None,(n,_,_)::tl -> aux (Some n,tl)
-    | Some m,(n,_,_)::tl -> if n > m then aux (Some n,tl) else aux (Some m,tl)
-  in
-   1 + aux (None,metasenv)
+let new_meta_of_proof ~proof:(_, metasenv, _, _) =
+  CicMkImplicit.new_meta metasenv
 
 let subst_meta_in_proof proof meta term newmetasenv =
  let uri,metasenv,bo,ty = proof in
-  let subst_in = CicUnification.apply_subst [meta,term] in
+  let subst_in = CicMetaSubst.apply_subst [meta,term] in
    let metasenv' =
     newmetasenv @ (List.filter (function (m,_,_) -> m <> meta) metasenv)
    in