csr2011 june14 15_15_romashchenko

52
Pseudo-random graphs and bit probe schemes with one-sided error Andrei Romashchenko CNRS, LIF de Marseille & IITP of RAS (Moscow) CSR 2011, June 14 Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 1 / 14

Post on 15-Sep-2014

260 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Csr2011 june14 15_15_romashchenko

Pseudo-random graphs and bit probe schemes withone-sided error

Andrei Romashchenko

CNRS, LIF de Marseille & IITP of RAS (Moscow)

CSR 2011, June 14

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 1 / 14

Page 2: Csr2011 june14 15_15_romashchenko

The problem under consideration:bit probe scheme with one-sided error

Our technique:pseudo-random graphs

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 2 / 14

Page 3: Csr2011 june14 15_15_romashchenko

The problem under consideration:bit probe scheme with one-sided error

Our technique:pseudo-random graphs

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 2 / 14

Page 4: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 5: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 6: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 7: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 8: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|

Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 9: Csr2011 june14 15_15_romashchenko

Bit probe scheme with one-sided error

Given: a set A from universe U

n = |A| m = |U|, e.g., n = m0.01, n = poly logm, etc.

To construct: a database B of size s such that

to answer a query

x ∈ A ?

we need to read one bit from the database

Goal: minimize s = |B|Remark: s = Ω(n logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 3 / 14

Page 10: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 11: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size m

good news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 12: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 13: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elements

good news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 14: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 15: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):

good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 16: Csr2011 june14 15_15_romashchenko

static structures for a set: standard solutionsGiven: a set A from universe UHow to encode A?

1 bit vector of size mgood news: read one bit for a query “x ∈ A ?”good news: no randomizationbad news: too much memory

2 list of elementsgood news: memory n logmgood news: no randomizationbad news: read too many bits to answer a query

3 Fredman–Komlos–Szemeredi (double hashing):good news: database of size O(n logm) bitsgood news: randomization only to constructe the databasebad news: need to read O(logm) bits to answer a query

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 4 / 14

Page 17: Csr2011 june14 15_15_romashchenko

Buhrman–Miltersen–Radhakrishnan–Venkatesh [2001]Two features:

1 a randomized algorithm answers a query “x ∈ A?”2 a scheme based on a highly unbalanced expander

good news: read one bit to answer a query

good news: memory = O(n logm)

bad news: exponential computations

some news: two-sided errors

bad news: need Ω(n2 log mlog n ) for a one-sided error

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 5 / 14

Page 18: Csr2011 june14 15_15_romashchenko

Buhrman–Miltersen–Radhakrishnan–Venkatesh [2001]Two features:

1 a randomized algorithm answers a query “x ∈ A?”2 a scheme based on a highly unbalanced expander

good news: read one bit to answer a query

good news: memory = O(n logm)

bad news: exponential computations

some news: two-sided errors

bad news: need Ω(n2 log mlog n ) for a one-sided error

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 5 / 14

Page 19: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m)

vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 20: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m)

vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 21: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error

vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 22: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 23: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 24: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ?

Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 25: Csr2011 june14 15_15_romashchenko

Bit-probe scheme in this paper:

read one bit to answer a querymemory = O(n log2 m) vs O(n logm) in [BMRV]computations in poly(m) vs expm in [BMRV]one-sided error vs two-sided in [BMRV]

memory = O(n log2 m) better than Ω(n2 logmlog n ) !

Do we cheat ? Yes, we have changed the model !We allow cached memory of size poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 6 / 14

Page 26: Csr2011 june14 15_15_romashchenko

RandomizedProcessor of Queries

2nd level memory(database)

query: x?∈ A answer: yes/no

1st level memory(cache)

read 1 bitread all bits

Theorem. For any n-element set A from an m-elementuniverse there exists a randomized bit-probe scheme withone-sided error, with cache of size O(logc m) and databaseof size O(n log2 m).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 7 / 14

Page 27: Csr2011 june14 15_15_romashchenko

RandomizedProcessor of Queries

2nd level memory(database)

query: x?∈ A answer: yes/no

1st level memory(cache)

read 1 bitread all bits

Theorem. For any n-element set A from an m-elementuniverse there exists a randomized bit-probe scheme withone-sided error, with cache of size O(logc m) and databaseof size O(n log2 m).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 7 / 14

Page 28: Csr2011 june14 15_15_romashchenko

the left part: m vertices; degree d = O(logm)the right part: s = O(n log2 m) vertices

