P robabilistically C heckable P roofs (and inapproximability)
Post on 28-Jan-2016
28 Views
Preview:
DESCRIPTION
Transcript
Probabilistically Checkable Proofs(and inapproximability)
Irit Dinur, Weizmann
open day, May 1st 2009
How Efficiently Can Proofs Be Checked?
P NP (12th Revision)
By
Ayror Sappen
# Pages to follow: 15783
(slide by Madhu Sudan)
our real interest: NP proofs
– NP – class of problems with efficiently verifiable solutionsExamples: 3-colorability, Satisfiability, Clique, etc.
– Theory of NP-completeness provides enormous collection of new formats for writing proofs.
– Strange, but just as valid (every thm has proof, but no false thm has one). Possibly new formats give more power? new features?
One proof for 3-colorability is a 3-coloring:
We can verify it edge by edge
Murphy’s law! we detect an “error” only on the last clause (no abundance of errors)
How can we gain by randomizing? (ask for another proof!)
3-colorability
Randomizing proof access
PProb.rob.CCheckable.heckable.PProof: roof:
Input: xInput: x
VerifierVerifier
– If x2 L then 9proof , Pr[Ver accepts (x,)] = 1– If xL then 8proof , Pr[Ver accepts (x,)] < s < 1
Add randomness, allow errors (ideas coming from interactive proofs and cryptography)
Possible gain:
read fewer proof bits
Randomizing proof access
Restricting proof access
How much of the proof must the Verifier read?
1. stage 1: #proof-bit-queries = logarithmic in proof length
2. stage 2: #proof-bit-queries = absolute constant !! “The PCP Theorem” [Arora-Safra, Arora-Lund-Motwani-Sudan-Szegedy `92]
3. stage 3: #proof-bit-queries = 3 [Hastad ‘97]
we want an “error”-amplifying reduction…
How can this be done ???
G is not 3colG is not 3col H is <90% 3colH is <90% 3col
G is 3colG is 3col H is 3colH is 3col
every 3-col of H’s vertices violates > 10% edges
G H
without looking…
we want an “error”-amplifying reduction…
How can this be done ???
(similar to error correcting codes)
Interactive Proofs, Cryptography
approaches
Expanders and pseudorandomobjects
Finite fields, Reed Muller & Reed Solomon codes,low degree curves
Approximation
and
Inapproximability
Example: the Minimum Vertex Cover problem
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 that’s
“nearly” minimal!
Minimum Minimum Vertex Vertex CoverCover
Optimization Problems – Optimization Problems – finding nearly optimal solutionsfinding nearly optimal solutions
4
Vertex-Cover: Given a graph find the smallest set of vertices that touch all edges.
7
What do we mean by approximation? What do we mean by approximation?
Each instance has many solutions, each has a value.Each instance has many solutions, each has a value.
In optimization, we are seeking the minimal. In optimization, we are seeking the minimal.
4 5
Approximation
Approximation
MINMIN
An approximation algorithm: finds a solution within a certain neighborhood of MIN
ApproxApprox
Example: An algorithm for Example: An algorithm for Approximating Vertex CoverApproximating Vertex Cover
1.1. Given G, find a maximal set of edges that do not touch each Given G, find a maximal set of edges that do not touch each other. other.
2.2. Add both vertices of each edge to the vertex cover.Add both vertices of each edge to the vertex cover.
74 5
An approximation algorithm: finds a solution within a certain neighborhood of MIN
Example: An algorithm for Example: An algorithm for Approximating Vertex CoverApproximating Vertex Cover
1.1. Given G, find a maximal set of edges that do not touch each Given G, find a maximal set of edges that do not touch each other. other.
2.2. Add both vertices of each edge to the vertex cover.Add both vertices of each edge to the vertex cover.
How big is it? How big is it?
No more than No more than twice the twice the minimum!minimum!
Approximation This is This is aa solution: solution: all edges are all edges are coveredcovered
An approximation algorithm: finds a solution within a certain neighborhood of MIN
We’ve seen an approximation algorithm for Vertex-We’ve seen an approximation algorithm for Vertex-
Cover, with approximation factor 2.Cover, with approximation factor 2.
Example: An algorithm for Example: An algorithm for Approximating Vertex CoverApproximating Vertex Cover
1.1. Given G, find a maximal set of edges that do not touch each Given G, find a maximal set of edges that do not touch each other. other.
2.2. Add both vertices of each edge to the vertex cover.Add both vertices of each edge to the vertex cover.
ApproximationHow big is it? How big is it?
No more than No more than twice the twice the minimum!minimum!
MINMIN
x 2
ApproxApprox
We’ve seen a factor 2 algorithm.We’ve seen a factor 2 algorithm.
Q: Is there a factor 1.99 algorithm?Q: Is there a factor 1.99 algorithm?
3/2 ?3/2 ?
4/3 ?4/3 ?
x 3/2 x 4/3 x 1.99
No, due to PCP thm (and more work)No, due to PCP thm (and more work)
No, assuming very very strong PCP conjecture (“unique games”)No, assuming very very strong PCP conjecture (“unique games”)
Approximation
ma
hakesher?
we want a “gap”-amplifying reduction…
How does one prove inapproximability?
VC(G) > kVC(G) > k VC(H) > (2-VC(H) > (2-²²) k’) k’
VC(G) = kVC(G) = k VC(H) = k’VC(H) = k’
G H
we want a “gap”-amplifying reduction…
How does one prove inapproximability?
G is not 3colG is not 3col H is <90% 3colH is <90% 3col
G is 3colG is 3col H is 3colH is 3col
G H
The [FGLSS] connection
“error”-amplifying reductions
… are inapproximability results!
&
… are PCPs!
PCP & Inapprox
PProb.rob.CCheckable.heckable.PProofroof
x x 22? L? L
VerifierVerifier
G is not 3colG is not 3col H is <90% 3colH is <90% 3col
G is 3colG is 3col H is 3colH is 3col
( x G H )
[FGLSS, ALMSS]
imability
Getting tight results
Metric Embedding,Semi-definite programming
Discrete Fourier AnalysisComplexity ofBoolean functions, Influences
Probability andNoise correlation, Invariance principles
Extremal set theory, EKR intersection theorems
summary
Probabilistically Checkable Proofs– randomize proof access gain locality– how? by amplifying “errors” in false proofs– like in error correcting codes
Hardness of approximation– vertex cover– amplifying gaps– towards tight results
Connections
thank you!
top related