From 5c61abfb097be9139280d01675ea89496353672e Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Sat, 8 Dec 2018 17:14:21 +0100 Subject: [PATCH] Close issue #223: make instance anonymous and put a comment why the instance is there. --- theories/algebra/big_op.v | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/theories/algebra/big_op.v b/theories/algebra/big_op.v index 9f04dd7ed..8d9110eff 100644 --- a/theories/algebra/big_op.v +++ b/theories/algebra/big_op.v @@ -413,7 +413,11 @@ Section homomorphisms. Context `{Monoid M1 o1, Monoid M2 o2}. Infix "`o1`" := o1 (at level 50, left associativity). Infix "`o2`" := o2 (at level 50, left associativity). - Instance foo {A} (R : relation A) : RewriteRelation R. + (** The ssreflect rewrite tactic only works for relations that have a + [RewriteRelation] instance. For the purpose of this section, we want to + rewrite with arbitrary relations, so we declare any relation to be a + [RewriteRelation]. *) + Local Instance: ∀ {A} (R : relation A), RewriteRelation R. Lemma big_opL_commute {A} (h : M1 → M2) `{!MonoidHomomorphism o1 o2 R h} (f : nat → A → M1) l : -- GitLab