700 likes | 949 Views
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 CS Applications in:
E N D
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 CS Applications 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 1 = 1 2 3 n spectrum D-regular graph operator • Eigenvector basis v1,…,vn, eigenvalues 1=1 …n • Denote 2(G)=max{|2|,|n|}. • Smaller 2(G) better expansion
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
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 Full= The neighbors of a vertex are computable in time polylog(|V|)
Expander constructions Mild= The graph is computable in time poly(|V|)
Outline • The result • The technique: a new variant of the zig-zag product
The construction scheme [ReingoldVadhanWigderson00] Small expander Increase size Reduce degree Improve 2
Heart of [ReingoldVadhanWigderson00] the zig-zag product G zig-zag (N,DG,G) G zigzag H H (DG,DH,H) (N·DG, DH2, ≈H+G) 2 degree vertices
The replacement product Slightly incomplete….
The replacement product For simplicity assume G is DG edge-colorable
The replacement product Cloud
The Zig-Zag product • 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 Example: v and u are connected u v
Intuition vs. formality • 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
Why does the zig-zag work? The graph after replacement cloud cloud cloud cloud cloud cloud cloud cloud cloud
Why does the zig-zag work? Wasted H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud A uniform distribution over a subset of clouds
Why does the zig-zag work? H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud
Why does the zig-zag work? H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud
65 65 65 7 10 3 Why does the zig-zag work?Buffer point-of-view A vertex in the new graph: Cloud-label Edge-label [N][DG] A H-step: 0.5 0.5 H 10 3 7
65 9 3 3 Why does the zig-zag work?Buffer point-of-view A vertex in the new graph: Cloud-label Edge-label [N][DG] A G-step: G For simplicity assume G is DG edge-colorable 3 65 9
A uniform distribution over a subset of clouds: • The marginal on is uniform • Conditioned on every cloud in the support, is uniform Why does the zig-zag work?Buffer point-of-view H step G step H step The support of the distribution Cloud-label Edge-label [N][DG]
Why does the zig-zag work?Buffer point-of-view Wasted H step G step H step Cloud-label Edge-label Cloud=k Uniform H does nothing
Why does the zig-zag work?Buffer point-of-view H step G step H step Cloud-label Edge-label Edge-label - Applying G is just taking a step fromaccording 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 Cloud=k H adds entropy!
Spectral gap of the zig-zag • We take two H-steps, hence the degree is DH2. • On some inputs, only one of the two steps is useful This incurs a quadratic loss in 2.
u v First Attempt: zig-zag with 3 cloud steps
The problem The graph after replacement cloud cloud cloud cloud cloud cloud cloud cloud cloud
The problem Wasted H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud A uniform distribution over a subset of clouds
The problem H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud
cloud The problem H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud
Ideally: H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud
cloud The problem H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud
The problem H step G step H step G step H step cloud cloud cloud Wasted cloud cloud cloud cloud cloud cloud Potentially: 1 out of 2 cloud steps is wasted
Cloud=k Uniform H does nothing The problem:Buffer point-of-view H step G step H step G step H step Cloud-label Edge-label A uniform distribution over a subset of clouds
The problem:Buffer point-of-view H step G step H step G step H step Cloud-label Edge-label Edge-label - Applying G is just taking a step fromaccording to - Since G is an expander, after this step, has more entropy - G is a permutation, hence the entropy in is reduced
The problem:Buffer point-of-view H step G step H step G step H step Cloud-label Edge-label Cloud=k H adds entropy!
The problem:Buffer point-of-view H step G step H step G step H step Cloud-label Edge-label Edge-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 random step over the graph according to an unknown distribution).
The problem:Buffer point-of-view H step G step H step G step H step 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
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 parallel edges
Why does this work? The graph after modified replacement cloud cloud cloud cloud cloud cloud cloud cloud cloud DG10 vertices
Why does this work? Wasted H step G step H step G step H step cloud cloud cloud cloud cloud cloud cloud cloud cloud A uniform distribution over a subset of clouds