You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
KAPITOLA 4. BEZKONTEXTOVÉ JAZYKY A ZÁSOBNÍKOVÉ AUTOMATY88<br />
(1) δ(q, a, ɛ) = {(q, a)} pro všechna a ∈ {i, +, ∗, (, )}.<br />
(2)<br />
(3) δ(q, ɛ, /SE) = {(r, ɛ)}<br />
δ(q, ɛ, E + T ) = {(q, E)}<br />
δ(q, ɛ, T ) = {(q, E)}<br />
δ(q, ɛ, T ∗ F ) = {(q, T )}<br />
δ(q, ɛ, F ) = {(q, T )}<br />
δ(q, ɛ, (E)) = {(q, F )}<br />
δ(q, ɛ, i) = {(q, F )}<br />
Pro vstupní řetězec i + i ∗ i může rozšířený zásobníkový automat R provést tuto<br />
posloupnost přechodů:<br />
(q, i + i ∗ i, /S) ⊢ (q, +i ∗ i, /Si)<br />
⊢ (q, +i ∗ i, /SF )<br />
⊢ (q, +i ∗ i, /ST )<br />
⊢<br />
⊢<br />
(q, +i ∗ i, /SE)<br />
(q, i ∗ i, /SE+)<br />
⊢ (q, ∗i, /SE + i)<br />
⊢ (q, ∗i, /SE + F )<br />
⊢ (q, ∗i, /SE + T )<br />
⊢ (q, i, /SE + T ∗)<br />
⊢ (q, ɛ, /SE + T ∗ i)<br />
⊢ (q, ɛ, /SE + T ∗ F )<br />
⊢ (q, ɛ, /SE + T )<br />
⊢<br />
(q, ɛ, /SE)<br />
⊢ (r, ɛ, ɛ)<br />
Na závěr tohoto odstavce ukážeme , že bezkontextové jazyky jsou ekvivalentní<br />
jazykům přijímaným zásobníkovými automaty, tj., že lze také ke každému zásobníkovému<br />
automatu R vytvořit bezkontextovou gramatiku G takovou, že L(R) =<br />
L(G).<br />
Věta 4.16 Nechť R = (Q, Σ, Γ, δ, q 0 , Z 0 , F ) je zásobníkový automat. Pak existuje<br />
bezkontextová gramatika G, pro kterou platí L(G) = L(R).<br />
Důkaz: Gramatiku G budeme konstruovat tak, aby levá derivace terminálního<br />
řetězce w přímo korespondovala s posloupností přechodů automatu R. Budeme<br />
používat nonterminální symboly tvaru [qZr] kde q, r ∈ Q, Z ∈ Γ. Vrchol zásobníku<br />
uvádíme opět vlevo.<br />
Nechť gramatika G = (N, Σ, P, S) je formálně definována takto:<br />
(1) N = {[qZr] | q, r ∈ Q, Z ∈ Γ} ∪ {S}<br />
(2) Jestliže δ(q, a, Z) obsahuje (r, X 1 . . . X k ) k ≥ 1, pak k množině přepisovacích<br />
pravidel P přidej všechna pravidla tvaru<br />
L P ⊆ L 2<br />
[qZs k ] → a[rX 1 s 1 ][s 1 X 2 s 2 ] . . . [s k−1 X k s k ]<br />
pro každou posloupnost s 1 , s 2 , . . . , s k stavů z množiny Q.