A Combinatorial Construction of Almost-Ramanujan Graphs Using the Zig-Zag product Avraham Ben-Aroya...

Post on 28-Mar-2015

216 views 4 download

Transcript of A Combinatorial Construction of Almost-Ramanujan Graphs Using the Zig-Zag product Avraham Ben-Aroya...

A Combinatorial Construction of Almost-Ramanujan

Graphs Using the Zig-Zag product

Avraham Ben-Aroya Amnon Ta-Shma

Tel-Aviv University

Expander graphs

- Sparse graphs with strong connectivity

- Fundamental objects in Math and CSApplications in: Communication networks Derandomization Error correcting codes PCPs Proof complexity …

Properties of expanders

Many pseudorandom properties: No small cuts Every “not-too-large” set expands Random walks mix fast Spectral gap …

Challenge: Explicit constructions of “good”

expanders

Spectral gap

0 0 … 1/D 0

0 1/D … 0 1/D

1/D 0 … 1/D 0

0 1/D … 0 0

Eigenvector basis v1,…,vn, eigenvalues 1=1 … n

Denote 2(G)=max{|2|,|n|}.

Smaller 2(G) better expansion

1 = 12

3

n

D-regular graph operator spectrum

What is the optimal spectral gap?

[AlonBoppana] : Any D-regular graph satisfies

2(G) 2(D-1) /D – o(1) 2D-1/2

o(1)0 as the number of vertices grows

[Friedman] : Random D-regular graphs satisfy 2(G) 2(D-1) /D +

A graph is Ramanujan if 2(G) 2(D-1) /D

Expander constructions

Construction Type 2(G)

[LubotzkyPhilipsSarnak86,

Margulis88,Morgenstern94]

Algebraic

Ramanujan

2(G) 2(D-1) /D

2D-1/2

[ReingoldVadhanWigderson00]

Combinatorial

O(D-1/3)

Why do we look for combinatorial constructions?

A fundamental object in CS deserves a combinatorial proof [RVW00]

Central component in:• Good combinatorial expanders [CRVW02]• Undirected connectivity in L [Reingold05]• Cayley expanders [ALW01, MW02, RSW04]

Expander constructions

Construction Type Explicitness

2(G)

[LPS86,Margulis88,

Morgenstern94]Algebraic Full

Ramanujan,

2D-1/2

[ReingoldVadhanWigderson00]

Combinatorial

Full O(D-1/3)

Full= The neighbors of a vertex are computable in time polylog(|V|)

Expander constructions

Construction Type Explicitness

2(G)

[LPS86,Margulis88,

Morgenstern94]Algebraic Full

Ramanujan,

2D-1/2

[ReingoldVadhanWigderson00]

Combinatorial

Full O(D-1/3)

[BiluLinial04] Combinatorial

MildO(D-1/2log1.5D)=

D-1/2+o(1)

Mild= The graph is computable in time poly(|V|)

Expander constructions

Construction Type Explicitness

2(G)

[LPS86,Margulis88,

Morgenstern94]Algebraic Full

Ramanujan,

2D-1/2

[ReingoldVadhanWigderson00]

Combinatorial

Full O(D-1/3)

[BiluLinial04] Combinatorial

MildO(D-1/2log1.5D)=

D-1/2+o(1)

Our result Combinatorial

Full D-1/2+o(1)

Outline

The result

The technique: a new variant of the zig-zag product

The construction scheme [ReingoldVadhanWigderson00]

Small expander Increase size

Improve 2Reduce degree

Heart of [ReingoldVadhanWigderson00] the

zig-zag product

G

H

zig-zag G zigzag H

(N,DG,G)

(DG,DH,H)(N·DG, DH

2, ≈H+G)

vertices degree 2

The replacement product

The replacement product

Slightly incomplete…

.

The replacement product

For simplicity assume G is DG edge-colorable

The replacement product

Cloud

Vertices: same as in replacement product Edges: (v,u)E there is a path of length 3

