aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChantal Keller <Chantal.Keller@lri.fr>2021-10-14 17:07:50 +0200
committerChantal Keller <Chantal.Keller@lri.fr>2021-10-14 17:07:50 +0200
commit189b6a17e6dbf2f7f6a396fc81cd384952211091 (patch)
tree6e05d39fe5573151a965601fc2c1ed495d2366ad
parentabe0badbe84a90bae4f20541781609ed0ebb3fb9 (diff)
downloadsmtcoq-189b6a17e6dbf2f7f6a396fc81cd384952211091.tar.gz
smtcoq-189b6a17e6dbf2f7f6a396fc81cd384952211091.zip
Two examples showing that prenex dependency is handled, but not non-prenex one
-rw-r--r--unit-tests/Tests_verit_tactics.v43
1 files changed, 43 insertions, 0 deletions
diff --git a/unit-tests/Tests_verit_tactics.v b/unit-tests/Tests_verit_tactics.v
index 2bdc520..2f080a8 100644
--- a/unit-tests/Tests_verit_tactics.v
+++ b/unit-tests/Tests_verit_tactics.v
@@ -1406,3 +1406,46 @@ Section EqSym.
Goal hd_error (x :: xs) = Some a /\ tl (x :: xs) = r <-> x :: xs = a :: r.
Proof. verit. Qed.
End EqSym.
+
+
+
+Section PrenexDependentTypes.
+ Variables A B : Type.
+ Variable F : Type -> Type.
+ Variable p : B -> F bool.
+ Variable dep : forall (X:Type), A -> F X -> bool.
+ Hypothesis H : forall (x : A) (y : B), dep bool x (p y) = true.
+
+ Hypothesis HF : CompDec (F bool).
+ Hypothesis HA : CompDec A.
+ Hypothesis HB : CompDec B.
+
+ Variable a : A.
+ Variable b : B.
+
+ Goal dep bool a (p b).
+ Proof. verit. Qed.
+
+End PrenexDependentTypes.
+
+
+(*
+Section NonPrenexDependentTypes.
+ Variables A B : Type.
+ Variable F : Type -> Type.
+ Variable p : B -> F bool.
+ Variable dep : A -> forall (X:Type), F X -> bool.
+ Hypothesis H : forall (x : A) (y : B), dep x bool (p y) = true.
+
+ Hypothesis HF : CompDec (F bool).
+ Hypothesis HA : CompDec A.
+ Hypothesis HB : CompDec B.
+
+ Variable a : A.
+ Variable b : B.
+
+ Goal dep a bool (p b).
+ Proof. Fail verit. Qed.
+
+End NonPrenexDependentTypes.
+*)