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

(2) δ(q, a, a) = {(q, ɛ)} pro všechna a ∈ Σ.<br />

Nyní ukážeme, že A ⇒ m w, právě když a jen když (q, w, ɛ) ⊢ n (q, ɛ, ɛ) pro nějaké<br />

m, n ≥ 1.<br />

Část „jen když“ dokážeme indukcí pro m. Předpokládejme, že A ⇒ m w. Je-li<br />

m = 1 a w = a 1 . . . a k , k ≥ 0 pak<br />

(q, a 1 . . . a k , A) ⊢ (q, a 1 . . . a k )<br />

⊢ k (q, ɛ, ɛ)<br />

Předpokládejme nyní, že platí A ⇒ m w pro m > 1. První krok této derivace<br />

musí mít tvar A ⇒ X 1 X 2 . . . X k , přičemž X i ⇒ mi<br />

x 1 x 2 . . . x k = w. Tedy<br />

(q, w, A) ⊢ (q, w, X 1 . . . X k )<br />

Je-li X i ∈ N, pak podle induktivního předpokladu<br />

(q, x i , X i ) ∗ ⊢(q, ɛ, ɛ)<br />

x i pro m i < m, 1 ≤ i ≤ k a<br />

Je-li X i = x i , x i ∈ Σ, pak<br />

(q, x i , X i ) ⊢ (q, ɛ, ɛ)<br />

Nyní již vidíme, že levé derivaci<br />

A ⇒ X 1 . . . X k ⇒ m1 x 1 X 2 . . . X k ⇒ m2 . . . ⇒ m k<br />

x 1 x 2 . . . x k = w<br />

odpovídá tato posloupnost přechodů:<br />

(q, x 1 . . . x k , A) ⊢(q, x 1 . . . x k , X 1 . . . X k ) ⊢(q, ∗ x 2 . . . x k , X 2 . . . X k ) . . . ⊢(q, ∗ ɛ, ɛ)<br />

Část „když“, tj. je-li (q, w, A) ⊢ n (q, ɛ, ɛ), pak ⇒ + w dokážeme indukcí pro n.<br />

Pro n = 1, w = ɛ a A → ɛ je pravidlo v P . Předpokládejme, že dokazovaná relace<br />

platí pro všechna n ′ < n. Pak první přechod automatu R musí mít tvar<br />

(q, w, A) ⊢ (q, w, X 1 . . . X k )<br />

a (q, x i , X i ) ⊢ n i (q, ɛ, ɛ) pro 1 ≤ i ≤ k, kde w = x1 . . . x k . Pak A → X 1 . . . X k je<br />

pravidlo z P a derivace X i ⇒ + x i plyne z induktivního předpokladu. Je-li X i ∈ Σ<br />

pak X i ⇒ 0 x i .<br />

Tedy A ⇒ X 1 . . . X k ⇒ ∗ x 1 X 2 . . . X k ⇒ ∗ . . . ⇒ ∗ x 1 . . . x k−1 X k ⇒ ∗<br />

x 1 . . . x k−1 x k = w je levá derivace řetězce w z A.<br />

Vezmeme-li S = A jako speciální případ, dostaneme S ⇒ +<br />

(q, w, s) ⊢ + (q, ɛ, ɛ) a tedy L ɛ (R) = L(G).<br />

Příklad 4.22 Ke gramatice G s pravidly<br />

E → E + T | T<br />

T → T ∗ F | F<br />

F → (E) | i<br />

sestrojme zásobníkový automat P takový, že L ɛ (P ) = L(G)<br />

w, právě když<br />

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

Saved successfully!

Ooh no, something went wrong!