Turingovy stroje. Turingovy stroje 1 p.1/28

Podobné dokumenty
Fakulta informačních technologií. Teoretická informatika

Turingovy stroje. Teoretická informatika Tomáš Foltýnek

SIMULÁTOR TURINGOVÝCH STROJŮ POPSANÝCH POMOCÍ KOMPOZITNÍCH DIAGRAMŮ

AUTOMATY A GRAMATIKY. Pavel Surynek. Kontextové uzávěrové vlastnosti Turingův stroj Rekurzivně spočetné jazyky Kódování, enumerace

Univerzální Turingův stroj a Nedeterministický Turingův stroj

doplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je

Postův korespondenční problém. Meze rozhodnutelnosti 2 p.1/13

Složitost Filip Hlásek

Naproti tomu gramatika je vlastně soupis pravidel, jak

Vlastnosti regulárních jazyků

TURINGOVY STROJE. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Množinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ

Vztah jazyků Chomskeho hierarchie a jazyků TS

Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31

Třída PTIME a třída NPTIME. NP-úplnost.

Automaty a gramatiky. Uzávěrové vlastnosti v kostce R J BKJ DBKJ. Roman Barták, KTIML. Kvocienty s regulárním jazykem

Z. Sawa (VŠB-TUO) Teoretická informatika 5. listopadu / 43

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

Formální jazyky a automaty Petr Šimeček

Výpočetní modely pro rozpoznávání bezkontextových jazyků zásobníkové automaty LL(k) a LR(k) analyzátory

Automaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů

Kapitola 6. LL gramatiky. 6.1 Definice LL(k) gramatik. Definice 6.3. Necht G = (N, Σ, P, S) je CFG, k 1 je celé číslo.

Regulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:

Zásobníkový automat. SlovoaaaabbbbpatřídojazykaL={a i b i i 1} a a a a b b b b

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

Vyčíslitelné funkce. TIN - Vyčíslitelné funkce p.1/30

Pumping lemma - podstata problému. Automaty a gramatiky(bi-aag) Pumping lemma - problem resolution. Pumping lemma - podstata problému

NP-úplnost problému SAT

Definice 7.2. Nejmenší přirozené číslo k, pro které je graf G k-obarvitelný, se nazývá chromatické číslo (barevnost) grafu G a značí se χ(g).

Třídy složitosti P a NP, NP-úplnost

Bezkontextové jazyky. Bezkontextové jazyky 1 p.1/39

Automaty a gramatiky(bi-aag) Formální překlady. 5. Překladové konečné automaty. h(ε) = ε, h(xa) = h(x)h(a), x, x T, a T.

Složitost a NP-úplnost

Teoretická informatika průběh výuky v semestru 1

Formální jazyky a gramatiky Teorie programovacích jazyků

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

Úvod do informatiky. Miroslav Kolařík

Syntaxí řízený překlad

Poznámky k přednášce NTIN090 Úvod do složitosti a vyčíslitelnosti. Petr Kučera

Automaty a gramatiky. Roman Barták, KTIML. Separované gramatiky. Kontextové gramatiky. Chomského hierarchie

Čísla značí použité pravidlo, šipka směr postupu Analýza shora. Analýza zdola A 2 B 3 B * C 2 C ( A ) 1 a A + B. A Derivace zleva:

Substituce. Petr Štěpánek. S využitím materialu Krysztofa R. Apta. Logické programování 2 1

Poznámky k přednášce NTIN090 Úvod do složitosti a vyčíslitelnosti. Petr Kučera

Definice 9.4. Nedeterministický algoritmus se v některých krocích může libovolně rozhodnout pro některé z několika možných různých pokračování.

Úvod do informatiky. Miroslav Kolařík

Teoretická informatika - Úkol č.1

YZTI - poznámky ke složitosti

Doporučené příklady k Teorii množin, LS 2018/2019

UČEBNÍ TEXTY OSTRAVSKÉ UNIVERZITY. Vyčíslitelnost a složitost 1. Mgr. Viktor PAVLISKA

Analýza Petriho sítí. Analýza Petriho sítí p.1/28

BRNO UNIVERSITY OF TECHNOLOGY FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS MASTER S THESIS AUTHOR

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Minimalizace KA - Úvod

