Course details

Theoretical Computer Science

TIN Acad. year 2024/2025 Winter semester 7 credits

An overview of the applications of the formal language theory in modern computer science and engineering (compilers, system modelling and analysis, linguistics, etc.), the modelling and decision power of formalisms, regular languages and their properties, minimalization of finite-state automata, context-free languages and their properties, Turing machines, properties of recursively enumerable and recursive languages, computable functions, undecidability, undecidable problems of the formal language theory, and the introduction to logics and complexity theory.

Guarantor

Course coordinator

Language of instruction

Czech

Completion

Credit+Examination (written+oral)

Time span

  • 39 hrs lectures
  • 12 hrs seminar
  • 14 hrs exercises
  • 13 hrs projects

Assessment points

  • 60 pts final exam (written part)
  • 25 pts mid-term test (written part)
  • 15 pts projects

Department

Lecturer

Instructor

Learning objectives

To acquaint students with more advanced parts of the formal language theory, with basics of the theory of computability, and with basic terms of the complexity theory.

 

The students are acquainted with basic as well as more advanced terms, approaches, and results of the theory of automata and formal languages and with basics of the theory of computability and complexity allowing them to better understand the nature of the various ways of describing and implementing computer-aided systems. 
The students acquire basic capabilities for theoretical research activities.

Prerequisite knowledge and skills

Basic knowledge of discrete mathematics concepts including algebra, mathematical logic, graph theory and formal languages concepts, and basic concepts of algorithmic complexity.

