Dispersers

for

Sub-Polynomial

Entropy

and

Ramsey

Graphs

Beating

the

Frankl-Wilson

Construction

The

main

result

of

this

paper

is

an

explicit

disperser

for

two

independent

sources

on

n

bits

each

of

entropy

k

n

o

-LRB-

-RRB-

Put

differently

setting

N

n

and

K

k

we

construct

explicit

N

N

Boolean

matrices

for

which

no

K

K

sub-matrix

is

monochromatic

Viewed

as

adjacency

matrices

of

bipartite

graphs

this

gives

an

explicit

construction

of

K-Ramsey

bipartite

graphs

of

size

N

This

greatly

improves

the

previous

bound

of

k

o

-LRB-

n

-RRB-

of

Barak

Kindler

Shaltiel

Sudakov

and

Wigderson

-LSB-

-RSB-

It

also

significantly

improves

the

record

of

k

O

-LRB-

n

-RRB-

on

the

special

case

of

Ramsey

graphs

due

to

Frankl

and

Wilson

-LSB-

-RSB-

The

construction

uses

-LRB-

besides

classical

extractor

ideas

-RRB-

almost

all

of

the

machinery

developed

in

the

last

couple

of

years

for

extraction

from

independent

sources

including

Bourgain

's

extractor

for

independent

sources

of

some

entropy

rate

-LSB-

-RSB-

Raz

's

extractor

for

independent

sources

one

of

which

has

any

entropy

rate

-LSB-

-RSB-

Supported

by

a

Princeton

University

startup

grant

Most

of

this

work

was

done

while

the

author

was

visiting

Princeton

University

and

the

Institute

for

Advanced

Study

Supported

in

part

by

an

MCD

fellowship

from

UT

Austin

and

NSF

Grant

This

research

was

supported

by

the

United

States-Israel

Binational

Science

Foundation

-LRB-

BSF

-RRB-

grant

This

research

was

supported

by

NSF

Grant

Permission

to

make

digital

or

hard

copies

of

all

or

part

of

this

work

for

personal

or

classroom

use

is

granted

without

fee

provided

that

copies

are

not

made

or

distributed

for

profit

or

commercial

advantage

and

that

copies

bear

this

notice

and

the

full

citation

on

the

first

page

To

copy

otherwise

to

republish

to

post

on

servers

or

to

redistribute

to

lists

requires

prior

specific

permission

and/or

a

fee

STOC

May

Seattle

Washington

USA

Copyright

ACM

Rao

's

extractor

for

independent

block-sources

of

entropy

n

-LRB-

-RRB-

-LSB-

-RSB-

The

Challenge-Response

mechanism

for

detecting

entropy

concentration

of

-LSB-

-RSB-

The

main

novelty

comes

in

a

bootstrap

procedure

which

allows

the

Challenge-Response

mechanism

of

-LSB-

-RSB-

to

be

used

with

sources

of

less

and

less

entropy

using

recursive

calls

to

itself

Subtleties

arise

since

the

success

of

this

mechanism

depends

on

restricting

the

given

sources

and

so

recursion

constantly

changes

the

original

sources

These

are

resolved

via

a

new

construct

in

between

a

disperser

and

an

extractor

which

behaves

like

an

extractor

on

sufficiently

large

subsources

of

the

given

ones

This

version

is

only

an

extended

abstract

please

see

the

full

version

available

on

the

authors

homepages

for

more

details

G.

-LSB-

Mathematics

of

Computing

-RSB-

Discrete

Mathematics

Graph

algorithms

Theory

Algorithms

This

paper

deals

with

randomness

extraction

from

weak

random

sources

Here

a

weak

random

source

is

a

distribution

which

contains

some

entropy

The

extraction

task

is

to

design

efficient

algorithms

-LRB-

called

extractors

-RRB-

to

convert

this

entropy

into

useful

form

namely

a

sequence

of

independent

unbiased

bits

Beyond

the

obvious

motivations

-LRB-

potential

use

of

physical

sources

in

pseudorandom

generators

and

in

derandomization

-RRB-

extractors

have

found

applications

in

a

variety

of

areas

in

theoretical

computer

science

where

randomness

does

not

seem

an

issue

such

as

in

efficient

constructions

of

communication

networks

-LSB-

-RSB-

error

correcting

codes

-LSB-

-RSB-

data

structures

-LSB-

-RSB-

and

more

Most

work

in

this

subject

over

the

last

years

has

focused

on

what

is

now

called

seeded

extraction

in

which

the

extractor

is

given

as

input

not

only

the

-LRB-

sample

from

the

-RRB-

defective

random

source

but

also

a

few

truly

random

bits

-LRB-

called

the

seed

-RRB-

A

comprehensive

survey

of

much

of

this

body

of

work

is

-LSB-

-RSB-

Another

direction

which

has

been

mostly

dormant

till

about

two

years

ago

is

-LRB-

seedless

deterministic

-RRB-

extraction

from

a

few

independent

weak

sources

This

kind

of

extraction

is

important

in

several

applications

where

it

is

unrealis-tic

to

have

a

short

random

seed

or

deterministically

enumerate

over

its

possible

values

However

it

is

easily

shown

to

be

impossible

when

only

one

weak

source

is

available

When

at

least

independent

sources

are

available

extraction

becomes

possible

in

principle

The

case

is

the

one

we

will

focus

on

in

this

work

The

rest

of

the

introduction

is

structured

as

follows

We

'll

start

by

describing

our

main

result

in

the

context

of

Ramsey

graphs

We

then

move

to

the

context

of

extractors

and

disperser

describing

the

relevant

background

and

stating

our

result

in

this

language

Then

we

give

an

overview

of

the

construction

of

our

dispersers

describing

the

main

building

blocks

we

construct

along

the

way

As

the

construction

is

quite

complex

and

its

analysis

quite

subtle

in

this

proceedings

version

we

try

to

abstract

away

many

of

the

technical

difficulties

so

that

the

main

ideas

structure

and

tools

used

are

highlighted

For

that

reason

we

also

often

state

definitions

and

theorems

somewhat

informally

Ramsey

Graphs

Definition

A

graph

on

N

vertices

is

called

a

K-Ramsey

Graph

if

it

contains

no

clique

or

independent

set

of

size

K

In

Erd

os

published

his

paper

inaugurating

the

Prob-abilistic

Method

with

a

few

examples

including

a

proof

that

most

graphs

on

N

n

vertices

are

The

quest

for

constructing

such

graphs

explicitly

has

existed

ever

since

and

lead

to

some

beautiful

mathematics

The

best

record

to

date

was

obtained

in

by

Frankl

and

Wilson

-LSB-

-RSB-

who

used

intersection

theorems

for

set

systems

to

construct

N

vertex

graphs

which

are

n

log

n

Ramsey

This

bound

was

matched

by

Alon

-LSB-

-RSB-

using

the

Polynomial

Method

by

Grolmusz

-LSB-

-RSB-

using

low

rank

matrices

over

rings

and

also

by

Barak

-LSB-

-RSB-

boosting

Abbot

's

method

with

almost

k-wise

independent

random

variables

-LRB-

a

construction

that

was

independently

discovered

by

others

as

well

-RRB-

Remark-ably

all

of

these

different

approaches

got

stuck

at

essentially

the

same

bound

In

recent

work

Gopalan

-LSB-

-RSB-

showed

that

other

than

the

last

construction

all

of

these

can

be

viewed

as

coming

from

low-degree

symmetric

representations

of

the

OR

function

He

also

shows

that

any

such

symmetric

representation

can

not

be

used

to

give

a

better

Ramsey

graph

which

gives

a

good

indication

of

why

these

constructions

had

similar

performance

Indeed

as

we

will

discuss

in

a

later

section

the

n

entropy

bound

initially

looked

like

a

natural

obstacle

even

for

our

techniques

though

eventually

we

were

able

to

surpass

it

The

analogous

question

for

bipartite

graphs

seemed

much

harder

Definition

A

bipartite

graph

on

two

sets

of

N

vertices

is

a

K-Ramsey

