1 / 28

Testing Expansion in Bounded Degree Graphs

Explore property testing in bounded degree graphs, distinguish between close and far objects from properties, and apply expansion testing algorithms. Learn the formal framework, definitions, and complexities involved. Discover related research and advanced techniques for graph expansion analysis.

toniac
Download Presentation

Testing Expansion in Bounded Degree Graphs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Testing Expansion in Bounded Degree Graphs Christian Sohler University of Dortmund (joint work with Artur Czumaj, University of Warwick)

  2. Testing Expansion in Bounded Degree GraphsIntroduction • Property Testing[Rubinfeld, Sudan]: • Formal framework to analyze „Sampling“-algorithms for decision problems • Decide with help of a random sample whether a given object has a property or is far away from it Close to property Far away from property Property

  3. Testing Expansion in Bounded Degree GraphsIntroduction • Property Testing[Rubinfeld, Sudan]: • Formal framework to analyze „Sampling“-algorithms for decision problems • Decide with help of a random sample whether a given object has a property or is far away from it • Definition: • An object is e-far from a property P, if it differs in more than an e-fraction of ist formal description from any object with property P.

  4. Testing Expansion in Bounded Degree GraphsIntroduction • Bounded degree graphs • Graph (V,E) with degree bound d • V={1,…,n} • Edges as adjacency lists through function f: V {1,…,d} V • f(v,i) is i-th neighbor of v or ■, if i-th neighbor does not exist • Query f(v,i) in O(1) time 3 1 d 4 2 n

  5. Testing Expansion in Bounded Degree GraphsIntroduction • Definition: • A graph (V,E) with degree bound d and n vertices is e-far from a property P, if more than edn entries in the adjacency lists have to be modified to obtain a graph with property P. • Example (Bipartiteness): 3 1 d 4 2 1/7-far from bipartite n

  6. Testing Expansion in Bounded Degree GraphsIntroduction • Goal: • Accept graphs that have property P with probability at least 2/3 • Reject graphs that are e-far from P with probability at least 2/3 • Complexity Measure: • Query (sample) complexity • Running time

  7. Testing Expansion in Bounded Degree GraphsIntroduction • Definition [Neighborhood] • N(U) denotes the neighborhood of U, i.e. N(U) = {vV-U:  uU such that (v,u)E} • Definition [Expander]: • A Graph is an a-Expander, if N(U)a|U| for each UV with |U||V|/2.

  8. Testing Expansion in Bounded Degree GraphsIntroduction • Testing Expansion: • Accept every graph that is an a-expander • Reject every graph that is e-far from an a*-expander • If not an a-expander and not e-far then we can accept or reject • Look at as few entries in the graph representation as possible

  9. Testing Expansion in Bounded Degree GraphsIntroduction • Related results: • Definition of bounded degree graph model; connectivity, k-connectivity, circle freeness • [Goldreich, Ron; Algorithmica] • Conjecture: Expansion can be tested O(n polylog(n)) time • [Goldreich, Ron; ECCC, 2000] • Rapidly mixing property of Markov chains • [Batu, Fortnow, Rubinfeld, Smith, White; FOCS‘00] • Parallel / follow-up work: • An expansion tester for bounded degree graphs • [Kale, Seshadhri, ICALP’08] • Testing the Expansion of a Graph • [Nachmias, Shapira, ECCC’07]

  10. Testing Expansion in Bounded Degree GraphsIntroduction • Difficulty: • Expansion is a rather global property Expander with n/2 vertices Expander with n/2 vertices Case 1: A good expander

  11. Testing Expansion in Bounded Degree GraphsIntroduction • Difficulty: • Expansion is a rather global property Expander with n/2 vertices Expander with n/2 vertices Case 2: e-far from expander

  12. Testing Expansion in Bounded Degree GraphsThe algorithm of Goldreich and Ron • How to distinguish these two cases? • Perform a random walk for L= poly(log n, 1/e) steps • Case 1: Distribution of end points is essentially uniform • Case 2: Random walk will typically not cross cut -> distribution differs significantly from uniform Expander with n/2 vertices Expander with n/2 vertices Expander with n/2 vertices Expander with n/2 vertices Case 1: A good expander Case 2: e-far from expander

  13. Testing Expansion in Bounded Degree GraphsThe algorithm of Goldreich and Ron Idea: Count the number of collisions among end points of random walks • How to distinguish these two cases? • Perform a random walk for L= poly(log n, 1/e) steps • Case 1: Distribution of end points is essentially uniform • Case 2: Random walk will typically not cross cut -> distribution differs significantly from uniform Expander with n/2 vertices Expander with n/2 vertices Expander with n/2 vertices Expander with n/2 vertices Case 1: A good expander Case 2: e-far from expander

  14. Testing Expansion in Bounded Degree GraphsThe algorithm of Goldreich and Ron • ExpansionTester(G,e,l,m,s) • 1. repeat s times • 2. choose vertex v uniformly at random from V • 3. do m random walks of length L starting from v • 4. count the number of collisions among endpoints • if #collisions> (1+e)E[#collisions in uniform distr.] then reject • 6. accept

  15. Testing Expansion in Bounded Degree GraphsMain result • ExpansionTester(G,e,l,m,s) • 1. repeat s times • 2. choose vertex v uniformly at random from V • 3. do m random walks of length L starting from v • 4. count the number of collisions among endpoints • if #collisions> (1+e)E[#collisions in uniform distr.] then reject • 6. accept • Theorem:[This work] • Algorithm ExpansionTester with s=Q(1/e), m=Q(n/poly(e)) and L= poly(log n, d, 1/a, 1/e) accepts every a-expander with probability at least 2/3 and rejects every graph, that is e-far from every a*-expander with probability 2/3, where a* = Q(a²/(d² log (n/e)).

  16. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Overview of the proof: • Algorithm ExpansionTester accepts every a-expander with probability at least 2/3

  17. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Overview of the proof: • Algorithm ExpansionTester accepts every a-expander with probability at least 2/3 (Chebyshev inequality)

  18. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Overview of the proof: • Algorithm ExpansionTester accepts every a-expander with probability at least 2/3 (Chebyshev inequality) • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small U G

  19. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Overview of the proof: • Algorithm ExpansionTester accepts every a-expander with probability at least 2/3 (Chebyshev inequality) • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small • If G has a set U of dn vertices such that N(U) is small, thenExpansionTester rejects U G

  20. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Overview of the proof: • Algorithm ExpansionTester accepts every a-expander with probability at least 2/3 (Chebyshev inequality) • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small • If G has a set U of dn vertices such that N(U) is small, thenExpansionTester rejects  Random walk is unlikely to cross cut -> more collisions U G

  21. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small U G

  22. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small • Lemma: • If G is e-far from an a*-expander, then for every AV of size at most en/4 we have that G[V-A] is not a (ca*)-expander U G

  23. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • If G is e-far from an a*-expander, then it contains a set U of dn vertices such that N(U) is small • Lemma: • If G is e-far from an a*-expander, then for every AV of size at most en/4 we have that G[V-A] is not a (ca*)-expander • Procedure to construct U: • As long as U is too small apply lemma with A=U • Since G[V-A] is not an expander, we have a set B of vertices that is badly connected to the rest of G[V-A] • Add B to U U G

  24. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Lemma: • If G is e-far from an a*-expander, then for every AV of size at most en/4 we have that G[V-A] is not a (ca*)-expander • Proof (by contradiction): • Assume A as in lemma exists with G[V-A] is (ca*)-expander • Construct from G an a*-expanderby changing at most edn edges • Contradiction: G is not e-far from a*-expander G A (ca*)-Expander

  25. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Lemma: • If G is e-far from an a*-expander, then for every AV of size at most en/4 we have that G[V-A] is not a (ca*)-expander • Proof (by contradiction): G Construction of a*-expander: 1. Remove edges incident to A 2. Add (d-1)-regular c‘-expander to A 3. Remove arbitrary matching M of size |A|/2 from G[V-A] 4. Match endpoints of M with points from A A (ca*)-Expander

  26. Testing Expansion in Bounded Degree GraphsAnalysis of the algorithm • Lemma: • If G is e-far from an a*-expander, then for every AV of size at most en/4 we have that G[V-A] is not a (ca*)-expander • Proof (by contradiction): Show that every set X has large neighborhood by case distinction G Construction of a*-expander: 1. Remove edges incident to A 2. Add (d-1)-regular c‘-expander to A 3. Remove arbitrary matching M of size |A|/2 from G[V-A] 4. Match endpoints of M with points from A A X (ca*)-Expander

  27. Testing Expansion in Bounded Degree GraphsMain result • ExpansionTester(G,e,l,m,s) • 1. repeat s times • 2. choose vertex v uniformly at random from V • 3. do m random walks of length L starting from v • 4. count the number of collisions among endpoints • if #collisions> (1+e)E[#collisions in unif. Distr.] then reject • 6. accept • Theorem:[This work] • Algorithm ExpansionTester with s=Q(1/e), m=Q(n/poly(e)) and L= poly(log n, d, 1/a, 1/e) accepts every a-expander with probability at least 2/3 and rejects every graph, that is e-far from every a*-expander with probability 2/3, where a* = poly(1/log n, 1/d, a, e).

  28. Thank you!

More Related