Study literature

  • Češka, M. a kol.: Vyčíslitelnost a složitost, Nakl. VUT Brno, 1993. ISBN 80-214-0441-8
  • Češka, M., Rábová, Z.: Gramatiky a jazyky, Nakl. VUT Brno, 1992. ISBN 80-214-0449-3
  • Češka, M., Vojnar, T.: Studijní  text k předmětu Teoretická informatika (http://www.fit.vutbr.cz/study/courses/TIN/public/Texty/TIN-studijni-text.pdf), 165 str. (in Czech)
  • Kozen, D.C.: Automata and Computability, Springer-Verlag, New Yourk, Inc, 1997. ISBN 0-387-94907-0
  • Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation, Addison Wesley, 2nd ed., 2000. ISBN 0-201-44124-1
  • Meduna, A.: Formal Languages and Computation. New York, Taylor & Francis, 2014.
  • Aho, A.V., Ullmann, J.D.: The Theory of Parsing,Translation and Compiling, Prentice-Hall, 1972. ISBN 0-139-14564-8
  • Martin, J.C.: Introduction to Languages and the Theory of Computation, McGraw-Hill, Inc., 3rd ed., 2002. ISBN 0-072-32200-4
  • Brookshear, J.G. : Theory of Computation: Formal Languages, Automata, and Complexity, The Benjamin/Cummings Publishing Company, Inc, Redwood City, California, 1989. ISBN 0-805-30143-7

Fundamental literature

  • Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation, Addison Wesley, 2nd ed., 2000. ISBN 0-201-44124-1
  • Kozen, D.C.: Automata and Computability, Springer-Verlag, New Yourk, Inc, 1997. ISBN 0-387-94907-0
  • Martin, J.C.: Introduction to Languages and the Theory of Computation, McGraw-Hill, Inc., 3rd ed., 2002. ISBN 0-072-32200-4
  • Brookshear, J.G. : Theory of Computation: Formal Languages, Automata, and Complexity, The Benjamin/Cummings Publishing Company, Inc, Redwood City, California, 1989. ISBN 0-805-30143-7
  • Aho, A.V., Ullmann, J.D.: The Theory of Parsing,Translation and Compiling, Prentice-Hall, 1972. ISBN 0-139-14564-8

Study supports

Syllabus of lectures

  1. An introduction to the theory of formal languages, regular languages and grammars, finite  automata, regular expressions.
  2. Minimization of finite-state automata, pumping theorem, Nerod's theorem, decidable problems of regular languages.
  3. Context-free languages and grammars; push-down automata. Advanced properties of context-free languages, pumping theorem for context-free languages, decidable problems of context-free languages.
  4. Turing machines (TMs), the language accepted by a TM, recursively enumerable and recursive languages and problems.TMs and type-0 languages, properties of recursively enumerable and recursive languages, linearly bounded automata and type-1 languages. 
  5. An introduction to the computational complexity, Turing complexity, asymptotic complexity, complexity classes.
  6. Complexity analysis outside TM, amortized complexity, 
  7. Properties of complexity classes (P vs NP), polynomial reduction, problems beyond NP
  8. Regex Matching: from regular expressions, over automata and algorithms to complexity and security.
  9. The Church-Turing thesis, undecidability, the halting problem, reductions, Post's correspondence problem, undecidable problems of the formal language theory, diagonalization. 
  10. Axiomatization systems for predicate and propositional logic.
  11. Gödel's incompleteness theorems.
  12. Consultation.

Syllabus of seminars

  1. Review of discrete mathematics and formal languages.
  2. Regular languages.
  3. Context-free language, Turing machines and decidability
  4. Advanced complexity and polynomial reduction.
  5. Undecidability: use of reduction and diagonalization.
  6. Incompleteness of logical systems.

Syllabus of numerical exercises

  1. Regular languages.
  2. An introduction to context-free languages.
  3. Context-free language, Turing machines and decidability.
  4. Asymptotic and amortized complexity analysis.
  5. Advanced complexity and polynomial reduction.
  6. Undecidability: use of reduction.
  7. Logical systems.

Syllabus - others, projects and individual work of students

  1. Assignment  in the area of regular and contex-free languages.
  2. Assignment  in the area of context-free languages and Turing machines.
  3. Assignment  in the area of undecidability and complexity.

Progress assessment

The evaluation of the course consists of the test in the 4th week (max. 15 points) and the test in the 8th week (max. 15 points), the 2 assignments (max 7 points and 8 points, respectively), and the final exam (max 60 points).

The written test in the 4th week focuses on the regular languages. The written test in the 8th week focuses on context-free languages, and decidability including constructions of Turing machines and basic concepts of computational complexity.

The requirements to obtain the accreditation that is required for the final exam: The minimal total score of 18 points achieved from the assignments and from the tests in the 4th and 8th week (i.e. out of 40 points).

The final exam has 4 parts. Students have to achieve at least 4 points from each part and at least 25 points in total, otherwise the exam is evaluated by 0 points.

 

Schedule

DayTypeWeeksRoomStartEndCapacityLect.grpGroupsInfo
Mon lecture 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 13. of lectures D105 11:0013:50316 1MIT 2MIT NBIO - NSPE xx Češka
Mon lecture 11., 12. of lectures D105 11:0013:50316 1MIT 2MIT NBIO - NSPE xx Holík
Tue exercise 3., 12. of lectures A113 08:0009:5048 1MIT 2MIT xx Rogalewicz
Tue exercise 4., 9. of lectures A113 08:0009:5048 1MIT 2MIT xx Lengál
Tue exercise 7., 11. of lectures A113 08:0009:5048 1MIT 2MIT xx Češka
Tue exercise 2024-10-22 A113 08:0009:5048 1MIT 2MIT xx Kocourek
Tue exercise 3., 12. of lectures D0207 16:0017:5048 1MIT 2MIT xx Rogalewicz
Tue exercise 4., 9. of lectures D0207 16:0017:5048 1MIT 2MIT xx Lengál
Tue exercise 7., 11. of lectures D0207 16:0017:5048 1MIT 2MIT xx Češka
Tue exercise 2024-10-22 D0207 16:0017:5048 1MIT 2MIT xx Kocourek
Wed exercise 3., 12. of lectures G202 13:0014:5048 1MIT 2MIT xx Rogalewicz
Wed exercise 4., 9. of lectures G202 13:0014:5048 1MIT 2MIT xx Lengál
Wed exercise 7., 11. of lectures G202 13:0014:5048 1MIT 2MIT xx Češka
Wed exercise 2024-10-23 G202 13:0014:5048 1MIT 2MIT xx Kocourek
Thu exercise 3., 12. of lectures E104 16:0017:5048 1MIT xx Rogalewicz
Thu exercise 4., 9. of lectures E104 16:0017:5048 1MIT xx Lengál
Thu exercise 7., 11. of lectures E104 16:0017:5048 1MIT xx Češka
Thu exercise 2024-10-24 E104 16:0017:5048 1MIT xx Kocourek
Thu seminar 1., 2. of lectures E104 E105 E112 16:0018:50294 1MIT 2MIT NBIO - NSPE xx Rogalewicz
Thu seminar 2024-10-17 E104 E105 E112 16:0018:50294 1MIT 2MIT NBIO - NSPE xx Kocourek
Thu seminar 2024-11-07 E104 E105 E112 16:0018:50294 1MIT 2MIT NBIO - NSPE xx Lengál
Thu seminar 2024-11-21 E104 E105 E112 16:0018:50294 1MIT 2MIT NBIO - NSPE xx Češka
Thu seminar 2024-12-12 E104 E105 E112 16:0018:50294 1MIT 2MIT NBIO - NSPE xx
Fri exercise 3., 12. of lectures A112 10:0011:5048 1MIT 2MIT xx Rogalewicz
Fri exercise 4., 9. of lectures A112 10:0011:5048 1MIT 2MIT xx Lengál
Fri exercise 7., 11. of lectures A112 10:0011:5048 1MIT 2MIT xx Češka
Fri exercise 2024-10-25 A112 10:0011:5048 1MIT 2MIT xx Kocourek

Course inclusion in study plans

Back to top