csr2011 june14 15_45_musatov

Post on 21-Oct-2014

292 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Daniil Musatov. Improving the Space-Bounded Version of Muchnik's Conditional Complexity Theorem via ``Naive'' Derandomization

TRANSCRIPT

Improving the Space-Bounded Version ofMuchnik’s Conditional Complexity Theorem via

“Naive” Derandomization

Daniil Musatov1

1Lomonosov Moscow State University,

St. Petersburg, June 14th, 2011

Some disclaimers

I This talk is in some sense a continuation of the previous one

I A similar technique is used to obtain a different result

I Why “naive”? Because we simply replace a random object bya pseudo-random one and it still does the job.

Some disclaimers

I This talk is in some sense a continuation of the previous one

I A similar technique is used to obtain a different result

I Why “naive”? Because we simply replace a random object bya pseudo-random one and it still does the job.

Some disclaimers

I This talk is in some sense a continuation of the previous one

I A similar technique is used to obtain a different result

I Why “naive”?

Because we simply replace a random object bya pseudo-random one and it still does the job.

Some disclaimers

I This talk is in some sense a continuation of the previous one

I A similar technique is used to obtain a different result

I Why “naive”? Because we simply replace a random object bya pseudo-random one and it still does the job.

Kolmogorov complexity

I Kolmogorov complexity C (a|b) of a string a conditional to bis the minimal length of a program p that produces a given b,i.e., p(b) = a

I Space-bounded version: C s(a|b) is the minimal length of aprogram p such that p(b) = a and the computation of p(b)performs in space s.

Kolmogorov complexity

I Kolmogorov complexity C (a|b) of a string a conditional to bis the minimal length of a program p that produces a given b,i.e., p(b) = a

I Space-bounded version: C s(a|b) is the minimal length of aprogram p such that p(b) = a

and the computation of p(b)performs in space s.

Kolmogorov complexity

I Kolmogorov complexity C (a|b) of a string a conditional to bis the minimal length of a program p that produces a given b,i.e., p(b) = a

I Space-bounded version: C s(a|b) is the minimal length of aprogram p such that p(b) = a and the computation of p(b)performs in space s.

Muchnik’s theorem

I Muchnik’s theorem (TCS’2002): For any a and b of length nthere exists p of length C (a|b) + O(log n) such that p(b) = a

and C (p|a) = O(log n).I Space-bounded version (M., Romashchenko, Shen, CSR’2009,

ToCS’2011): For any a and b of length n and for any s thereexists p of length C s(a|b) + O(log3 n) such that:

I p(b) = a;I the computation of p(b) performs in space O(s) + poly(n)I and C poly(n)(p|a) = O(log3 n)

I In current work we get rid of polylogarithmic terms and makethem again logarithmic

Muchnik’s theorem

I Muchnik’s theorem (TCS’2002): For any a and b of length nthere exists p of length C (a|b) + O(log n) such that p(b) = aand C (p|a) = O(log n).

I Space-bounded version (M., Romashchenko, Shen, CSR’2009,ToCS’2011): For any a and b of length n and for any s thereexists p of length C s(a|b) + O(log3 n) such that:

I p(b) = a;I the computation of p(b) performs in space O(s) + poly(n)I and C poly(n)(p|a) = O(log3 n)

I In current work we get rid of polylogarithmic terms and makethem again logarithmic

Muchnik’s theorem

I Muchnik’s theorem (TCS’2002): For any a and b of length nthere exists p of length C (a|b) + O(log n) such that p(b) = aand C (p|a) = O(log n).

I Space-bounded version (M., Romashchenko, Shen, CSR’2009,ToCS’2011): For any a and b of length n and for any s thereexists p of length C s(a|b) + O(log3 n) such that:

I p(b) = a;I the computation of p(b) performs in space O(s) + poly(n)I and C poly(n)(p|a) = O(log3 n)

I In current work we get rid of polylogarithmic terms and makethem again logarithmic

Muchnik’s theorem

I Muchnik’s theorem (TCS’2002): For any a and b of length nthere exists p of length C (a|b) + O(log n) such that p(b) = aand C (p|a) = O(log n).

I Space-bounded version (M., Romashchenko, Shen, CSR’2009,ToCS’2011): For any a and b of length n and for any s thereexists p of length C s(a|b) + O(log3 n) such that:

I p(b) = a;I the computation of p(b) performs in space O(s) + poly(n)I and C poly(n)(p|a) = O(log3 n)

I In current work we get rid of polylogarithmic terms and makethem again logarithmic

Muchnik’s theorem

I Muchnik’s theorem (TCS’2002): For any a and b of length nthere exists p of length C (a|b) + O(log n) such that p(b) = aand C (p|a) = O(log n).

I Space-bounded version (M., Romashchenko, Shen, CSR’2009,ToCS’2011): For any a and b of length n and for any s thereexists p of length C s(a|b) + O(log3 n) such that:

I p(b) = a;I the computation of p(b) performs in space O(s) + poly(n)I and C poly(n)(p|a) = O(log3 n)

