Theory of Computation 2021
Tuesdays 14:40–17:40, ruz
Lectures: 14:40 zoomlink
Seminars: 16:20 zoomlink
Dates and Deadlines
Please send your homework by e-mail to both lecturers.
Homework 1 (problem sets 1–4), deadline: October 5, 14:00; the deadline for the extra problems is
November 2 November 8, 14:00
Homework 2 (problem sets 5–7), deadline:
November 2 November 8, 14:00
Homework 3, deadline:
December 7 December 14, 14:00
Some homework assignments contain extra problems. Let us call all other problems regular. The weight of each problem (whether regular or extra) in the overall homework grade is 8/n, where n is the total number of regular problems in all homework assignments. Partial credit is possible for some problems.
If you score at least 8 and solve some extra problems that do not contribute to this score, we will evaluate each of these extra problems on the scale [0, 1] and will add two maximal scores to your homework grade.
December 20, 9:30–12:30, Zoom
The exam consists of 8 questions of the same level as the homework.
You may use all notes, books, and other reference materials. However, the solutions you submit must, of course, be your own. You are not allowed to communicate with other students and to use social network sites like Telegram, Facebook, etc. You may not use your phone except in the end of the exam to submit your work.
You must submit your answers in handwriting (exceptions can be asked at the beginning of the exam) by sending scanned or photographed copies to both lecturers.
We plan to publish the grades on December 21. If you have questions, you can ask them at 13:00 on December 21 via Zoom.
Recording of the consultation (with solutions of problems 11.7, 7.7 and 12.7)
Here is the exam.
The main reference is Sipser's book "Introduction to the theory of computation", chapters 3, 7–10.
|07.09||Turing machines, multitape Turing machines, connection between them. Universal Turing machine. Examples (one, two). Time and space complexity. Complexity classes P, PSPACE, EXP.||Problem set 1|
|14.09||Time and space hierarchy theorems. Time and space constructible functions.||Problem set 2|
|21.09||Complexity class NP. Examples. Polynomial reductions. NP-hardness and NP-completeness.||Problem set 3|
|28.09||Non-deterministic TMs. Another definition of NP. Proving NP-hardness by reduction from an NP-complete problem. Examples of NP-complete problems.||Problem set 4|
|05.10||Inclusions between P, NP, and PSPACE. Circuit complexity. Examples. All functions are computed by circuits. Existence of functions with exponential circuit complexity. P is in P/poly.||Problem set 5|
|12.10||P is a subset of P/poly, Cook–Levin theorem, NP-completeness of: subsetsum, set-splitting, 3-colorability and exactly 1-in-3 SAT.||Problem set 6|
|26.10||Space complexity. Classes L, NL, PSPACE and NPSPACE. Directed Reachability is in SPACE(log^2 n). Configuration graph. Inclusions between time and space classes. TQBF problem, its PSPACE-completeness. PSPACE = NPSPACE. NSPACE(s(n)) is in SPACE(s(n)^2) for space constructible s.||Problem set 7|
|02.11||PSPACE completeness of generalized geography. Oracle computation definitions. There exists an oracle A for which PA = NPA. There is an oracle B such that PB is not equal to NPB.||Problem set 8|
|09.11||Probabilistic computation. Probabilistic machines, the class BPP, invariance of the definition BPP for different thresholds, RP, coRP, PP, ZPP. BPP is in P/poly. Most of it is also here||Problem set 9|
|16.11||Streaming algorithms: finding the majority element, computation of the number of different elements in logarithmic space. See Chapts 6.1-6.2 in foundations of datascience by Avrim Blum and others. Another nice chapter in Tim Roughgarden's lecture notes||Problem set 10|
|23.11||Finding the frequent items in streams of data: SpaceSaving and Count-Min Sketch. Slides||Problem set 11|
|30.11||Approximation algorithms. Approximate solutions for Vertex Cover, Weighted Vertex Cover, and TSP. Slides. Seminar.||Problem set 12|
|14.12||Complexity of clustering: an exact algorithm for maximizing the inter-cluster distance and an approximate algorithm for minimizing the intra-class distance.||Sample exam|
For interested students, there are 3 lectures in parameterized complexity.
14 Sept: Fixed parameter tracktability and examples, presentation.
21 Sept: Topics from chapters 1 and 2 in "Parameterized algorithms" by Cygan, Fomin and others, 2016.
28 Sept: The W-hierarchy, chapter 13 in the same book.
|Bruno Bauwens, S834, Zoom||14:00-20:00|
|Sergei Obiedkov, T915, Zoom||16:30–18:00||16:30–18:00|