10.02.2019 Views

opora

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É AUTOMATY79<br />

(1) Q je konečná množina stavových symbolů reprezentujících vnitřní stavy řídicí<br />

jednotky,<br />

(2) Σ je konečná vstupní abeceda; jejími prvky jsou vstupní symboly,<br />

(3) Γ je konečná abeceda zásobníkových symbolů,<br />

(4) δ je zobrazení z množiny Q × (Σ ∪ {ɛ}) × Γ do konečné množiny podmnožin<br />

množiny Q × Γ ∗ popisující funkci přechodů,<br />

(5) q 0 ∈ Q je počáteční stav řídicí jednotky,<br />

(6) Z 0 ∈ Γ je symbol, který je na počátku uložen do zásobníku – tzn. startovací<br />

symbol zásobníku,<br />

(7) F ⊆ Q je množina koncových stavů.<br />

Definice 4.17 Konfigurací zásobníkového automatu P nazveme trojici<br />

kde<br />

(1) q je přítomný stav řídící jednotky<br />

(q, w, α) ∈ Q × Σ ∗ × Γ ∗<br />

(2) w je doposud nepřečtená část vstupního řetězce; první symbol řetězce w je<br />

pod čtecí hlavou. Je-li w = ɛ, pak byly všechny symboly ze vstupní pásky<br />

přečteny.<br />

(3) α je obsah zásobníku. Pokud nebude uvedeno jinak, budeme zásobník reprezentovat<br />

řetězcem, jehož nejlevější symbol koresponduje s vrcholem zásobníku.<br />

Je-li α = ɛ, pak je zásobník prázdný.<br />

Definice 4.18 Přechod zásobníkového automatu P budeme reprezentovat binární<br />

relací ⊢ P<br />

(nebo ⊢ bude-li zřejmé, že jde o automat P ), která je definována na<br />

množině konfigurací zásobníkového automatu P . Relace<br />

(q, w, β) ⊢(q ′ , w ′ , β ′ )<br />

platí pro q, q ′ ∈ Q, w, w ′ ∈ Σ ∗ , β, β ′ ∈ Γ ∗ , jestliže w = aw ′ pro nějaké a ∈ (Σ∪{ɛ}),<br />

β = Zα a β ′ = γα pro nějaké Z ∈ Γ, α, γ ∈ Γ ∗ a δ(q, a, Z) obsahuje prvek (q ′ , γ).<br />

Relaci ⊢ P<br />

interpretujeme tímto způsobem. Nachází-li se zásobníkový automat<br />

P ve stavu q a na vrcholu zásobníku je uložen symbol Z, pak po přečtení vstupního<br />

symbolu a ≠ ɛ může automat přejít do stavu q ′ , přičemž se čtecí hlava posune<br />

doprava a na vrchol zásobníku se uloží, po odstranění symbolu Z, řetězec γ. Je-li<br />

γ = ɛ, pak je pouze odstraněn vrchol zásobníku.<br />

Je-li a = ɛ, neposouvá se čtecí hlava, což znamená, že přechod do nového<br />

stavu a nový obsah zásobníku není určován příštím vstupním symbolem. Tento<br />

typ přechodu budeme nazývat ɛ-přechodem. Poznamenejme, že ɛ-přechod může<br />

nastat i tehdy, když byly přečteny všechny vstupní symboly.<br />

Relace ⊢ i , ⊢ + , ⊢ ∗ jsou definovány obvyklým způsobem. Relace ⊢ + resp. ⊢ ∗ je<br />

tranzitivní, resp. tranzitivní a reflexivní uzávěr relace ⊢, ⊢ i je i-tá mocnina relace<br />

⊢, i ≥ 0.<br />

Počáteční konfigurace zásobníkového automatu má tvar (q 0 , w, Z 0 ) pro w ∈ Σ ∗ ,<br />

tj. automat je v počátečním stavu q 0 , na vstupní pásce je řetězec w a v zásobníku<br />

je startovací symbol Z 0 . Koncová konfigurace má tvar (q, ɛ, α), kde q ∈ F je<br />

koncový stav a α ∈ Γ ∗ .

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

Saved successfully!

Ooh no, something went wrong!