universe database

123

m

12346

s

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 8 / 14

Page 29: Csr2011 june14 15_15_romashchenko

in the left part: set A of n verticesthe right part: s = O(n log2 m) vertices

subset A database

123

m

12346

s

1

3

m

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 9 / 14

Page 30: Csr2011 june14 15_15_romashchenko

A graph is suitable for A iffor every x 6∈ A most neighbors of x are blue

subset Aneighbors ofA are red

123

m

12346

s

1

3

m

1

3

m

1

3

6

s

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 10 / 14

Page 31: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 32: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 33: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 34: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 35: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 36: Csr2011 june14 15_15_romashchenko

A graph is called suitable for A if for every x 6∈ A mostneighbors of x are blue

Good news: for every A most graphs are suitable.

Bad news: there is no graph suitable for every sets A.

1st idea: take a random graph and cache it

we cannot, a random graph is too large!

2nd idea: take a pseudo-random graph, cache the seed

We need a good PRG...

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 11 / 14

Page 37: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 38: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 39: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 40: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.

Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 41: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is valid

Braverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 42: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 43: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 44: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 45: Csr2011 june14 15_15_romashchenko

Fix a set A.Testgraph G yes, if G is suitable for A

no, otherwise

Testrandomgraph yes with probability > 0.99

Testpseudo-randomgraph

yes with probability > 0.98 ?

Test is an AC0-circuit.Nisan–Wigderson generator is validBraverman: every (poly logm)-independent function isvalid

Test is a FSM with small memory.Nisan’s generator is valid

Size of the seed = poly(logm).Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 12 / 14

Page 46: Csr2011 june14 15_15_romashchenko

Conclusions: a bit-probe scheme:read one bit to answer a queryone-sided error1-st level “cached” memory = poly logm2-nd level memory = O(n log2 m)

database is prepared in time poly(m)

Beyond this talk: combine our construction withGuruswami–Umans–Vadhan

read two bit to answer a queryone-sided error1-st level “cache” memory = poly logm2-nd level memory = n1+δpoly logmcomputations in time poly(n, logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 13 / 14

Page 47: Csr2011 june14 15_15_romashchenko

Conclusions: a bit-probe scheme:read one bit to answer a queryone-sided error1-st level “cached” memory = poly logm2-nd level memory = O(n log2 m)

database is prepared in time poly(m)

Beyond this talk: combine our construction withGuruswami–Umans–Vadhan

read two bit to answer a queryone-sided error1-st level “cache” memory = poly logm2-nd level memory = n1+δpoly logmcomputations in time poly(n, logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 13 / 14

Page 48: Csr2011 june14 15_15_romashchenko

Conclusions: a bit-probe scheme:read one bit to answer a queryone-sided error1-st level “cached” memory = poly logm2-nd level memory = O(n log2 m)

database is prepared in time poly(m)

Beyond this talk: combine our construction withGuruswami–Umans–Vadhan

read two bit to answer a queryone-sided error1-st level “cache” memory = poly logm2-nd level memory = n1+δpoly logmcomputations in time poly(n, logm)

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 13 / 14

Page 49: Csr2011 june14 15_15_romashchenko

What this talk was about:

a pseudo-random graph can be better than an explicitone (better expansion parameters, etc.)

a pseudo-random graph can be better than a “trulyrandom” graph (shorter description)a small “cache” may be useful in static structures

Thank you! Questions?

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 14 / 14

Page 50: Csr2011 june14 15_15_romashchenko

What this talk was about:

a pseudo-random graph can be better than an explicitone (better expansion parameters, etc.)a pseudo-random graph can be better than a “trulyrandom” graph (shorter description)

a small “cache” may be useful in static structures

Thank you! Questions?

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 14 / 14

Page 51: Csr2011 june14 15_15_romashchenko

What this talk was about:

a pseudo-random graph can be better than an explicitone (better expansion parameters, etc.)a pseudo-random graph can be better than a “trulyrandom” graph (shorter description)a small “cache” may be useful in static structures

Thank you! Questions?

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 14 / 14

Page 52: Csr2011 june14 15_15_romashchenko

What this talk was about:

a pseudo-random graph can be better than an explicitone (better expansion parameters, etc.)a pseudo-random graph can be better than a “trulyrandom” graph (shorter description)a small “cache” may be useful in static structures

Thank you! Questions?

Andrei Romashchenko (CNRS & IITP) Pseudo-random graphs & bit probe CSR 2011, June 14 14 / 14