Vyčíslitelnost a složitost¶
Hlavním cílem kurzu je proniknout k principům fungování našeho světa z pohledu teoretické informatiky. Nejdůležitější částí kurzu jsou tak přednášky, ve kterých se dozvíte, jak to s tím světem teda je. Abyste si mohli přednášky užít naplno, je potřeba získané znalosti procvičovat, a to jak samostatně doma, tak na společných cvičeních. Procvičování přispívá i k naplňování několika vedlejších cílů, jako je osvojení si metod z teorie vyčíslitelnosti a složitosti, pochopení, jak lze tyto principy a metody sem tam prakticky využít, i pokud nejste teoretický informatik, trénink logického uvažování, formulování svých myšlenek a vytváření důkazů, které je radost číst a v neposlední řadě příjemně strávený čas ve flow při řešení zajímavých úloh společně se spolužáky.
Procvičování¶
Na každý týden bude připraveno zadání pro domácí procvičování. Průběh a výsledky procvičovaní zapište do reportu a odevzdejte do odevzdávárny. Podrobnější instrukce.
Týden | Odevzdání |
---|---|
Týden 1 | ne 25.09. |
Týden 2 | ne 02.10. |
Týden 3 | ne 09.10. |
Týden 4 | ne 16.10. |
Týden 5 | ne 23.10. |
Týden 6 | ne 30.10. |
Týden 7 | ne 06.11. |
Týden 8 | ne 13.11. |
Týden 9 | ne 20.11. |
Týden 10 | ne 27.11. |
Týden 11 | ne 04.12. |
Týden 12 | ne 11.12. |
Týden 13 | ne 18.12. |
Zdroje¶
- Stránka předmětu (osnova, hodnocení, knížky, studijní materiály)
- Sbírka úloh
- Computability, Complexity & Algorithms (online kurz)
- Introduction to the Theory of Computation (videa na YT)
Python¶
Ilustrace abstraktních konceptů z teorie vyčíslitelnosti a složitosti na příkladech z konkrétního programovacího jazyka.