Teorema S mn
Această intrare sau secțiune despre matematică nu citează sursele necesare sau cei prezenți sunt insuficienți . |
În teoria recursivității , teorema este un rezultat de bază al algoritmilor , numit în mod abstract numerotarea Gödel , furnizat inițial de Stephen Cole Kleene .
În mod informal, teorema spune că, având în vedere un program care ia în m + n variabile, există un algoritm recursiv care produce un program de n variabile care dă aceleași rezultate ca prima și care codifică celelalte m variabile.
Descriere
Fie o funcție a variabilelor m + n al căror număr Gödel este z
Variabilele funcției sunt împărțite în două blocuri în care primul rămâne variabil și al doilea constant. Există o funcție recursivă primitivă a m +1 variabile (cu alte cuvinte: "Există o procedură generală care ia z și ca intrare ") și dă numărul Gödel a unei proceduri a variabilelor rămase care dă același rezultat.
unde este este o funcție parțială.
Consecinţă
Dacă un sistem de funcții îndeplinește teorema Smn, atunci acest sistem este complet Turing.
Exemplu
Următorul cod Lisp implementează teorema .
( defun s11 ( f x )
( lista 'lambda ' ( y ) ( lista f x 'y )))
De exemplu, (s11 '(lambda (xy) (+ xy)) 3) evaluează la (lambda (y) ((lambda (xy) (+ xy)) 3 y)) .