Ein Kombinatorausdruck (zum Beispiel auf SK-Basis) kann als eine Funktion betrachtet werden, die Kombinatorberechnungsausdrücke auf Kombinatorberechnungsausdrücke abbildet. Das heißt, man kann sich einen Ausdruck als eine Funktion , wobei die Menge aller syntaktisch gültigen Kombinatorausdrücke in der SK-Basis ist. Diese Zuordnung wird durchgeführt, indem die Eingabe auf den Ausdruck angewendet und dann auf die normale Form reduziert wird, um die Ausgabe zu erhalten.
Da die SK-Basis Turing vollständig ist, könnte man naiv annehmen, dass es einen SK-Ausdruck , der jede berechenbare Funktion von bis implementiert . Dies ist jedoch eindeutig nicht der Fall, da das Ergebnis der Reduzierung immer in normaler Form vorliegt. Dies bedeutet, dass es für einen Ausdruck keine Möglichkeit gibt, eine Ausgabe zu erhalten, die nicht in normaler Form vorliegt.
Stattdessen könnte ich mir SK-Kalkülausdrücke als Abbildung von auf , wobei die Menge von SK-Ausdrücken in normaler Form ist. Ist es der Fall, dass es für jede berechenbare Map einen SK-Ausdruck , der diese Map implementiert? Oder gibt es weitere Einschränkungen für die Menge der Funktionen, die auf diese Weise durch Kombinator-Kalkül-Ausdrücke berechnet werden können?
quelle