Krein–Milman theorem: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Moritz37
m adding Russian ref title, formatting
No edit summary
Line 1: Line 1:
'''MAX-3SAT''' is a problem in the [[computational complexity]] subfield of [[computer science]].  It generalises the [[Boolean satisfiability problem]] (SAT) which is a [[decision problem]] considered in [[computational complexity theory|complexity theory]].  It is defined as:
Greetings. Allow me begin by telling you the writer's name - Phebe. What I love doing is to gather badges but I've been taking on new issues recently. Since she was 18 she's been operating as a receptionist but her marketing by no means comes. My family life in Minnesota and my family enjoys it.<br><br>Here is my page - [http://www.buzzbit.net/blog/333162 at home std testing]
 
''Given a [[3-CNF]] formula Φ (i.e. with at most 3 variables per clause), find an assignment that satisfies the largest number of clauses.''
 
'''MAX-3SAT''' is a canonical [[complete (complexity)|complete]] problem for the complexity class [[MAXSNP]] (shown complete in Papadimitriou pg. 314).
 
== Approximability ==
 
The decision version of '''MAX-3SAT''' is [[NP-complete]].  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 ≥ 7/8 of the clauses.
 
== Theorem 1 (inapproximability) ==
 
The [[PCP theorem]] implies that there exists an ε > 0 such that (1-ε)-approximation of '''MAX-3SAT''' is [[NP-hard]].
 
Proof:
 
Any [[NP-complete]] problem ''L'' ∈ ''PCP(O(log (n)), O(1))'' by the [[PCP theorem]]. For x ∈ ''L'', a [[3-CNF]] formula Ψ<sub>x</sub> is constructed so that
 
* ''x'' ∈ ''L'' ⇒ Ψ<sub>x</sub> is satisfiable
* ''x'' ∉ ''L'' ⇒ no more than (1-ε)m clauses of Ψ<sub>x</sub> 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 ''R''<sub>i</sub> ∈ ''V'', we obtain ''poly(x)'' strings since the length of each string ''r(x) = O(log |x|)''.
* For each ''R''<sub>i</sub>
** ''V'' chooses ''q'' positions ''i''<sub>1</sub>,...,''i''<sub>q</sub> and a Boolean function ''f''<sub>R</sub>: {0,1}<sup>q</sup>->{0,1} and accepts if and only if ''f''<sub>R</sub>(π(i<sub>1</sub>,...,i<sub>q</sub>)).  Here π refers to the proof obtained from the Oracle.
 
Next we try to find a [[Boolean logic|Boolean]] formula to simulate this.  We introduce Boolean variables ''x''<sub>1</sub>,...,''x''<sub>l</sub>, where ''l'' is the length of the proof.  To demonstrate that the Verifier runs in [[Probabilistic]] [[polynomial-time]], we need a correspondence between the number of satisfiable clauses and the probability the Verifier accepts.
 
* For every ''R'', add clauses representing ''f''<sub>R</sub>(''x''<sub>i1</sub>,...,''x''<sub>iq</sub>) using 2<sup>q</sup> [[SAT]] clauses.  Clauses of length ''q'' are converted to length 3 by adding new (auxiliary) variables e.g. ''x''<sub>2</sub> ∨ ''x''<sub>10</sub> ∨ ''x''<sub>11</sub> ∨ ''x''<sub>12</sub> = ( ''x''<sub>2</sub> ∨ ''x''<sub>10</sub> ∨ ''y''<sub>R</sub>) ∧ ( <math>\bar{y_R}</math> ∨ ''x''<sub>11</sub> ∨ ''x''<sub>12</sub>).  This requires a maximum of ''q''2<sup>q</sup> [[3-SAT]] clauses.
* If ''z'' ∈ ''L'' then
** there is a proof π such that ''V''<sup>π</sup> (''z'') accepts for every ''R''<sub>i</sub>.
** All clauses are satisfied if ''x''<sub>''i''</sub> = π(''i'') and the auxiliary variables are added correctly.
* If input ''z'' ∉ ''L'' then
** For every assignment to ''x''<sub>1</sub>,...,''x''<sub>l</sub> and ''y''<sub>R</sub>'s, the corresponding proof π(''i'') = ''x''<sub>i</sub> causes the Verifier to reject for half of all ''R'' ∈ {0,1}<sup>''r''(|''z''|)</sup>.
*** For each ''R'', one clause representing ''f''<sub>R</sub> fails.
*** Therefore a fraction <math>\frac{1}{2} \frac{1}{q2^{q}}</math> of clauses fails.
 
It can be concluded that if this holds for every [[NP-complete]] problem then the [[PCP theorem]] must be true.
 
== Theorem 2 ==
 
Håstad demonstrates a tighter result than Theorem 1 i.e. the best known value for ε.
 
He constructs a PCP Verifier for [[3-SAT]] that reads only 3 bits from the Proof.
 
''For every ε > 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 i<sub>r</sub>, j<sub>r</sub>, k<sub>r</sub> in the proof π and a bit b<sub>r</sub>.  It accepts if and only if''
 
''π(i<sub>r</sub>) ⊕ π(j<sub>r</sub>) ⊕ π(k<sub>r</sub>) ⊕ = b<sub>r</sub>.''
 
The Verifier has ''completeness'' (1-ε) and ''soundness'' 1/2 + ε (refer to [[PCP (complexity)]]).  The Verifier satisfies
 
<math>z \in L \implies \exists \pi Pr[V^{\pi} (x) = 1] \ge 1 - \epsilon</math>
 
<math>z \not \in L \implies \forall \pi Pr[V^{\pi} (x) = 1] \le \frac{1}{2} + \epsilon</math>
 
