From 09bc28f7a5da577b93823f7b3aebcbd091c12c2b Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Thu, 25 Feb 2016 11:41:07 +0100 Subject: [PATCH] Move and rename some tactics. --- theories/tactics.v | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/theories/tactics.v b/theories/tactics.v index c431b468..35d662bf 100644 --- a/theories/tactics.v +++ b/theories/tactics.v @@ -228,6 +228,14 @@ Ltac setoid_subst := | H : @equiv ?A ?e _ ?x |- _ => symmetry in H; setoid_subst_aux (@equiv A e) x end. +(** The tactic [intros_revert tac] introduces all foralls/arrows, performs tac, +and then reverts them. *) +Ltac intros_revert tac := + lazymatch goal with + | |- ∀ _, _ => let H := fresh in intro H; intros_revert tac; revert H + | |- _ => tac + end. + (** Given a tactic [tac2] generating a list of terms, [iter tac1 tac2] runs [tac x] for each element [x] until [tac x] succeeds. If it does not suceed for any element of the generated list, the whole tactic wil fail. *) -- GitLab