Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
KAPITOLA 6. MEZE ROZHODNUTELNOSTI 139<br />
f(x) = µy[g(x, y) = 0]<br />
Příklad 6.8.6 f(x) = µy[plus(x, y) = 0] tj. f(x) =<br />
Příklad 6.8.7 div(x, y) = µt[((x + 1) ˙−(mult(t, y) + y)) = 0]<br />
{<br />
0 pro x = 0<br />
nedef. jinak<br />
Příklad 6.8.8 i(x) = µy[monus(x, y) = 0]<br />
tj. identická funkce<br />
Funkce definovaná minimalizací je skutečně vyčíslitelná. Výpočet hodnoty f(x)<br />
zahrnuje výpočet g(x, 0), g(x, 1), . . . tak dlouho, pokud nedostaneme:<br />
• g(x, y) = 0<br />
• g(x, z) je nedefinována<br />
(f(x) = y),<br />
(f(x) je nedefinována).<br />
Definice 6.8.4 Třída parciálně rekurzivních funkcí je třída parciálních funkcí,<br />
které mohou být vytvořeny z počátečních funkcí aplikací:<br />
• kombinace,<br />
• kompozice,<br />
• primitivní rekurze a<br />
• minimalizace.<br />
6.9 Vztah vyčíslitelných funkcí a Turingových strojů<br />
Turingův stroj můžeme „upravit“ tak, aby byl schopen počítat funkce. Navrhneme<br />
jej tak, aby z počáteční konfigurace se vstupními parametry funkce na pásce<br />
zapsal výsledek výpočtu (požadovanou funkční hodnotu) na vstup, a jen tehdy<br />
normálně zastavil. Ukážeme, že rekurzivní funkce a Turingovy stroje vymezují<br />
pojem vyčíslitelnost funkcí stejně, t.j. funkce počítatelné Turingovými stroji jsou<br />
právě rekurzivní funkce<br />
6.9.1 Turingovsky vyčíslitelné funkce<br />
Definice 6.9.1 Turingův stroj M = (Q, Σ, Γ, δ, q 0 , q F ) vyčísluje (počítá) parciální<br />
funkci f : Σ ∗m → Σ ∗n<br />
1 , Σ 1 ⊆ Γ, ∆ /∈ Σ 1 , jestliže pro každé (w 1 , w 2 , . . . , w m ) ∈<br />
Σ ∗m a odpovídající počáteční konfiguraci ∆w 1 ∆w 2 ∆ . . . ∆w m ∆∆∆ stroj M:<br />
1. v případě, že f(w 1 , . . . , w m ) je definována, pak M zastaví a páska obsahuje<br />
∆v 1 ∆v 2 ∆ . . . ∆v n ∆∆∆, kde (v 1 , v 2 , . . . , v n ) = f(w 1 , . . . , w m )<br />
2. v případě, že f(w 1 , . . . , w m ) není definována, M cykluje (nikdy nezastaví)<br />
nebo zastaví abnormálně.<br />
Parciální funkce, kterou může počítat nějaký Turingův stroj se nazývá funkcí<br />
Turingovsky vyčíslitelnou.<br />
Příklad 6.9.1 Turingův stroj, který počítá funkci f(w 1 , w 2 , w 3 ) = (w 1 , w 3 ).<br />
R R<br />
S L<br />
L