UIBUC15 Computability and Complexity Theory

Faculty of Philosophy and Science in Opava
Winter 2020
Extent and Intensity
2/2/0. 5 credit(s). Type of Completion: zk (examination).
Teacher(s)
doc. Ing. Petr Sosík, Dr. (lecturer)
RNDr. Miroslav Langer, Ph.D. (seminar tutor)
Mgr. Ondřej Mazurek (seminar tutor)
Guaranteed by
doc. Ing. Petr Sosík, Dr.
Institute of Computer Science – Faculty of Philosophy and Science in Opava
Prerequisites
( UIAI019 The Basic of Theoret. Comp. Sc || UIAI219 The Basic of Theoret. Comp. Sc || UIBUC09 Theory of languages and automa || UINK106 Theory of languages and automa || UIN1006 Theory of Languages and Automa ) && TYP_STUDIA(B)
- basics of theory of formal languages and automata
- basic course of calculus and algebra
- elements of propositional logic
- elements of graph theory
- procedural programming and basic algorithms (sorting, searching, graph algorithms)
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
Course objectives
Abstract machine models of computation - the Turing Machine and the RAM - are introduced. The concept of machine computability is built on their basis. The existence of non-computable problems is proven and their examples given. In the second part of the course, asymptotical time and space complexity of algorithms is introduced. This allows to describe the consumption of time and space of algorithms without fixing to any particular computing machine. Elementary complexity classes and their properties are studied, with special emphasis on the classes P and NP.
Syllabus
  • 1. Characterization of mechanical computing, the Turing - Church thesis.
    2. Turing Machine and its variants, universal Turing machine.
    3. Recursive and recursively enumerate sets, the diagonalization method.
    4. Decidable and undecidable problems, the reduction method.
    5. Rice Theorem, practical applications of the computability theory.
    6. Evaluation of time an space complexity of computer algorithms.
    7. Classes DTIME and DSPACE. Non-deterministic Turing machine, classes NTIME and NSPACE.
    8. The RAM machine and its computing power. Relations of the Turing Machine and RAM.
    9. Linear sped-up theorem and tape compression theorem, elementary complexity classes.
    10. Time and space hierarchy.
    11. Relations of time and space complexity classes.
    12. Reducibility and completeness, NP-complete problems.
Literature
    required literature
  • Sosík, P. Teorie vyčíslitelnosti. Online studijní text. Opava: FPF SU, 1996. info
  • Černá, I. Úvod do teórie zložitosti. Brno: FI MU, 1993. info
    recommended literature
  • Hopcroft, J. E., Motwani, R., Ullman, J. D. Introduction to Automata Theory, Languages and Computation. Upper Saddle River: Pearson Education Inc.,, 2003. info
    not specified
  • Sipser, M. Introduction to the Theory of Computation. Boston, 2006. ISBN 978-0-619-21764-2. info
  • Wiedermann, J. Teorie složitosti sekvenčních a paralelních výpočtů. Online studijní text. ÚI AV ČR, Praha, 2003. info
Teaching methods
Lecturing
Interactive lecture
Lecture with a video analysis
Assessment methods
Exam
Language of instruction
Czech
Further comments (probably available only in Czech)
Study Materials
The course can also be completed outside the examination period.
Teacher's information
Course-credit:
- construction of a Turing machine due to an individual assignment
- at least 50% evaluation of written tests in the seminar classes
Exam:
- at least 50% evaluation of the written final test including the whole course topics
The course is also listed under the following terms Winter 2010, Winter 2011, Winter 2012, Winter 2013, Winter 2014, Winter 2015, Winter 2016, Winter 2017, Winter 2018, Winter 2019, Winter 2021.
  • Enrolment Statistics (Winter 2020, recent)
  • Permalink: https://is.slu.cz/course/fpf/winter2020/UIBUC15