Artur Czumaj DIMAP DIMAP (Centre for Discrete Maths and it Applications) Computer Science &...

Post on 19-Jan-2016

218 views 0 download

Tags:

Transcript of Artur Czumaj DIMAP DIMAP (Centre for Discrete Maths and it Applications) Computer Science &...

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