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 3. REGULÁRNÍ JAZYKY 24<br />

3. Polož F ′ = {S | S ∈ 2 Q ∧ S ∩ F ≠ ∅}.<br />

4. Pro všechna S ∈ 2 Q \ {∅} a pro všechna a ∈ Σ polož:<br />

• δ ′ (S, a) = ⋃ q∈S δ(q, a), je-li ⋃ q∈S<br />

δ(q, a) ≠ ∅.<br />

• Jinak δ ′ (S, a) není definována.<br />

2. Nyní je třeba ukázat, že L(M) = L(M ′ ) tj. že platí:<br />

(a) L(M) ⊆ L(M ′ ) a současně,<br />

(b) L(M ′ ) ⊆ L(M).<br />

Tuto část důkazu ponecháme jako cvičení.<br />

✷<br />

Příklad 3.4 Uvažujme nedeterministický konečný automat M 2 = ({S, A, B, C},<br />

{a, b, c}, δ, S, {A}), δ : δ(S, a) = {A}, δ(S, c) = {B}, δ(B, b) = {B, C}, δ(C, a)<br />

= {B}, δ(C, c) = {A}.<br />

K nalezení funkce δ ′ příslušného DKA aplikujeme zkrácený postup, využívající<br />

skutečnosti, že řada stavů z 2 Q může být nedostupných:<br />

1. Počáteční stav: {S}<br />

2. δ ′ ({S}, a) = {A} — koncový stav<br />

δ ′ ({S}, c) = {B}<br />

3. δ ′ ({B}, b) = {B, C}<br />

4. δ ′ ({B, C}, a) = δ(B, a) ∪ δ(C, a) = {B}<br />

δ ′ ({B, C}, b) = {B, C} δ ′ ({B, C}, c) = {A}<br />

3.1.2 Lineární a regulární gramatiky<br />

Dříve, než přistoupíme k důkazu ekvivalence třídy L 3 a třídy jazyků přijímaných<br />

konečnými automaty, ukážeme, že každý jazyk typu 3 může být generován speciálním<br />

typem gramatiky, než je pravá lineární gramatika.<br />

Definice 3.4<br />

• Gramatika G = (N, Σ, P, S) s pravidly tvaru:<br />

resp. tvaru:<br />

A → xB A, B ∈ N, x ∈ Σ ∗ nebo<br />

A → x x ∈ Σ ∗ ,<br />

A → Bx<br />

A → x<br />

A, B ∈ N nebo<br />

x ∈ Σ ∗

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

Saved successfully!

Ooh no, something went wrong!