Course detail

Complexity

FIT-SLOAcad. year: 2014/2015

This course covers the following themes: Matematical models of computation ( skeleton language, RAM, RASP models and their connection with Turing machines), time complexity, complexity classes, P and NP, NP-completness, important NP-complete problems, satisfability problem and its variants, other NP-problems, NP and co-NP languages, space complexity, PS and NPS languages, PS-complete languages, language classes based on randomization, applications of computational complexity theory - cryptography and one-way functions.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

Understanding theoretical and practical limits of arbitrary computational systems.

Prerequisites

There are no prerequisites

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Not applicable.

Assesment methods and criteria linked to learning outcomes

Study evaluation is based on marks obtained for specified items. Minimimum number of marks to pass is 50.

The minimal total score of 15 points gained out of the projects.

Course curriculum

    Syllabus of lectures:
    • Introduction. Complexity, time and space complexity.
    • Matematical models of computation. Skeleton language.
    • RAM, RASP machines and their relation with Turing machines.
    • Nondeterminism. Oracle machines. Reducibility.
    • P and NP. Examples: Kruskal, Traveling Salesman.
    • NP-completness. NP-complete problems.
    • Satisfability problem and its variants.
    • Other NP-problems.
    • NP and co-NP languages.
    • Space complexity, PS and NPS languages.
    • PS-complete languages.
    • Language classes based on randomization - classes RP and ZPP.
    • Applications: Cryptography and one-way functions.

    Syllabus - others, projects and individual work of students:
    • Project on Mathematical models of computation.
    • Project on Complexity.

Work placements

Not applicable.

Aims

To learn mathematical models of computation and complexity theory.

Specification of controlled education, way of implementation and compensation for absences

  • Projects: max. 32 points
  • Final exam: max. 68 points


Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Gruska, J.: Foundations of Computing, International Thomson Computer Press, 1997, ISBN 1-85032-243-0 Bovet, D.P., Crescenzi, P.: Introduction to the Theory of Complexity, Prentice Hall International Series in Computer Science, 1994, ISBN 0-13915-380-2 Hopcroft, J.E. et al: Introduction to Automata Theory, Languages, and Computation, Addison Wesley, 2001, ISBN 0-201-44124-1

Recommended reading

Gruska, J.: Foundations of Computing, International Thomson Computer Press, 1997, ISBN 1-85032-243-0 Bovet, D.P., Crescenzi, P.: Introduction to the Theory of Complexity, Prentice Hall International Series in Computer Science, 1994, ISBN 0-13915-380-2 Hopcroft, J.E. et al: Introduction to Automata Theory, Languages, and Computation, Addison Wesley, 2001, ISBN 0-201-44124-1 Goldreich, O.: Computational Complexity: A Conceptual Perspective, Cambridge University Press, 2008, ISBN 0-521-88473-X Kozen, D.C.: Theory of Computation, Springer, 2006, ISBN 1-846-28297-7

Classification of course in study plans

  • Programme IT-MSC-2 Master's

    branch MBI , 0 year of study, summer semester, elective
    branch MBS , 0 year of study, summer semester, elective
    branch MIN , 0 year of study, summer semester, compulsory-optional
    branch MIS , 1 year of study, summer semester, elective
    branch MMI , 0 year of study, summer semester, elective
    branch MMM , 0 year of study, summer semester, compulsory-optional
    branch MPV , 0 year of study, summer semester, elective
    branch MSK , 0 year of study, summer semester, elective
    branch MGM , 0 year of study, summer semester, elective