diff options
author | 2013-09-20 12:40:28 +0000 | |
---|---|---|
committer | 2013-09-20 12:40:28 +0000 | |
commit | e46ce40cee2c34f47acb55d2b24bd09f00987556 (patch) | |
tree | 696da31b3041d1b7c69244ab5a48f77b87ccf79b /test-suite/bugs/closed/1931.v | |
parent | 20bb249ed0e19cc0132519e3de06fafe2ba500c3 (diff) |
Get rid of "shouldsucceed" subdirectory by moving tests to parent directory.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16797 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'test-suite/bugs/closed/1931.v')
-rw-r--r-- | test-suite/bugs/closed/1931.v | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/1931.v b/test-suite/bugs/closed/1931.v new file mode 100644 index 000000000..930ace1d5 --- /dev/null +++ b/test-suite/bugs/closed/1931.v @@ -0,0 +1,29 @@ + + +Set Implicit Arguments. + +Inductive T (A:Set) : Set := + app : T A -> T A -> T A. + +Fixpoint map (A B:Set)(f:A->B)(t:T A) : T B := + match t with + app t1 t2 => app (map f t1)(map f t2) + end. + +Fixpoint subst (A B:Set)(f:A -> T B)(t:T A) :T B := + match t with + app t1 t2 => app (subst f t1)(subst f t2) + end. + +(* This is the culprit: *) +Definition k0:=Set. + +(** interaction of subst with map *) +Lemma substLaw1 (A:k0)(B C:Set)(f: A -> B)(g:B -> T C)(t: T A): + subst g (map f t) = subst (fun x => g (f x)) t. +Proof. + intros. + generalize B C f g; clear B C f g. + induction t; intros; simpl. + f_equal. +Admitted. |