Bipartite

Graph

if

it

has

no

K

K

complete

or

empty

bipartite

subgraph

While

Erd

os

result

on

the

abundance

of

graphs

holds

as

is

for

bipartite

graphs

until

recently

the

best

explicit

construction

of

bipartite

Ramsey

graphs

was

Ramsey

using

the

Hadamard

matrix

This

was

improved

last

year

first

to

o

-LRB-

-RRB-

by

Pudlak

and

R

odl

-LSB-

-RSB-

and

then

to

o

-LRB-

n

-RRB-

by

Barak

Kindler

Shaltiel

Sudakov

and

Wigderson

-LSB-

-RSB-

It

is

convenient

to

view

such

graphs

as

functions

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

This

then

gives

exactly

the

definition

of

a

disperser

Definition

A

function

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

is

called

a

disperser

for

entropy

k

if

for

any

two

sets

X

Y

-LCB-

-RCB-

n

with

X

Y

k

we

have

that

the

image

f

-LRB-

X

Y

-RRB-

is

-LCB-

-RCB-

This

allows

for

a

more

formal

definition

of

explicitness

we

simply

demand

that

the

function

f

is

computable

in

polynomial

time

Most

of

the

constructions

mentioned

above

are

explicit

in

this

sense

Our

main

result

-LRB-

stated

informally

-RRB-

significantly

improves

the

bounds

in

both

the

bipartite

and

non-bipartite

settings

Theorem

For

every

N

we

construct

polynomial

time

computable

bipartite

graphs

which

are

n

o

-LRB-

-RRB-

Ramsey

A

standard

transformation

of

these

graphs

also

yields

polynomial

time

computable

ordinary

Ramsey

Graphs

with

the

same

parameters

Extractors

and

Dispersers

from

independent

sources

Now

we

give

a

brief

review

of

past

relevant

work

-LRB-

with

the

goal

of

putting

this

paper

in

proper

context

-RRB-

and

describe

some

of

the

tools

from

these

past

works

that

we

will

use

We

start

with

the

basic

definitions

of

k-sources

by

Nisan

and

Zuckerman

-LSB-

-RSB-

and

of

extractors

and

dispersers

for

independent

sources

by

Santha

and

Vazirani

-LSB-

-RSB-

Definition

-LRB-

-LSB-

-RSB-

see

also

-LSB-

-RSB-

-RRB-

The

min-entropy

of

a

distribution

X

is

the

maximum

k

such

that

for

every

element

x

in

its

support

Pr

-LSB-

X

x

-RSB-

k

If

X

is

a

distribution

on

strings

with

min-entropy

at

least

k

we

will

call

X

a

k-source

To

simplify

the

presentation

in

this

version

of

the

paper

we

will

assume

that

we

are

working

with

entropy

as

opposed

to

min-entropy

Definition

-LRB-

-LSB-

-RSB-

-RRB-

A

function

f

-LRB-

-LCB-

-RCB-

n

-RRB-

c

-LCB-

-RCB-

m

is

a

c-source

-LRB-

k

-RRB-

extractor

if

for

every

family

of

c

independent

k-sources

X

X

c

the

output

f

-LRB-

X

X

c

-RRB-

The

Abbot

's

product

based

Ramsey-graph

construction

of

-LSB-

-RSB-

and

the

bipartite

Ramsey

construction

of

-LSB-

-RSB-

only

satisfy

a

weaker

notion

of

explicitness

It

is

no

loss

of

generality

to

imagine

that

X

is

uniformly

distributed

over

some

-LRB-

unknown

-RRB-

set

of

size

k

is

a

close

to

uniformly

distributed

on

m

bits

f

is

a

disperser

for

the

same

parameters

if

the

output

is

simply

required

to

have

a

support

of

relative

size

-LRB-

-RRB-

To

simplify

the

presentation

in

this

version

of

the

paper

we

will

assume

that

for

all

of

our

constructions

In

this

language

Erd

os

theorem

says

that

most

functions

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

are

dispersers

for

entropy

log

n

-LRB-

treating

f

as

the

characteristic

function

for

the

set

of

edges

of

the

graph

-RRB-

The

proof

easily

extends

to

show

that

indeed

most

such

functions

are

in

fact

extractors

This

naturally

challenges

us

to

find

explicit

functions

f

that

are

extractors

Until

one

year

ago

essentially

the

only

known

explicit

construction

was

the

Hadamard

extractor

Had

defined

by

Had

-LRB-

x

y

-RRB-

x

y

-LRB-

mod

-RRB-

It

is

an

extractor

for

entropy

k

as

observed

by

Chor

and

Goldreich

-LSB-

-RSB-

and

can

be

extended

to

give

m

-LRB-

n

-RRB-

output

bits

as

observed

by

Vazirani

-LSB-

-RSB-

Over

years

later

a

recent

breakthrough

of

Bourgain

-LSB-

-RSB-

broke

this

barrier

and

can

handle

sources

of

entropy

n

again

with

linear

output

length

m

-LRB-

n

-RRB-

This

seemingly

minor

improvement

will

be

crucial

for

our

work

Theorem

-LRB-

-LSB-

-RSB-

-RRB-

There

is

a

polynomial

time

computable

extractor

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

m

for

entropy

n

and

m

-LRB-

n

-RRB-

No

better

bounds

are

known

for

extractors

Now

we

turn

our

attention

to

dispersers

It

turned

out

that

progress

for

building

good

dispersers

came

via

progress

on

extractors

for

more

than

sources

all

happening

in

fast

pace

in

the

last

years

The

seminal

paper

of

Bourgain

Katz

and

Tao

-LSB-

-RSB-

proved

the

so-called

sum-product

theorem

in

prime

fields

a

result

in

arithmetic

combinatorics

This

result

has

already

found

applications

in

diverse

areas

of

mathematics

including

analysis

number

theory

group

theory

and

extractor

theory

Their

work

implic-itly

contained

dispersers

for

c

O

-LRB-

log

-LRB-

n/k

-RRB-

-RRB-

independent

sources

of

entropy

k

-LRB-

with

output

m

-LRB-

k

-RRB-

-RRB-

The

use

of

the

sum-product

theorem

was

then

extended

by

Barak

et

al.

-LSB-

-RSB-

to

give

extractors

with

similar

parameters

Note

that

for

linear

entropy

k

-LRB-

n

-RRB-

the

number

of

sources

needed

for

extraction

c

is

a

constant

Relaxing

the

independence

assumptions

via

the

idea

of

repeated

condensing

allowed

the

reduction

of

the

number

of

independent

sources

to

c

for

extraction

from

sources

of

any

linear

entropy

k

-LRB-

n

-RRB-

by

Barak

et

al.

-LSB-

-RSB-

and

independently

by

Raz

-LSB-

-RSB-

For

sources

Barak

et

al.

-LSB-

-RSB-

were

able

to

construct

dispersers

for

sources

of

entropy

o

-LRB-

n

-RRB-

To

do

this

they

first

showed

that

if

the

sources

have

extra

structure

-LRB-

block-source

structure

defined

below

-RRB-

even

extraction

is

possible

from

sources

The

notion

of

block-sources

capturing

semi

inde-pendence

of

parts

of

the

source

was

introduced

by

Chor

and

Goldreich

-LSB-

-RSB-

It

has

been

fundamental

in

the

development

of

seeded

extractors

and

as

we

shall

see

is

essential

for

us

as

well

Definition

-LRB-

-LSB-

-RSB-

-RRB-

A

distribution

X

X

X

c

is

a

c-block-source

of

-LRB-

block

-RRB-

entropy

k

if

every

block

X

i

has

entropy

k

even

conditioned

on

fixing

the

previous

blocks

X

X

to

arbitrary

constants

The

error

is

usually

measured

in

terms

of

distance

or

variation

distance

This

definition

allowed

Barak

et

al.

-LSB-

-RSB-

to

show

that

their

extractor

for

independent

sources

actually

performs

as

well

with

only

independent

sources

as

long

as

both

are

Theorem

-LRB-

-LSB-

-RSB-