AUTOMATY A GRAMATIKY

Výroková a predikátová logika - II

Teoretická informatika TIN 2013/2014

Predikátová logika. prvního řádu

Spolehlivost soustav

Množiny, relace, zobrazení

Teoretická informatika

Složitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost

4. Napjatost v bodě tělesa

Vysoké učení technické v Brně Fakulta informačních technologií. Gramatiky nad volnými grupami Petr Blatný

Bezkontextové jazyky 2/3. Bezkontextové jazyky 2 p.1/27

Teoretická informatika TIN

3 Množiny, Relace a Funkce

5 Orientované grafy, Toky v sítích

Domény. Petr Štěpánek. S využitím materialu Krysztofa R. Apta

1 Funkce dvou a tří proměnných

Formalisace intuitivního pojmu algoritmus

platné nejsou Sokrates je smrtelný. (r) 1/??

Výroková a predikátová logika - V

Vlastnosti Derivační strom Metody Metoda shora dolů Metoda zdola nahoru Pomocné množiny. Syntaktická analýza. Metody a nástroje syntaktické analýzy

Konečný automat Teorie programovacích jazyků

NP-úplnost. M. Kot, Z. Sawa (VŠB-TU Ostrava) Úvod do teoretické informatiky 23. května / 32

Modelování procesů (2) Procesní řízení 1

PŘEDNÁŠKA 2 POSLOUPNOSTI

Základy teoretické informatiky Formální jazyky a automaty

teorie logických spojek chápaných jako pravdivostní funkce

Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David

Konečný automat. Jan Kybic.

IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel

Afinní transformace Stručnější verze

Výroková a predikátová logika - II

Vývojové diagramy 1/7

Lineární algebra Kapitola 1 - Základní matematické pojmy

5.6.3 Rekursivní indexace složitostních tříd Uniformní diagonalizace Konstrukce rekursivních indexací a aplikace uniformní diagonalizace

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Úvod do informatiky. Miroslav Kolařík

Funkce - pro třídu 1EB

Třída PTIME a třída NPTIME. NP-úplnost.

Vybrané kapitoly z matematiky

Výroková a predikátová logika - IV

Naproti tomu gramatika je vlastně soupis pravidel, jak

5. Sekvenční logické obvody

Základní pojmy matematické logiky

ZÁKLADY TEORETICKÉ INFORMATIKY

(viztakéslidyktétopřednášce...) Poznámka. Neudělali jsme vše tak podrobně, jak je to v zápisu.

Transkript:

Turingovy stroje Turingovy stroje 1 p.1/28

Churchova teze Churchova (Church-Turingova) teze: Turingovy stroje (a jim ekvivalentní systémy) definují svou výpočetní silou to, co intuitivně považujeme za efektivně vyčíslitelné. Churchova teze není teorém, nemůžeme formálně dokazovat, že něco odpovídá našim intuitivním představám, nicméně je podpořena řadou argumentů: Turingovy stroje jsou velmi robustní uvidíme, že jejich různé úpravy nemění jejich výpočetní sílu (determinismus x nedeterminismus, počet pásek,...). Byla navržena řada zcela odlišných výpočetních modelů (λ-kalkulus, parciálně rekurzívní funkce, Minského stroje,...), jejichž síla odpovídá Turingovým strojům. Není znám žádný výpočetní proces, který bychom označili za efektivně vyčíslitelný a který by nebylo možné realizovat na Turingově stroji. a a Existují formalizované výpočetní procesy, realizovatelné např. na TS s orákulem (nápovědou) rozhodujícím atomicky nějaký Turingovsky nerozhodnutelný problém (např. problém zastavení), které ale nepovažujeme za efektivní výpočetní procesy. Turingovy stroje 1 p.2/28

Turingův stroj páska: x y z stavové řízení....... q0 q1 čtecí/zápisová hlava Definice 7.1 Turingův stroj (TS) je šestice tvaru M = (Q,Σ, Γ,δ, q 0, q F ), kde: Q je konečná množina vnitřních (řídicích) stavů, Σ je konečná množina symbolů nazývaná vstupní abeceda, Σ, Γ je konečná množina symbolů, Σ Γ, Γ, nazývaná pásková abeceda, parciální funkce δ : (Q \ {q F }) Γ Q (Γ {L, R}), kde L, R Γ, je přechodová funkce, q 0 je počáteční stav, q 0 Q a q F je koncový stav, q F Q. Turingovy stroje 1 p.3/28

