Úvodní stránka | Tato stránka v originále

Rekurzivní funkce

rekurzivní funkce jsou třída funkcí od přirozených čísel k přirozeným číslům který být “vypočitatelný” v nějakém intuitivním smyslu. Ve skutečnosti, v teorii vypočitatelnosti to je ukazováno že rekurzivní funkce jsou přesně funkce, které mohou být počítány Turing stroji. Rekurzivní funkce jsou příbuzné primitivním rekurzivním funkcíma jejich indukční definice (dole) staví na tom primitivních rekurzivních funkcí. Ne každá rekurzivní funkce je primitivní rekurzivní také - nejslavnější příklad je Ackermann funkce.

Jiné rovnocenné funkční třídy jsou a lambda; - rekurzivní funkce a funkce, které mohou jsou počítáni Markov algoritmy.

Definice

Brát jako axiómy axiómy primitivních rekurzivních funkcí, ale rozšířit definice aby počítal s částečnými funkcemi. Přidat jednoho dalšího operátora, nejméně hledání nebo nespoutaný vyhledávací operátor, definovaný takto:

Jestliže f(x,z1,z2,...,zn) je částečná funkce na přirozených číslech s n+ 1 argumenty x, z1,...,zn, pak fungovat a mu;x f je částečná funkce s argumenty z1,...,zn to se vrátí nejméně x takový to f(0,z1,z2,...,zn), f(1,z1,z2,...,zn),..., f(x,z1,z2,...,zn) jsou všichni definovaní a f(x,z1,z2,...,zn) = 0, jestliže takový x existuje; jestliže ne takový x existuje, pak a mu;x f je ne definovaný pro zvláštní argumenty z1,...,zn.

To jde snadno vidět to toto nejméně axióma hledání (spolu s jednoduchými primitivními rekurzivními axiómy) implikuje ohraničený vyhledávací axióm primitivní rekurze.

Soubor částečných rekurzivních funkcí je definován jako nejmenší soubor částečných funkcí nějakého arity od přirozených čísel k přirozeným číslům který obsahuje nulu, nástupce a funkce projekce a který je uzavřený pod složením, primitivní rekurzí a nespoutaným hledáním.

Soubor celkových rekurzivních funkcí je podmnožina částečných rekurzivních funkcí, které jsou úhrn.

V rovnocennosti modelů vypočitatelnosti protějšek je natažený mezi Turing stroji který nekončí pro jisté vstupy a undefined výsledek pro ten vstup v korespondovat částečnou rekurzivní funkci. Nespoutaný vyhledávací operátor není definovatelný pravidly primitivní rekurze, zatímco ti neposkytují mechanismus “nekonečným smyčkám” (undefined hodnoty).

To je zajímavé všimnout si toho jestliže použití nespoutaného vyhledávacího operátora v definici nahoře je omezeno přísně k pravidelným funkcím (funkce, které jsou zaručily být úhrn, když nespoutaný vyhledávací operátor je aplikován na je), výsledný soubor (historicky volal obecné rekurzivní funkce) je stejný jako soubor rekurzivních funkcí -- jinými slovy, požadavek pro částečné funkce může být částečně odstraněný.