-RRB-

There

exists

a

polynomial

time

computable

extractor

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

for

independent

with

entropy

o

-LRB-

n

-RRB-

There

is

no

reason

to

assume

that

the

given

sources

are

block-sources

but

it

is

natural

to

try

and

reduce

to

this

case

This

approach

has

been

one

of

the

most

successful

in

the

extractor

literature

Namely

try

to

partition

a

source

X

into

two

blocks

X

X

X

such

that

X

X

form

a

Barak

et

al.

introduced

a

new

technique

to

do

this

reduction

called

the

Challenge-Response

mechanism

which

is

crucial

for

this

paper

This

method

gives

a

way

to

find

how

entropy

is

distributed

in

a

source

X

guiding

the

choice

of

such

a

partition

This

method

succeeds

only

with

small

probability

dashing

the

hope

for

an

extractor

but

still

yielding

a

disperser

Theorem

-LRB-

-LSB-

-RSB-

-RRB-

There

exists

a

polynomial

time

computable

disperser

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

for

entropy

o

-LRB-

n

-RRB-

Reducing

the

entropy

requirement

of

the

above

disperser

which

is

what

we

achieve

in

this

paper

again

needed

progress

on

achieving

a

similar

reduction

for

extractors

with

more

independent

sources

A

few

months

ago

Rao

-LSB-

-RSB-

was

able

to

significantly

improve

all

the

above

results

for

c

sources

Interestingly

his

techniques

do

not

use

arithmetic

combinatorics

which

seemed

essential

to

all

the

papers

above

He

improves

the

results

of

Barak

et

al.

-LSB-

-RSB-

to

give

c

O

-LRB-

-LRB-

log

n

-RRB-

-LRB-

log

k

-RRB-

-RRB-

source

extractors

for

entropy

k.

Note

that

now

the

number

c

of

sources

needed

for

extraction

is

constant

even

when

the

entropy

is

as

low

as

n

for

any

constant

Again

when

the

input

sources

are

block-sources

with

sufficiently

many

blocks

Rao

proves

that

independent

sources

suffice

-LRB-

though

this

result

does

rely

on

arithmetic

combinatorics

in

particular

on

Bourgain

's

extractor

-RRB-

Theorem

-LRB-

-LSB-

-RSB-

-RRB-

There

is

a

polynomial

time

computable

extractor

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

m

for

independent

c-block-sources

with

block

entropy

k

and

m

-LRB-

k

-RRB-

as

long

as

c

O

-LRB-

-LRB-

log

n

-RRB-

-LRB-

log

k

-RRB-

-RRB-

In

this

paper

-LRB-

see

Theorem

below

-RRB-

we

improve

this

result

to

hold

even

when

only

one

of

the

sources

is

a

c-block

source

The

other

source

can

be

an

arbitrary

source

with

sufficient

entropy

This

is

a

central

building

block

in

our

construction

This

extractor

like

Rao

's

above

critically

uses

Bourgain

's

extractor

mentioned

above

In

addition

it

uses

a

theorem

of

Raz

-LSB-

-RSB-

allowing

seeded

extractors

to

have

weak

seeds

namely

instead

of

being

completely

random

they

work

as

long

as

the

seed

has

entropy

rate

The

main

result

of

this

paper

is

a

polynomial

time

computable

disperser

for

sources

of

entropy

n

o

-LRB-

-RRB-

significantly

improving

both

the

results

of

Barak

et

al.

-LSB-

-RSB-

-LRB-

o

-LRB-

n

-RRB-

entropy

-RRB-

It

also

improves

on

Frankl

and

Wilson

-LSB-

-RSB-

who

only

built

Ramsey

Graphs

and

only

for

entropy

O

-LRB-

n

-RRB-

Theorem

-LRB-

Main

theorem

restated

-RRB-

There

exists

a

polynomial

time

computable

disperser

D

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

for

entropy

n

o

-LRB-

-RRB-

The

construction

of

this

disperser

will

involve

the

construction

of

an

object

which

in

some

sense

is

stronger

and

in

another

weaker

than

a

disperser

a

subsource

somewhere

extractor

We

first

define

a

related

object

a

somewhere

extractor

which

is

a

function

producing

several

outputs

one

of

which

must

be

uniform

Again

we

will

ignore

many

technical

issues

such

as

error

min-entropy

vs.

entropy

and

more

in

definitions

and

results

which

are

deferred

to

the

full

version

of

this

paper

Definition

A

function

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LRB-

-LCB-

-RCB-

m

-RRB-

is

a

somewhere

extractor

with

outputs

for

entropy

k

if

for

every

independent

k-sources

X

Y

there

exists

an

i

-LSB-

-RSB-

such

the

ith

output

f

-LRB-

X

Y

-RRB-

i

is

a

uniformly

distributed

string

of

m

bits

Here

is

a

simple

construction

of

such

a

somewhere

extractor

with

as

large

as

poly

-LRB-

n

-RRB-

-LRB-

and

the

p

in

its

name

will

stress

the

fact

that

indeed

the

number

of

outputs

is

that

large

-RRB-

It

will

nevertheless

be

useful

to

us

-LRB-

though

its

description

in

the

next

sentence

may

be

safely

skipped

-RRB-

Define

pSE

-LRB-

x

y

-RRB-

i

V

-LRB-

E

-LRB-

x

i

-RRB-

E

-LRB-

y

i

-RRB-

-RRB-

where

E

is

a

strong

logarithmic

seed

extractor

and

V

is

the

Hadamard/Vazirani

extractor

Using

this

construction

it

is

easy

to

see

that

Proposition

For

every

n

k

there

is

a

polynomial

time

computable

somewhere

extractor

pSE

-LRB-

-LCB-

-RCB-

n

-RRB-

-LRB-

-LCB-

-RCB-

m

-RRB-

with

poly

-LRB-

n

-RRB-

outputs

for

entropy

k

and

m

-LRB-

k

-RRB-

Before

we

define

subsource

somewhere

extractor

we

must

first

define

a

subsource

Definition

-LRB-

Subsources

-RRB-

Given

random

variables

Z

and

Z

on

-LCB-

-RCB-

n

we

say

that

Z

is

a

deficiency

d

subsource

of

Z

and

write

Z

Z

if

there

exists

a

set

A

-LCB-

-RCB-

n

such

that

-LRB-

Z

Z

A

-RRB-

Z

and

Pr

-LSB-

Z

A

-RSB-

d

A

subsource

somewhere

extractor

guarantees

the

some-where

extractor

property

only

on

subsources

X

Y

of

the

original

input

distributions

X

Y

-LRB-

respectively

-RRB-

It

will

be

extremely

important

for

us

to

make

these

subsources

as

large

as

possible

-LRB-

i.e.

we

have

to

lose

as

little

entropy

as

possible

-RRB-

Controlling

these

entropy

deficiencies

is

a

major

technical

complication

we

have

to

deal

with

However

we

will

be

informal

with

it

here

mentioning

it

only

qualitatively

when

needed

We

discuss

this

issue

a

little

more

in

Section

Definition

A

function

f

-LRB-

-LCB-

-RCB-

n

-RRB-

-LRB-

-LCB-

-RCB-

m

-RRB-

is

a

subsource

somewhere

extractor

with

outputs

for

entropy

k

if

for

every

independent

k-sources

X

Y

there

exists

a

subsource

X

of

X

a

subsource

Y

of

Y

and

an

i

-LSB-

-RSB-

such

the

i

th

output

f

-LRB-

X

Y

-RRB-

i

is

a

uniformly

distributed

string

of

m

bits

A

central

technical

result

for

us

is

that

with

this

sub-source

relaxation

we

can

have

much

fewer

outputs

indeed

we

'll

replace

poly

-LRB-

n

-RRB-

outputs

in

our

first

construction

above

with

n

o

-LRB-

-RRB-

outputs

Theorem

-LRB-

Subsource

somewhere

extractor

-RRB-

For

every

there

is

a

polynomial

time

computable

subsource

somewhere

extractor

SSE

-LRB-

-LCB-

-RCB-

