Post on 19-Jan-2016
Artur CzumajArtur CzumajDIMAPDIMAP (Centre for Discrete Maths and it
Applications)
& Department of Computer ScienceComputer Science
University of WarwickUniversity of Warwick
Testing Expansion in Testing Expansion in Bounded Degree GraphsBounded Degree Graphs
Topic of this talkTopic of this talk
• How to distinguish good expanders from weak expanders
• For graphs of bounded degree, we can distinguish expanders from graphs that are “far” even from poor expanders in O(nn1/21/2) time
[in the framework of property testing]
~~
Main technical challenge:Analysis of random walks on “non-expanders”
ExpandersExpanders
Informally: a graph is an expander if it expands well• every set of vertices has many neighbors
Testing expandersTesting expandersin “property testing framework”in “property testing framework”
To distinguish expanders from graphs that are far from being even poor expanders:
we’ll use the framework of PROPERTY TESTINGPROPERTY TESTING
Property Testing definitionProperty Testing definition
• Given input x
• If x has the property tester passes
• If x is -far from any string that has the property tester fails
• error probability < 1/3
Notion ofNotion of -far-far depends on the problem;depends on the problem;Typically: one needs to changeTypically: one needs to change fraction of the input fraction of the input
to obtain object satisfying the propertyto obtain object satisfying the property
Typically we think aboutTypically we think about as on a small constant, say,as on a small constant, say, = 0.1 = 0.1
Graph propertiesGraph properties
• Measure of being far/close from a property• Is graph connected or is farfar from being connected?
These two graphs are These two graphs are closeclose to be connected to be connected
Graph propertiesGraph properties
• Measure of being far/close from a property• Is graph connected or is farfar from being connected?
far from being connected
11stst definition definition
Graph G is -far from satisfying property PIf one needs to modify more than -fraction of entries in adjacency matrixadjacency matrix to obtain a graph satisfying P
0 1 0 0 1
1 0 1 1 1
0 1 0 0 1
0 1 0 0 0
1 1 1 0 0
11stst definition definition
Graph G is -far from satisfying property PIf one needs to modify more than -fraction of entries in adjacency matrixadjacency matrix to obtain a graph satisfying P
¢n2 edges have to be added/deleted
Suitable for dense graphsSuitable for dense graphs
Usually “boring” for sparse graphsUsually “boring” for sparse graphs
22ndnd definition definition
Graph G is -far from satisfying property PIf one needs to modify more than -fraction of entries in adjacency listsadjacency lists to obtain a graph satisfying P
1
5
2
3
4
5 2
1
1 4 5 3
5
2
2
2
3
22ndnd definition definition
Graph G is -far from satisfying property PIf one needs to modify more than -fraction of entries in adjacency listsadjacency lists to obtain a graph satisfying P
Suitable for sparse graphsSuitable for sparse graphs
Main model: graphs of bounded degreeMain model: graphs of bounded degree
Adjacency matrix modelAdjacency matrix model
• There are very fast property testers• They’re very simple
– Typical algorithm:
• The analysis is (often) very hard• We understand this model very well
– mostly because of very close relation to combinatorics
•Select a random set of vertices USelect a random set of vertices U•Test the property on the subgraph induced by UTest the property on the subgraph induced by U
General resultGeneral result
• Every hereditary property can be tested in constant-timeconstant-time!
• Property is hereditaryhereditary if– It holds if we remove vertices
[Alon & Shapira, 2003-2005]
Adjacency matrix modelAdjacency matrix model
• There are very fast property testers• They’re very simple
– Typical algorithm:
• The analysis is (often) very hard• We understand this model very well
– mostly because of very close relation to combinatorics– Typical running time:
•Select a random set of vertices USelect a random set of vertices U•Test the property on the subgraph induced by UTest the property on the subgraph induced by U
What’s about adjacency lists model ?What’s about adjacency lists model ?
• We consider bounded-degree model– graph has maximum degree dd [constant]
• Much less is known
• Less connection to combinatorics• Connection to random walksrandom walks!
Bounded-degree adjacency list modelBounded-degree adjacency list model
• Testing bipartitness (2-colorability)– Can be done in O(nO(n1/21/2 / / O(1)O(1))) time (Goldreich &
Ron)
~~
Algorithm:Algorithm:•Select O(1/O(1/)) starting vertices•For each vertex run poly(log n/poly(log n/) n) n1/21/2 random walks of length poly(log n/poly(log n/))•If any of the starting vertices lies on an odd-length cycle then rejectreject•Otherwise acceptaccept
Bounded-degree adjacency list modelBounded-degree adjacency list model
• Testing bipartitness (2-colorability)– Can be done in O(nO(n1/21/2 / / O(1)O(1))) time (Goldreich &
Ron)– Cannot be done faster (Goldreich & Ron)
• So: no constant-time algorithms
~~
But we had O(1/O(1))-time tester in the adjacency matrix model
For general bounded degree graphs, testing most of natural properties requiresuperconstant-time (typically, (n1/2))
This talk: testing expansionThis talk: testing expansion
• Can we quickly test if a (bounded degree) graph has good expansion?
(n1/2) lower bound [Goldreich & Ron]– even to distinguish between a very good
expander and disconnected graph with several huge components
• Most property testing results in the bounded degree model use expansion
This talk: testing expansionThis talk: testing expansion
• Can we test if a (bounded degree) graph has good expansion in O(n1/2) time?
• Combinatorial expansion:– Expander = graphs without small cuts
• Every vertex set U (of size at most n/2) has neighborhood of size |U| (for certain positive constant )
• Algebraic expansion:– Expander = graph with large second largest
eigenvalue
Algorithm of Goldreich and RonAlgorithm of Goldreich and Ron
• Choose s = O(1/) vertices at random• For each chosen vertex v
– run m = O(n1/2) random walks of length O(log n)– count the number of collisions at the end-
vertices– If the number of collisions is too large then
• STOP & Reject
• If no STOP then– acceptRandom walks are on regular graphs: for each node v:
choose a random neighbor with prob. 1 / 2dotherwise stay
Algorithm of Goldreich and RonAlgorithm of Goldreich and Ron
• Key use of the well-known fact:
– If a graph is expander then random walk of length O(log n) will reach a random vertex
– If we run c n1/2 random walks (for an appropriate constant c) then we expect the number of collisions to be close to expected: ~ c2/2
• this is testing of uniform distribution
Key task – prove the following:If graph is -far from expander then for many starting vertices random walk won’t mix
cn1/2
21/n( )
Can graphs far from expanders rapidly Can graphs far from expanders rapidly mix?mix?
• We don’t understand well non-expanders• We understand even less graphs that are far
from expanders
• Goldreich and Ron suggested algorithm• Couldn’t analyze it• Gave a conjecture – which if true – would
yield property tester
Testing vertex expansionTesting vertex expansion
• Graph G = (V,E) is an -expander-expander ifFor every X 4V, |X||V|/2 holds: |N(X)| |X|
• Our goal:– Distinguish graphs with vertex expansion Distinguish graphs with vertex expansion fromfrom
those those -far from having vertex expansion -far from having vertex expansion **, , ** ¿¿
In our case * = O(/log n)
Goldreich & Ron analyzed algebraic notion of expansion
Czumaj & Sohler, FOCS’2007Czumaj & Sohler, FOCS’2007
Perhaps main conceptual contribution:moving from algebraic notion of expansion to the combinatorial one
Algorithm of Goldreich and RonAlgorithm of Goldreich and Ron
• Choose s = O(1/) vertices at random• For each chosen vertex v
– run m = O(n1/2) random walks of length O(log n)– count the number of collisions at the end-
vertices– If the number of collisions is too large then
• STOP & Reject
• If no STOP then– accept
m 12 s n1/2/2 l 16 d2 ln(n/)/2
s 16/
(1+7) ( ) /nm2
Easy to see:
-expander will be accepted (with prob. 0.99)
Task:
prove that a poor expander will be rejectedprove that a poor expander will be rejected
Testing vertex expansionTesting vertex expansion
Key Property:
•If G is -far from *-expander then there is a set of vertices X 4 V such that
– |V|/4 |X| (1+)|V|/2– |N(X)| c* * |X|
Think:– G is -far from *-expander there is a large set X with c c 22|X| / log n|X| / log n neighbors
Small ratio cut Small ratio cut bad mixing bad mixing
• Think = (1)• What if we have set X with |N(X)| c|X|/log n ?
• Run a random walk of length < c log n/2 that starts at a random vertex from X
• With a constant probability it won’t leave X !
Small ratio cut Small ratio cut bad mixing bad mixing
Start random walk at a random node at VSuppose it starts at a node at X Until it’s in X, in each step it has “probability” |N(X)|/|X| of “leaving” X
If random walk is shorter than |X|/|N(X)| we don’t expect to leave X
Collision probability will be largeWe’ll reject!We’ll reject!
X has small neigborhood
X V - X
Small ratio cut Small ratio cut bad mixing bad mixing
• We have a large (of size |V|/4) set X with small neighborhood
• With a constant probability a node from X will be a starting node for random walks
• With a constant probability, we will have too many collisions for such a node
• With a constant probability we will REJECT
It suffices to prove “Key Property”It suffices to prove “Key Property”
Key Property:
•If G is -far from *-expander then there is a set of vertices X 4 V such that
– |V|/4 |X| (1+)|V|/2– |N(X)| c* * |X|
Auxiliary lemmaAuxiliary lemma
If G=(V,E) has A 4 V with |A| n /4 such that G[V – A] is an c*- expander then G is not -far from *-expander
If G is If G is -far from -far from **-expander:-expander:every “small” set can be removed so that every “small” set can be removed so that
the remaining graph is still not an expanderthe remaining graph is still not an expander
Auxiliary lemmaAuxiliary lemma
If G=(V,E) has A 4 V with |A| n /4 such that G[V – A] is an c*- expander then G is not -far from *-expander
We can modify We can modify dn/2 edges in G dn/2 edges in G
to obtain an to obtain an **-expander-expander
A V – Ac *-expander
Auxiliary lemmaAuxiliary lemma
If G=(V,E) has A 4 V with |A| n /4 such that G[V – A] is an c*- expander then G is not -far from *-expander
We can modify We can modify dn/2 edges in G dn/2 edges in G
to obtain an to obtain an **-expander-expander
1.1. Remove all edges incident to ARemove all edges incident to A2.2. Add (d-1)-regular good expander in AAdd (d-1)-regular good expander in A3.3. Remove a matching M of size |A|/2 in G[V-A]Remove a matching M of size |A|/2 in G[V-A]4.4. Add arbitrary matching between A and MAdd arbitrary matching between A and M
Proving “Key Property”Proving “Key Property”
If G=(V,E) has A 4 V with |A| n /4 such that G[V – A] is an c*- expander then G is not -far from *-expander
If G is If G is -far from -far from **-expander:-expander:every “small” set can be removed so that every “small” set can be removed so that
the remaining graph is still not an expanderthe remaining graph is still not an expander
1.1. Start with X = Start with X = ;;2.2. G[V-A] is not an expander G[V-A] is not an expander
99 A A 4 V-X with small neighborhood V-X with small neighborhood3.3. X = A X = A [[ X X
4.4. Repeat step 2 with new A until |X| Repeat step 2 with new A until |X| |V| /4 |V| /4
Proves “Key Property”
SummarizingSummarizing
• We can distinguish between graphs (of maximum degree d) that have -vertex expansion and are -far from graph with (c2/log n)-vertex expansion in time
O(d2 ln(n/) n1/2/(2 3))
Further developments:Further developments:
Can we distinguish (in O(n1/2) time) between graphs that have -vertex expansion and are -far from graph with /c-vertex expansion?Partial answer (Kale & Seshadhri’2007):Partial answer (Kale & Seshadhri’2007):O(nO(n1/21/2)-time to distinguish between )-time to distinguish between graphs of max-degree d that have graphs of max-degree d that have -vertex expansion and -vertex expansion and those with max-degree those with max-degree 2d2d and and -far from graphs -far from graphs
with with /c-vertex expansions/c-vertex expansions
~~
~~
Further developments:Further developments:
Can we distinguish (in O(n1/2) time) between graphs that have -vertex expansion and are -far from graph with /c-vertex expansion?
Similar result for algebraic definition of expansion
Full answer (Full answer (Kale & Seshadhri’2007 Kale & Seshadhri’2007 ANDAND Nachmias & Shapira’2007): Nachmias & Shapira’2007):O(O(nn1/21/2)-time to distinguish between )-time to distinguish between graphs of max-degree d that have graphs of max-degree d that have -vertex expansion and -vertex expansion and those with max-degree d and those with max-degree d and -far from graphs -far from graphs
with with cc-vertex expansions-vertex expansions
~~
~~
Key improvementKey improvement
More direct/tighter analysis of the random walks (via conductance) leads to the following:
C & Sohler:If G is -far from *-expander then there
is a set of vertices X 4 V such that– |V|/4 |X| (1+)|V|/2– |N(X)| c* * |X|
In the set X with small cut as defined above, for a constantfraction of vertices in X O(log n) random walks won’t mix well
(intuition: random walk of O(log n) length will typically stay in X)
Further developments:Further developments:
Can we distinguish (in O(n1/2) time) between graphs that have -vertex expansion and are -far from graph with /c-vertex expansion?
Similar result for algebraic definition of expansion
Full answer (Full answer (Kale & Seshadhri’2007 Kale & Seshadhri’2007 ANDAND Nachmias & Shapira’2007): Nachmias & Shapira’2007):O(O(nn1/21/2)-time to distinguish between )-time to distinguish between graphs of max-degree d that have graphs of max-degree d that have -vertex expansion and -vertex expansion and those with max-degree d and those with max-degree d and -far from graphs -far from graphs
with with cc-vertex expansions-vertex expansions
~~
~~
Open questions:Open questions:
Understand “non-expanding” graphs
Understand random walks on “non-???” graphs– That is, on graphs that don’t satisfy certain
property