coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: "Matthew Brecknell" <coq-club AT brecknell.org>
- To: "Taral" <taralx AT gmail.com>
- Cc: coq-club AT pauillac.inria.fr
- Subject: Re: [Coq-Club] Axioms of parametricity?
- Date: Wed, 19 Nov 2008 12:38:18 +1000
- List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>
Taral wrote:
> The point is that f is parametric in var. Try this instead:
>
> Inductive test (var : Type) : Type :=
> | A : var -> test var
> | B : test var.
>
> Goal forall T var (f : forall var, T -> test var) x y v, f var x = A
> var v -> exists v', f var y = A var v'.
Hi Taral,
I haven't got as far as proving your goal, but here's a more basic
result you might find useful as a starting point:
Inductive mytest (var : Type) : Type :=
| mk_test : var -> mytest var.
Lemma p0: forall (f: forall (fvar: Type), mytest fvar), False.
Proof (fun f => match (f Empty_set) with mk_test v => Empty_set_ind (fun
e => False) v end).
(Inspired by Coq'Art section 6.6 on empty types, which I just happened
to read yesterday).
The corresponding lemma for your inductive type would be:
Lemma p1: forall (f: forall (fvar: Type), test fvar) (var: Type), f var
= B var.
Proof ???.
After that, it should just be a matter of adding in the T parameter,
then your goal would be vacuously true.
Cheers,
Matthew
- [Coq-Club] Axioms of parametricity?, Taral
- Re: [Coq-Club] Axioms of parametricity?,
André Hirschowitz
- Re: [Coq-Club] Axioms of parametricity?,
Taral
- Re: [Coq-Club] Axioms of parametricity?, Matthew Brecknell
- Re: [Coq-Club] Axioms of parametricity?,
JAEGER, Eric (SGDN)
- Re: [Coq-Club] Axioms of parametricity?,
Yves Bertot
- Re: [Coq-Club] Axioms of parametricity?, Matthieu Sozeau
- Re: [Coq-Club] Axioms of parametricity?,
Yves Bertot
- Re: [Coq-Club] Axioms of parametricity?,
Taral
- Re: [Coq-Club] Axioms of parametricity?,
André Hirschowitz
Archive powered by MhonArc 2.6.16.