From b86c29685acb8e956e0cd5df81f8b276b9c2e02a Mon Sep 17 00:00:00 2001 From: pboutill Date: Wed, 20 Jun 2012 09:35:08 +0000 Subject: Bug 2813 - Reflexive, Symmetric, Transitive instances for pointwise_relation patch git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@15455 85f007b7-540e-0410-9357-904b9bb8a0f7 --- theories/Classes/Equivalence.v | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'theories/Classes') diff --git a/theories/Classes/Equivalence.v b/theories/Classes/Equivalence.v index afdfb4cec..6d550dc93 100644 --- a/theories/Classes/Equivalence.v +++ b/theories/Classes/Equivalence.v @@ -124,10 +124,15 @@ End Respecting. (** The default equivalence on function spaces, with higher-priority than [eq]. *) -Program Instance pointwise_equivalence {A} `(eqb : Equivalence B eqB) : +Instance pointwise_reflexive {A} `(reflb : Reflexive B eqB) : + Reflexive (pointwise_relation A eqB) | 9. +Proof. firstorder. Qed. +Instance pointwise_symmetric {A} `(symb : Symmetric B eqB) : + Symmetric (pointwise_relation A eqB) | 9. +Proof. firstorder. Qed. +Instance pointwise_transitive {A} `(transb : Transitive B eqB) : + Transitive (pointwise_relation A eqB) | 9. +Proof. firstorder. Qed. +Instance pointwise_equivalence {A} `(eqb : Equivalence B eqB) : Equivalence (pointwise_relation A eqB) | 9. - - Next Obligation. - Proof. - transitivity (y a) ; auto. - Qed. +Proof. split; apply _. Qed. -- cgit v1.2.3