n

-RRB-

-LRB-

-LCB-

-RCB-

m

-RRB-

with

n

o

-LRB-

-RRB-

outputs

for

entropy

k

n

with

output

m

k

We

will

describe

the

ideas

used

for

constructing

this

important

object

and

analyzing

it

in

the

next

section

where

we

will

also

indicate

how

it

is

used

in

the

construction

of

the

final

disperser

Here

we

state

a

central

building

block

mentioned

in

the

previous

section

-LRB-

as

an

improvement

of

the

work

of

Rao

-LSB-

-RSB-

-RRB-

We

construct

an

extractor

for

independent

sources

one

of

which

is

a

block-sources

with

sufficient

number

of

blocks

Theorem

-LRB-

Block

Source

Extractor

-RRB-

There

is

a

polynomial

time

computable

extractor

B

-LRB-

-LCB-

-RCB-

n

-RRB-

-LCB-

-RCB-

m

for

independent

sources

one

of

which

is

a

c-block-sources

with

block

entropy

k

and

the

other

a

source

of

entropy

k

with

m

-LRB-

k

-RRB-

and

c

O

-LRB-

-LRB-

log

n

-RRB-

-LRB-

log

k

-RRB-

-RRB-

A

simple

corollary

of

this

block-source

extractor

B

is

the

following

weaker

-LRB-

though

useful

-RRB-

somewhere

block-source

extractor

SB

A

source

Z

Z

Z

Z

t

is

a

somewhere

c-block-source

of

block

entropy

k

if

for

some

c

indices

i

i

i

c

the

source

Z

i

Z

i

Z

i

c

is

a

c-block-source

Collecting

the

outputs

of

B

on

every

c-subset

of

blocks

results

in

that

somewhere

extractor

Corollary

There

is

a

polynomial

time

computable

somewhere

extractor

SB

-LRB-

-LCB-

-RCB-

n

-RRB-

-LRB-

-LCB-

-RCB-

m

-RRB-

for

independent

sources

one

of

which

is

a

somewhere

c-block-sources

with

block

entropy

k

and

t

blocks

total

and

the

other

a

source

of

entropy

k

with

m

-LRB-

k

-RRB-

c

O

-LRB-

-LRB-

log

n

-RRB-

-LRB-

log

k

-RRB-

-RRB-

and

t

c

In

both

the

theorem

and

corollary

above

the

values

of

entropy

k

we

will

be

interested

in

are

k

n

-LRB-

-RRB-

It

follows

that

a

block-source

with

a

constant

c

O

-LRB-

-RRB-

suffices

We

now

describe

abstractly

a

mechanism

which

will

be

used

in

the

construction

of

the

disperser

as

well

as

the

subsource

somewhere

extractor

Intuitively

this

mechanism

allows

us

to

identify

parts

of

a

source

which

contain

large

amounts

of

entropy

One

can

hope

that

using

such

a

mechanism

one

can

partition

a

given

source

into

blocks

in

a

way

which

make

it

a

block-source

or

alternatively

focus

on

a

part

of

the

source

which

is

unusually

condensed

with

entropy

two

cases

which

may

simplify

the

extraction

problem

The

reader

may

decide

now

or

in

the

middle

of

this

section

to

skip

ahead

to

the

next

section

which

describes

the

construction

of

the

subsource

somewhere

extractor

SSE

which

extensively

uses

this

mechanism

Then

this

section

may

seem

less

abstract

as

it

will

be

clearer

where

this

mechanism

is

used

This

mechanism

was

introduced

by

Barak

et

al.

-LSB-

-RSB-

and

was

essential

in

their

disperser

Its

use

in

this

paper

is

far

more

involved

-LRB-

in

particular

it

calls

itself

recursively

a

fact

which

creates

many

subtleties

-RRB-

However

at

a

high

level

the

basic

idea

behind

the

mechanism

is

the

same

Let

Z

be

a

source

and

Z

a

part

of

Z

-LRB-

Z

projected

on

a

subset

of

the

coordinates

-RRB-

We

know

that

Z

has

entropy

k

and

want

to

distinguish

two

possibilities

Z

has

no

entropy

-LRB-

it

is

fixed

-RRB-

or

it

has

at

least

k

entropy

Z

will

get

a

pass

or

fail

grade

hopefully

corresponding

to

the

cases

of

high

or

no

entropy

in

Z

Anticipating

the

use

of

this

mechanism

it

is

a

good

idea

to

think

of

Z

as

a

parent

of

Z

which

wants

to

check

if

this

child

has

sufficient

entropy

Moreover

in

the

context

of

the

initial

sources

X

Y

we

will

operate

on

think

of

Z

as

a

part

of

X

and

thus

that

Y

is

independent

of

Z

and

Z

To

execute

this

test

we

will

compute

two

sets

of

strings

-LRB-

all

of

length

m

say

-RRB-

the

Challenge

C

C

-LRB-

Z

Y

-RRB-

and

the

Response

R

R

-LRB-

Z

Y

-RRB-

Z

fails

if

C

R

and

passes

otherwise

The

key

to

the

usefulness

of

this

mechanism

is

the

following

lemma

which

states

that

what

should

happen

indeed

happens

after

some

restriction

of

the

sources

Z

and

Y

We

state

it

and

then

explain

how

the

functions

C

and

R

are

defined

to

accommodate

its

proof

Lemma

Assume

Z

Y

are

sources

of

entropy

k.

If

Z

has

entropy

k

O

-LRB-

m

-RRB-

then

there

are

subsources

Z

of

Z

and

Y

of

Y

such

that

Pr

-LSB-

Z

passes

-RSB-

Pr

-LSB-

C

-LRB-

Z

Y

-RRB-

R

-LRB-

Z

Y

-RRB-

-RSB-

O

-LRB-

-RRB-

m

If

Z

is

fixed

-LRB-

namely

has

zero

entropy

-RRB-

then

for

some

subsources

Z

of

Z

and

Y

of

Y

we

have

Pr

-LSB-

Z

fails

-RSB-

Pr

-LSB-

C

-LRB-

Z

Y

-RRB-

R

-LRB-

Z

Y

-RRB-

-RSB-

Once

we

have

such

a

mechanism

we

will

design

our

disperser

algorithm

assuming

that

the

challenge

response

mechanism

correctly

identifies

parts

of

the

source

with

high

or

low

levels

of

entropy

Then

in

the

analysis

we

will

ensure

that

our

algorithm

succeeds

in

making

the

right

decisions

at

least

on

subsources

of

the

original

input

sources

Now

let

us

explain

how

to

compute

the

sets

C

and

R

We

will

use

some

of

the

constructs

above

with

parameters

which

do

n't

quite

fit

The

response

set

R

-LRB-

Z

Y

-RRB-

pSE

-LRB-

Z

Y

-RRB-

is

chosen

to

be

the

output

of

the

somewhere

extractor

of

Proposition

The

challenge

set

C

-LRB-

Z

Y

-RRB-

SSE

-LRB-

Z

Y

-RRB-

is

chosen

to

be

the

output

of

the

subsource

somewhere

extractor

of

Theorem

Why

does

it

work

We

explain

each

of

the

two

claims

in

the

lemma

in

turn

-LRB-

and

after

each

comment

on

the

important

parameters

and

how

they

differ

from

Barak

et

al.

-LSB-

-RSB-

-RRB-

Z

has

entropy

We

need

to

show

that

Z

passes

the

test

with

high

probability

We

will

point

to

the

output

string

in

C

-LRB-

Z

Y

-RRB-

which

avoids

R

-LRB-

Z

Y

-RRB-

with

high

probability

as

follows

In

the

analysis

we

will

use

the

union

bound

on

several

events

one

associated

with

each

-LRB-

poly

-LRB-

n

-RRB-

many

-RRB-

string

in

pSE

-LRB-

Z

Y

-RRB-

We

note

that

by

the

definition

of

the

response

function

if

we

want

to

fix

a

particular

element

in

the

response

set

to

a

particular

value

we

can

do

this

by

fixing

E

-LRB-

Z

