[TYPES] strict unit type
Vladimir Voevodsky
vladimir at ias.edu
Mon Apr 30 09:04:48 EDT 2012
On Apr 29, 2012, at 8:27 PM, Frederic Blanqui wrote:
> [ The Types Forum, http://lists.seas.upenn.edu/mailman/listinfo/types-list ]
>
> Hello Vladimir.
>
> Le 29/04/2012 22:10, Vladimir Voevodsky a écrit :
>> [ The Types Forum, http://lists.seas.upenn.edu/mailman/listinfo/types-list ]
>>
>> Hello,
>>
>> let Pt be the unit type ("one point"). In Coq-like systems it is introduced through an eliminator and the associated iota-reduction rule. This is in practice sufficient for proving all its expected properties modulo propositional equality (or identity types) but does not create a terminal object in the category of contexts.
>>
>> I wonder if any one has considered type theories where Pt is introduced as having a distinguished object tt together with reduction rules of the following form (in the absence of dependent sums, otherwise one needs more):
>>
>> 1. any object of Pt other than tt reduces to tt,
> This has been done already with this reduction rule. Please, check the work of Roberto Di Cosmo and Delia Kesner for instance.
>
>> 2. Prod x : T , Pt reduces to Pt,
>>
>> 3. Prod x : Pt , T reduces to T.
> On the other hand, I am not sure that these rules have been considered yet since, by doing so, you may well loose the property that reduction preserves typing: if t : T reduces to u, then u : T (a property often called "subject reduction"). Unless perhaps if you consider the following extra rules:
>
> 2'. (\lambda x:T. t) reduces to tt if t : Pt,
>
> 3'. (\lambda x:Pt, t) reduces to t{x=tt}.
Yes, I did. But also this would follow from the previous 3 rules. For example (\lambda x:T. t) for t:Pt will have the type, in normal form, Pt and therefore will be reducible to tt by the first reduction.
Vladimir.
More information about the Types-list
mailing list