aboutsummaryrefslogtreecommitdiff
path: root/contrib/dp/tests.v
diff options
context:
space:
mode:
authorfilliatr2008-03-11 13:42:12 +0000
committerfilliatr2008-03-11 13:42:12 +0000
commit5ea4763eadb4761143bc1023886c8396c5ffca01 (patch)
tree6924aa214aa6138c4d6659dfa7512e44ce32ad63 /contrib/dp/tests.v
parentb3dd470c8f2bc8f604ef818dae52aa87884e50c9 (diff)
tactique Gappa : mise en place
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10655 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'contrib/dp/tests.v')
-rw-r--r--contrib/dp/tests.v32
1 files changed, 20 insertions, 12 deletions
diff --git a/contrib/dp/tests.v b/contrib/dp/tests.v
index 0284623c45..61de5d81cd 100644
--- a/contrib/dp/tests.v
+++ b/contrib/dp/tests.v
@@ -5,21 +5,29 @@ Require Import Classical.
Dp_debug.
Dp_timeout 3.
+(* Coq lists *)
-Inductive expr: Set := Some: expr -> expr -> expr | None: expr.
-Parameter depth: expr -> expr -> nat.
+Require Export List.
+Parameter nlist: list nat -> Prop.
-Fixpoint length (t: expr) : nat :=
- match t with
- | None => 0
- | Some t1 t2 => depth t t1
- end.
+ Goal forall l, nlist l -> True.
+ intros.
+ simplify.
-Goal forall e, length e = 0.
-intros.
-gwhy.
-ergo.
-Qed.
+(* user lists *)
+
+Inductive list (A:Set) : Set :=
+| nil : list A
+| cons: forall a:A, list A -> list A.
+
+Fixpoint app (A:Set) (l m:list A) {struct l} : list A :=
+match l with
+| nil => m
+| cons a l1 => cons A a (app A l1 m)
+end.
+
+Lemma entail: (nil Z) = app Z (nil Z) (nil Z) -> True.
+intros; ergo.
(* polymorphism *)