UIN1048 Computability and Complexity

Faculty of Philosophy and Science in Opava
Winter 2022
Extent and Intensity
2/2/0. 6 credit(s). Type of Completion: zk (examination).
Teacher(s)
doc. Ing. Petr Sosík, Dr. (lecturer)
doc. Ing. Petr Sosík, Dr. (seminar tutor)
Guaranteed by
doc. Ing. Petr Sosík, Dr.
Institute of Computer Science – Faculty of Philosophy and Science in Opava
Timetable
Wed 10:35–12:10 B2
  • Timetable of Seminar Groups:
UIN1048/A: Wed 13:55–15:30 B3b, P. Sosík
Prerequisites
( UIAI019 Fundamentals of TCS II || UIAI219 Fundamentals of TCS II || UIBUC09 Theory of languages and automa || UINK106 TLA II || UIN1006 TLA II ) && 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.
Learning outcomes
Students will be able to distinguish computer-computable and non-computable problems in practice. They will be able to determine at least basically the computational complexity of a given problem and adapt the way of its algorithmic solution.
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 2017, Winter 2018, Winter 2019, Winter 2020, Winter 2021, Winter 2023.
  • Enrolment Statistics (Winter 2022, recent)
  • Permalink: https://is.slu.cz/course/fpf/winter2022/UIN1048