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 33<br />
Obrázek 3.3: Diagram přechodů<br />
Definice 3.6 Nechť M = (Q, Σ, δ, q 0 , F ) je konečný automat. Stav q ∈ Q nazveme<br />
dosažitelný, pokud existuje w ∈ Σ ∗ takové, že (q 0 , w)<br />
(q, ε). Stav je nedosažitelný,<br />
pokud není dosažitelný.<br />
Algoritmus 3.4<br />
Eliminace nedosažitelných stavů<br />
Vstup: Deterministický konečný automat M = (Q, Σ, δ, q 0 , F ).<br />
∗<br />
⊢<br />
M<br />
Výstup: Deterministický konečný automat M ′ bez nedosažitelných stavů, L(M) =<br />
L(M ′ ).<br />
Metoda:<br />
1. i := 0<br />
2. S i := {q 0 }<br />
3. repeat<br />
4. S i+1 := S i ∪ {q | ∃p ∈ S i ∃a ∈ Σ : δ(p, a) = q}<br />
5. i := i + 1<br />
6. until S i = S i−1<br />
7. M ′ := (S i , Σ, δ |Si , q 0 , F ∩ S i )<br />
Základem algoritmu minimalizace deterministického konečného automatu je<br />
koncept nerozlišitelných stavů.<br />
Definice 3.7 Nechť M = (Q, Σ, δ, q 0 , F ) je úplný DKA. Říkáme, že řetězec w ∈<br />
Σ ∗ rozlišuje stavy z Q, jestliže (q 1 , w) ∗ ⊢<br />
M<br />
(q 3 , ε) ∧ (q 2 , w) ∗ ⊢<br />
M<br />
(q 4 , ε) pro nějaké<br />
q 3 , q 4 a právě jeden ze stavů q 3 , q 4 je v F . Říkáme, že stavy q 1 , q 2 ∈ Q jsou<br />
k<br />
k-nerozlišitelné a píšeme q 1 ≡ q2 , právě když neexistuje w ∈ Σ ∗ , |w| ≤ k, který<br />
rozlišuje q 1 a q 2 . Stavy q 1 , q 2 jsou nerozlišitelné, značíme q 1 ≡ q 2 , jsou-li pro každé<br />
k ≥ 0 k-nerozlišitelné.<br />
Dá se snadno dokázat, že ≡ je relací ekvivalence na Q, tj. relací, která je<br />
reflexivní, symetrická a tranzitivní.<br />
Definice 3.8 Úplně definovaný DKA M nazýváme redukovaný, jestliže žádný<br />
stav Q není nedostupný a žádné dva stavy nejsou nerozlišitelné.<br />
Věta 3.11 Nechť M = (Q, Σ, δ, q 0 , F ) je úplný DKA a |Q| = n, n ≥ 2. Platí<br />
n−2<br />
∀q 1 , q 2 ∈ Q : q 1 ≡ q 2 ⇔ q 1 ≡ q 2 .