Primitivně rekurzivní funkce

Primitivně rekurzivní funkce (PRF) je v teorii vyčíslitelnosti v jistém smyslu „jednoduchá“ funkce. Jejím rozšířením je částečně rekurzivní funkce (ČRF).

Definice

Základní funkce (axiomy)

Všechny tři níže uvedené funkce jsou primitivně rekurzivní:

  • nulová funkce
  • následník
  • projekce (vydělení j-tého z n argumentů)

Označení znamená, že pokud má alespoň jedna strana rovnice smysl (tzn. je definována), pak má smysl i druhá strana a hodnoty funkcí f a g v bodě x se rovnají.

Operátory

  • primitivní rekurze:
    • je-li f (n - 1)-ární PRF a
    • g (n + 1)-ární PRF
pak je n-ární primitivně rekurzivní funkce, kde a
  • substituce
    • je-li f m-ární PRF a
    • jsou-li n-ární PRF
pak je n-ární primitivně rekurzivní funkce, kde
  • minimalizace
    • je-li f (n + 1)-ární PRF
pak je n-ární funkce, , pokud a zároveň

Označení   znamená, že funkce f je pro argumenty definována (neboli konverguje). Pokud by funkce pro tyto argumenty divergovala (nebyla definována), píšeme .

Třída PRF

Třída primitivně rekurzivních funkcí je nejmenší třídou funkcí , která obsahuje axiomy a je uzavřená na operátory primitivní rekurze a substituce. Odvození funkce je pak konečná posloupnost funkcí, z nichž každá je buď axiom nebo vzniká z předchozích funkcí aplikací některého operátoru.

Zjednodušeně řečeno, primitivně rekurzivní funkce je taková, kterou lze zapsat jako počítačový program obsahující pouze konečné for cykly a žádné while cykly nebo skoky.

Primitivně rekurzivní predikát je takový, jehož charakteristická funkce je nějaká primitivně rekurzivní funkce.

Příklady

V podstatě všechny „klasické“ funkce (sčítání, odčítání, ale také například test prvočíselnosti) jsou primitivně rekurzivní. Příkladem funkce, která není primitivně rekurzivní, je Ackermannova funkce.

Univerzální PRF

Třída PRF má svoji univerzální funkci, ta ale sama do třídy PRF nepatří.

Důkaz sporem: Nechť U(x, y) je univerzální PRF, která počítá výstup x-té PRF na vstupu y. Pak U(x, x) + 1 je také PRF (použitím operátoru substituce a funkce následníka). Protože U je univerzální funkce, platí, že pro nějaké . Nyní přichází klíčový krok důkazu, kdy za x dosadíme (tzn. Cantorova diagonální metoda) a dostáváme , což je spor. Předpoklad, že U je primitivně rekurzivní funkce, byl tedy chybný.