In diesem Wikipedia-Artikel zu Turing Completeness heißt es:
Der untypisierte Lambda-Kalkül ist vollständig, viele typisierte Lambda-Kalküle, einschließlich System F, jedoch nicht. Der Wert typisierter Systeme beruht auf ihrer Fähigkeit, die meisten typischen Computerprogramme darzustellen und gleichzeitig mehr Fehler zu erkennen.
Was ist ein Beispiel für eine vollständig berechenbare Funktion, die von System F nicht berechenbar ist ?
Da hindley-milner außerdem ist:
Eine Einschränkung von System F
aufgrund der Tatsache, dass:
Die Typprüfung ist für eine Curry-artige Variante von System F unentscheidbar, dh für eine Variante, der explizite Typanmerkungen fehlen.
Bedeutet dies, dass der Lambda-Kalkül, der den Systemen vom Hindley-Milner-Typ zugrunde liegt, nicht vollständig ist?
Wenn dies zutrifft, werden die Merkmale, die in der Lambda-Rechnung nicht vorhanden sind, hinzugefügt, um die Hashkell-Rechnung zu vervollständigen , da die Hashkell-Rechnung eindeutig vollständig ist und wir wissen, dass sie auf der Lambda-Rechnung und dem Hindley-Milner-System basiert.
system T vs. system F
fand ich etwas , das meine letzte Teilfrage beantwortet , die wie hier neu formuliert wird: Wie Haskell Turing-Vollständigkeit zu System F hat hinzufügen