i

-RRB-

and

E

-LRB-

Y

i

-RRB-

This

fixing

keeps

the

restricted

sources

independent

and

loses

only

O

-LRB-

m

-RRB-

entropy

In

the

subsource

of

Z

guaranteed

to

exist

by

Theorem

we

can

afford

to

lose

this

entropy

in

Z

Thus

we

conclude

that

one

of

its

outputs

is

uniform

The

probability

that

this

output

will

equal

any

fixed

value

is

thus

m

completing

the

argument

We

note

that

we

can

handle

the

polynomial

output

size

of

pSE

since

the

uniform

string

has

length

m

n

-LRB-

-RRB-

-LRB-

something

which

could

not

be

done

with

the

technology

available

to

Barak

et

al.

-LSB-

-RSB-

-RRB-

Z

has

no

entropy

We

now

need

to

guarantee

that

in

the

chosen

subsources

-LRB-

which

we

choose

-RRB-

Z

Y

all

strings

in

C

C

-LRB-

Z

Y

-RRB-

are

in

R

-LRB-

Z

Y

-RRB-

First

notice

that

as

Z

is

fixed

C

is

only

a

function

of

Y

We

set

Y

to

be

the

subsource

of

Y

that

fixes

all

strings

in

C

C

-LRB-

Y

-RRB-

to

their

most

popular

values

-LRB-

losing

only

m

entropy

from

Y

-RRB-

We

take

care

of

including

these

fixed

strings

in

R

-LRB-

Z

Y

-RRB-

one

at

a

time

by

restricting

to

subsources

assuring

that

Let

be

any

m-bit

string

we

want

to

appear

in

R

-LRB-

Z

Y

-RRB-

Recall

that

R

-LRB-

z

y

-RRB-

V

-LRB-

E

-LRB-

z

i

-RRB-

E

-LRB-

y

i

-RRB-

-RRB-

We

pick

a

good

seed

i

and

restrict

Z

Y

to

subsources

with

only

O

-LRB-

m

-RRB-

less

entropy

by

fixing

E

-LRB-

Z

i

-RRB-

a

and

E

-LRB-

Y

i

-RRB-

b

to

values

-LRB-

a

b

-RRB-

for

which

V

-LRB-

a

b

-RRB-

This

is

repeated

suc-cessively

times

and

results

in

the

final

subsources

Z

Y

on

which

Z

fails

with

probability

Note

that

we

keep

reducing

the

entropy

of

our

sources

times

which

necessitates

that

this

be

tiny

-LRB-

here

we

could

not

tolerate

poly

-LRB-

n

-RRB-

and

indeed

can

guarantee

n

o

-LRB-

-RRB-

at

least

on

a

subsource

this

is

one

aspect

of

how

crucial

the

subsource

somewhere

extractor

SSE

is

to

the

construction

We

note

that

initially

it

seemed

like

the

Challenge-Response

mechanism

as

used

in

-LSB-

-RSB-

could

not

be

used

to

handle

entropy

that

is

significantly

less

than

n

-LRB-

which

is

approxi-mately

the

bound

that

many

of

the

previous

constructions

got

stuck

at

-RRB-

The

techniques

of

-LSB-

-RSB-

involved

partitioning

the

sources

into

t

pieces

of

length

n/t

each

with

the

hope

that

one

of

those

parts

would

have

a

significant

amount

of

entropy

yet

there

'd

be

enough

entropy

left

over

in

the

rest

of

the

source

-LRB-

so

that

the

source

can

be

partitioned

into

a

block

source

-RRB-

However

it

is

not

clear

how

to

do

this

when

the

total

entropy

is

less

than

n.

On

the

one

hand

we

will

have

to

partition

our

sources

into

blocks

of

length

significantly

more

than

n

-LRB-

or

the

adversary

could

distribute

a

negligible

fraction

of

entropy

in

all

blocks

-RRB-

On

the

other

hand

if

our

blocks

are

so

large

a

single

block

could

contain

all

the

entropy

Thus

it

was

not

clear

how

to

use

the

challenge

response

mechanism

to

find

a

block

source

SSE

We

now

explain

some

of

the

ideas

behind

the

construction

of

the

subsource

somewhere

extractor

SSE

of

Theorem

Consider

the

source

X

We

are

seeking

to

find

in

it

a

somewhere

c-block-source

so

that

we

can

use

it

-LRB-

together

with

Y

-RRB-

in

the

block-source

extractor

of

Theorem

Like

in

previous

works

in

the

extractor

literature

-LRB-

e.g.

-LSB-

-RSB-

-RRB-

we

use

a

win-win

analysis

which

shows

that

either

X

is

already

a

somewhere

c-block-source

or

it

has

a

condensed

part

which

contains

a

lot

of

the

entropy

of

the

source

In

this

case

we

proceed

recursively

on

that

part

Continuing

this

way

we

eventually

reach

a

source

so

condensed

that

it

must

be

a

somewhere

block

source

Note

that

in

-LSB-

-RSB-

the

challenge

response

mechanism

was

used

to

find

a

block

source

also

but

there

the

entropy

was

so

high

that

they

could

afford

to

use

t

blocks

low

high

med

n

bits

total

t

blocks

med

med

low

high

responded

Challenge

Challenge

responded

Challenge

Unresponded

med

med

n/t

bits

total

SB

SB

Outputs

Somewhere

Block

Source

Not

Somewhere

block

source

X

Random

Row

k

low

k

t

k

c

high

k

k

t

med

k

c

Figure

Analysis

of

the

subsource

somewhere

extractor

a

tree

of

depth

They

did

not

need

to

recurse

or

condense

the

sources

Consider

the

tree

of

parts

of

the

source

X

evolved

by

such

recursion

Each

node

in

the

tree

corresponds

to

some

interval

of

bit

locations

of

the

source

with

the

root

node

corresponding

to

the

entire

source

A

node

is

a

child

of

another

if

its

interval

is

a

subinterval

of

the

parent

It

can

be

shown

that

some

node

in

the

tree

is

good

it

corresponds

to

a

somewhere

c-source

but

we

do

n't

know

which

node

is

good

Since

we

only

want

a

somewhere

extractor

we

can

apply

to

each

node

the

somewhere

block-source

extractor

of

Corollary

this

will

give

us

a

random

output

in

every

good

node

of

the

tree

The

usual

idea

is

output

all

these

values

-LRB-

and

in

seeded

extractors

merge

them

using

the

ex-ternally

given

random

seed

-RRB-

However

we

can

not

afford

to

do

that

here

as

there

is

no

external

seed

and

the

number

of

these

outputs

-LRB-

the

size

of

the

tree

-RRB-

is

far

too

large

Our

aim

then

will

be

to

significantly

prune

this

number

of

candidates

and

in

fact

output

only

the

candidates

on

one

path

to

a

canonical

good

node

First

we

will

give

a

very

informal

description

of

how

to

do

this

-LRB-

Figure

-RRB-

Before

calling

SSE

recursively

on

a

subpart

of

a

current

part

of

X

we

'll

use

the

Challenge-Response

mechanism

described

above

to

check

if

it

has

entropy

We

will

recurse

only

with

the

first

-LRB-

in

left-to-right

order

-RRB-

part

which

passes

the

entropy

test

Thus

note

that

we

will

follow

a

single

path

on

this

tree

The

algorithm

SSE

will

output

only

the

sets

of

strings

produced

by

applying

the

somewhere

c-block-extractor

SB

on

the

parts

visited

along

this

path

Now

let

us

describe

the

algorithm

for

SSE

SSE

will

be

initially

invoked

as

SSE

-LRB-

x

y

-RRB-

but

will

recursively

call

itself

with

different

inputs

z

which

will

always

be

substrings

of

x.

We

note

that

we

ignore

the

additional

complication

that

SSE

will

actually

use

recursion

also

to

compute

the

challenge

in

the

challenge-response

mechanism

Algorithm

SSE

-LRB-

z

y

-RRB-

Let

pSE

-LRB-

-RRB-

be

the

somewhere

extractor

with

a

polynomial

