Nessun ingenuo set di modelli teorici del calcolo lambda polimorfico?


15

Nell'articolo di Philip Wadler su Teoremi gratuiti afferma nella Sezione 2 su Parametricità che

non ci sono ingenui modelli set-teorici di calcolo lambda polimorfico

Nell'ingenuo set-modello teorico i tipi sono insiemi e le funzioni sono insiemi di funzioni teoriche che sembrano ragionevoli. Quindi perché dice che non ci sono ingenui modelli teorico-set di calcolo lambda polimorfico?


5
OK, mi sono appena imbattuto in questo documento: hal.inria.fr/inria-00076261/document . Devo scavarlo.
MK,

3
Quel documento di Reynolds è davvero il documento giusto da leggere! Omettere un sacco di dettagli riassume: considera data T = K ((T -> Bool) -> Bool). Quindi, Te ((T->Bool)->Bool)sono isomorfi. Se hanno un modello di set in cui ->indica lo spazio delle funzioni (come set), quest'ultimo ha una cardinalità più elevata, quindi non può essere isomorfo T. Quindi, in un modello, dobbiamo interpretare ->diversamente, ad esempio come lo spazio delle funzioni continue .
Chi

Ho risposto troppo rapidamente e ho risposto alla domanda sbagliata. Mi dispiace per quello. Il motivo per cui il calcolo lambda polimorfico non ha un modello nella teoria degli insiemi ingenui è apparentemente piuttosto diverso da quello per il calcolo lambda non tipizzato.

Risposte:


12

ΠSSetS×

2T=ΠX(X2)2(T2)2

Si noti che un ulteriore articolo, di Andrew Pitts, Polymorphism is Set Theoretic, Constructively , ribalta in qualche modo questa conclusione mostrando che la contraddizione di cui sopra è possibile solo costruire nella teoria dell'insieme classico e che ci sono diverse teorie costruttive di insiemi in cui il polimorfismo può essere interpretato con le consuete interpretazioni di funzioni spazi e prodotti. In particolare questi "grandi prodotti" esistono nei Topos effettivi, la più completa delle presentazioni fornite da Phoa .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.