Frage

Die meisten von uns kennen die Korrespondenz zwischen Kombinationslogik und Lambda -Kalkül. Aber ich habe noch nie gesehen (vielleicht habe ich nicht tief genug ausgesehen) das Äquivalent "Typed Combinators", die dem einfach typisierten Lambda -Kalkül entsprechen. Gibt es so etwas? Wo könnte man Informationen darüber finden?

War es hilfreich?

Lösung

Die ausdrucksstarke Vollständigkeit der typisierten Kombinatoren im Vergleich zu dem einfach typisierten Lambda -Kalkül war gezeigt. Für jeden Untyped -Kombinator braucht man eine ganze Familie typisierter Kombinatoren. Zum Beispiel hat man

  • $ mathbf {i} _ { alpha to alpha} $
  • $ mathbf {k} _ { alpha to ( beta to alpha)} $
  • $ mathbf {s} _ { alpha to ( beta to gamma) to ( alpha to beta to ( alpha to gamma))} $

Für alle Kombinationen einfacher Typen $ alpha, beta $ und $ gamma $.

Alternativ denken Sie nur an die Typen als Typschemata (oder polymorphe Typen) und geben Sie sie in Haskell und Voila ein: Kombinatoren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit cs.stackexchange
scroll top