number

of

outputs

of

Proposition

Let

SB

be

the

somewhere

block

source

extractor

of

Corollary

Global

Parameters

t

the

branching

factor

of

the

tree

k

the

original

entropy

of

the

sources

Output

will

be

a

set

of

strings

If

z

is

shorter

than

k

return

the

empty

set

else

continue

Partition

z

into

t

equal

parts

z

z

z

z

t

Compute

the

response

set

R

-LRB-

z

y

-RRB-

which

is

the

set

of

strings

output

by

pSE

-LRB-

z

y

-RRB-

For

i

-LSB-

t

-RSB-

compute

the

challenge

set

C

-LRB-

z

i

y

-RRB-

which

is

the

set

of

outputs

of

SSE

-LRB-

z

i

y

-RRB-

Let

h

be

the

smallest

index

for

which

the

challenge

set

C

-LRB-

z

h

y

-RRB-

is

not

contained

in

the

response

set

-LRB-

set

h

t

if

no

such

index

exists

-RRB-

Output

SB

-LRB-

z

y

-RRB-

concatenated

with

SSE

-LRB-

z

h

y

-RRB-

Proving

that

indeed

there

are

subsources

on

which

SSE

will

follow

a

path

to

a

good

-LRB-

for

these

subsources

-RRB-

node

is

the

heart

of

the

analysis

It

is

especially

complex

due

to

the

fact

that

the

recursive

call

to

SSE

on

subparts

of

the

current

part

is

used

to

generate

the

Challenges

for

the

Challenge-Response

mechanism

Since

SSE

works

only

on

a

subsources

we

have

to

guarantee

that

restriction

to

these

does

not

hamper

the

behavior

of

SSE

in

past

and

future

calls

to

it

Let

us

turn

to

the

highlights

of

the

analysis

for

the

proof

of

Theorem

Let

k

be

the

entropy

of

the

source

Z

at

some

place

in

this

recursion

Either

one

of

its

blocks

Z

i

has

entropy

k

c

in

which

case

it

is

very

condensed

since

its

size

is

n/t

for

t

c

-RRB-

or

it

must

be

that

c

of

its

blocks

form

a

c-block

source

with

block

entropy

k

t

-LRB-

which

is

sufficient

for

the

extractor

B

used

by

SB

-RRB-

In

the

case

the

fact

that

SB

-LRB-

z

y

-RRB-

is

part

of

the

output

of

of

our

SSE

guarantees

that

we

are

somewhere

random

If

the

case

does

n't

hold

let

Z

i

be

the

leftmost

condensed

block

We

want

to

ensure

that

-LRB-

on

appropriate

subsources

-RRB-

SSE

calls

itself

on

that

ith

subpart

To

do

so

we

fix

all

Z

j

for

j

i

to

constants

z

j

We

are

now

in

the

position

described

in

the

Challenge-Response

mechanism

section

that

-LRB-

in

each

of

the

first

i

parts

-RRB-

there

is

either

no

entropy

or

lots

of

entropy

We

further

restrict

to

subsources

as

explained

there

which

make

all

first

i

blocks

fail

the

entropy

test

and

the

fact

that

Z

i

still

has

lots

of

entropy

after

these

restrictions

-LRB-

which

we

need

to

prove

-RRB-

ensures

that

indeed

SSE

will

be

recursively

applied

to

it

We

note

that

while

the

procedure

SSE

can

be

described

recursively

the

formal

analysis

of

fixing

subsources

is

actually

done

globally

to

ensure

that

indeed

all

entropy

requirements

are

met

along

the

various

recursive

calls

Let

us

remark

on

the

choice

of

the

branching

parameter

t.

On

the

one

hand

we

'd

like

to

keep

it

small

as

it

dominates

the

number

of

outputs

t

c

of

SB

and

thus

the

total

number

of

outputs

-LRB-

which

is

t

c

log

t

n

-RRB-

For

this

purpose

any

t

n

o

-LRB-

-RRB-

will

do

On

the

other

hand

t

should

be

large

enough

so

that

condensing

is

faster

than

losing

entropy

Here

note

that

if

Z

is

of

length

n

its

child

has

length

n/t

while

the

entropy

shrinks

only

from

k

to

k

c

A

simple

calculation

shows

that

if

k

-LRB-

log

t

-RRB-

log

c

-RRB-

n

then

a

c

block-source

must

exist

along

such

a

path

before

the

length

shrinks

to

k.

Note

that

for

k

n

-LRB-

-RRB-

a

-LRB-

large

enough

-RRB-

constant

t

suffices

-LRB-

resulting

in

only

logarithmic

number

of

outputs

of

SSE

-RRB-

This

analysis

is

depicted

pictorially

in

Figure

D

Following

is

a

rough

description

of

our

disperser

D

proving

Theorem

The

high

level

structure

of

D

will

resemble

the

structure

of

SSE

we

will

recursively

split

the

source

X

and

look

for

entropy

in

the

parts

However

now

we

must

output

a

single

value

-LRB-

rather

than

a

set

-RRB-

which

can

take

both

values

and

This

was

problematic

in

SSE

even

knowing

where

the

good

part

-LRB-

containing

a

c-block-source

-RRB-

was

How

can

we

do

so

now

We

now

have

at

our

disposal

a

much

more

powerful

tool

for

generating

challenges

-LRB-

and

thus

detecting

entropy

-RRB-

namely

the

subsource

somewhere

disperser

SSE

Note

that

in

constructing

SSE

we

only

had

essentially

the

somewhere

c-block-source

extractor

SB

to

-LRB-

recursively

-RRB-

generate

the

challenges

but

it

depended

on

a

structural

property

of

the

block

it

was

applied

on

Now

SSE

does

not

assume

any

structure

on

its

input

sources

except

sufficient

entropy

Let

us

now

give

a

high

level

description

of

the

disperser

D

It

too

will

be

a

recursive

procedure

If

when

processing

some

part

Z

of

X

it

realizes

that

a

subpart

Z

i

of

Z

has

entropy

but

not

all

the

entropy

of

Z

-LRB-

namely

Z

i

Z

is

a

-RRB-

then

we

will

halt

and

produce

the

output

of

D.

Intuitively

thinking

about

the

Challenge-Response

mechanism

described

above

the

analysis

implies

that

we

There

is

a

catch

it

only

works

on

subsources

of

them

This

will

cause

us

a

lot

of

head

ache

we

will

elaborate

on

it

later

can

either

pass

or

fail

Z

i

-LRB-

on

appropriate

subsources

-RRB-

But

this

means

that

the

outcome

of

this

entropy

test

is

a

disperser

To

capitalize

on

this

idea

we

want

to

use

SSE

to

identify

such

a

block-source

in

the

recursion

tree

As

before

we

scan

the

blocks

from

left

to

right

and

want

to

distinguish

three

possibilities

low

Z

i

has

low

entropy

In

this

case

we

proceed

to

i

medium

Z

i

has

medium

entropy

-LRB-

Z

i

Z

is

a

block-source

-RRB-

In

which

case

we

halt

and

produce

an

output

-LRB-

zero

or

one

-RRB-

high

Z

i

has

essentially

all

entropy

of

Z

In

this

case

we

recurse

on

the

condensed

block

Z

i

As

before

we

use

the

Challenge-Response

mechanism

-LRB-

with

a

twist

-RRB-

We

will

compute

challenges

C

-LRB-

Z

i

Y

-RRB-

and

responses

R

-LRB-

Z

Y

-RRB-

all

strings

of

length

m

The

responses

are

computed

exactly

as

before

using

the

somewhere

extractor

pSE

The

Challenges

are

computed

using

our

subsource

somewhere

extractor

SSE

We

really

have

possibilities

to

distinguish

since

when

we

halt

we

also

need

to

decide

which

output

bit

we

give

We

will

do

so

by

deriving

three

tests

from

the

above

challenges

and

responses

-LRB-

C

H

R

H

-RRB-

-LRB-

C

M

R

M

-RRB-

-LRB-

C

L

R

L

-RRB-

for

high

medium

and

low

