diff options
author | msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2012-03-14 09:53:06 +0000 |
---|---|---|
committer | msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2012-03-14 09:53:06 +0000 |
commit | 8ff2de8c01b3ba3563517627b1f5c9eb2c4bcb77 (patch) | |
tree | 4f7e99ba36af1cf03d8c3315c371293ae46fe77c /theories/Program/Subset.v | |
parent | 4d7b12f27a7cc520a319a9d4b652137c0a0cbb60 (diff) |
Final part of moving Program code inside the main code. Adapted add_definition/fixpoint and parsing of the "Program" prefix.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@15036 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Program/Subset.v')
-rw-r--r-- | theories/Program/Subset.v | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/theories/Program/Subset.v b/theories/Program/Subset.v index ca4002d7f..dda0ed68d 100644 --- a/theories/Program/Subset.v +++ b/theories/Program/Subset.v @@ -79,14 +79,14 @@ Qed. (* Somewhat trivial definition, but not unfolded automatically hence we can match on [match_eq ?A ?B ?x ?f] in tactics. *) -Definition match_eq (A B : Type) (x : A) (fn : forall (y : A | y = x), B) : B := +Definition match_eq (A B : Type) (x : A) (fn : {y : A | y = x} -> B) : B := fn (exist _ x eq_refl). (* This is what we want to be able to do: replace the originaly matched object by a new, propositionally equal one. If [fn] works on [x] it should work on any [y | y = x]. *) -Lemma match_eq_rewrite : forall (A B : Type) (x : A) (fn : forall (y : A | y = x), B) - (y : A | y = x), +Lemma match_eq_rewrite : forall (A B : Type) (x : A) (fn : {y : A | y = x} -> B) + (y : {y:A | y = x}), match_eq A B x fn = fn y. Proof. intros. |