I In current work we get rid of polylogarithmic terms and makethem again logarithmic

Proof of Muchnik’s theorem: fingerprints

{0, 1}n, n = |a|

{0, 1}k, k = C(a|b)

a

Proof of Muchnik’s theorem: fingerprints

{0, 1}n, n = |a|

{0, 1}k, k = C(a|b)

p

a

p is a fingerprint of a

For C (p|a) to be small, there should be few fingerprints for each a

Proof of Muchnik’s theorem: fingerprints

{0, 1}n, n = |a|

{0, 1}k, k = C(a|b)

p

a

p is a fingerprint of aFor C (p|a) to be small, there should be few fingerprints for each a

Proof of Muchnik’s theorem: fingerprints

{0, 1}n, n = |a|

{0, 1}k, k = C(a|b)

S = {x:C(x|b) ≤ C(a|b)}

p

a

p is a fingerprint of aFor C (p|a) to be small, there should be few fingerprints for each aFor C (a|p, b) to be small,

there should be few preimages of p in S

Proof of Muchnik’s theorem: fingerprints

{0, 1}n, n = |a|

{0, 1}k, k = C(a|b)

S = {x:C(x|b) ≤ C(a|b)}

p

a

p is a fingerprint of aFor C (p|a) to be small, there should be few fingerprints for each aFor C (a|p, b) to be small, there should be few preimages of p in S

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree D

I The fingerprint p is chosen among neighbors of aI This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

How to find fingerprints

I There is an underlying bipartite graph G = (L,R,E ) with|L| = 2n and |R| = 2k

I Each left-part vertex has constant degree DI The fingerprint p is chosen among neighbors of a

I This guarantees that C (p|a,G ) = O(log D)

I The statement that C (a|p, b,G ) is small for some p followsfrom some enumerable graph property (see later)

I It is proven by the probabilistic method that this property isnon-empty

I Hence, the first graph in the enumeration has small complexity

I Hence, C (p|a) and C (a|p, b) are also small

What graph properties do we need?

Some graph properties leading to Muchnik’s theorem:

I (Muchnik) Expander-like property

I (MRS) Possibility of online matching

I (MRS) Extractor

I (This paper) “Low-congesting”

What graph properties do we need?

Some graph properties leading to Muchnik’s theorem:

I (Muchnik) Expander-like property

I (MRS) Possibility of online matching

I (MRS) Extractor

I (This paper) “Low-congesting”

What graph properties do we need?

Some graph properties leading to Muchnik’s theorem:

I (Muchnik) Expander-like property

I (MRS) Possibility of online matching

I (MRS) Extractor

I (This paper) “Low-congesting”

What graph properties do we need?

Some graph properties leading to Muchnik’s theorem:

I (Muchnik) Expander-like property

I (MRS) Possibility of online matching

I (MRS) Extractor

I (This paper) “Low-congesting”

The essential property: low-congesting graph

{0, 1}n

each vertex has D neighbors {0, 1}k

S, |S| < 2k

The essential property: low-congesting graph

{0, 1}n

each vertex has D neighbors {0, 1}k

S, |S| < 2k

α-clot

I α-clot for S is the set of all vertices having more than αDneighbors in S .

The essential property: low-congesting graph

{0, 1}n

each vertex has D neighbors {0, 1}k

S, |S| < 2k

α-clot

α-congested vertex

I α-clot for S is the set of all vertices having more than αDneighbors in S .

I A vertex is α-congested if all its neighbors lie in α-clot.

I The set S is (α, β)-low-congested if it contains less than βKα-congested vertices.

The essential property: low-congesting graph

{0, 1}n

each vertex has D neighbors {0, 1}k

S, |S| < 2k

α-clot

α-congested vertex

I α-clot for S is the set of all vertices having more than αDneighbors in S .

I A vertex is α-congested if all its neighbors lie in α-clot.

I The set S is (α, β)-low-congested if it contains less than βKα-congested vertices.

The essential property: low-congesting graph

I α-clot for S is the set of all vertices having more than αDneighbors in S .

I A vertex is α-congested if all its neighbors lie in α-clot.

I The set S is (α, β)-low-congested if it contains less than βKα-congested vertices.

I We call a set relevant if it has the form {x |C s(x |b) < k}.

I We call a graph (α, β)-low-congesting if all relevant sets are(α, β)-low-congested.

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:I to prove that a pseudorandom graph is low-congesting with

positive probabilityI to show that the seed this graph is generated from may be

found in polynomial space

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:I to prove that a pseudorandom graph is low-congesting with

positive probabilityI to show that the seed this graph is generated from may be

found in polynomial space

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:I to prove that a pseudorandom graph is low-congesting with

positive probabilityI to show that the seed this graph is generated from may be

found in polynomial space

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:

I to prove that a pseudorandom graph is low-congesting withpositive probability

I to show that the seed this graph is generated from may befound in polynomial space

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:I to prove that a pseudorandom graph is low-congesting with

positive probability

I to show that the seed this graph is generated from may befound in polynomial space

How to get a low-congesting graph

I A random graph with certain parameters is an extractor withpositive probability.