respectively

as

follows

Let

m

m

H

m

M

m

L

be

appropriate

integers

then

in

each

of

the

tests

above

we

restrict

ourselves

to

prefixes

of

all

strings

of

the

appropriate

lengths

only

So

every

string

in

C

M

will

be

a

prefix

of

length

m

M

of

some

string

in

C

H

Similarly

every

string

in

R

L

is

the

length

m

L

prefix

of

some

string

in

R

H

Now

it

is

immediately

clear

that

if

C

M

is

contained

in

R

M

then

C

L

is

contained

in

R

L

Thus

these

tests

are

monotone

if

our

sample

fails

the

high

test

it

will

definitely

fail

all

tests

Algorithm

D

-LRB-

z

y

-RRB-

Let

pSE

-LRB-

-RRB-

be

the

somewhere

extractor

with

a

polynomial

number

of

outputs

of

Proposition

Let

SSE

-LRB-

-RRB-

be

the

subsource

somewhere

extractor

of

Theorem

Global

Parameters

t

the

branching

factor

of

the

tree

k

the

original

entropy

of

the

sources

Local

Parameters

for

recursive

level

m

L

m

M

m

H

Output

will

be

an

element

of

-LCB-

-RCB-

If

z

is

shorter

than

k

return

Partition

z

into

t

equal

parts

z

z

z

z

t

Compute

three

response

sets

R

L

R

M

R

H

using

pSE

-LRB-

z

y

-RRB-

R

j

will

be

the

prefixes

of

length

m

j

of

the

strings

in

pSE

-LRB-

z

y

-RRB-

For

each

i

-LSB-

t

-RSB-

compute

three

challenge

sets

C

i

L

C

i

M

C

i

H

using

SSE

-LRB-

z

i

y

-RRB-

C

i

j

will

be

the

prefixes

of

length

m

j

of

the

strings

in

SSE

-LRB-

z

i

y

-RRB-

Let

h

be

the

smallest

index

for

which

the

challenge

set

C

L

is

not

contained

in

the

response

set

R

L

if

there

is

no

such

index

output

and

halt

If

C

h

H

is

contained

in

R

H

and

C

h

H

is

contained

in

R

M

output

and

halt

If

C

h

H

is

contained

in

R

H

but

C

h

H

is

not

contained

in

R

M

output

and

halt

t

blocks

t

blocks

t

blocks

fail

fail

fail

pass

pass

pass

fail

fail

fail

fail

fail

fail

fail

fail

fail

fail

fail

fail

pass

pass

fail

pass

fail

fail

low

low

high

low

low

low

high

low

med

n

bits

total

n/t

bits

total

X

low

low

Output

Output

n/t

bits

total

-LRB-

-RRB-

Figure

Analysis

of

the

disperser

Output

D

-LRB-

z

h

y

-RRB-

First

note

the

obvious

monotonicity

of

the

tests

If

Z

i

fails

one

of

the

tests

it

will

certainly

fail

for

shorter

strings

Thus

there

are

only

four

outcomes

to

the

three

tests

written

in

the

order

-LRB-

low

medium

high

-RRB-

-LRB-

pass

pass

pass

-RRB-

-LRB-

pass

pass

fail

-RRB-

-LRB-

pass

fail

fail

-RRB-

and

-LRB-

fail

fail

fail

-RRB-

Conceptually

the

algorithm

is

making

the

following

decisions

using

the

four

tests

-LRB-

fail

fail

fail

-RRB-

Assume

Z

i

has

low

entropy

and

proceed

to

block

i

-LRB-

pass

fail

fail

-RRB-

Assume

Z

i

is

medium

halt

and

output

-LRB-

pass

pass

fail

-RRB-

Assume

Z

i

is

medium

halt

and

output

-LRB-

pass

pass

pass

-RRB-

Assume

Z

i

is

high

and

recurse

on

Z

i

The

analysis

of

this

idea

-LRB-

depicted

in

Figure

-RRB-

turns

out

to

be

more

complex

than

it

seems

There

are

two

reasons

for

that

Now

we

briefly

explain

them

and

the

way

to

overcome

them

in

the

construction

and

analysis

The

first

reason

is

the

fact

mentioned

above

that

SSE

which

generates

the

challenges

works

only

on

a

subsources

of

the

original

sources

Restricting

to

these

subsources

at

some

level

of

the

recursion

-LRB-

as

required

by

the

analysis

of

of

the

test

-RRB-

causes

entropy

loss

which

affects

both

definitions

-LRB-

such

as

these

entropy

thresholds

for

decisions

-RRB-

and

correct-ness

of

SSE

in

higher

levels

of

recursion

Controlling

this

entropy

loss

is

achieved

by

calling

SSE

recursively

with

smaller

and

smaller

entropy

requirements

which

in

turn

limits

the

entropy

which

will

be

lost

by

these

restrictions

In

order

not

to

lose

all

the

entropy

for

this

reason

alone

we

must

work

with

special

parameters

of

SSE

essentially

requiring

that

at

termination

it

has

almost

all

the

entropy

it

started

with

The

second

reason

is

the

analysis

of

the

test

when

we

are

in

a

medium

block

In

contrast

with

the

above

situation

we

can

not

consider

the

value

of

Z

i

fixed

when

we

need

it

to

fail

on

the

Medium

and

Low

tests

We

need

to

show

that

for

these

two

tests

-LRB-

given

a

pass

for

High

-RRB-

they

come

up

both

-LRB-

pass

fail

-RRB-

and

-LRB-

fail

fail

-RRB-

each

with

positive

probability

Since

the

length

of

Medium

challenges

and

responses

is

m

M

the

probability

of

failure

is

at

least

exp

-LRB-

-LRB-

m

M

-RRB-

-RRB-

-LRB-

this

follows

relatively

easily

from

the

fact

that

the

responses

are

somewhere

random

-RRB-

If

the

Medium

test

fails

so

does

the

Low

test

and

thus

-LRB-

fail

fail

-RRB-

has

a

positive

probability

and

our

disperser

D

outputs

with

positive

probability

To

bound

-LRB-

pass

fail

-RRB-

we

first

observe

-LRB-

with

a

similar

reasoning

-RRB-

that

the

low

test

fails

with

probability

at

least

exp

-LRB-

-LRB-

m

L

-RRB-

-RRB-

But

we

want

the

medium

test

to

pass

at

the

same

time

This

probability

is

at

least

the

probability

that

low

fails

minus

the

probability

that

medium

fails

We

already

have

a

bound

on

the

latter

it

is

at

most

poly

-LRB-

n

-RRB-

exp

-LRB-

m

M

-RRB-

Here

comes

our

control

of

the

different

length

into

play

we

can

make

the

m

L

sufficiently

smaller

than

m

M

to

yield

this

difference

positive

We

conclude

that

our

disperser

D

outputs

with

positive

probability

as

well

Finally

we

need

to

take

care

of

termination

we

have

to

ensure

that

the

recurrence

always

arrives

at

a

medium

subpart

but

it

is

easy

to

chose

entropy

thresholds

for

low

medium

and

high

to

ensure

that

this

happens

In

this

section

we

will

breifly

discuss

an

issue

which

arises

in

our

construction

that

we

glossed

over

in

the

previous

sections

Recall

our

definition

of

subsources

Definition

-LRB-

Subsources

-RRB-

Given

random

variables

Z

and

Z

on

-LCB-

-RCB-

n

we

say

that

Z

is

a

deficiency

d

subsource

of

Z

and

write

Z

Z

if

there

exists

a

set

A

-LCB-

-RCB-

n

such

that

-LRB-

Z

A

-RRB-

Z

and

Pr

-LSB-

Z

A

-RSB-

d

Recall

that

we

were

able

to

guarantee

that

our

algorithms

made

the

right

decisions

only

on

subsources

of

the

original

source

For

example

in

the

construction

of

our

final

disperser

to

ensure

that

our

algorithms

correctly

identify

the

right

high

block

to

recurse

on

we

were

only

able

to

guarantee

that

there

are

subsources

of

the

original

sources

