Jazyky, automaty a vyčíslitelnost (01JAV)
poslední změna: 09-12-2025
Anotace
Konečné automaty a regulární jazyky, bezkontextové jazyky a zásobníkové automaty, kontextové jazyky a lineárně omezené automaty, jazyky typu 0 a Turingovy stroje. Algoritmy a algoritmicky vyčíslitelné funkce. Rekurzívní funkce, rekurzívní a rekurzívně spočetné množiny. Algoritmicky neřešitelné problémy.
zápočet
Podmínkou udělení zápočtu je vypracování a předvedení 6 zápočtových úloh na (alespoň) 4 různých cvičeních během semestru. Zápočtové úlohy budou vzeřejněné vždy minimálně týden předem v podrobném sylabu níže.
Podrobný sylabus 2024/2025
| datum | náplň předášky/cvičení |
| 23.9. | Základní pojmy z teorie formálních jazyků. Konečný automat, výpočet, jazyk rozeznávaný konečným automatem. |
| 26.9. | Mmožina Rec Σ*. Uzavřenost Rec Σ* na zrcadlový obraz, sjednocení, průnik a levý kvocient. |
| 30.9. | Užitečný automat. Prázdnost a nekonečnost jazyka rozeznávaného KA. Věty o vkládání. |
| 3.10. | Automaty s ε-přechody. Regulární výrazy a jazyky popsané regulárními výrazy. |
| 7.10. | Kleenova věta. Uzavřenost Rec Σ* na zřetězení a iteraci. Algoritmus Brzozowski-McClusky, Ardenovo lemma. |
| 10.10. | Deterministické konečné automaty. Rozhodování ekvivalence konečných automatů. Uzavřenost Rec Σ* na obraz a vzor při morfizmu. |
| 14.10. | [cvičení 1] 1) Konstrukce konečných automatů. 2) Rozhodování neregularity jazyka pomocí vět o vkládání. » Zadání zápočtových úloh a dalších příkladů k procvičení « |
| 17.10. | Minimální automat jazyka. |
| 21.10. | [cvičení 2] 1) Hierarchie vět o vkládání. 2) Kleenova věta: převod KA ↔ reg. výraz. » Zadání zápočtových úloh a dalších příkladů k procvičení « |
| 24.10. | — |
| 28.10. | — |
| 31.10. | Myhilova-Nerodeova věta. Mooreův algoritmus minimalizace. Generativní gramatiky. |
| 4.10. | Bezkontextové gramatiky. Jazyk generovaný BKG. Derivační stromy. Jednoznačnost BKG. |
| 7.10. | BKG bez zbytečných symbolů, bez ε-pravidel a jednotkových pravidel. Chomského normální forma. |
| 11.11. | [cvičení 3] 1) Determinizace konečného automatu. 2) Minimalizace konečného automatu. » Zadání zápočtových úloh a dalších příkladů k procvičení « |
| 14.11. | Věta o vkládání pro BKJ. Uzavřenost třídy BKJ na sjednocení, zřetězení a iteraci. |
| 18.11. | Práznost a nekonečnost jazyka generovaného BKG. Zásobníkové automaty. Konfigurace a výpočet ZA. |
| 21.11. | Jazyk přijímaný ZA. Ekvivalence přijímání koncovým stavem a prázdným zásobníkem. Průnik jazyka přijímaného ZA s regulárním jazykem. |
| 25.11. | [cvičení 4] 1) Konstrukce BKG. 2) Speciální formy BKG. » Zadání zápočtových úloh « |
| 28.11. | Ekvivalence BKG a ZA. (Ne)rozhodnutelnost. Algoritmicky a turingovsky vyčíslitelné funkce. Churchova-Turingova téze. |
| 2.12. | [cvičení 5] 1) Konstrukce zásobníkových automatů. 2) Pumping lemma pro BKJ, uzávěrové vlasnosti třídy ℒBKJ. » Zadání zápočtových úloh a dalších příkladů k procvičení « |
| 5.12. | Algoritmicky vyčíslitelné funkce. Turingův stroj. Rekurzivní a rekurzivně spočetný jazyk. |
| 9.12. | Modifikace TS (více řádek, více pásek, nedeterminismus, omezení páskové abecedy). |
česky |
english
