aboutsummaryrefslogtreecommitdiffhomepage
path: root/theories/MSets
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2009-10-16 13:12:52 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2009-10-16 13:12:52 +0000
commit980d315f7f6d5e05eabbda84f95e11bfa30a0033 (patch)
tree5d5d530c917ff8cbee8cbdb47f024ad6e51526b0 /theories/MSets
parent8ba328e305fdd7deb2c024b0cdbb13ff28c6775a (diff)
Structure/OrderTac.v : highlight the "order" tactic by isolating it from FSets, and improve it
As soon as you have a eq, a lt and a le (that may be lt\/eq, or (complement (flip (lt))) and a few basic properties over them, you can instantiate functor MakeOrderTac and gain an "order" tactic. See comments in the file for the scope of this tactic. NB: order doesn't call auto anymore. It only searches for a contradiction in the current set of (in)equalities (after the goal was optionally turned into hyp by double negation). Thanks to S. Lescuyer for his suggestions about this tactic. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12397 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/MSets')
-rw-r--r--theories/MSets/MSetInterface.v4
-rw-r--r--theories/MSets/MSetList.v2
2 files changed, 3 insertions, 3 deletions
diff --git a/theories/MSets/MSetInterface.v b/theories/MSets/MSetInterface.v
index d5cbea61c..119868f4e 100644
--- a/theories/MSets/MSetInterface.v
+++ b/theories/MSets/MSetInterface.v
@@ -865,12 +865,12 @@ Module MakeSetOrdering (O:OrderedType)(Import M:IN O).
destruct Disj as [(IN,Em)|(IN & y & INy & LTy & Be)].
left; split; auto.
rewrite (Ad2 x); auto.
- intros z. rewrite (Ad1 z); intros [U|U]; try specialize (Ab1 z U); order.
+ intros z. rewrite (Ad1 z); intros [U|U]; try specialize (Ab1 z U); auto; order.
right; split; auto.
rewrite (Ad1 x); auto.
exists y; repeat split; auto.
rewrite (Ad2 y); auto.
- intros z. rewrite (Ad2 z). intros [U|U]; try specialize (Ab2 z U); order.
+ intros z. rewrite (Ad2 z). intros [U|U]; try specialize (Ab2 z U); auto; order.
Qed.
End MakeSetOrdering.
diff --git a/theories/MSets/MSetList.v b/theories/MSets/MSetList.v
index a6fc0affa..471b43e24 100644
--- a/theories/MSets/MSetList.v
+++ b/theories/MSets/MSetList.v
@@ -442,7 +442,7 @@ Module MakeRaw (X: OrderedType) <: RawSets X.
Proof.
induction2; try rewrite ?InA_cons, ?Hrec, ?Hrec'; intuition; inv; auto;
try sort_inf_in; try order.
- right; intuition; inv; order.
+ right; intuition; inv; auto.
Qed.
Lemma equal_spec :