Complexity Theory
Aus International Center for Computational Logic
Complexity Theory
Lehrveranstaltung mit SWS 4/2/0 (Vorlesung/Übung/Praktikum) in WS 2017
Dozent
Tutor
Umfang (SWS)
- 4/2/0
Module
Leistungskontrolle
- Mündliche Prüfung
Vorlesungsreihe
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
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 are published on this page (see Dates & Materials above)
- The weekly lecture sessions will take place on Tuesdays DS3 (11:10 to 12:40), and Wednesdays DS6 (16:40 to 18:10).
- The weekly exercise session will take place on Tuesdays DS5 (14:50 to 16:20).
- The first exercise will take place in the second week, i.e., on 17 Oct 2017
- All sessions will take place in room APB/E005.
- Important: There will be no lectures or exercises in the third week (24th and 25th Oct 2017)
- 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.
- Erich Grädel: Complexity Theory; Lecture Notes, Winter Term 2009/10. Available online at https://logic.rwth-aachen.de/Teaching/KTQC-WS09/index.html.en
- Free lecture notes with 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 | DS3, 10. Oktober 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Turing Machines and Languages | DS6, 11. Oktober 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Undecidability | DS3, 17. Oktober 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Mathematical Foundations, Decidability, and Recognisability | DS5, 17. Oktober 2017 in APB E005 | Datei |
Vorlesung | Undecidability and Recursion | DS6, 18. Oktober 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Time Complexity and Polynomial Time | DS6, 1. November 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | NP | DS3, 7. November 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Undecidability and Rice's Theorem | DS5, 7. November 2017 in APB E005 | Datei |
Vorlesung | NP-Completeness | DS6, 8. November 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | NP-Complete Problems | DS3, 14. November 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Time Complexity, PTime, and NP | DS5, 14. November 2017 in APB E005 | Datei |
Vorlesung | Space Complexity | DS6, 15. November 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Polynomial Space | DS3, 21. November 2017 in APB E005 | Datei 1, Datei 2 |
Übung | NP-Completeness and Time Complexity | DS5, 21. November 2017 in APB E005 | Datei |
Vorlesung | Games/Logarithmic Space | DS3, 28. November 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Space Complexity | DS5, 28. November 2017 in APB E005 | Datei |
Vorlesung | The Time Hierarchy Theorem | DS6, 29. November 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Space Hierarchy and Gaps | DS3, 5. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Log-space Complexity and Diagonalization | DS5, 5. Dezember 2017 in APB E005 | Datei |
Vorlesung | P vs. NP: Ladner's Theorem | DS6, 6. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | P vs. NP and Diagonalisation | DS3, 12. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Diagonalisation | DS5, 12. Dezember 2017 in APB E005 | Datei |
Vorlesung | Alternation | DS6, 13. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | The Polynomial Hierarchy | DS3, 19. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Übung | Diagonalisation and Alternation | DS5, 19. Dezember 2017 in APB E005 | Datei |
Vorlesung | Questions and Answers | DS6, 20. Dezember 2017 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Circuit Complexity | DS3, 9. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Übung | Alternation and the Polynomial Hierarchy | DS5, 9. Januar 2018 in APB E005 | Datei |
Vorlesung | Circuits for Parallel Computation | DS6, 10. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Probabilistic Turing Machines | DS3, 16. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Übung | Circuit Complexity | DS5, 16. Januar 2018 in APB E005 | Datei |
Vorlesung | Probabilistic Complexity Classes (1) | DS6, 17. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Probabilistic Complexity Classes (2) | DS3, 23. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Übung | Probabilistic TMs and ComplexityClasses | DS5, 23. Januar 2018 in APB E005 | Datei |
Vorlesung | Quantum Computing (1) | DS6, 24. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Vorlesung | Quantum Computing (2) | DS3, 30. Januar 2018 in APB E005 | Datei 1, Datei 2 |
Übung | Probabilistic Complexity Classes (3) | DS5, 30. Januar 2018 in APB E005 | Datei |
Vorlesung | Summary, Outlook, Consultation | DS6, 31. Januar 2018 in APB E005 |
Kalender