Skip to content
Snippets Groups Projects
Commit 2af35753 authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Merge branch 'coq-13969' into 'master'

Declare `equiv` as a rightful rewrite relation, when an `Equiv` instance is available.

See merge request iris/stdpp!273
parents b593cbdd 309a7a57
No related branches found
No related tags found
No related merge requests found
......@@ -250,6 +250,13 @@ Class Equiv A := equiv: relation A.
(* No Hint Mode set because of Coq bug #14441.
Global Hint Mode Equiv ! : typeclass_instances. *)
(** We instruct setoid rewriting to infer [equiv] as a relation on
type [A] when needed. This allows setoid_rewrite to solve constraints
of shape [Proper (eq ==> ?R) f] using [Proper (eq ==> (equiv (A:=A))) f]
when an equivalence relation is available on type [A]. *)
Global Instance equiv_rewrite_relation `{Equiv A} :
RewriteRelation (@equiv A _) := {}.
Infix "≡" := equiv (at level 70, no associativity) : stdpp_scope.
Infix "≡@{ A }" := (@equiv A _)
(at level 70, only parsing, no associativity) : stdpp_scope.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment