IB107 Computability and Complexity

Faculty of Informatics
Autumn 2026
Extent and Intensity
2/1/0. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).
In-person direct teaching
Teacher(s)
prof. RNDr. Jan Strejček, Ph.D. (lecturer)
RNDr. Martin Jonáš, Ph.D. (seminar tutor)
Mgr. Jindřich Sedláček (seminar tutor)
Mgr. Adéla Štěpková (seminar tutor)
Mgr. Paulína Ayaziová (assistant)
Mgr. David Dokoupil (assistant)
Bc. Jakub Horák (assistant)
RNDr. David Klaška, Ph.D. (assistant)
Bc. Matúš Miškuf (assistant)
Bc. Karel Procházka (assistant)
RNDr. Vojtěch Suchánek (assistant)
Mgr. Jakub Šárník (assistant)
Guaranteed by
prof. RNDr. Jan Strejček, Ph.D.
Department of Computer Science – Faculty of Informatics
Supplier department: Department of Computer Science – Faculty of Informatics
Prerequisites (in Czech)
IB005 Formal Languages and Automata
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 36 fields of study the course is directly associated with, display
Abstract
The course introduces basic approaches and methods for classification of problems with respect to their algorithmic solvability. It explores theoretical and practical limits of the use of computers and the implications that these limitations have for the development of information technology.
At the end of the course, the students will be able: to understand basic notions of computability and complexity; to understand the main techniques used to classify problems (reductions, diagonalisation, closure properties), and to apply them in some simple cases.
Learning outcomes
After completing the course, the student will be able to:
  • use asymptotic notation, both actively and passively;
  • explain the difference between the complexity of an algorithm and the complexity of a problem;
  • independently classify a specific problem into a particular complexity class;
  • derive practical consequences from classifying a problem into a specific complexity class;
  • explain that some problems are uncomputable, give examples of such problems;
  • explain the difference between various classes of uncomputable problems;
Key topics
  • Algorithms and models of computation. Church's thesis.
  • Classification of problems. Decidable, undecidable, and partially decidable problems. Computable functions.
  • Closure properties. Rice theorems.
  • Computational complexity. Feasible and unfeasible problems.
  • Reduction and completeness in problem classes. Many-one reduction and polynomial reduction. Complete problems with respect to decidability, NP-complete problems. Applications.
Study resources and literature
  • KOZEN, Dexter C. Automata and computability. New York: Springer, 1997, xiii, 400. ISBN 0387949070. info
  • KFOURY, A. J.; Robert N. MOLL and Michael A. ARBIB. A programming approach to computability. New York: Springer-Verlag, 1982, viii, 251. ISBN 0-387-90743-2. info
  • BOVET, D. and Pierluigi CRESCENZI. Introduction to the theory of complexity. New York: Prentice-Hall, 1994, xi, 282 s. ISBN 0-13-915380-2. info
  • SIPSER, Michael. Introduction to the theory of computation. Boston: PWS Publishing Company, 1997, xv, 396 s. ISBN 0-534-94728-X. info
Approaches, practices, and methods used in teaching
lectures, exercise sessions, homework
Method of verifying learning outcomes and course completion requirements
The course consists of lectures and exercise sessions. During the term students are assigned homework. The course concludes with a written open-book exam. Students can attend the final exam, provided they have earned a given number of points on homework.
Language of instruction
Czech
Follow-Up Courses
Further Comments
The course is taught annually.
The course is taught every week.
Listed among pre-requisites of other courses
The course is also listed under the following terms Autumn 2003, Autumn 2004, Autumn 2005, Autumn 2006, Autumn 2007, Autumn 2008, Autumn 2009, Autumn 2010, Autumn 2011, Autumn 2012, Autumn 2013, Autumn 2014, Autumn 2015, Autumn 2016, Autumn 2017, Autumn 2018, Autumn 2019, Autumn 2020, Autumn 2021, Autumn 2022, Autumn 2023, Autumn 2024, Autumn 2025.
  • Enrolment Statistics (recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2026/IB107