X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=components%2Ftactics%2Fring.ml;h=b2d3032706960ca8757588c695cdd16741f48ed2;hb=cd91767a396b7bbc72e6e3ee90a3b758421f935d;hp=4c58f1004ff86e63c014437e41fb50d18a5520cb;hpb=7f2444c2670cadafddd8785b687ef312158376b0;p=helm.git diff --git a/components/tactics/ring.ml b/components/tactics/ring.ml index 4c58f1004..b2d303270 100644 --- a/components/tactics/ring.ml +++ b/components/tactics/ring.ml @@ -122,14 +122,14 @@ let cic_is_const ?(uri: uri option = None) term = @param proof a proof @return the uri of a given proof *) -let uri_of_proof ~proof:(uri, _, _, _) = uri +let uri_of_proof ~proof:(uri, _, _, _, _) = uri (** @param status current proof engine status @raise Failure if proof is None @return current goal's metasenv *) -let metasenv_of_status ((_,m,_,_), _) = m +let metasenv_of_status ((_,m,_,_, _), _) = m (** @param status a proof engine status @@ -444,10 +444,10 @@ let purge_hyps_tac ~count = in aux (n-1) tl (status_of_single_goal_tactic_result - (ProofEngineTypes.apply_tactic (S.clear ~hyp:name_of_hyp) status)) + (ProofEngineTypes.apply_tactic (S.clear ~hyps:[name_of_hyp]) status)) | (_, []) -> failwith "Ring.purge_hyps_tac: no hypotheses left" in - let (_, metasenv, _, _) = proof in + let (_, metasenv, _, _, _) = proof in let (_, context, _) = CicUtil.lookup_meta goal metasenv in let proof',goal' = aux count context status in assert (goal = goal') ; @@ -486,10 +486,10 @@ let ring_tac status = ProofEngineTypes.apply_tactic (Tacticals.first ~tactics:[ - "reflexivity", EqualityTactics.reflexivity_tac ; - "exact t1'_eq_t1''", exact_tac ~term:t1'_eq_t1'' ; - "exact t2'_eq_t2''", exact_tac ~term:t2'_eq_t2'' ; - "exact sym_eqt su t1 ...", exact_tac + EqualityTactics.reflexivity_tac ; + exact_tac ~term:t1'_eq_t1'' ; + exact_tac ~term:t2'_eq_t2'' ; + exact_tac ~term:( Cic.Appl [mkConst HelmLibraryObjects.Logic.sym_eq_URI @@ -499,7 +499,7 @@ let ring_tac status = ] ; t1'_eq_t1'' ]) ; - "elim_type eqt su t1 ...", ProofEngineTypes.mk_tactic (fun status -> + ProofEngineTypes.mk_tactic (fun status -> let status' = (* status after 1st elim_type use *) let context = context_of_status status in let b,_ = (*TASSI : FIXME*) @@ -529,9 +529,8 @@ let ring_tac status = ProofEngineTypes.apply_tactic (Tacticals.first (* try to solve 1st subgoal *) ~tactics:[ - "exact t2'_eq_t2''", exact_tac ~term:t2'_eq_t2''; - "exact sym_eqt su t2 ...", - exact_tac + exact_tac ~term:t2'_eq_t2''; + exact_tac ~term:( Cic.Appl [mkConst HelmLibraryObjects.Logic.sym_eq_URI @@ -541,7 +540,6 @@ let ring_tac status = ] ; t2'_eq_t2'' ]) ; - "elim_type eqt su t2 ...", ProofEngineTypes.mk_tactic (fun status -> let status' = let context = context_of_status status in