Complexity Theory

Aus International Center for Computational Logic
Wechseln zu:Navigation, Suche

Complexity Theory

Lehrveranstaltung mit SWS 4/2/0 (Vorlesung/Übung/Praktikum) in WS 2022

Dozent

Tutor

Umfang (SWS)

  • 4/2/0

Module

Leistungskontrolle

  • Mündliche Prüfung

Matrix-Kanal

Vorlesungsreihe


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 lectures 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).

  • 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.
  • Christos H. Papadimitriou: Computational Complexity; 1995 Addison-Wesley Publishing Company, Inc
Standard reference text for many advanced aspects on complexity theory; the proofs of the Linear Speedup Theorem, the Gap Theorem, and Ladner's Theorem as given in the lecture are from here
  • Sanjeev Arora and Boaz Barak: Computational Complexity: A Modern Approach; Cambridge University Press 2009
Extensive book covering the state of the art of Complexity Theory
  • Michael R. Garey and David S. Johnson: Computers and Intractability; Bell Telephone Laboratories, Inc. 1979
The classical book on Complexity Theory; contains a long list of problems with their complexities

Veranstaltungskalender abonnieren (icalendar)

Vorlesung Introduction DS2, 10. Oktober 2022 in APB E008
Vorlesung Turing Machines and Languages DS2, 11. Oktober 2022 in APB E005
Vorlesung Undecidability DS2, 17. Oktober 2022 in APB E008
Vorlesung Undecidability (continued) DS2, 18. Oktober 2022 in APB E005
Übung Mathematical Foundations, Decidability, and Recognisability DS3, 19. Oktober 2022 in APB E005
Vorlesung Undecidability and Recursion DS2, 24. Oktober 2022 in APB E008
Vorlesung Time Complexity and Polynomial Time DS2, 25. Oktober 2022 in APB E005
Übung Undecidability DS3, 26. Oktober 2022 in APB E005
Entfällt Reformation Day (Public Holiday) DS2, 31. Oktober 2022 in APB E005
Vorlesung Time Complexity and Polynomial Time (continued) DS2, 1. November 2022 in APB E005
Übung Rice's Theorem and PTime DS3, 2. November 2022 in APB E005
Vorlesung NP DS2, 7. November 2022 in APB E008
Vorlesung NP-Completeness DS2, 8. November 2022 in APB E005
Übung NP and NP-Completeness DS3, 9. November 2022 in APB E005
Vorlesung NP-Complete Problems DS2, 14. November 2022 in APB E008
Vorlesung Space Complexity DS2, 15. November 2022 in APB E005
Entfällt Day of Prayer and Repentance (Public Holiday) DS3, 16. November 2022 in APB E005
Vorlesung Polynomial Space DS2, 21. November 2022 in APB E008
Vorlesung Games/Logarithmic Space DS2, 22. November 2022 in APB E005
Übung NP-Completeness and Time Complexity DS3, 23. November 2022 in APB E005
Vorlesung Games/Logarithmic Space (continued) DS2, 28. November 2022 in APB E008
Vorlesung The Time Hierarchy Theorem DS2, 29. November 2022 in APB E005
Übung Space Complexity DS2, 30. November 2022 in APB E005
Vorlesung Space Hierarchy and Gaps DS2, 5. Dezember 2022 in APB E008
Vorlesung P vs. NP: Ladner's Theorem DS3, 6. Dezember 2022 in APB E005
Vorlesung P vs. NP and Diagonalisation DS2, 12. Dezember 2022 in APB E008
Vorlesung P vs. NP and Diagonalisation (continued) DS3, 13. Dezember 2022 in APB E005
Vorlesung Alternation DS2, 19. Dezember 2022 in APB E008
Vorlesung The Polynomial Hierarchy DS2, 20. Dezember 2022 in APB E005
Übung Diagonalisation and Alternation DS3, 4. Januar 2023 in APB E005
Vorlesung The Polynomial Hierarchy / Circuit Complexity DS2, 9. Januar 2023 in APB E008
Vorlesung Circuits for Parallel Computation DS2, 10. Januar 2023 in APB E005
Übung Polynomial Hierarchy DS3, 11. Januar 2023 in APB E005
Übung Alternation DS3, 11. Januar 2023 in APB E005
Vorlesung Probabilistic Turing Machines DS2, 16. Januar 2023 in APB E008
Vorlesung Probabilistic Complexity Classes (1) DS2, 17. Januar 2023 in APB E005
Übung Circuit Complexity DS3, 18. Januar 2023 in APB E005
Vorlesung Probabilistic Complexity Classes (2) DS2, 23. Januar 2023 in APB E008
Vorlesung Quantum Computing (1) DS2, 24. Januar 2023 in APB E005
Übung Probabilistic TMs and Complexity Classes DS3, 25. Januar 2023 in APB E005
Vorlesung Quantum Computing (2) DS2, 30. Januar 2023 in APB E008
Vorlesung Interactive Proof Systems DS2, 31. Januar 2023 in APB E005
Übung Randomised Computation and Quantum Computing DS3, 1. Februar 2023 in APB E005


Kalender