X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=inline;f=components%2Ftactics%2FequalityTactics.ml;h=b1727fb7d401d35fa761a2dd9c4cbb3540c9bf6e;hb=4eab714a88bad2a9d8b29b5aa20465e71655e512;hp=da7f599a9ec2b642291173c3d0c6c1d4a6fc5bf6;hpb=7f2444c2670cadafddd8785b687ef312158376b0;p=helm.git diff --git a/components/tactics/equalityTactics.ml b/components/tactics/equalityTactics.ml index da7f599a9..b1727fb7d 100644 --- a/components/tactics/equalityTactics.ml +++ b/components/tactics/equalityTactics.ml @@ -145,6 +145,7 @@ let rec rewrite_tac ~direction ~(pattern: ProofEngineTypes.lazy_pattern) equalit selected_terms_with_context ([],[]) in let t1 = CicMetaSubst.apply_subst subst t1 in let t2 = CicMetaSubst.apply_subst subst t2 in + let ty = CicMetaSubst.apply_subst subst ty in let equality = CicMetaSubst.apply_subst subst equality in let abstr_gty = ProofEngineReduction.replace_lifting_csc 0 @@ -205,6 +206,11 @@ let replace_tac ~(pattern: ProofEngineTypes.lazy_pattern) ~with_what = let uri,metasenv,pbo,pty = proof in let (_,context,ty) as conjecture = CicUtil.lookup_meta goal metasenv in assert (hyps_pat = []); (*CSC: not implemented yet *) + let eq_URI = + match LibraryObjects.eq_URI () with + Some uri -> uri + | None -> raise (ProofEngineTypes.Fail (lazy "You need to register the default equality first. Please use the \"default\" command")) + in let context_len = List.length context in let subst,metasenv,u,_,selected_terms_with_context = ProofEngineHelpers.select ~metasenv ~ugraph:CicUniv.empty_ugraph @@ -268,7 +274,7 @@ let replace_tac ~(pattern: ProofEngineTypes.lazy_pattern) ~with_what = ~start:( P.cut_tac (C.Appl [ - (C.MutInd (LibraryObjects.eq_URI (), 0, [])) ; + (C.MutInd (eq_URI, 0, [])) ; ty_of_with_what ; what ; with_what]))