Konfigurace Turingova stroje Symbol značí tzv. blank (prázdný symbol), který se vyskytuje na místech pásky, která nebyla ještě použita (může ale být na pásku zapsán i později). Konfigurace pásky je dvojice sestávající z nekonečného řetězce reprezentujícího obsah pásky a pozice hlavy na tomto řetězci přesněji jde o prvek množiny {γ ω γ Γ } N. a Konfiguraci pásky zapisujeme jako xyzz x... (podtržení značí pozici hlavy). Konfigurace stroje je pak dána stavem řízení a konfigurací pásky formálně se jedná o prvek množiny Q {γ ω γ Γ } N. a Pro libovolnou abecedu Σ je Σ ω množina všech nekonečných řetězců nad Σ, tj. nekonečných posloupností symbolů ze Σ. Pro připomenutí: Σ je množina všech konečných řetězců nad Σ. Turingovy stroje 1 p.4/28

Přechodová relace TS Pro libovolný řetězec γ Γ ω a číslo n N označme γ n n-tý symbol daného řetězce a označme s n b (γ) řetězec, který vznikne z γ záměnou γ n za b. Krok výpočtu TS M definujeme jako nejmenší binární relaci M takovou, že q 1, q 2 Q γ Γ ω n N b Γ: (q 1, γ,n) M (q 2, γ, n + 1) pro δ(q 1, γ n ) = (q 2,R) operace posuvu doprava při γ n pod hlavou, (q 1, γ,n) M (q 2, γ, n 1) pro δ(q 1, γ n ) = (q 2,L) a n > 0 operace posuvu doleva při γ n pod hlavou a (q 1, γ,n) M (q 2, s n b (γ), n) pro δ(q 1, γ n ) = (q 2,b) operace zápisu b při γ n pod hlavou. Turingovy stroje 1 p.5/28

Výpočet TS Výpočet TS M začínající z konfigurace K 0 je posloupnost konfigurací K 0, K 1, K 2,..., ve které K i M K i+1 pro všechna i 0 taková, že K i+1 je v dané posloupnosti, a která je bud nekonečná, a nebo konečná s koncovou konfigurací (q, γ, n), přičemž rozlišujeme následující typy zastavení TS: 1. normální přechodem do koncového stavu, tj. q = q F, a 2. abnormální, kdy q q F a: (a) pro (q, γ n ) není δ definována, nebo (b) hlava je na nejlevější pozici pásky a dojde k posunu doleva, tj. n = 0 a δ(q,γ n ) = (q, L) pro nějaké q Q. Turingovy stroje 1 p.6/28

Poznámka alternativní definice TS Používají se i některé alternativní definice TS, u kterých se dá snadno ukázat vzájemná převoditelnost: namísto jediného q F je povolena množina koncových stavů, namísto q F je zavedena dvojice q accept a q reject, na prvním políčku pásky je napevno zapsán symbol konce pásky, z něhož není možný posun doleva, při zavedení obou předchozích bodů je δ obvykle definovaná jako totální funkce, přepis a posuv hlavy jsou spojeny do jedné operace apod. Turingovy stroje 1 p.7/28

Grafická reprezentace TS x/s Grafická reprezentace přechodu (x co se čte, s zápis/l/r): p q Grafická reprezentace počátečního a koncového stavu: p q F Příklad 7.1 TS, který posouvá hlavu doprava na první počínaje aktuální pozicí (např. aab... aab...): a/r p / q b/r Turingovy stroje 1 p.8/28

Modulární konstrukce TS Modulární konstrukce TS: spojování (kombinace) jednodušších TS ve složitější celky. Příklad 7.2 Uvažme tři následující komponenty: M 1 přesune hlavu o jeden symbol doprava: M 1 : (R) s x/r y/r /R t /R x/r M 2 nalezne první výskyt symbolu x vpravo (od aktuální pozice hlavy): M 2 : (R x ) l y/r /R m x/x n y/r /R x/r M 3 nalezne první výskyt symbolu y vpravo: M 3 : p y/r q y/y r (R y ) /R x/r Turingovy stroje 1 p.9/28

