ArticleslgStudy

mathematics

Smn theorem

Smn theorem is a mathematics topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Smn theorem rather than just read about it. In short: In computability theory the S mn theorem, written also as "smn-theorem" or "s-m-n theorem" (also called the translation lemma, parameter theorem, and the parameterization theorem) is a basic result about programming languages (and, more generally, Gödel numberings of the partial computable functions) (Soare 1987, Rogers 1967). It was first proved by Stephen Cole Kleene (1943).

Key takeaways

  • Smn theorem belongs to mathematics; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Smn theorem to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Smn theorem from memory before moving on to harder problems.

Reference excerpt

In computability theory the S mn theorem, written also as "smn-theorem" or "s-m-n theorem" (also called the translation lemma, parameter theorem, and the parameterization theorem) is a basic result about programming languages (and, more generally, Gödel numberings of the partial computable functions) (Soare 1987, Rogers 1967). It was first proved by Stephen Cole Kleene (1943). The name S m n {\displaystyle S_{m}^{n}} comes from the occurrence of an S {\displaystyle S} with subscript n {\displaystyle n} and superscript m {\displaystyle m} in the original formulation of the theorem (see below). In practical terms, the theorem says that for a given programming language and positive integers m {\displaystyle m} and n {\displaystyle n} , there exists a particular algorithm that accepts as input the source code of a program with m + n {\displaystyle m+n} free variables, together with m {\displaystyle m} values. This algorithm generates source code that in essence substitutes the values for the first m {\displaystyle m} free variables, leaving the rest of the variables free.

Details The basic form of the theorem applies to functions of two arguments (Nies 2009, p. 6). Given a Gödel numbering φ {\displaystyle \varphi } of partial computable functions, there is a primitive recursive function s {\displaystyle s} of two arguments with the following property: for every Gödel number e {\displaystyle e} of a partial computable function f {\displaystyle f} with two arguments, the expressions φ s ( e , x ) ( y ) {\displaystyle \varphi _{s(e,x)}(y)} and f ( x , y ) {\displaystyle f(x,y)} are defined for the same combinations of natural numbers x {\displaystyle x} and y {\displaystyle y} , and their values are equal for any such combination. In other words, the following extensional equality of functions holds for every x {\displaystyle x} :

φ s ( e , x ) ≃ λ y . φ e ( x , y ) . {\displaystyle \varphi _{s(e,x)}\simeq \lambda y.\varphi _{e}(x,y).}

More generally, for any m , n > 0 {\displaystyle m,n>0} , there exists a primitive recursive function S n m {\displaystyle S_{n}^{m}} of m + 1 {\displaystyle m+1} arguments that behaves as follows: for every Gödel number e {\displaystyle e} of a partial computable function with m + n {\displaystyle m+n} arguments, and all values of x 1 , x 2 , . . . , x m {\displaystyle x_{1},x_{2},...,x_{m}} :

φ S n m ( e , x 1 , … , x m ) ≃ λ y 1 , … , y n . φ e ( x 1 , … , x m , y 1 , … , y n ) . {\displaystyle \varphi _{S_{n}^{m}(e,x_{1},\dots ,x_{m})}\simeq \lambda y_{1},\dots ,y_{n}.\varphi _{e}(x_{1},\dots ,x_{m},y_{1},\dots ,y_{n}).}

The function s {\displaystyle s} described above can be taken to be S 1 1 {\displaystyle S_{1}^{1}} .

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Smn theorem

Start with the simplest possible case. Write down what Smn theorem claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In mathematics, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Smn theorem before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Smn theorem ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Smn theorem

In research
Smn theorem appears in mathematics research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Smn theorem in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Smn theorem is common in secondary-school and first-year university syllabi. It links to neighbouring topics Computability theory, Theorems in theory of computation, so understanding it makes those chapters shorter.
In everyday life
Look for Smn theorem outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Smn theorem in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Smn theorem means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Smn theorem out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Smn theorem in simple terms?

In computability theory the S mn theorem, written also as "smn-theorem" or "s-m-n theorem" (also called the translation lemma, parameter theorem, and the parameterization theorem) is a basic result about programming languages (and, more generally, Gödel numberings of the partial computable function…

Why does Smn theorem matter?

Because it connects several mathematics ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Smn theorem?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Smn theorem.

Tags

  • Computability theory
  • Theorems in theory of computation

Keep exploring