User:Daverobe/MAX-3SAT

Overview
MAX-3SAT is a language in the Computational Complexity subfield of Computer Science. It is a special case of the Boolean satisfiability problem (SAT) which is a decision problem considered in complexity theory. Informally it can be defined as:

Given a 3-CNF formula &Phi; (i.e. with at most 3 variables per clause), Find an assignment that satisfies the largest number of clauses.

Approximability
An exact solution of MAX-3SAT is NP-hard. Therefore, a polynomial-time solution can only be achieved if P=NP. An approximation within a factor of 2 can be achieved with this simple algorithm, however:


 * Output the solution in which most clauses are satisfied, when either all variables = TRUE or all variables = FALSE.
 * Every clause is satisfied by one of the two solutions, therefore one solution satisfies at least half of the clauses.

The Karloff-Zwick algorithm runs in polynomial-time and satisfies &ge; 7/8 of the clauses.

Theorem 1 (Inapproximability)
The PCP Theorem implies that there exists an &epsilon; > 0 such that (1-&epsilon;)-approximation of MAX-3SAT is NP-hard.

Proof:

Any NP-complete problem L &isin; PCP(O(log (n)), O(1)) by the PCP Theorem. For x &isin; L, a 3-CNF formula &Psi;x is constructed so that


 * x &isin; L &rArr; &Psi;x is satisfiable
 * x &notin; L &rArr; no more than (1-&epsilon;)m clauses of &Psi;x are satisfiable.

The Verifier V reads all required bits at once i.e. makes non-adaptive queries. This is valid because the number of queries remains constant.


 * Let q be the number of queries.
 * Enumerating all random strings Ri &isin; V, we obtain poly(x) strings since the length of each string r(x) = O(log |x|).
 * For each Ri
 * V chooses q positions i1,...,iq and a Boolean function fR: {0,1}q and accepts iff fR(&pi;(i1,...,iq)). Here &pi; refers to the proof obtained from the Oracle.

Next we try to find a Boolean formula to simulate this. We introduce Boolean variables x1,...,xl, where l is the length of the proof. To demonstrate that the Verifier runs in Probabilistic polynomial-time, we need a correspondance between the number of satisfiable clauses and the probability the Verifier accepts.


 * For every R, add clauses representing fR(xi1,...,xiq) using 2q SAT clauses. Clauses of length q are converted to length 3 by adding new (auxiliary) variables e.g. x2 &or; x10 &or; x11 &or; x12 = ( x2 &or; x10 &or; yR) &and; ( $$\bar{y_R}$$ &or; x11 &or; x12).  This requires a maximum of q2q 3-SAT clauses.
 * If z &isin; L then
 * there is a proof &pi; such that V&pi; (z) accepts for every Ri.
 * All clauses are satisfied if xi = &pi;(i) and the auxiliary variables are added correctly.
 * If input z &notin; L then
 * For every assignment to x1,...,xl and yR's, the corresponding proof &pi;(i) = xi causes the Verifier to reject for half of all R &isin; {0,1}r(.
 * For each R, one clause representing fR fails.
 * Therefore a fraction $$\frac{1}{2} \frac{1}{q^{2^q}}$$ of clauses fails.

It can be concluded that if this holds for every NP-complete problem then the PCP Theorem must be true.

Related problems
MAX-3SAT(13) is a restricted version of MAX-3SAT where every variable occurs in at most 13 clauses.

Theorem 2
H&aring;stad demonstrates a tighter result than Theorem 1 i.e. the best known value for &epsilon;.

He constructs a PCP Verifier for 3-SAT that reads only 3 bits from the Proof.

''For every &epsilon; > 0, there is a PCP-verifier M for 3-SAT that reads a random string r of length O(log(n)) and computes query positions ir, jr, kr in the proof &pi; and a bit br. It accepts iff''

&pi;(ir) &oplus; &pi;(jr) &oplus; &pi;(kr) &oplus; = br.

The Verifier has completeness (1-&epsilon;) and soundness 1/2 + &epsilon; (refer to PCP (complexity)). The Verifier satisfies

$$z \in L \implies \exists \pi Pr[V^{\pi} (x) = 1] \ge 1 - \epsilon$$ $$z \not \in L \implies \forall \pi Pr[V^{\pi} (x) = 1] \le \frac{1}{2} + \epsilon$$

If the first of these two equations were equated to "=1" as usual, one could find a proof &pi; by solving a system of linear equations (see MAX-3LIN-EQN) implying P=NP.


 * If z &isin; L, a fraction &ge; (1- &epsilon;) of clauses are satisfied.
 * If z &notin; L, then for a (1/2- &epsilon;) fraction of R, 1/4 clauses are contradicted.

This is enough to prove the hardness of approximation ratio

$$\frac{1-\frac{1}{4}(\frac{1}{2}-\epsilon)}{1-\epsilon} = \frac{7}{8} + \epsilon'$$