in

which

our

algorithm

makes

the

correct

decision

with

high

probability

Then

later

in

the

analysis

we

had

to

further

restrict

the

source

to

even

smaller

subsources

This

leads

to

complications

since

the

original

event

of

picking

the

correct

high

block

which

occurred

with

high

probability

may

become

an

event

which

does

not

occur

with

high

probability

in

the

current

subsource

To

handle

these

kinds

of

issues

we

will

need

to

be

very

careful

in

measuring

how

small

our

subsources

are

In

the

formal

analysis

we

introduce

the

concept

of

resiliency

to

deal

with

this

To

give

an

idea

of

how

this

works

here

is

the

actual

definition

of

somewhere

subsource

extractor

that

we

use

in

the

formal

analysis

Definition

-LRB-

subsource

somewhere

extractor

-RRB-

A

function

SSE

-LCB-

-RCB-

n

-LCB-

-RCB-

n

-LRB-

-LCB-

-RCB-

m

-RRB-

is

a

subsource

somewhere

extractor

with

nrows

output

rows

entropy

threshold

k

deficiency

def

resiliency

res

and

error

if

for

every

-LRB-

n

k

-RRB-

sources

X

Y

there

exist

a

deficiency

def

subsource

X

good

of

X

and

a

deficiency

def

subsource

Y

good

of

Y

such

that

for

every

deficiency

res

subsource

X

of

X

good

and

deficiency

res

subsource

Y

of

Y

good

the

random

variable

SSE

-LRB-

X

Y

-RRB-

is

close

to

a

m

somewhere

random

distribution

It

turns

out

that

our

subsource

somewhere

extractor

does

satisfy

this

stronger

definition

The

advantage

of

this

definition

is

that

it

says

that

once

we

restrict

our

attention

to

the

good

subsources

X

good

Y

good

we

have

the

freedom

to

further

restrict

these

subsources

to

smaller

subsources

as

long

as

our

final

subsources

do

not

lose

more

entropy

than

the

resiliency

permits

This

issue

of

managing

the

resiliency

for

the

various

objects

that

we

construct

is

one

of

the

major

technical

challenges

that

we

had

to

overcome

in

our

construction

Better

Independent

Source

Extractors

A

bottleneck

to

improving

our

disperser

is

the

block

versus

general

source

extractor

of

Theorem

A

good

next

step

would

be

to

try

to

build

an

extractor

for

one

block

source

-LRB-

with

only

a

constant

number

of

blocks

-RRB-

and

one

other

independent

source

which

works

for

polylog-arithmic

entropy

or

even

an

extractor

for

a

constant

number

of

sources

that

works

for

sub-polynomial

entropy

Simple

Dispersers

While

our

disperser

is

polynomial

time

computable

it

is

not

as

explicit

as

one

might

have

hoped

For

instance

the

Ramsey

Graph

construction

of

Frankl-Wilson

is

extremely

simple

For

a

prime

p

let

the

vertices

of

the

graph

be

all

subsets

of

-LSB-

p

-RSB-

of

size

p

Two

vertices

S

T

are

adjacent

if

and

only

if

S

T

mod

p

It

would

be

nice

to

find

a

good

disperser

that

beats

the

Frankl-Wilson

construction

yet

is

comparable

in

simplicity

-LSB-

-RSB-

N.

Alon

The

shannon

capacity

of

a

union

Combinatorica

-LSB-

-RSB-

B.

Barak

A

simple

explicit

construction

of

an

n

o

-LRB-

log

n

-RRB-

ramsey

graph

Technical

report

Arxiv

-LSB-

-RSB-

B.

Barak

R.

Impagliazzo

and

A.

Wigderson

Extracting

randomness

using

few

independent

sources

In

Proceedings

of

the

Annual

IEEE

Symposium

on

Foundations

of

Computer

Science

pages

-LSB-

-RSB-

B.

Barak

G.

Kindler

R.

Shaltiel

B.

Sudakov

and

A.

Wigderson

Simulating

independence

New

constructions

of

condensers

Ramsey

graphs

dispersers

and

extractors

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

J.

Bourgain

More

on

the

sum-product

phenomenon

in

prime

fields

and

its

applications

International

Journal

of

Number

Theory

-LSB-

-RSB-

J.

Bourgain

N.

Katz

and

T.

Tao

A

sum-product

estimate

in

finite

fields

and

applications

Geometric

and

Functional

Analysis

-LSB-

-RSB-

M.

Capalbo

O.

Reingold

S.

Vadhan

and

A.

Wigderson

Randomness

conductors

and

constant-degree

lossless

expanders

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

B.

Chor

and

O.

Goldreich

Unbiased

bits

from

sources

of

weak

randomness

and

probabilistic

communication

complexity

SIAM

Journal

on

Computing

-LRB-

-RRB-

-LSB-

-RSB-

P.

Frankl

and

R.

M.

Wilson

Intersection

theorems

with

geometric

consequences

Combinatorica

-LRB-

-RRB-

-LSB-

-RSB-

P.

Gopalan

Constructing

ramsey

graphs

from

boolean

function

representations

In

Proceedings

of

the

Annual

IEEE

Conference

on

Computational

Complexity

-LSB-

-RSB-

V.

Grolmusz

Low

rank

co-diagonal

matrices

and

ramsey

graphs

Electr

J.

Comb

-LSB-

-RSB-

V.

Guruswami

Better

extractors

for

better

codes

Electronic

Colloquium

on

Computational

Complexity

-LRB-

ECCC

-RRB-

-LRB-

-RRB-

-LSB-

-RSB-

C.

J.

Lu

O.

Reingold

S.

Vadhan

and

A.

Wigderson

Extractors

Optimal

up

to

constant

factors

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

P.

Miltersen

N.

Nisan

S.

Safra

and

A.

Wigderson

On

data

structures

and

asymmetric

communication

complexity

Journal

of

Computer

and

System

Sciences

-LSB-

-RSB-

N.

Nisan

and

D.

Zuckerman

More

deterministic

simulation

in

logspace

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

P.

Pudlak

and

V.

Rodl

Pseudorandom

sets

and

explicit

constructions

of

ramsey

graphs

Submitted

for

publication

-LSB-

-RSB-

A.

Rao

Extractors

for

a

constant

number

of

polynomially

small

min-entropy

independent

sources

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

-LSB-

-RSB-

R.

Raz

Extractors

with

weak

random

seeds

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

O.

Reingold

R.

Shaltiel

and

A.

Wigderson

Extracting

randomness

via

repeated

condensing

In

Proceedings

of

the

Annual

IEEE

Symposium

on

Foundations

of

Computer

Science

pages

-LSB-

-RSB-

M.

Santha

and

U.

V.

Vazirani

Generating

quasi-random

sequences

from

semi-random

sources

Journal

of

Computer

and

System

Sciences

-LSB-

-RSB-

R.

Shaltiel

Recent

developments

in

explicit

constructions

of

extractors

Bulletin

of

the

European

Association

for

Theoretical

Computer

Science

-LSB-

-RSB-

A.

Ta-Shma

and

D.

Zuckerman

Extractor

codes

IEEE

Transactions

on

Information

Theory

-LSB-

-RSB-

U.

Vazirani

Towards

a

strong

communication

complexity

theory

or

generating

quasi-random

sequences

from

two

communicating

slightly-random

sources

-LRB-

extended

abstract

-RRB-

In

Proceedings

of

the

Annual

ACM

Symposium

on

Theory

of

Computing

pages

-LSB-

-RSB-

A.

Wigderson

and

D.

Zuckerman

Expanders

that

beat

the

eigenvalue

bound

Explicit

construction

and

applications

Combinatorica

-LRB-

-RRB-

disperser
distribution
structure
deficiency
theorem
dispersers
termination
algorithms
recursion
subsource somewhere extractor
ramsey graphs
independent sources
tools
independent source
randomness extraction
ramsey graph
bipartite graph
entropy
extractor
resiliency
extractors
subsource

polynomial time computable disperser
construction of disperser
explicit disperser
sum-product theorem
block-sources