If the first of these two equations were equated to "=1" as usual, one could find a proof π by solving a system of linear equations (see [[MAX-3LIN-EQN]]) implying [[P = NP]].
 
* If z ∈ ''L'', a fraction ≥ (1- ε) of clauses are satisfied.
* If z ∉ ''L'', then for a (1/2- ε) fraction of ''R'', 1/4 clauses are contradicted.
 
This is enough to prove the hardness of approximation ratio
 
<math>\frac{1-\frac{1}{4}(\frac{1}{2}-\epsilon)}{1-\epsilon} = \frac{7}{8} + \epsilon'</math>
 
== Related problems == <!--MAX-3SAT(13) redirects here-->
 
'''MAX-3SAT(B)''' is the restricted special case of '''MAX-3SAT''' where every variable occurs in at most ''B'' clauses. Before the [[PCP theorem]] was proven, Papadimitriou and Yannakakis<ref>Christos Papadimitriou and Mihalis Yannakakis, Optimization, approximation, and complexity classes, Proceedings of the twentieth annual ACM symposium on Theory of computing, p.229-234, May 02–04, 1988.</ref> showed that for some fixed constant ''B,'' this problem is MAX SNP-hard. Consequently with the PCP theorem, it is also APX-hard. This is useful because '''MAX-3SAT(B)''' can often be used to obtain a PTAS-preserving reduction in a way that '''MAX-3SAT''' cannot. Proofs for explicit values of ''B'' include: all ''B ≥ 13'',<ref>Rudich et al., "Computational Complexity Theory," IAS/Park City Mathematics Series, 2004 page 108 ISBN 0-8218-2872-X</ref><ref>Sanjeev Arora, "[http://www.cs.princeton.edu/~arora/pubs/thesis.pdf Probabilistic Checking of Proofs and Hardness of Approximation Problems]," Revised version of a dissertation submitted at CS Division, U C Berkeley, in August 1994. CS-TR-476-94. Section 7.2.</ref> and all ''B ≥ 3''<ref name="acgkmsp">Ausiello, G., Crescenzi, P., Gambosi, G., Kann, V., Marchetti Spaccamela, A., and Protasi, M. (1999), Complexity and Approximation. Combinatorial Optimization Problems and their Approximability Properties,
Springer-Verlag, Berlin. Section 8.4.</ref> (which is best possible).
 
Moreover, although the decision problem [[2SAT]] is solvable in polynomial time, '''[[MAX-2SAT]](3)''' is also APX-hard.<ref name="acgkmsp" />
 
The best possible approximation ratio for '''MAX-3SAT(B),''' as a function of ''B,'' is at least <math>7/8+\Omega(1/B)</math> and at most <math>7/8+O(1/\sqrt{B})</math>,<ref>Luca Trevisan. 2001. Non-approximability results for optimization problems on bounded degree instances. In Proceedings of the thirty-third annual ACM symposium on Theory of computing (STOC '01). ACM, New York, NY, USA, 453-461. DOI=10.1145/380752.380839 http://doi.acm.org/10.1145/380752.380839</ref> unless '''NP'''='''RP'''. Some explicit bounds on the approximability constants for certain values of ''B'' are known.<ref>On some tighter inapproximability results, Piotr Berman and Marek Karpinski, Proc. ICALP 1999, pages 200--209.</ref>
<ref>P. Berman and M. Karpinski, Improved Approximation Lower Bounds on Small Occurrence Optimization,
[http://eccc.hpi-web.de/report/2003/008/ ECCC TR 03-008 (2003)]
</ref>
<ref>P. Berman, M. Karpinski and A. D. Scott, Approximation Hardness and Satisfiability of Bounded Occurrence Instances of SAT,
[http://eccc.hpi-web.de/report/2003/022/ ECCC TR 03-022 (2003)].</ref> Berman, Karpinski and Scott proved that for the "critical" instances of '''MAX-3SAT''' in which each literal occurs exactly twice, and each clause is exactly of size 3, the problem is approximation hard for some constant factor.<ref>
P. Berman, M. Karpinski and A. D. Scott, Approximation Hardness of Short Symmetric Instances of MAX-3SAT,
[http://eccc.hpi-web.de/report/2003/049/ ECCC TR 03-049 (2003).]</ref>
 
[[MAXEkSAT|MAX-EkSAT]] is a paramaterized version of '''MAX-3SAT''' where every clause has ''exactly'' <math>k</math> literals, for ''k'' ≥ 3.  It can be efficiently approximated with approximation ratio <math>1- (1/2)^{k}</math> using ideas from [[error correcting codes|coding theory]].
 
It has been proved that random instances of '''MAX-3SAT''' can be approximated to within factor 9/8.<ref>
W.F.de la Vega and M.Karpinski, 9/8-Approximation Algorithm for Random MAX-3SAT,
[http://eccc.hpi-web.de/report/2002/070/ ECCC TR 02-070 (2002)];RAIRO-Operations Research 41(2007),pp.95-107]</ref>
 
== References ==
 
{{reflist}}
[http://www.cs.berkeley.edu/~luca/notes/ Lecture Notes from University of California, Berkeley]
[http://www.cse.buffalo.edu/~atri/courses/coding-theory/ Coding theory notes at University at Buffalo]
 
[[Category:Satisfiability problems]]
[[Category:NP-hard problems]]

Revision as of 20:45, 11 February 2014

Greetings. Allow me begin by telling you the writer's name - Phebe. What I love doing is to gather badges but I've been taking on new issues recently. Since she was 18 she's been operating as a receptionist but her marketing by no means comes. My family life in Minnesota and my family enjoys it.

Here is my page - at home std testing