Následující kombinací M 1, M 2 a M 3 vznikne TS M, který nalezne druhý výskyt (neblankového) symbolu od počáteční pozice. V pravé části obrázku je T zapsán v podobě tzv. kompozitního diagramu: /R x/x l m n / x/x x/r x/r y/r y/y y/r M: s t / M 1 x M 2 /R y/r /R / x/x y M 3 y/y p q r y/y x/r Turingovy stroje 1 p.10/28

Kompozitní diagram TS Konvence pro zjednodušený zápis kompozitního diagramu: 1. Nepodmíněné předání řízení sekvence strojů: A B C, což často zkracujeme na ABC. Odchozí šipky musí navazovat na poslední stroj v sekvenci, příchozí mohou navazovat na kterýkoliv z nich (sekvence se pak provádí od příslušné pozice). ABC 2. Podmíněné předání řízení podmíněná sekvence, větvení: x x A B M 1 y M 2 x M 1 x M 2 M 3 M 3 Na šipce podmíněného předání řízení může být seznam symbolů (x, y,...). Seznamy symbolů podmíněných předání řízení z jednoho bloku musí být disjunktní. Pokud některý symbol není pokryt žádnou šipkou podmíněného předání řízení a vyskytne se pod čtecí hlavou, výsledný stroj automaticky přejde do koncového stavu, tj. přijme (!). Turingovy stroje 1 p.11/28

3. Parametrová konvence používá se tehdy, je-li více různých symbolů zpracováváno stejným způsobem. Používá se notace x,y,z ω, kde ω nabývá hodnoty toho symbolu z {x, y, z}, který je pod čtecí hlavou v okamžiku příslušného předání řízení. Zkrácený zápis vytvořený pomocí parametrové konvence je možné rozvinout podobně jako u maker vytvořením samostatné kopie příslušné části stroje pro každý uvažovaný symbol. Příklad 7.3 Při použití parametrové konvence je TS ω x,y ω M 1 M 2 ekvivalentní (je zkratkou) pro následující konstrukci: x M 1 M 2 y x y M 2 Turingovy stroje 1 p.12/28

Základní stavební bloky TS Uvažujme Γ = {x, y, }, mezi základní stavební bloky TS obvykle patří následující stroje (lze je snadno upravit pro libovolnou jinou Γ): 1. Stroje L, R, x: x/l x/r x/x L: y/l R: y/r x: y/x /L /R /x doleva doprava na aktuální pozici zapiš x Příklad 7.4 Stroj R y L neboli RyL transformuje pásku xyxyx... na xyxyxy... 2. Stroje L x, R x, L x a R x : L x : L y R x : R y L x: L x R x: R x Turingovy stroje 1 p.13/28

3. Stroje S R a S L pro posuv (shift) obsahu pásky: Stroj S R posune řetězec neblankových symbolů nacházejících se vlevo od aktuální pozice hlavy o jeden symbol doprava. Stroj S L funguje podobně. S R : L x,y ω L x,y σ RσL R R R ω Příklad 7.5 příkladech: Činnost strojů S R a S L si můžeme přiblížit na následujících xyyxx... S R xyyx... yxy xxy... S R yxy xxy... xy yx... S R xy x... yyxx... S L yxx... Turingovy stroje 1 p.14/28

Příklady TS Příklad 7.6 Kopírovací stroj transformuje w na w w : x,y ω R R L L R R R ωr L L ω Příklad 7.7 Generování řetězců: Následující stroj generuje postupně všechny řetězce nad {x, y, z} v uspořádání ε, x, y,z, xx, yx, zx, xy, yy, zy, xz, yz,zz,xxx, yxx,... Předpokládáme, že stroj začíná s konfigurací pásky w..., kde w je řetězec uvedené posloupnosti, od kterého generování započne. x R x y L z y z x Turingovy stroje 1 p.15/28

Příklad 7.8 Stroj dekrementující kladné číslo zapsané ve dvojkové soustavě: 0 R L 1 0L R 0 S L 0L 1 0 1 1 Turingovy stroje 1 p.16/28

Turingovy stroje jako akceptory jazyků Turingovy stroje 1 p.17/28

