

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A part of the lecture notes for cs221: computational complexity, covering professor salil vadhan's lecture on hastad's optimal pcp and its applications to the hardness of approximation. The lecture discusses the pcp theorem, its connection to the hardness of approximating optimization problems, and hastad's theorem, which optimizes the pcp theorem's parameters. The document also includes several corollaries and applications of these theorems.
Typology: Study notes
1 / 3
This page cannot be seen from the preview
Don't miss anything!


CS221: Computational Complexity Prof. Salil Vadhan
12/13 Scribe: Vitaly Feldman
1 Announcements 1
2 PCP and Hardness of Approximation 1
3 Applications of the PCP Theorem for Proving Hardness of Approximation 2
Today we will show several connections of the PCP theorem to the hardness of approximating optimization problems (Recap: the PCP theorem states that PCP[log n, O(1)] = NP). In the last lecture we have shown the first such connection, namely the following theorem
Theorem 1 The PCP theorem is true if and only if there exists an “amplifying” reduction R mapping 3-CNF formulas to 3-CNF formulas and an ≤ > 0 such that
Another way to view the above R is as a reduction from 3SAT to a certain promise problem. The promise problem is GapMax3SAT≤ and is defined by specifying the “yes” instances
Y = {φ | φ is satisfiable}
and the “no” instances
N = {φ | every assignment satisfies at most (1 − ≤) fraction of φ’s clauses}.
A promise problem is a decision problem in which two disjoint sets Y and N are defined and “it is promised” that the input will come from one of these sets. (It is required to decide from which set the input comes). This definition differs from the standard language decision problem since there might exist instances which are not included in Y ∪ N and any answer can be given for those instances. Promise problems are often useful for capturing the approximation problems as decision problems (as in our case). With this definition, it is clear that Theorem 1 is equivalent to stating that GapMax3SAT≤ is NP-complete (for some ≤ > 0) if and only if the PCP theorem is true.
Proof of Theorem 1: We have seen the first direction in the previous lecture. For the other direction we assume that R is a reduction with the above properties. With such a reduction a PCP proof for satisfiable φ is the assignment that satisfies R(φ). The verifier will use O(log n) random bits to choose a random clause of R(φ). It will then read the values assigned to the 3 variables of this clause and accept if and only if the clause is satisfied. Clearly, this verification procedure is complete, so we argue soundness. If φ is not satisfiable then, by the 3-rd property of R, the probability that the verifier will accept is at most 1 − ≤.
Note that the PCP we construct above has query complexity 3 (rather than an arbitrary constant). Thus:
Corollary 2 Assuming the PCP theorem, NP = PCP 1 , 1 −≤[log n, 3] for some ≤ > 0
Proof: Follows from the fact that the existence of the “amplifying” reduction can be proved using O(1)-bit version of the PCP theorem and implies the 3-bit version.
Corollary 3 If the PCP theorem is correct then there exists an ≤ such that it is NP-hard to approximate Max3SAT to within 1 + ≤.
Proof: If we can efficiently approximate Max3SAT to within (^1) −^1 ≤ = 1+≤′^ then we can distinguish between “yes” and “no” instances (in polynomial time).
With this strong connection between the approximation factor and ≤ in the PCP theorem it is important to optimize this ≤.^1 Therefore a lot of work during the last decade was devoted to improving the parameters in the PCP theorem. One of the culminations of this work is the following theorem:
Theorem 4 (H˚astad) For every constant ≤, PCP 1 −≤, 12 +≤[log n, 3] = NP and if for the verifier’s coin tosses r the generated positions are i 1 , i,i 3 then the verifier accepts if and only if πi 1 ⊕πi 2 ⊕πi 3 = b(r) for some Boolean function b.
The most direct application of Theorem 4 is the hardness of approximating E3LIN2. (^1) Unfortunately in our construction (in the proof of the first direction) ≤ goes to zero exponentially with the number of queries we allow to the verifier and linearly in the soundness parameter.