User:IssaRice/Computability and logic/S–m–n theorem: Difference between revisions

From Machinelearning
No edit summary
No edit summary
Line 4: Line 4:


The s–m–n theorem is essentially the same thing as currying in functional programming languages.<ref>https://cs.stackexchange.com/questions/80837/is-smn-theorem-the-same-concept-as-currying</ref>
The s–m–n theorem is essentially the same thing as currying in functional programming languages.<ref>https://cs.stackexchange.com/questions/80837/is-smn-theorem-the-same-concept-as-currying</ref>
The s–m–n theorem, together with the universal function, is useful for proving other theorems and also to avoid the arbitrariness of the specific encoding used.
==Etymology===
The name "s–m–n" comes from the notation <math>s^m_n</math> (<math>s^n_m</math> in some texts) for the function that finds the new index.


==References==
==References==


<references/>
<references/>

Revision as of 06:51, 18 December 2018

The s–m–n theorem (also called the parametrization theorem) states that if φe is an (m+n) place computable partial function and a1,,am are natural numbers, then there exists a primitive recursive function snm such that φsnm(e,a1,,am)λy1yn[φe(x1,,xm,y1,,yn)].

Roughly speaking, the theorem states that if we start out with a computable partial function φe of m+n variables, then we can fill in m of the variables with actual values. When we do this, the resulting n-place partial function continues to be computable. Moreover, we can find the index of this new partial function in terms of the old index and the values in a primitive recursive way.

The s–m–n theorem is essentially the same thing as currying in functional programming languages.[1]

The s–m–n theorem, together with the universal function, is useful for proving other theorems and also to avoid the arbitrariness of the specific encoding used.

Etymology=

The name "s–m–n" comes from the notation snm (smn in some texts) for the function that finds the new index.

References