Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
KAPITOLA 2. JAZYKY, GRAMATIKY A JEJICH KLASIFIKACE 17<br />
2.3.3 Typ 2<br />
Gramatika typu 2 obsahuje pravidla tvaru:<br />
A → γ, A ∈ N, γ ∈ (N ∪ Σ) ∗ .<br />
Gramatiky typu 2 se nazývají také bezkontextovými gramatikami, protože substituci<br />
pravé strany γ pravidla za nonterminál A lze provádět bez ohledu na kontext,<br />
ve kterém je nonterminál A uložen. Na rozdíl od kontextových gramatik,<br />
bezkontextové gramatiky smí obsahovat pravidla tvaru A → ɛ. V kapitole 4<br />
však ukážeme, že každou bezkontextovou gramatiku lze transformovat, aniž by<br />
se změnil jazyk generovaný touto gramatikou tak, že obsahuje nejvýše jedno pravidlo<br />
s prázdným řetězcem na pravé straně tvaru S → ɛ. V takovém případě,<br />
stejně jako v případě kontextových gramatik, nesmí se výchozí symbol S objevit<br />
v žádné pravé straně přepisovacího pravidla gramatiky.<br />
Příklad 2.22 Příklad bezkontextové gramatiky:<br />
G = ({S}, {0, 1}, P, S) s pravidly<br />
S → 0S1 | ɛ<br />
Poznamenejme, že jazyk generovaný touto gramatikou je stejný jako jazyk generovaný<br />
kontextovou gramatikou z příkladu 2.21:<br />
2.3.4 Typ 3<br />
L(G) = {0 n 1 n }, n ≥ 0<br />
Gramatika typu 3 obsahuje pravidla tvaru:<br />
A → xB nebo A → x; A, B ∈ N, x ∈ Σ ∗ .<br />
Gramatika s tímto tvarem pravidel se nazývá pravá lineární gramatika (jediný<br />
možný nonterminál pravé strany pravidla stojí úplně napravo). V následující kapitole<br />
ukážeme, že k uvedené gramatice lze sestrojit ekvivalentní speciální pravou<br />
lineární gramatiku s pravidly tvaru<br />
nebo<br />
A → aB nebo A → a, kde A, B ∈ N, a ∈ Σ<br />
S → ɛ, pokud se S neobjevuje na pravé straně žádného pravidla.<br />
Tuto gramatiku budeme nazývat regulární gramatikou, přesněji pravou regulární<br />
gramatikou.<br />
Příklad 2.23 Příklady gramatiky typu 3:<br />
G = ({A, B}, {a, b, c}, P, A) s pravidly<br />
A → aaB | ccB<br />
B → bB | ɛ