Title: PCP and Inapproximability
1PCP and Inapproximability
2Given any function.. How complicated is it to
compute it?
- Example the Minimum Vertex Cover function
- Facts 1. Best algorithm runs in time (1.21)n
Robson 86 - 2. VC is NP-hard. Karp 72
- What about approximation.. Output a vertex cover
thats nearly minimal!
Minimum Vertex Cover
Vertex-Cover Given a network of roads. Each road
requires a toll payment. Goal Put up the
smallest number of toll booths
3What do we mean by approximation? Each instance
has many solutions, each has a value. In
optimization, we are seeking the minimal.
4Approximation
An approximation algorithm finds a solution
within a certain neighborhood of MIN
- Example An algorithm for Approximating Vertex
Cover - Given G, find a maximal set of edges that do not
touch each
other. - Add both vertices of each edge to the vertex
cover.
MIN
5Approximation
This is a solution all edges are covered
How big is it? No more than twice the minimum!
An approximation algorithm finds a solution
within a certain neighborhood of MIN
- Example An algorithm for Approximating Vertex
Cover - Given G, find a maximal set of edges that do not
touch each
other. - Add both vertices of each edge to the vertex
cover.
6Approximation
How big is it? No more than twice the minimum!
An approximation algorithm finds a solution
within a certain neighborhood of MIN
- Example An algorithm for Approximating Vertex
Cover - Given G, find a maximal set of edges that do not
touch each
other. - Add both vertices of each edge to the vertex
cover.
Weve seen an approximation algorithm for
Vertex-Cover, with approximation factor 2.
7Approximation
x 2
x 3/2
x 4/3
x 1.99
Weve seen a factor 2 algorithm. Q Is there a
factor 1.99 algorithm? 3/2 ? 4/3 ?
Not unless PNP, AS,ALMSS,BGS,Raz,Hastad,DS
8Finding the Approximation Threshold
- Rich variety of approximation algorithms.
- Various problems with vastly differing
approximation ratios. - PCP theorem breakthrough, we can prove hardness
of approximation. - Moreover, its within reach to find the exact
threshold where a problem changes from being easy
to hard. (theoretic and practical importance) - Vertex Cover
- Upper bound 2-o(1) BYE, MS, Hal
- Best hardness result
- Thm DS02 NP-hard to approximate to within
1.36. - Conjecture NP-hard to within 2- ? ??gt0
9How to show hardness?
Take any NP-hard problem, say SAT, and
reduce Translating a formula ? into a graph G,
s.t.
? is unSAT
VC(G) gt k
10The gap-version of the problem
MIN k
- Given a 1c approximation algorithm,
- If MIN k then Approx lt (1c)?k.
- A 1c approximation algorithm could decide
whether the minimum is - below k or
- above (1c)?k
In other words, it would solve the gap
problem Given a graph G, decide if the minimum
VC is
11How to show hardness of approximation?
Take any NP-hard problem, say SAT, and
reduce Translating a formula ? into a graph G,
s.t. Decades, complexity of approximations
remains mysterious Rich variety of algorithms,
hardly any lower-bounds Why?
?
? is unSAT
VC(G) gt k
VC(G) gt (1c)k
12Why is it hard to prove?
?(x1,x2,,xn)
0 1 0
Simple Every SAT assignment translates to a
size-k VC for G.
13Why is it hard to prove?
?(x1,x2,,xn)
0 1 0
?
? is unSAT
VC(G) gt k
VC(G) gt (1c)k
Simple Every SAT assignment translates to a
size-k VC for G. And Every size-k VC
translates to a SAT assignment. But, far from
easy Given a VC of size lt (1c)k, how to decode
it into a SAT assignment?
Combinatorial Decoding
14Probabilistically Checkable Proofs
15PCP a referees dream
- Background context Interactive Proofs
- Say you get a paper for refereeing.
- Select a few random lemmas and verify only them.
- Will this work? in general, of course not!
- PCP Theorem Every proof can be compiled into
PCP-language so that by reading only a few bits
of the new PCP proof, correct verification can be
achieved with high probability. - Why is this amazing?
- One tiny bug or hole or gap can cause much agony
- In a proof usually the correctness of each step
depends on much of what happened before it - It seems that if you only read a few bits, you
can easily be cheated!
16More Concretely
(x1vx3vx12)(x1vx2vx8)(x7vxnvx10)(x1vx15vx14)
1
0
1
1
1
0
0
0
1
0
1
1
0
0
1
0
0
1
0
1
- An NP statement can be written as a 3SAT formula
- A proof for its satisfiability is an assignment
of 0/1 - We can verify it clause by clause.
17More Concretely
(x1vx3vx12)(x1vx2vx8)(x7vxnvx10)(x1vx15vx14)
x1
x5
xn-3
x9
x13
x2
x6
xn-2
x10
x14
x3
x7
xn-1
x11
x15
x4
x8
xn
x12
x16
- An NP statement can be written as a 3SAT formula
- A proof for its satisfiability is an assignment
of 0/1 - We can verify it clause by clause.
- Murphys law! we detect an error only on the
last clause
18More Concretely
?(y1v y13v y2)(y15v y19v y29)(y22v y13v
y21)(y4v y31v y24)
PCP
- The PCP theorem, gives a compiler translating
? into ? s.t. ? admits super-efficient
verification. - If ? is satisfiable, then so is ?
- If ? is not satisfiable, then every assignment
satisfies at - most 99 of ?s clauses.
19More Concretely
?(y1v y13v y2)(y15v y19v y29)(y22v y13v
y21)(y4v y31v y24)
PCP
- Conclusion AS,ALMSS gap-SAT is NP-hard
- Given a 3-SAT formula ? it is NP-hard to
decide whether - ? is satisfiable
- Every assignment satisfies at most 99 of ?s
clauses.
20This is an Inapproximability Result!
PCP
- Hardness for gap-3SAT, shows that it is NP-hard
to approximate the following optimization
problem - Max-3-SAT Given a 3SAT formula,
?(y1vy3vy12)(y1vy15vy14), - find the maximal fraction of satisfiable
clauses. - A random assignment easily satisfies 7/8
- Håstad proved theres no better algorithm
21Some Brief History
- Context Interactive proofs
- Connection to Approximation FGLSS 91
- PCP Theorem AS, ALMSS 92
- Immediately for many problems, e.g. vertex cover,
max-cut, metric-TSP, max-3SAT, bounded-degree-cliq
ue,
?
? is unSAT
? is lt 99 SAT
VC(G) gt (1c)k
22Some Brief History
- Context Interactive proofs
- Connection to Approximation FGLSS 91
- PCP Theorem AS, ALMSS 92
- Immediately for many problems, e.g. vertex cover,
max-cut, metric-TSP, max-3SAT, bounded-degree-cliq
ue, PY 91 - Boom of hardness of approximation results
- Emphasis on
- Better PCP parameters
- Tight inapproximability results
23Tighter Results
- ,BGLR,FK,BS Better reductions with explicit
constants - BGS 95 Introduced the Long-Code.
- e.g. for VertexCover 1.068, for Max-CUT 1.014
- Håstad 96-97 Clique is NP-hard to approximate
to within n1-? Optimal gap for 3-SAT and for
Linear equations. - Using Fourier analysis of the marvelous
Long-Code, and a Stronger PCP Raz 95 - Hardness factor for VertexCover 1.166, for
Max-CUT 1.062
24My Work
- The Biased Long-Code a generalization of the
Long-Code. D.,Safra 02 - New perspectives on the Long Code yielding
powerful new techniques. - Analysis of influence of variables on Boolean
Functions - Extremal Set Combinatorics.
- New stronger enhancements of the PCP theorem,
e.g. the Layered PCP in DGKR 02, DRS 02 - Leading to best-known inapproximability results
for - Vertex-Cover Hardness for vertex cover 1.367.
D.,Safra 02 - Approximate Hypergraph Coloring Approximate
hypergraph coloring. D.,Regev,Smyth 02 - Hypergraph Vertex Cover D. D.,Guruswami,Khot
D.,Guruswami,Khot,Regev 02
25Combinatorial Decoding
- Proving hardness for gap-VC, we translate ? into
G and then prove 2 things - I.
- II.
- The hard part of the proof is part II, showing
that - Every VC in G of size lt (1c)k can be decoded
into a satisfying assignment for ?. - In standard coding theory, we encode n bits by m
bits (mgtn), and are able to recover somewhat
corrupt codewords. - Every word, if close enough, we can decode
- In combinatorial decoding, we encode an
assignment for ? by a vertex cover in G and are
able to recover somewhat corrupt vertex covers.
- Every VC, if small enough, we can decode
? is lt 99 SAT
VC(G) gt (1c)k
26The Underlying Structure
- Starting Point the PCP theorem
- Enhance it
- Apply the Long-Code on small sub-components.
- The hardest part of these works is the interplay
combining these two parts
PCP
Enhanced PCP
Long-Code
27Vertex Cover
- A very loose outline of the construction
- A satisfying assignment can be encoded into a
vertex-cover. - A vertex-cover for the graph is a vertex cover in
each H . - Decode each small vertex cover in H into a
value for the underlying y variable. - Then, show consistency between these values.
- Combinatorial Question Construct such a graph H
.
? (y1v y13v y2) (y15v y19v y29) (y22v y13v y21)
(y4v y31v y24)
y1
y2
y3
ym
28Sub-Goal Construct a graph H
- Such that,
- Each value in 1,2,..,R corresponds to a small
vertex cover for H (i.e. of size k ½V). - Every vertex cover for H , if smaller than
(2-?)k roughly corresponds to a single value in
1,2,..,R. - Technique
- Biased Long-Code,
- Analysis of influence of variables on Boolean
functions, - Erdös-Ko-Rado theorems on intersecting families
of subsets.
29Long-Code of R
- R elements, can be most concisely
- encoded by log R bits.
- Seeking redundancy properties we use
- many more bits in the encoding.
- The Long-Code is the most redundant
- way, using 2R bits.
30Long-Code of R, LCR?0,12R
- One bit for every subset of R
1
2
R
. . .
31Long-Code of R, LCR?0,12R
- One bit for every subset of R
- How do we encode the element i?R?
- (Whats the value of LC(i)?)
1
2
R
. . .
1
0
0
1
1
32The p-Biased Long-Code
- Endow the bits with the product distribution
- For each subset F, ?p(F) pF(1-p)R\F
- Roughly take only subsets whose size is p?R.
33The Disjointness Graph of the Biased Long-Code
341
2
. . .
R
What is a codeword?
35(No Transcript)
36- A codeword is a vertex cover
- The complement of a vertex-cover is always an
independent set. - In this graph, an independent set is an
intersecting family of subsets. - Claim a long-code codeword, i.e. all subsets
containing i is a largest independent set, and
its complement, a smallest vertex cover. - Maximal Intersecting Families of Subsets
Erdös-Ko-Rado 61 - Lemma The ?p size of an intersecting family is ?
p (proof using shadows Kruskal 63, Katona
68) - Much more difficult to prove Any vertex cover
whose size is lt 1-p2 is decodable into a value
in 1,,R. (combinatorial decoding) - Using the complete characterization of maximal
intersecting families by Ahlswede and Khachatrian
97, and Friedguts Theorem on when Boolean
Functions are Juntas, etc.
37(2-?)k ???
- We constructed a graph s.t.,
- Each value in 1,2,..,R corresponds to a small
vertex cover for H (i.e. of size k). - Every vertex cover for H , if smaller than
(4/3)k roughly corresponds to a single value in
1,2,..,R. - Now we can plug it into the whole construction
38Future Directions
- Finding the true threshold (stronger
combinatorial decoding) - Factor 2 inapproximability for Vertex Cover
- Other problems approximate coloring, etc.
- Simplification of PCP, locally testable codes.
- Decoding in completely different contexts, with
applications for database privacy.
39Thanks