aboutsummaryrefslogtreecommitdiffhomepage
path: root/test-suite/success
diff options
context:
space:
mode:
authorGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2014-11-24 19:56:00 +0100
committerGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2014-11-25 10:39:12 +0100
commitf4a8b00fa0ca47ef7dce4ca2ca809ef4ac440d38 (patch)
tree50819ce6170a495c424f1e8b90ac9ad58f846782 /test-suite/success
parentc8852c570c980e35072ff40c84c375f84ec5f581 (diff)
Experimenting using unification when matching evar/meta free subterms
while before these were supposed to consider only syntactically. Made the experiment to unify with all delta flags unset. Keeping the same flags as for non evar/meta free subterms would lead to too much successes, as e.g. "true && b" matching "b" when the modulo_conv_on_closed_terms flag is set, which is the case for rewrite. But maybe should we instead investigate to have the same flags but with the restrict_conv_on_strict_subterms flag set. This rules out examples like "true && b" unifying with "b" and this is another option which is ok for compiling the stdlib without any changes.
Diffstat (limited to 'test-suite/success')
-rw-r--r--test-suite/success/rewrite.v9
1 files changed, 9 insertions, 0 deletions
diff --git a/test-suite/success/rewrite.v b/test-suite/success/rewrite.v
index f7b9897c1..6dcd6592b 100644
--- a/test-suite/success/rewrite.v
+++ b/test-suite/success/rewrite.v
@@ -139,3 +139,12 @@ subst z.
rewrite H0.
auto with arith.
Qed.
+
+(* Check that evars are instantiated when the term to rewrite is
+ closed, like in the case it is open *)
+
+Goal exists x, S 0 = 0 -> S x = 0.
+eexists. intro H.
+rewrite H.
+reflexivity.
+Abort.