Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Type hierarchy

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Type hierarchy


chronological Thread 
  • From: Hugo Herbelin <herbelin AT pauillac.inria.fr>
  • To: Adam Chlipala <adamc AT hcoop.net>
  • Cc: Coq Club <coq-club AT pauillac.inria.fr>
  • Subject: Re: [Coq-Club] Type hierarchy
  • Date: Sun, 11 Oct 2009 18:49:20 +0200
  • List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>

On Sat, Oct 10, 2009 at 05:07:47PM -0400, Adam Chlipala wrote:
> hugo.herbelin AT inria.fr
>  wrote:
> > On the other side, with Nat defined polymorphically in impredicative
> > Set (with option -impredicative-set), you get a full recursor
> > "Nat_rec" and at least the computational expressiveness of system T
> > but you cannot derive 0<>1 (and the recursor has a bad complexity due
> > to the linear complexity of the predecessor).
> >   
> 
> Doesn't the unprovability of [0 <> 1] only arise from doing away with 
> inductive types altogether?  If we just single out [nat] to be defined 
> with impredicative polymorphism, then [0 <> 1] seems to reduce simply to 
> [false <> true], which [discriminate] proves.

Yes, I was assuming defining datatypes impredicatively in
isolation. In the given context of the Calculus of Inductive
Constructions, having "false <> true" for bool in Set indeed
propagates discrimination to the "constructors" of all the
impredicatively defined datatypes.

Hugo






Archive powered by MhonArc 2.6.16.

Top of Page