Teorema S m n
![Niente fonti!](http://upload.wikimedia.org/wikipedia/commons/thumb/6/64/Question_book-4.svg/45px-Question_book-4.svg.png)
In teoria della ricorsione, il teorema è un risultato di base sugli algoritmi, astrattamente chiamati numerazione di Gödel, fornito originariamente da Stephen Cole Kleene.
Informalmente, il teorema dice che, dato un programma che prenda in entrata m+n variabili, esiste un algoritmo ricorsivo che fornisce in uscita un programma di n variabili che fornisce gli stessi risultati del primo e che codifica le altre m variabili.
Descrizione
Sia una funzione di m+n variabili il cui numero di Gödel sia z
Si dividono le variabili della funzione in due blocchi dove il primo rimane variabile e il secondo costante. Esiste una funzione ricorsiva primitiva di m+1 variabili (detto altrimenti: "Esiste una procedura generale che prende in ingresso z e ") e fornisce il numero di Gödel di una procedura delle restanti variabili che dia lo stesso risultato.
dove è una funzione parziale.
Conseguenza
Se un sistema di funzioni soddisfa il Teorema Smn allora tale sistema è Turing completo.
Esempio
Il seguente codice Lisp implementa teorema .
(defun s11 (f x) (list 'lambda '(y) (list f x 'y)))
Ad esempio, (s11 '(lambda (x y) (+ x y)) 3) valuta a (lambda (y) ((lambda (x y) (+ x y)) 3 y)).
Voci correlate
- Punto fisso
- Teorema di ricorsione di Kleene
- Valutazione parziale
Collegamenti esterni
- (EN) Eric W. Weisstein, Teorema S m n, su MathWorld, Wolfram Research.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/a/af/Crystal128-kmplot.svg/25px-Crystal128-kmplot.svg.png)