on the replacement product such that:• The first step is inside a cloud• The second step is inter-cloud• The third step is inside a cloud

The Zig-Zag product

The Zig-Zag product

vuExample:

v and u are connected

Formally: spectral analysis – not in this talk

Intuitively: analyze “entropy flow”Entropy- a measure of randomness

(H2()=-log Prx,y~[x=y])

If G is D-regular then H2(G())H2()+log(D)

When G has a good spectral gap this almost tight

Intuition vs. formality

Intuitive analysis: start with some - a entropy deficient distribution on its vertices

Show that H2(G())>>H2() We’ll analyze only one illuminating

distribution• Formal analysis follows a similar

argument

Intuition vs. formality

Why does the zig-zag work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

The graph afterreplacement

Why does the zig-zag work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

A uniform distribution over a subset of clouds

H step

G step

H step

Wasted

Why does the zig-zag work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

Why does the zig-zag work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

Why does the zig-zag work?Buffer point-of-view

Cloud-label Edge-label [N][DG]

A vertex in the new graph:

A H-step:

65 3

65 10

65 7

0.5

0.5

310

7

H

Why does the zig-zag work?Buffer point-of-view

Cloud-label Edge-label [N][DG]

A vertex in the new graph:

A G-step:

65 3

65 9

G

9 3

3For simplicity

assume G is DG edge-colorable

Why does the zig-zag work?Buffer point-of-view

Cloud-label Edge-label

The support of the distribution

[N][DG]

A uniform distribution over a subset of clouds:• The marginal on is uniform• Conditioned on every cloud in the support, is uniform

H step

G step

H step

Why does the zig-zag work?Buffer point-of-view

H step

G step

H step

Wasted

Cloud-label Edge-label

H does nothing

Cloud=k Uniform

Edge-label

Why does the zig-zag work?Buffer point-of-view

H step

G step

H step

Cloud-label Edge-label

- Applying G is just taking a step from according to

- Since G is an expander, after this step, should have more entropy

- G is a permutation, hence the entropy in is reduced

Why does the zig-zag work?Buffer point-of-view

H step

G step

H step

Cloud-label Edge-label

H adds entropy!

Cloud=k

Spectral gap of the zig-zag

We take two H-steps, hence the degree is DH

2. On some inputs, only one of the two

steps is useful This incurs a quadratic loss in 2.

First Attempt: zig-zag with 3 cloud steps

v

u

The problem

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

The graph afterreplacement

The problem

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

A uniform distribution over a subset of clouds

H step

G step

H step

G step

H step

Wasted

The problem

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

The problem

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

cloud

Ideally:

H step

G step

H step

G step

H step cloud

cloudcloud

cloud

cloud

cloud

cloud

cloud

cloud

The problem

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

cloud

The problem

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

Potentially: 1 out of 2 cloud steps is wasted

Wasted

The problem:Buffer point-of-view

H step

G step

H step

G step

H step

A uniform distribution over a subset of clouds

Cloud-label Edge-label

Cloud=k Uniform

H does nothing

Edge-label

The problem:Buffer point-of-view

Cloud-label Edge-label

H step

G step

H step

G step

H step

- Applying G is just taking a step from according to

- Since G is an expander, after this step, has more entropy

- G is a permutation, hence the entropy in is reduced

H step

G step

H step

G step

H step

The problem:Buffer point-of-view

Cloud-label Edge-label

H adds entropy!

Cloud=k

H step

G step

H step

G step

H step Edge-label

The problem:Buffer point-of-view

Cloud-label

Since the second component is not uniform, we don’t know

how the entropy flows in the G step (this is like taking a randomstep over the graph according to an unknown distribution).

Edge-label

??

The problem:Buffer point-of-view

Cloud-label Edge-label

Cloud=k Uniform

We might be in this case, in which H does nothing

Potentially: 1 out of 2 cloud steps is wasted

H step

G step

H step

G step

H step

Our solution

Once an H-step is wasted, all the following H-steps are not

