Course: Computability and Complexity

» List of faculties » PRF » KMI
Course title Computability and Complexity
Course code KMI/PGSVS
Organizational form of instruction Lecture
Level of course Doctoral
Year of study not specified
Semester Winter and summer
Number of ECTS credits 12
Language of instruction Czech, English
Status of course unspecified
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Jančar Petr, prof. RNDr. CSc.
Course content
The course provides students with knowledge of basic as well as selected advanced topics in computability and complexity. The first part deals with decision problems, languages, and decidability of problems. The second part is devoted to the results of complexity theory. The students are acquainted with selected topics of time and space complexity (classes of languages/problems P, NP, NP-complete, PSPACE, PSPACE-complete) and further advanced topics, e.g., relativization, problems decidable in sublinear space, probabilistic algorithms, etc. 1. Formal models of computation Turing machines, formalized computation, languages recognizable by Turing machines, languages decided by Turing machines, Turing-computable function, Church-Turing thesis. Variants of Turing machines: machine with multiple tapes. Universal Turing machine. Equivalence of various computation models. 2. Languages and problems The relationship between languages and (decision) problems. Partial recursive and recursive languages, decision problems. Diagonalization. Turing-undecidable languages. Turing-unrecognizable language. Selected undecidable problems: acceptance problem, halting problem, Post correspondence problem. Relationship of partial recursive and recursive languages to languages from the Chomski hierarchy. 3. Recursion theorem and further results Rice theorem, recursion theorem, and their applications. Further models of computation: Post machines, non-deterministic Turing machines, probabilistic Turing machines, fuzzy Turing machines. Decidability and undecidability of (logical) theories. 4. Introduction the the complexity theory Asymptotic complexity of algorithms. Big-O, small-o, big-theta notation. Time complexity. Classes P, NP. P-NP problem. Polynomial-time reducibility. Class of NP-complete problems and its importance. Selected NP-complete problems, basic methods to prove NP-completeness, Cook-Levin theorem. Applications of hard problems. 5. Space complexity and further issues Classes PSPACE, NPSPACE, time and space constructibility, Savitch theorem. PSPACE-complete problems. Problems solvable in sublinear space, classes L, NL, and co-NL. Time and space hierarchy theorems. Relativization. Probabilistic algorithms, alternating Turing machines and complexity.

Learning activities and teaching methods
Lecture
Learning outcomes
The students become familiar with basic concepts of computability and complexity.
1. Knowledge Describe and understand comprehensively principles and methods of computability and complexity.
Prerequisites
unspecified

Assessment methods and criteria
Oral exam, Written exam

Active participation in class. Completion of assigned homeworks. Passing the oral (or written) exam.
Recommended literature
  • Gruska J. (1997). Foundations of Computing. International Thompson Computer Press.
  • Hopcroft J. E., Motwani R., Ullman J. D. (2006). Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Boston.
  • Kozen D. C. (1997). Automata and Computability. Springer.
  • Kozen D. C. (1991). The Design And Analysis of Algorithms. Springer.
  • Leeuwen van, J. (1994). Handbook of Theoretical Computer Science, Vol. A: Algorithms. The MIT Press.
  • Lewis H. R., Papadimitriou C. H. (1994). Computational Complexity. Reading (Mass.), Addison Wesley.
  • Sedgewick S., Flajolet P. (1996). Analysis of Algorithms. Addison-Wesley.
  • Sipser M. (1997). Introduction to the Theory of Computation. PWS Publishing Company, Boston, MA.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester