diff options
author | 2008-09-07 18:06:41 +0000 | |
---|---|---|
committer | 2008-09-07 18:06:41 +0000 | |
commit | 135c872c4a507726a633cc4025d284933fbc6660 (patch) | |
tree | ec7f8879f5ccc3ddb48f86fbc81509ada0895cc3 /theories/Classes/Equivalence.v | |
parent | 4a1077f9d1ee00632ec72a4089013194f558cacd (diff) |
Add the ability to declare [Hint Extern]'s with no pattern.
This permits to create a database [relations] in [RelationClasses] with
a single extern tactic in it that tries to apply [reflexivity] or
[symmetry]. This is then automatically used in [auto with *] and repair
backward compatibility. The previous commit broke some scripts which were
using [intuition] to do (setoid) [reflexivity] or [symmetry]: this
worked only by accident, because the hint database of typeclasses was
used. Overrall, this also allows to put a bunch of
always-applicable, related tactics in some database or to use
[Hint Extern] but match only on hypotheses.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11384 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Classes/Equivalence.v')
-rw-r--r-- | theories/Classes/Equivalence.v | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/theories/Classes/Equivalence.v b/theories/Classes/Equivalence.v index 03b0e9ad5..197786c8b 100644 --- a/theories/Classes/Equivalence.v +++ b/theories/Classes/Equivalence.v @@ -55,11 +55,6 @@ Program Instance equiv_reflexive [ sa : Equivalence A ] : Reflexive equiv. Program Instance equiv_symmetric [ sa : Equivalence A ] : Symmetric equiv. - Next Obligation. - Proof. - symmetry ; auto. - Qed. - Program Instance equiv_transitive [ sa : Equivalence A ] : Transitive equiv. Next Obligation. @@ -133,10 +128,7 @@ End Respecting. Program Instance pointwise_equivalence [ eqb : Equivalence B eqB ] : Equivalence (A -> B) (pointwise_relation eqB) | 9. - Solve Obligations using simpl_relation ; first [ reflexivity | (symmetry ; auto) ]. - Next Obligation. Proof. transitivity (y a) ; auto. Qed. - |