Přednášející:Cvičící:
- doc. Ing. Zdeněk Sawa, Ph.D. (místnost: EA413, e-mail: zdenek.sawa@vsb.cz)
- Ing. Martin Kot, Ph.D. (místnost: EA413, e-mail: martin.kot@vsb.cz)
- 2.11.2026: Byla zveřejněna zadání referátů: referaty.pdf
Poznámka: Podklady k jednotlivým referátům jsou k dispozici v MS Teams v týmu Teoretická informatika 2026/27 v kanálu Obecné pod kartou Sdíleno ve složce Dokumenty / General / Referáty / Podklady.
Detaily ohledně termínů a průběhu prezentací budou zveřejněny později. (Předběžně je plánováno, že tyto prezentace budou probíhat v týdnu od 14. do 18. prosince 2026.)
- 19.10.2026: Zápočtová písemka se bude psát na cvičeních v úterý 10.11.2026 a ve středu 11.11.2026.
Cílem předmětu je seznámit studenty se základy některých oblastí teoretické informatiky, zejména oblasti týkající se algoritmů a výpočetní složiti. Po absolvování předmětu by tak studenti měli získat určitou představu o tom, jakými druhy problémů se teoretická informatika jako obor zaobírá.
Předběžný program přednášek:
- Úvod. Algoritmy a algoritmické problémy. Výpočetní modely (např. stroje RAM, ...). Churchova-Turingova teze.
- Algoritmicky nerozhodnutelné problémy. Riceova věta.
- Výpočetní složitost algoritmů. Asymptotická notace. Analýza složitosti rekurzivních algoritmů.
- Pokročilejší techniky analýzy a návrhu algoritmů: amortizovaná analýza, složitost algoritmů v průměrném případě (pravděpodobnostní analýza).
- Výpočetní složitost problémů. Třídy složitosti. Třídy P a NP. Redukce mezi problémy. NP-úplnost. Některé klasické NP-úplné problémy.
- Další třídy složitosti - PSPACE, EXPTIME, EXPSPACE, LOGSPACE, NLOGSPACE.
- Výpočetní složitost paralelních algoritmů: výpočetní modely pro paralelní algoritmy (PRAM).
- Analýza výpočetní složitosti paralelních algoritmů. Třída NC.
- Distribuované algoritmy: výpočetní modely pro distribuované algoritmy. Komunikační složitost.
- Randomizované algoritmy. Aproximační algoritmy.
Referát
V průběhu semestru budou zveřejněna zadání témat referátů a každému studentovi bude přiděleno jedno z těchto témat.
Pro získání zápočtu je nutné zpracovat referát v písemné formě a prezentovat referát vyučujícímu. Při této prezentaci je třeba prokázat porozumění příslušné problematice. Konkrétní termín prezentace referátů bude stanoven v průběhu semestru.
Za referát je možné získat až 15 bodů. Pro úspěšné zvládnutí referátu je nutné získat minimálně 5 bodů.
Pokud student nezíská při prezentaci referátu minimální počet 5 bodů, bude možné prezentaci ještě jednou opakovat, ovšem již jen za maximálně 10 bodů, přičemž je nutné získat alespoň 1 bod
Zadání referátů pro školní rok 2026/27: referaty.pdf
Poznámka: Podklady k jednotlivým referátům jsou k dispozici v MS Teams v týmu Teoretická informatika 2026/27 v kanálu Obecné pod kartou Sdíleno ve složce Dokumenty / General / Referáty / Podklady.
Písemka
V průběhu semestru se bude psát zápočtová písemka, za kterou bude možno získat až 20 bodů, přičemž minimem nutným pro získání zápočtu je 10 bodů.
Zápočtová písemka se bude psát na některém ze cvičení. Konkrétní datum bude v průběhu semestru ještě upřesněno.
Pro studenty, kteří ze závažných důvodů (např. nemoc) nemohli písemku psát, bude vypsán náhradní termín.
Studenti, kteří ze zápočtové písemky nezískají potřebných 10 bodů, budou mít možnost získat body na zápočet v opravné písemce. Opravná písemka však bude jen za 17 bodů, ze kterých stále bude nutné získat minimálně 10 bodů. (Body na zápočet budou v tom případě počítány podle opravné písemky.)
Celkově je třeba z referátu a zápočtové písemky získat v součtu minimálně 15 bodů.
Za zkoušku bude možné získat až 65 bodů. Zkouška bude probíhat písemnou formou.
Pro absolvolvování zkoušky je nutné získat ze zkouškové písemky minimálně 25 bodů.
Výukový text
- Teoretická informatika (autor: prof. RNDr. Petr Jančar, CSc.) — výukový text pro předmět Teoretická informatika
Slidy z přednášek
Zde se budou v průběhu semestru postupně objevovat slidy z přednášek pro školní rok 2026/2027.
- 1. přednáška
– Úvod. Algoritmy a algoritmické problémy. Výpočetní modely (např. stroje RAM a Turingovy stroje). Churchova-Turingova teze.
Slidy: ti-slides-01.pdf
- 2. přednáška
– Algoritmicky nerozhodnutelné problémy. Částečně rozhodnutelné problémy. Příklady důkazů nerozhodnutelnosti problémů. Riceova věta.
Slidy: ti-slides-02.pdf
- 3. přednáška
– Výpočetní složitost algoritmů. Asymptotická notace. Analýza složitosti rekurzivních algoritmů.
Slidy: ti-slides-03.pdf
- 4. přednáška
– Amortizovaná analýza. Složitost algoritmů v průměrném případě.
Slidy: ti-slides-04.pdf
- 5. přednáška
– Třídy složitosti. Nedeterministické algoritmy.
Slidy: ti-slides-05.pdf
- 6. přednáška
– NP-úplné problémy.
Slidy: ti-slides-06.pdf
- 7. přednáška
– Úplné problémy pro další třídy složitosti. Třída PSPACE. PSPACE-úplné problémy. Hry.
Slidy: ti-slides-07.pdf
Zadání příkladů na cvičení
Zde se budou v průběhu semestru postupně objevovat zadání příkladů na cvičení pro školní rok 2026/2027.
- Cvičení 1: ti-cviceni-01.pdf
- Cvičení 2: ti-cviceni-02.pdf
- Cvičení 3: ti-cviceni-03.pdf
- Cvičení 4: ti-cviceni-04.pdf
- Cvičení 5: ti-cviceni-05.pdf
- Cvičení 6: ti-cviceni-06.pdf
- Cvičení 7: ti-cviceni-07.pdf
Animace
- Animace — animace ilustrující některá témata probíraná v předmětu TI
Tabulka s problémy
- Tabulka s problémy — tabulka s přehledem některých problémů a jejich zařazením do jednotlivých tříd
- Sipser, M.: Introduction to the Theory of Computation, PWS Publishing Company, 1997.
- Kozen, D.: Automata and Computability, Undergraduate Text in Computer Science, Springer-Verlag, 1997.
- Papadimitriou, C.: Computational Complexity, Addison Wesley, 1993.
- Arora, S., Barak, B.: Computational Complexity: A Modern Approach, Cambridge University Press, 2009.
- Hopcroft, J.E., Motwani, R., Ullman, J, D.: Introduction to Automata Theory, Languages, and Computation, (3rd edition), Addison Wesley, 2006.
- Cormen, T. H., Leiserson, R. L., Rivest, R. L., Stein, C.: Introduction to Algorithms, MIT Press, 2001.