Jazyk přijímaný TS Definice 7.2 1. Řetězec w Σ je přijat TS M = (Q, Σ, Γ,δ,q 0, q F ), jestliže M při aktivaci z počáteční konfigurace pásky w... a počátečního stavu q 0 zastaví přechodem do koncového stavu q F, tj. (q 0, w ω, 0) M (q F, γ, n) pro nějaké γ Γ a n N. 2. Množinu L(M) = {w w je přijat TS M} Σ nazýváme jazyk přijímaný TS M. Příklad 7.9 Pro níže uvedený TS M platí L(M) = {x n y n z n n 0}: # R R y,z x S L x L # y x y S L y z y R R,z,z,x,x z z S L x,y L # Stroj pracuje takto: x n y n z n x n 1 y n z n x n 1 y n 1 z n...ε. Turingovy stroje 1 p.18/28

Přijímání zvláštní konfigurací pásky Alternativně můžeme přijetí řetězce TS definovat tak, že TS začíná s konfigurací pásky w... a zastaví s konfigurací pásky Y..., Y Γ \ Σ, (Y značí Yes). Věta 7.1 Máme-li TS M, který přijímá L(M) přechodem do q F, můžeme vždy sestrojit stroj M, který bude přijímat L(M) zastavením s konfigurací pásky Y... Důkaz. (Idea) M : M začíná s páskou # w... R S R R*L L#R M R L * # RYL M sestrojíme doplněním M o přechody, které řeší nájezd na : Při čtení symbolu je třeba zvětšit pracovní prostor aktivujeme podstroj R L. Snadno lze přejít i opačně od přijímání konfigurací pásky Y... k přijímání přes q F. # Turingovy stroje 1 p.19/28

Poznámka 7.1 Uvědomme si, že na TS lze také nahlížet jako na výpočetní mechanismy implementující funkce Σ Γ tím, že transformují počáteční neblankový prefix své pásky na jiný neblankový prefix při přechodu do koncového stavu. Vzhledem k tomu, že TS nemusí každý svůj vstup přijmout, jsou funkce jimi implementované obecně parciální. Blíže se budeme vyčíslováním funkcí TS zabývat dále. Turingovy stroje 1 p.20/28

Vícepáskové Turingovy stroje Turingovy stroje 1 p.21/28

