In Philip Wadlers Aufsatz über Theorems for Free stellt er in Abschnitt 2 über Parametrizität fest, dass
Es gibt keine naiven satztheoretischen Modelle der polymorphen Lambda-Rechnung
In der naiven Mengenlehre sind Modelltypen Mengen und Funktionen Mengenlehrefunktionen, was vernünftig erscheint. Warum sagt er also, dass es keine naiven satztheoretischen Modelle der polymorphen Lambda-Rechnung gibt?
data T = K ((T -> Bool) -> Bool)
. Dann sind T
und ((T->Bool)->Bool)
isomorph. Wenn sie ein Mengenmodell haben, bei dem ->
der Funktionsraum (als Menge) bezeichnet wird, hat letzterer eine höhere Kardinalität, sodass er nicht isomorph sein kann T
. In einem Modell müssen wir also ->
anders interpretieren - z. B. als Raum kontinuierlicher Funktionen.