- Smn-Theorem
-
Das -Theorem ist ein zentrales Resultat der Berechenbarkeitstheorie. Es stellt ein Hilfsmittel dar, mit dem man den Code eines Programms in Abhängigkeit von Parametern berechnen kann. Ein Resultat daraus ist, dass eine Programmiersprache, die zur Laufzeit generierten Code ausführen kann, Currying unterstützen kann.
Formale Definition
Gegeben sei mit , wobei i die Programmcodenummer des berechenbaren Programms φi sei.
Dann gibt es eine totale und berechenbare Funktion mit
- für alle .
Nichtformale Erklärung
Die smn - Eigenschaft besagt, dass es zu einem Code w, der mit den Parametern x und v ausgeführt wird (bzw. ausgeführt werden kann), ein Transformationsprogramm U gibt, das aus w, x und v ein Programm wx berechnet, welches bei der Eingabe von v das gleiche berechnet, wie w bei der Eingabe von x und v.
Beispiel
Zu zeigen ist: Es existiert eine totale und berechenbare Funktion , so dass für gilt: φg(i,j)(x) = φi(x) + φj(x).
Definiere ψ(i,j,x) = φi(x) + φj(x). ψ ist berechenbar und es existiert ein , so dass gilt: ψ = φk.
Nach dem -Theorem gilt:
Es existiert eine totale und berechenbare Funktion mit für alle .
Nun definieren wir . g ist total und berechenbar und es gilt:
Wikimedia Foundation.