We shall make sure that all the following G-steps are cloud-dispersing.• This is done by taking thicker clouds and

choosing H in a special way

Replacement with thicker clouds

An expander over the cloud vertices

Replacement with thicker clouds

Multiple paralleledges

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

The graph aftermodified replacement

DG10 vertices

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

A uniform distribution over a subset of clouds

H step

G step

H step

G step

H step

Wasted

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

DG9 vertices

DG10 vertices

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

Almost uniform over outgoing

edges

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H step

Why does this work?

cloud

cloud

cloud

cloud

cloud

cloudcloud

cloud

cloud

H step

G step

H step

G step

H stepNot Wasted

Why does this work?Buffer point-of-view

A vertex in the new graph:

A H-step:

651,… 65

2,…

654,…

0.5

0.5

3,1,…10,2,…

7,4,…

H

H-vertex-label

Cloud-label

Edge-label[N][DG]

10

310

7

Why does this work?Buffer point-of-view

A vertex in the new graph:

A G-step:

651,…

91,…

H-vertex-label

Cloud-label

Edge-label[N][DG]

10

3 3

65 9

G3

For simplicity assume G is DG edge-colorable

H-vertex-label

Why does this work? Buffer point-of-view

Cloud-label

Edge-label

The support of the distribution

[N][DG]10

A uniform distribution over a subset of clouds:• The marginal on is uniform• Conditioned on every cloud in the support, is uniform

H step

G step

H step

G step

H step

Why does this work? Buffer point-of-view

H step

G step

H step

G step

H step

A uniform distribution over a subset of clouds

Cloud=k Uniform

H does nothing

H-vertex-label

Cloud-label

Edge-label

H-vertex-label

Why does this work? Buffer point-of-view

H step

G step

H step

G step

H step

- Applying G is just taking a step from according to

- Since G is an expander, after this step, has more entropy

- G is a permutation, hence the entropy in is reduced

Cloud-label

Edge-labelEdge-label

Why does this work? Buffer point-of-view

H step

G step

H step

G step

H step

Cloud=k

H-vertex-label

Cloud-label

Edge-label

We choose H such that it also “mixes” the second component

H adds entropy!

Now the Edge-label part is close to uniform!

H step

G step

H step

G step

H step

H-vertex-label

Why does this work? Buffer point-of-view

Cloud-label

Edge-labelEdge-label

G moves entropy in the right direction again

Not Wasted

following H adds entropy

The parameters We take 3 steps and at least 2 “work” degree= DH

3 eigenvalue H2

The general case: We take k steps and at least k-1

“work” degree= DHk eigenvalue H

k-1

How to choose H

H is a graph with DG10 vertices that satisfies

two properties: “Mixing”: for every d[DG],

H(d,UDG9) (UDG

,¿) (i.e. almost uniform over the D outgoing

edges) Expansion

How to achieve both? Choose a random H and verify it has both properties

A simple permutationsatisfies this

A problem The previous is only true when G is DG-

edge-colorable In general, G may change the edge-

label in an arbitrary way (may depend on the cloud)

The graphs H is of constant size The number of clouds =The size of the

large graph grows to infinity. It seems unlikely that there is a choice for

H that is good for all distributions.

65 3

G

9 ¿¿¿

A solution

Take the large graph G to be “locally invertible”

G(v,i)=(v[i],(i))

This property of G is preserved throughout the construction

Now things are similar to the DG-edge-colorable case

The final product

G – a “locally invertible” (N, DG, G) H1,…,Hk – a sequence of “mixing”

expanders (found by exhaustive search) each is (DG

10k, DH, H) Do modified replacement and take

the graph of “paths” of length k The resulting graph is

(NDG10k, DH

k, O(Hk-1 + G))

Our result: a fully-explicit combinatorial construction of D-regular graphs with 2(G)=D-1/2+o(1) .

Can we push this further to O(D-1/2) ? Ramanujan+ ?

Thank you!

Conclusions