aboutsummaryrefslogtreecommitdiffhomepage
path: root/test-suite/bugs/closed/4232.v
diff options
context:
space:
mode:
authorGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2015-05-11 11:17:54 +0200
committerGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2015-05-11 11:17:54 +0200
commit7bc1610376fac29397be39d4a06b178e8e35e66e (patch)
tree7149a4b12b041dcc102598b187c2ad4be396b5f5 /test-suite/bugs/closed/4232.v
parent138bd9756a0fc80647427b2894ba4485f3e6961b (diff)
Test for bug #4232.
Diffstat (limited to 'test-suite/bugs/closed/4232.v')
-rw-r--r--test-suite/bugs/closed/4232.v20
1 files changed, 20 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/4232.v b/test-suite/bugs/closed/4232.v
new file mode 100644
index 000000000..61e544a91
--- /dev/null
+++ b/test-suite/bugs/closed/4232.v
@@ -0,0 +1,20 @@
+Require Import Setoid Morphisms Vector.
+
+Class Equiv A := equiv : A -> A -> Prop.
+Class Setoid A `{Equiv A} := setoid_equiv:> Equivalence (equiv).
+
+Global Declare Instance vec_equiv {A} `{Equiv A} {n}: Equiv (Vector.t A n).
+Global Declare Instance vec_setoid A `{Setoid A} n : Setoid (Vector.t A n).
+
+Global Declare Instance tl_proper1 {A} `{Equiv A} n:
+ Proper ((equiv) ==> (equiv))
+ (@tl A n).
+
+Lemma test:
+ forall {A} `{Setoid A} n (xa ya: Vector.t A (S n)),
+ (equiv xa ya) -> equiv (tl xa) (tl ya).
+Proof.
+ intros A R HA n xa ya Heq.
+ setoid_rewrite Heq.
+ reflexivity.
+Qed.