Category: Informatika

VS01 – Vyčíslitelnost a složitost – Základní pojmy

Vyčíslitelnost a složitost, kapitola první, základní pojmy, potenční množina, schéma zápisu problému, algoritmická řešitelnost, Turingův stroj. Pro pochopení vyčíslitelnosti a složitosti budeme potřebovat znát následující základní pojmy, které se budou dále objevovat v textu. Definice 1: Potenční množina Potenční množina je taková množina Ρ(M), která obsahuje všechny podmnožiny množiny M. Definice 2: Schéma zápisu problému   …

Continue reading

KA07 – Operace s konečnými automaty

S konečnými automaty můžeme pracovat obdobně jako s množinami. Můžeme na ně aplikovat různé operace jako sjednocení, průnik, zřetězení, iterace, doplněk, zrcadlový obraz, kvocient, atd. Na úvod je zapotřebí si definovat třídu všech jazyků rozpoznatelných konečným automatem F.

Continue reading

KA06 – Převod ZNKA na DKA

Zobecněný nedeterministický konečný automat lze převést přímo na deterministický konečný automat pomocí následujícího algoritmu. Je obdobný stromovému algoritmu převodu NKA na DKA. Nejprve si ale musíme vysvětlit, co je to E-funkce.

Continue reading

KA05 – Zobecněné NKA

Představíme-li si automat takový, že dokáže přecházet mezi jednotlivými stavy, aniž by načetl jakýkoliv vstupní symbol, hovoříme o zobecněném nedeterministickém konečném automatu, a tyto speciální stavy se nazývají ε-přechody.

Continue reading

KA04 – Ekvivalentní automaty

Přestože dva konečné automaty obsahují rozdílný počet stavů, rozdílný počet a tvar přechodových funkcí, mohou být ekvivalentní. Definice 1: Konečný automat A a konečný automat B jsou ekvivalentní, pokud oba rozpoznávají jeden společný jazyk, tedy L(A) = L(B). Abychom mohli velice jednoduše ověřit, zdali dva konečné automaty jsou ekvivalentní, je zapotřebí nejprve definovat dosažitelnost a …

Continue reading

KA03 – Převod NKA na DKA

Všechny nedeterministické konečné automaty se dají pomocí jednoduchého algoritmu převést na deterministické konečné automaty. Je zapotřebí pouze sjednotit vstupní stavy do jednoho deterministického vstupu a definovat nové vnitřní stavy, které budou odpovídat všem variacím z nedeterministické množiny.

Continue reading

KA02 – Způsoby zápisu konečných automatů

Každý konečný automat můžeme reprezentovat různými způsoby zápisu. Lze použít výčet jednotlivých prvků automatu, tedy stavů a přechodových funkcí, dále lze použít reprezentaci pomocí tabulky, stavového diagramu či stavového stromu. Reprezentace výčtem prvků

Continue reading

KA01 – Základní definice

Úvodní kapitola teorie konečných automatů vymezí základní pojmy, se kterými se budeme dále setkávat. Gramatika – soubor všech symbolů, znaků a pravidel, které je zapotřebí k vytváření vět. Jazyk – obsahuje všechny věty, které lze vytvořit pomocí gramatiky. Jazyk tedy nemůže obsahovat nic, co není obsaženo v gramatice daného jazyka. Automat – algoritmus, pomocí kterého …

Continue reading