aboutsummaryrefslogtreecommitdiffhomepage
path: root/theories/Init/Tactics.v
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2010-07-16 15:50:12 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2010-07-16 15:50:12 +0000
commit3876e19812d6476b732d0fd1a16d24058398794d (patch)
tree3123fe4b52c18df17073327669967332b5494e11 /theories/Init/Tactics.v
parent0dd691120e9480fdd9550462508b60609edc8427 (diff)
Bool: shorter and more systematic proofs + an iff lemma about eqb
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13286 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Init/Tactics.v')
-rw-r--r--theories/Init/Tactics.v8
1 files changed, 8 insertions, 0 deletions
diff --git a/theories/Init/Tactics.v b/theories/Init/Tactics.v
index a92d9b1ef..58827eefb 100644
--- a/theories/Init/Tactics.v
+++ b/theories/Init/Tactics.v
@@ -88,6 +88,14 @@ Tactic Notation "destruct_with_eqn" ":" ident(H) constr(x) :=
Tactic Notation "destruct_with_eqn" ":" ident(H) ident(n) :=
try intros until n; destruct n as []_eqn:H.
+(** Break every hypothesis of a certain type *)
+
+Ltac destruct_all t :=
+ match goal with
+ | x : t |- _ => destruct x; destruct_all t
+ | _ => idtac
+ end.
+
(* Rewriting in all hypothesis several times everywhere *)
Tactic Notation "rewrite_all" constr(eq) := repeat rewrite eq in *.