I Lemma. (Buhrman, Fortnow, Laplante ’2002) In an (k ,ε)-extractor graph any S is (2, 2ε)-low-congested.

I Hence, in an extractor any relevant set is low-congested andthe graph itself is low-congesting.

I But even the description of the graph is exponential in size, sowe cannot find it in polynomial space.

I Central idea: replace a random graph by a pseudorandomone

I To make this idea work, we need:I to prove that a pseudorandom graph is low-congesting with

positive probabilityI to show that the seed this graph is generated from may be

found in polynomial space

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;

I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

Why a pseudorandom graph fits

I We use the Nisan pseudorandom generator with polynomialseed length and exponential output.

I It is well-known that this generator fools any circuit from AC0

I The size of a fooled circuit may be exponential since the sizeof output is exponential.

I We cannot check the low-congesting property literally, butusing circuits for approximate counting we build a circuit Csuch that:

I If G is (2, 2ε)-low-congesting then C (G ) = 1;I If C (G ) = 1 then G is (2.01, 2.01ε)-low-congesting.

I This circuit accepts a random graph with sufficient probability,hence it does the same with a pseudorandom one.

The circuit

h1(x1) h2(x1) · · · hD(x1) h1(x2) · · · hD(x2) · · ·

≡ ≡ ≡ ≡ ≡· · · · · · · · · · · ·

Counting circuit1, if Σinputs > 2.01D0, if Σinputs < 2D

Counting circuit1, if Σinputs > 2.01D0, if Σinputs < 2D

· · ·

∧ · · ·

Counting circuit1, if Σinputs < 2ϵK0, if Σinputs > 2.01ϵK

∧S

S

How to get Muchnik’s theorem

I Firstly, we search for a good seed for the generator and fix it.This search needs only polynomial space.

I If a is not congested in {x |C s(x |b) < k} then it has aneighbor p outside the clot.

I This p satisfies all requirements.

How to get Muchnik’s theorem

I Firstly, we search for a good seed for the generator and fix it.This search needs only polynomial space.

I If a is not congested in {x |C s(x |b) < k} then it has aneighbor p outside the clot.

I This p satisfies all requirements.

How to get Muchnik’s theorem

{0, 1}n, n = |a|

{0, 1}k, k = Cs(a|b)

S = {x:Cs(x|b) ≤ k}

p

a

How to get Muchnik’s theorem

I Firstly, we search for a good seed for the generator and fix it.This search needs only polynomial space.

I If a is not congested in {x |C s(x |b) < k} then it has aneighbor p outside the clot.

I This p satisfies all requirements.

I If a is congested then we repeat the whole constructionreplacing the relevant sets by the sets of congested vertices inrelevant sets.

I There may be several iterations but since the upper bound onthe size of a relevant set decreases exponentially there is atmost linear number of steps, hence all polynomial boundsremain.

How to get Muchnik’s theorem

I Firstly, we search for a good seed for the generator and fix it.This search needs only polynomial space.

I If a is not congested in {x |C s(x |b) < k} then it has aneighbor p outside the clot.

I This p satisfies all requirements.

I If a is congested then we repeat the whole constructionreplacing the relevant sets by the sets of congested vertices inrelevant sets.

I There may be several iterations but since the upper bound onthe size of a relevant set decreases exponentially there is atmost linear number of steps, hence all polynomial boundsremain.

The final formulation

For any a and b of length n and for any s there exists p of lengthC s(a|b) + O(log log s + log n) such that:

I p(b) = a;

I the computation of p(b) performs in space O(s) + poly(n)

I and CO(s)+poly(n)(p|a) = O(log log s + log n)

Summary of the technology

I Take some theorem about Kolmogorov complexity relying onthe existence of some combinatorial object

I Build a constant-depth circuit recognizing this object

I Replace a random object by a pseudorandom one

I Obtain a space-bounded version of the theorem

I ???????

I PROFIT

Summary of the technology

I Take some theorem about Kolmogorov complexity relying onthe existence of some combinatorial object

I Build a constant-depth circuit recognizing this object

I Replace a random object by a pseudorandom one

I Obtain a space-bounded version of the theorem

I ???????

I PROFIT

Summary of the technology

I Take some theorem about Kolmogorov complexity relying onthe existence of some combinatorial object

I Build a constant-depth circuit recognizing this object

I Replace a random object by a pseudorandom one

I Obtain a space-bounded version of the theorem

I ???????

I PROFIT

Summary of the technology

I Take some theorem about Kolmogorov complexity relying onthe existence of some combinatorial object

I Build a constant-depth circuit recognizing this object

I Replace a random object by a pseudorandom one

I Obtain a space-bounded version of the theorem

I ???????

I PROFIT

Summary of the technology

I Take some theorem about Kolmogorov complexity relying onthe existence of some combinatorial object

I Build a constant-depth circuit recognizing this object

I Replace a random object by a pseudorandom one

I Obtain a space-bounded version of the theorem

I ???????

I PROFIT

Thank you!mailto:musatych@gmail.com

http://musatych.livejournal.com

top related