1 / 13

Finding Cycles and Trees in Sublinear Time

Finding Cycles and Trees in Sublinear Time. Oded Goldreich Weizmann Institute of Science Joint work with Artur Czumaj, Dana Ron, C. Seshadhri, Asaf Shapira, and Christian Sohler. Preliminaries (boring, but needed…).

nakia
Download Presentation

Finding Cycles and Trees in Sublinear Time

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. Finding Cycles and Trees in Sublinear Time Oded Goldreich Weizmann Institute of Science Joint work with Artur Czumaj, Dana Ron, C. Seshadhri, Asaf Shapira, and Christian Sohler

  2. Preliminaries (boring, but needed…) • Consider algorithms in the bounded-degree graph model(for a fixed degree bound, d): • The algorithms use queries of the form (v,i) (where id) that are answered with the ith neighbor of v. • Distances are measured as fractions of the maximum possible number of edges (i.e., dN/2). For simplicity, far = being (1)-far. (The results extend to the case that the algorithm is given a proximity parameter , but then the complexity depends on .) cycle = simple cycle

  3. Our results at a glance – take 1 (naïve) In the bounded-degree graph model cycle = simple cycle THM 1: An Õ(N1/2)-time algorithm for finding (small) cycles in N-vertex graphs that are far from being cycle-free. THM 2: For every fixed k>3, an Õ(N1/2)-time algorithm for finding (small) cycles of length at least k in N-vertex graphs that are far from lacking cycles of such length. Optimality: Noo(N1/2)-query algorithm can find such cycles. THM 3: For every fixed k>1, an O(1)-time algorithm for finding trees with at least k leaves in graphs that are far from lacking such trees. small = polylog(N)-size

  4. Our results at a glance – take 2 (minors) In the bounded-degree graph model cycle = simple cycle Ck = k-vertex cycle Def: A graph G has an H-minor if H can be obtained from G by vertex and edge removal and edge contraction. THM 1: An Õ(N1/2)-time algorithm for finding (small) C3-minors in N-vertex graphs that are far from being C3-minor free. THM 2: For every fixed k>3, an Õ(N1/2)-time algorithm for finding (small) Ck-minorsin N-vertex graphs that are far from being Ck-minor free. Optimality: For any H that contains a cycle, noo(N1/2)-query algorithm can find H-minors in aN-vertex graphs that is far from beingH-minor free. THM 3: For every fixed k>1, an O(1)-time algorithm for finding Tk-minors in graphs that are far from Tk–minor free, where Tkdenotes thek-vertex star. THM 4: For any cycle-freeH, an O(1)-time algorithm for finding H-minors in graphs that are far from H–minor free. Dichotomy: H with/w.o. cycles.

  5. (Aux. slide) Property Testing: One-sided versus two-sided error Specialized to testing graph properties (in the bounded degree model) • A (two-sided error) tester is a probabilistic oracle machine T that is given input n (#vertices) and oracle access to a n-vertex graph G and satisfies: • If G has the property, then Prob[TG(n)=1] ≥ 2/3(1 for one-sided error). • If G is far from having the property, then Prob[TG(n)=1] ≤ 1/3. • The definition extend to the case that the tester is also given a proximity parameter  (and input), and then “far” = “e-far”.

  6. One-sided error testing and finding structures Observation: When a one-sided error tester for a property  rejects a graph G, it must be the case that the subgraph viewed by the tester is inconsistent with any graph in . In some cases, this subgraph has a natural appeal. E.g., if  is being bipartite, then the subgraph must be a non-bipartite graph; if  is being H-minor free, then the subgraph must be an H-minor. Thus, all our results can be stated in terms of results regarding one-sided error testers (see next slide…). Recall that two-sided error testers of O(1)-time are known for H-minor freeness (cf. [BSS] vastly extending [GR]).N.B.: These testers do not yield algorithms for finding minors. Dichotomy: one/two-sided error.

  7. Our results at a glance – take 3 (1-sided-error-testers) In the bounded-degree graph model cycle = simple cycle Ck = k-vertex cycle Def: A graph G has an H-minor if H can be obtained from G by vertex and edge removal and edge contraction. THM 1: An Õ(N1/2)-time one-sided error tester for C3-minor freeness (a.k.a cycle-freeness). THM 2: For every fixed k>3, an Õ(N1/2)-time one-sided error tester for Ck-minor freeness. Optimality: For any H that contains a cycle, no o(N1/2)-query one-sided error tester for H-minor freeness.Yet, an O(1)-time two-sided error tester exists (cf. [BSS])! THM 4: For any cycle-freeH, an O(1)-time one-sided error tester for H–minor freeness.

  8. Techniques: testing cycle-freeness In the bounded-degree graph model cycle = simple cycle THM 1: An Õ(N1/2)-time one-sided error tester for cycle-freeness. The two-sided error tester just compares the # of edges to the # of cc. Idea: randomly reduce testing cycle-freeness to testing bipartiteness, by replacing each edge witha 2-path w.p. ½ (and leaving it intact otherwise). A cycle-free graph is always mapped to a bipartite graph, whereas each cycle is mapped with probability ½ to an odd cycle. CLM: A graph that is -far from being cycle-free is mapped, w.v.h.p, to a graph that is ()-far from being bipartite. Details: Local implementation of the reduction. Operations of the bipartite-tester are emulated via queries to the original graph.

  9. Techniques: testing Ck-minor freeness • Two triangles sharing an edge contain a cycle of length four. • A C4-minor free graph is a “tree” of triangles and edges. In the bounded-degree graph model cycle = simple cycle Ck = k-vertex cycle THM 2: An Õ(N1/2)-time one-sided error tester for Ck-minor freeness. Idea: (deterministically) reduce testing Ck-minor freeness to testing cycle-freeness, by replacing cycles of length < k with adequate gadgets. E.g., for k=4, replace each triangle by a 3-star. A C4-minor free graph is always mapped to a cycle-free graph, whereas any C4-minor is mapped to a cycle. CLM: A graph that is -far from being C4-minor free is mapped to a graph that is ()-far from being cycle-free. Details: Local implementation of the reduction. Operations of the bipartite-tester are emulated via queries to the original graph. (See next slide)

  10. (Aux. slide) The reduction replaces red edges by blue edges. (Black edges remain intact.) Testing C4-minor freeness (via a reduction): Replacing triangles by 3-stars Two triangles sharing an edge contain a cycle of length four.They are replaced by edges that contain a 4-cycle. A C4-minor free graph is a “tree” of triangles and edges.These triangles disappear (in replacement) and the tree remains.

  11. Techniques: testing Tk-minor freeness In the bounded-degree graph model Tk = the k-vertex star THM 3: An poly(k/)-time one-sided error tester for Tk-minor freeness. The tester performs a BFS from a randomly chosen start vertex till either encountering k vertices in a layer or visiting 4k/layers. Accept iff the explored subgraph is Tk-minor free. Call a vertex vbad if it is contained in a set S such that the subgraph induced by S contains a Tk-minor and has radius at most 4k/from v. Observe that if the graph has few bad vertices, then it is close to being Tk-minor free (by isolating all bad vertices and omitting the edges that separate each 4k/-depth BFS from the rest of the graph).

  12. A few open problems • Main: Sublinear-time one-sided error tester of H-minor freeness for every fixed H.Recall: we only handle cycles and trees (actually forests). • For sake of curiosity: Deterministic (local) reduction of testing cycle-freeness to testing bipartiteness? Recall: Our reduction was randomized. • One-sided error tester of sublinear-time for Ck-minor freeness also for d > sqrt(n)? Our tester (via reduction) has a hidden poly(dk) factor. • One-sided error tester of query complexity poly(k/e)for Pk-minor freeness (i.e., absence ofk-paths).There is an obvious exp(k)/e-time tester.

  13. The End The slides of this talk are available at http://www.wisdom.weizmann.ac.il/~oded/T/minor.ppt The paper itself is available at http://www.wisdom.weizmann.ac.il/~oded/p_minor.html

More Related