Vícepáskové TS Uvažujme TS, který má k pásek s páskovými abecedami Γ 1, Γ 2,..., Γ k a k odpovídajících hlav s přechodovou funkcí tvaru δ : (Q \ {q F }) Γ 1 Γ 2... Γ k Q [ {i} (Γ i {L, R}), i {1,...,k} kde i značí pásku, na kterou se zapisuje (na které se posouvá hlava). Věta 7.2 Pro každý k-páskový TS M existuje jednopáskový TS M takový, že L(M) = L(M ). Důkaz. (idea) x y x x x y y y x y x x 1 x y y y 1 y y x x y y x x 1 Nový páskový symbol Důkaz pokračuje dále. Turingovy stroje 1 p.22/28

Pokračování důkazu. Důkaz provedeme tak, že ukážeme algoritmus převodu na ekvivalentní jednopáskový TS: Předpokládáme, že přijímaný řetězec je u k-páskového stroje na počátku zapsán na první pásce, všechny ostatní pásky jsou prázdné a všechny hlavy jsou na nejlevější pozici. Původních k pásek simulujeme rozšířením páskové abecedy o 2k-tice, v nichž vždy i-tá složka pro liché i reprezentuje obsah ( i+1 )-ní pásky a na pozici i + 1 je 2 nebo 1 podle toho, zda se na ní nachází příslušná hlava či nikoliv. Počet načítaných kombinací symbolů v původním automatu je konečný a tudíž si výše uvedené rozšíření můžeme skutečně dovolit. Při simulaci k-páskového TS pak nejprve převedeme původní obsah první pásky na ekvivalentní obsah zakódovaný v 2k-ticích a pak každý krok simulujeme několika kroky. Při simulaci využíváme stavy ve formě (k + 1)-tic, kde první složka je stav původního TS a ostatní složky jsou aktuálně čtené symboly. Při rozhodování o dalším kroku pak bereme na zřetel především tento stav, aktuální načítaný symbol není důležitý a vždy se při čtení přemístíme na speciální pozici nalevo od užitečného obsahu pásky. Důkaz pokračuje dále. Turingovy stroje 1 p.23/28

Pokračování důkazu. Po rozhodnutí o dalším kroku najedeme doprava na pozici, na které je simulovaná hlava pásky, která se má modifikovat, provedeme příslušnou změnu a vrátíme se zpět doleva. Za nový aktuální stav považujeme (k + 1)-tici danou novým stavem simulovaného TS a k-ticí převzatou z původního stavu nového TS modifikovanou na místě modifikované pásky. Navíc je nutné korektně simulovat přepadnutí hlavy na kterékoliv pásce a převod dosud nevyužitých míst pásky s na odpovídající 2k-tici blank symbolů. Při řádné formalizaci popsaného algoritmu pak není těžké ukázat, že výsledný TS skutečně simuluje původní TS. Závěr: Zvětšení pamět ových možností TS nerozšiřuje jejich schopnosti přijímat jazyky! Turingovy stroje 1 p.24/28

Nedeterministické Turingovy stroje Turingovy stroje 1 p.25/28

Nedeterministické TS Definice 7.3 Nedeterministický TS je šestice M = (Q, Σ,Γ, δ,q 0, q F ), kde význam jednotlivých složek je shodný s deterministickým TS až na δ, jež má tvar: δ : (Q \ {q F }) Γ 2 Q (Γ {L,R}) Definice 7.4 Jazyk L(M) NTS M = (Q,Σ, Γ,δ,q 0, q F ) je množina řetězců w Σ takových, že M při aktivaci z q 0 při počátečním obsahu pásky w... může zastavit přechodem do q F. Věta 7.3 Pro každý NTS M existuje DTS M takový, že L(M) = L(M ). Důkaz. (idea) NTS M budeme simulovat třípáskovým DTS. Význam jednotlivých pásek tohoto stroje je následující: Páska 1 obsahuje přijímaný vstupní řetězec. Páska 2 je pracovní páska. Obsahuje kopii pásky 1 ohraničenou vhodnými speciálními značkami. Po neúspěšném pokusu o přijetí je její obsah smazán a obnoven z první pásky. Páska 3 obsahuje kódovanou volbu posloupností přechodů; při neúspěchu bude její obsah nahrazen jinou posloupností. Důkaz pokračuje dále. Turingovy stroje 1 p.26/28

Pokračování důkazu. Zvolená posloupnost přechodů je kódována posloupností čísel přiřazených přechodům simulovaného stoje. Jednotlivé posloupnosti přechodů na pásce 3 je možno generovat modifikovaným TS pro generování posloupnosti řetězců ε, x, y, z,xx,... Vlastní simulace probíhá takto: 1. Okopíruj obsah pásky 1 na pásku 2. 2. Generuj příští posloupnost přechodů na pásce 3. 3. Simuluj provedení posloupnosti z pásky 3 na obsahu pásky 2. 4. Vede-li zkoumaná posloupnost do q F simulovaného stroje, zastav vstupní řetězec je přijat. V opačném případě smaž pásku 2 a vrat se k bodu 1. Není obtížné nahlédnout, že jazyk takto vytvořeného stroje odpovídá jazyku původního NTS. Závěr: Zavedením nedeterminismu do TS se nezvyšují jejich schopnosti přijímat jazyky! Turingovy stroje 1 p.27/28

Poznámka ke kompozitním diagramům Vícepáskové a/nebo nedeterministické TS lze také popisovat kompozitními diagramy. U vícepáskových TS: značíme při podmíněném předání řízení horním indexem u symbolu, ze které pásky se příslušný symbol čte (např. x 1, y 2 apod.), lze se odkazovat na symboly na více páskách současně použítím notace x 1 y 2... označující, že na první pásce se čte symbol x, na druhé y atd., základní stavební bloky (R, L,...) indexujeme rovněž horním indexem pro označení, se kterou páskou pracují (tj. R 1, L 1,...). U NTS odpadají omezení na to, aby se různé větve podmíněného či nepodmíněného předání řízení vzájemně vylučovaly. Turingovy stroje 1 p.28/28