Main content

CS 460 — Theoretical Computer Science
(dt. Theoretische Informatik)

Level, degree of commitment Advanced module, required module
Forms of teaching and learning,
Lecture (4 SWS), recitation class (2 SWS),
270 hours (90 h attendance, 180 h private study)
Credit points,
formal requirements
9 CP
Course requirement(s): Successful completion of at least 50 percent of the points from the weekly exercises as well as at least 2 presentations of the tasks.
Examination type: Written examination
The grading is done with 0 to 15 points according to the examination regulations for the degree program B.Sc. Computer Science.
One semester,
each winter semester
Person in charge of the module's outline Prof. Dr. Christian Komusiewicz


  • Automata theory and formal languages: grammars and the Chomsky hierarchy, finite automata and regular expressions, context-free grammars and push-down automata, closure properties of formal languages, decidability questions
  • Computability: models of computability: Turing, Loop and While-computability, primitive recursion and μ-recursion, Church-Turing thesis; decidability, enumerability, undecidable problems
  • Complexity theory: complexity measures; P and NP; reductions and NP-complete problems

Qualification Goals


  • can deal with regular expressions, finite automata and grammars,
  • know their possibilities and limitations,
  • understand formal models of computation,
  • know basic limits of algorithmic computation,
  • know limits of efficient problem solving,
  • are able to follow scientific working methods (recognizing, formulating, solving problems, training the ability of abstraction),
  • are able to speak freely about scientific content, both in front of an audience and in a discussion.


None. The competences taught in the following modules are recommended: Basic Linear Algebra, Basic Real Analysis.


The module can be attended at FB12 in study program(s)

  • B.Sc. Data Science
  • B.Sc. Computer Science
  • M.Sc. Data Science
  • M.Sc. Mathematics
  • M.Sc. Business Informatics

When studying B.Sc. Computer Science, this module must be completed in the study area Continuing Modules in Computer Science.

The module can also be used in other study programs (export module).

Recommended Reading

  • E. Hopcroft, R. Motwani, J.D. Ullman: Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie, Pearson Studium, 2002.
  • U. Schöning: Theoretische Informatik – kurzgefasst, Spektrum 2008.
  • G. Vossen, K.-U. Witt: Grundkurs der Theoretischen Informatik, Vieweg 2011.
  • D.W. Hoffmann: Theoretische Informatik, Hanser Verlag 2009.
  • H.P.Gumm, M.Sommer: Einführung in die Informatik, Kapitel 9, Oldenbourg 2009.

Please note:

This page describes a module according to the latest valid module guide in Winter semester 2023/24. Most rules valid for a module are not covered by the examination regulations and can therefore be updated on a semesterly basis. The following versions are available in the online module guide:

The module guide contains all modules, independent of the current event offer. Please compare the current course catalogue in Marvin.

The information in this online module guide was created automatically. Legally binding is only the information in the examination regulations (Prüfungsordnung). If you notice any discrepancies or errors, we would be grateful for any advice.