opora

frantisek.plesicek
from frantisek.plesicek More from this publisher
10.02.2019 Views

KAPITOLA 5. TURINGOVY STROJE 105 stavy a přechody původních strojů a navíc nový koncový stav q F . Počáteční a koncové stavy q0 i a qF i strojů Bi , 1 ≤ i ≤ m, a koncový stav qF A stroje A ztrácejí svůj původní status. Navíc jsou přidány následující přechody: • Pro všechna 1 ≤ i ≤ m, 1 ≤ j ≤ n i , y ∈ Γ∪{L, R}, q ∈ Q i , je-li v B i přechod q i 0 x i j /y −→ q, pak dodáme v kompozici přechod q A F x i j /y −→ q. • Pro každé x ∈ Γ \ {x 1 1, ..., x 1 n 1 , ..., x m 1 , ..., x m n m } dodáme přechod q A F x/x −→ q F . • Pro všechna 1 ≤ i ≤ m a x ∈ Γ dodáme přechod qF i x/x −→ q F . Při podmíněném předání řízení je možné užít také větve pokrývající všechny ostatní symboly, jež nejsou pokryty běžným podmíněným předáním řízení. K tomu účelu použijeme šipku která obsahuje seznam všech symbolů, přes které se podmíněně předává řízení z dané komponenty, uvozený symbolem negace ¬. Jednoduchý příklad této konstrukce je uveden níže: x M 2 M 1 x M 3 Pokud bychom chtěli dodat takové předání řízení ke kompozici strojů A, B 1 , ..., B m uvažované výše, byla by příslušná šipka označena ¬x 1 1, ..., x 1 n 1 , ..., x m 1 , ..., x m n m . Předání řízení přes takovou šipku je ekvilentní předání řízení přes šipku označenou seznamem obsahujícím symboly Γ \ {x 1 1, ..., x 1 n 1 , ..., x m 1 , ..., x m n m }. Pro zjednodušení konstrukce strojů, ve kterých se stejným způsobem zpracovává několik různých symbolů, se používá tzv. parametrová konvence. Jedná se o podmíněné předání řízení zapsané jako x 1, ..., x n ω , kde x 1 , ..., x n ∈ Γ, n ≥ 2, ω ∉ Γ ∪ {L, R}. Při předání řízení tímto způsobem nabývá ω hodnoty toho symbolu z množiny x 1 , ..., x n , který je aktuálně pod čtecí hlavou. Parametrová konvence je vlastně jakousi analogií použití maker, jak ilustruje níže uvedený příklad. Příklad 5.1.3 Turingův stroj x,y ω M 1 M 2 stroji: x M 1 x M 2 y y M 2 ω je ekvivalentní Turingovu 5.1.10 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:

KAPITOLA 5. TURINGOVY STROJE 106 L: x/L y/L R: x/R y/R x: x/x y/x ∆/L doleva ∆/R doprava ∆/x na aktuální pozici zapiš x Příklad 5.1.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 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 : x,y ∆L ∆ ω x,y L ∆ σ RσL R R∆R ∆ ω Příklad 5.1.5 Činnost strojů S R a S L si můžeme přiblížit na následujících příkladech: • ∆xyyxx∆∆... S R −→ ∆∆xyyx∆∆... • ∆yxy∆∆xxy∆... S R −→ ∆∆yxy∆xxy∆... • xy∆yx∆∆... S R −→ xy∆∆x∆∆... • ∆yyxx∆∆... 5.1.11 Příklady TS S L −→ ∆yxx∆∆∆... Příklad 5.1.6 Kopírovací stroj – transformuje ∆w∆ na ∆w∆w∆: x,y ω R ∆ R∆L ∆ L ∆ R ∆R ∆ R ∆ ωR∆L ∆ L ∆ ω Příklad 5.1.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.

KAPITOLA 5. TURINGOVY STROJE 106<br />

L:<br />

x/L<br />

y/L<br />

R:<br />

x/R<br />

y/R<br />

x:<br />

x/x<br />

y/x<br />

∆/L<br />

doleva<br />

∆/R<br />

doprava<br />

∆/x<br />

na aktuální pozici<br />

zapiš x<br />

Příklad 5.1.4 Stroj R y L neboli RyL<br />

transformuje pásku ∆xyxyx∆∆... na ∆xyxyxy∆...<br />

2. Stroje L x , R x , L ¬x a R ¬x :<br />

L x :<br />

L<br />

y<br />

∆<br />

R x :<br />

R<br />

y<br />

∆<br />

L x:<br />

L<br />

x<br />

R x:<br />

R<br />

x<br />

3. Stroje S R a S L pro posuv (shift) obsahu pásky: Stroj S R posune řetězec<br />

neblankových symbolů nacházejících se vlevo od aktuální pozice hlavy o jeden<br />

symbol doprava. Stroj S L funguje podobně.<br />

S R :<br />

x,y<br />

∆L<br />

∆<br />

ω<br />

x,y<br />

L<br />

∆<br />

σ<br />

RσL<br />

R<br />

R∆R ∆ ω<br />

Příklad 5.1.5 Činnost strojů S R a S L si můžeme přiblížit na následujících<br />

příkladech:<br />

• ∆xyyxx∆∆... S R<br />

−→ ∆∆xyyx∆∆...<br />

• ∆yxy∆∆xxy∆... S R<br />

−→ ∆∆yxy∆xxy∆...<br />

• xy∆yx∆∆... S R<br />

−→ xy∆∆x∆∆...<br />

• ∆yyxx∆∆...<br />

5.1.11 Příklady TS<br />

S L<br />

−→ ∆yxx∆∆∆...<br />

Příklad 5.1.6 Kopírovací stroj – transformuje ∆w∆ na ∆w∆w∆:<br />

x,y ω<br />

R ∆ R∆L ∆ L ∆ R ∆R ∆ R ∆ ωR∆L ∆ L ∆ ω<br />

Příklad 5.1.7 Generování řetězců:<br />

• Následující stroj generuje postupně všechny řetězce nad {x, y, z} v uspořádání<br />

ε, x, y, z, xx, yx, zx, xy, yy, zy, xz, yz, zz, xxx, yxx, ....<br />

• Předpokládáme, že stroj začíná s konfigurací pásky ∆w∆..., kde w je řetězec<br />

uvedené posloupnosti, od kterého generování započne.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!