IB005 Formální jazyky a automaty

Fakulta informatiky
jaro 2022
Rozsah
2/2/1. 4 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: z.
Vyučující
prof. RNDr. Mojmír Křetínský, CSc. (přednášející)
Mgr. Paulína Ayaziová (cvičící)
Mgr. Tomáš Foltýnek, Ph.D. (cvičící)
Mgr. Marek Jankola (cvičící)
Mgr. Tomáš Macháček (cvičící)
Mgr. Juraj Major (cvičící)
Mgr. Tereza Schwarzová (cvičící)
prof. RNDr. Jan Strejček, Ph.D. (cvičící)
RNDr. Miriama Jánošová (pomocník)
RNDr. Martin Jonáš, Ph.D. (pomocník)
RNDr. David Klaška (pomocník)
Mgr. Michael Koudela (pomocník)
Petra Ludvová Hašková, DiS. (pomocník)
Mgr. Henrieta Micheľová (pomocník)
Mgr. Anna Řechtáčková (pomocník)
Bc. Patrícia Salajová (pomocník)
Mgr. Tereza Šťastná (pomocník)
RNDr. Vladimír Štill, Ph.D. (pomocník)
Mgr. Pavol Žáčik (pomocník)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Mojmír Křetínský, CSc.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
St 16. 2. až St 11. 5. St 10:00–11:50 D1
  • Rozvrh seminárních/paralelních skupin:
IB005/A: St 16. 2. až St 11. 5. St 14:00–15:50 A318, kromě St 4. 5. ; a St 4. 5. 14:00–15:50 B517, J. Strejček
IB005/02: Čt 17. 2. až Čt 12. 5. Čt 16:00–17:50 A318, J. Strejček
IB005/03: Čt 17. 2. až Čt 12. 5. Čt 14:00–15:50 B410, J. Major
IB005/04: Út 15. 2. až Út 10. 5. Út 12:00–13:50 B410, T. Foltýnek
IB005/05: Po 14. 2. až Po 9. 5. Po 12:00–13:50 B411, T. Foltýnek
IB005/06: Po 14. 2. až Po 9. 5. Po 14:00–15:50 B411, T. Foltýnek
IB005/07: Út 15. 2. až Út 10. 5. Út 14:00–15:50 B411, P. Ayaziová
IB005/08: Út 15. 2. až Út 10. 5. Út 18:00–19:50 A319, T. Schwarzová
IB005/09: Po 14. 2. až Po 9. 5. Po 8:00–9:50 B411, M. Jankola
IB005/10: Pá 18. 2. až Pá 13. 5. Pá 8:00–9:50 A320, T. Macháček
Předpoklady
IB000 Mat. základy informatiky && ! IB102 Automaty a gramatiky
Znalost problematiky v rozsahu předmětu IB000 Matematické základy informatiky
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Kurs by měl u studenta rozvinout schopnost abstrakce, seznámit ho s možnostmi konečné specifikace nekonečných objektů, zde konkrétně jazyků, a naučit se aktivně pracovat se základními abstraktn9mi výpočetními modely a vytvořit předpoklady pro schopnosti vlastní formulace abstrakcí a jejich porozumění.
Výstupy z učení
Na konci tohoto kurzu bude student schopen:
Prokázat hluboké porozumění konceptům a technikám teorie automatů a jejich vztah k výpočtům.
Navrhnout abstraktní stroje modelující reálné systémy a specifikovat chování těchto strojů. Analyzovat výpočetní sílu těchto strojů
Porozumět pojmu vyčíslitelnosti na úrovni různých typů automatů a demostrovat jejicvh vlastnosti
Aplikovat tuto teorii v běžné informatické praxi a při návrhu relevatních softwarových systémů.
Osnova
  • Pojem jazyka a problém specifikace (nekonečných) jazyků; základní operace nad jazyky. Přepisovací systémy a gramatiky. Chomského hierarchie.
  • Konečné automaty a regulární gramatiky; Pumping lemma, Myhillova--Nerodova věta, minimalizace. Nedeterministické konečné automaty, vztah k regulárním gramatikám.
  • Vlastnosti regulárních jazyků; uzávěrové vlastnosti, regulární výrazy, Kleeneho věta, konečnost. Nástin aplikací (grep, ..., lex).
  • Bezkontextové gramatiky a jazyky; transformace bezkontextových gramatik, vybrané normální formy, pumping lemma, uzávěrové vlastnosti; konečnost a regularita.
  • Zásobníkové automaty a jejich vztah k bezkontextovým gramatikám; nedeterministická syntaktická analýza shora dolů a zdola nahoru.
  • Turingovy stroje (TS). Rekursivní a rekursivně vyčíslitelné jazyky a funkce, uzávěrové vlastnosti. Lineárně ohraničené automaty.
  • Nerozhodnutelnost, problém zastavení TS, princip redukce, Postův korespondenční problém, nerozhodnutelné problémy z teorie jazyků.
Literatura
  • ČERNÁ, Ivana, Mojmír KŘETÍNSKÝ a Antonín KUČERA. Formální jazyky a automaty I. Elportál. Brno: Masarykova univerzita, 2006. ISSN 1802-128X. URL info
  • GRUSKA, Jozef. Foundations of computing. London: International Thompson Computer Press, 1997, xv, 716 s. ISBN 1-85032-243-0. info
  • HOPCROFT, John E. a Jeffrey D. ULLMAN. Introduction to automata theory, languages, and computation. Reading: Addison-Wesley Publishing Company, 1979, 418 s., ob. ISBN 0-201-02988-X. info
  • CHYTIL, Michal. Automaty a gramatiky. Vyd. 1. Praha: SNTL - Nakladatelství technické literatury, 1984, 331 s. URL info
  • KOZEN, Dexter C. Automata and computability. New York: Springer, 1997, xiii, 400. ISBN 0387949070. info
  • SIPSER, Michael. Introduction to the theory of computation. 2nd ed. Boston: Thomson Course Technology, 2006, xix, 431. ISBN 0534950973. info
Výukové metody
přednášky, cvičení, samostudium. Volitelné domácí úlohy.
Metody hodnocení
1 písemná zkouška během semestru a závěrečná písemná zkouška. Výsledky vnitrosemestrální písemky se započítávají do výsledného hodnocení s vahou 20%. Všechny písemky bez pomocných materiálů.
Navazující předměty
Informace učitele
http://www.fi.muni.cz/usr/kretinsky/fja1.html
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Nachází se v prerekvizitách jiných předmětů
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2023, jaro 2024, jaro 2025.