This is a basic course on the theory of algorithms, computability and computational complexity. Roughly the first
half of the course is devoted to the introduction to computability theory: Turing machines. Computable functions.
Recursive and recursively enumerable languages and sets. Undecidable problems. The second half of the
course is devoted to the study of space and time complexity classes: Equivalence of PSPACE and NPSPACE.
Deterministic hierarchy theorems. Class NP. Polynomial reducibility among problems. Proofs of NP-
completeness. Approximation algorithms and approximation schemes.
Last update: T_KTI (28.04.2015)
Přednáška seznamující se základy teorie algoritmů, efektivní vyčíslitelnosti a teorie složitosti. První část přednášky
je věnována základům vyčíslitelnosti: Turingovy stroje. RAM. Rekurzivní a rekurzivně spočetné jazyky a množiny.
Algoritmicky nerozhodnutelné problémy. Druhá část přednášky je věnována studiu tříd časové a prostorové
složitosti: Ekvivalence PSPACE a NPSPACE. Věty o hierarchiích. Třída NP. Polynomiální převoditelnost problémů.
Důkazy NP-úplnosti. Aproximační algoritmy a schémata.
Aim of the course -
Last update: RNDr. Petr Kučera, Ph.D. (04.09.2014)
To teach basics of complexity theory and theory of computation.
Last update: T_KTI (23.05.2008)
Naučit základy teorie složitosti a vyčíslitelnosti.
Literature -
Last update: doc. RNDr. Pavel Töpfer, CSc. (25.05.2022)