# Complexity Theory

##### Course with SWS 4/2/0 (lecture/exercise/practical) in WS 2023

Lecturer

Tutor

SWS

• 4/2/0

Modules

Examination method

• Oral exam

Matrix channel

Lecture series

## Announcements

• Regarding the oral examinations, please register with your respective examination offices and, afterward, make an appointment with Kati Domann.

## Contents

This course covers the fundamental concepts as well as advanced topics of complexity theory.

Key topics are:

• Turing Machines (revision): Definition of Turing Machines; Variants; Computational Equivalence; Decidability and Recognizability; Enumeration
• Undecidability: Examples of Undecidable Problems; Mapping Reductions; Rice’s Theorem (both for characterizing Decidability and Recognizability); Recursion Theorem; Outlook into Decidability in Logic
• Time Complexity: Measuring Time Complexity; Many-One Reductions; Cook-Levin Theorem; Time Complexity Classes (P, NP, ExpTime); NP-completeness; pseudo-NP-complete problems
• Space Complexity: Space Complexity Classes (PSpace, L, NL); Savitch’s Theorem; PSpace-completeness; NL-completeness; NL = coNL
• Diagonalization: Hierarchy Theorems (det. Time, non-det. Time, Space); Gap Theorem; Ladner’s Theorem; Relativization; Baker-Gill-Solovay Theorem
• Alternation: Alternating Turing Machines; APTime = PSpace; APSpace = ExpTime; Polynomial Hierarchy
• Circuit Complexity: Boolean Circuits; Alternative Proof of Cook-Levin Theorem; Parallel Computation (NC); P-completeness; P/poly; (Karp-Lipton Theorem, Meyer’s Theorem)
• Probabilistic Computation: Randomized Complexity Classes (RP, PP, BPP, ZPP); Sipser-Gács-Lautemann Theorem
• Quantum Computing: Quantum circuits, BQP, some basic results

### Mode of Teaching and Registration

The course generally does not require a special registration and there is no limit for participants. However, students in programmes that use the Selma system (esp. students in CMS Master) will need to register there to obtain credits. Most of the materials will be freely available world-wide.

### Contact

Besides the regular meetings in the lectur(Habs heute auch nochmal in der Übung erwähnt.) ￼ es and exercise classes, you can also contact the teachers and other students in the public discussion channel on Matrix shown on the side.

### Acknowledgements

The slides for some of the foundational lectures of this course are based on slides used by Markus Krötzsch for the course Complexity Theory at the University of Oxford, which were adopted from slides created by Stefan Kreutzer and Ian Horrocks for that course.

Further material has been prepared first by Daniel Borchmann during his time at TU Dresden.

### Schedule and Location

All dates will be published on this page (see Dates & Materials above).

• The weekly lecture sessions will take place on Mondays DS2 (9.20 - 10.50) in REC C118 (Recknagelbau C118, Haeckelstraße 3) and Tuesdays DS2 (9.20 - 10.50) in APB E005.
• The weekly exercise session will take place on Wednesdays DS3 (11.10 - 12.40) in APB E005.
• Important: Stay informed about current covid-19 regulations of TU Dresden.
• Michael Sipser: Introduction to the Theory of Computation, International Edition; 3rd Edition; Cengage Learning 2013
Introductory text that covers all basic topics in this lecture.
Free lecture notes with a general overview of main results; more detailed than Sipser on oracles and alternation; main reference for randomized computation
• John E. Hopcroft and Jeffrey D. Ullman: Introduction to Automata Theory, Languages, and Computation; Addison Wesley Publishing Company 1979
The Cinderella Book; contains a lot of information not contained in most other books; the hierarchy of undecidable problems as well as Rice' characterization of recognizable properties of recognizable languages are from here.