110 likes | 223 Views
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…). Consider algorithms in the bounded-degree graph model :
E N D
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…) • Consider algorithms in the bounded-degree graph model: • For a fixed degree bound, the algorithms use queries of the form (v,i) that are answered with the ith neighbor of v. • Distances are measured as a fraction of the maximum number of edges. 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
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 having no 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 having no such trees. small = polylog(N)-size
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.
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]).NTS, these do not yield algorithms for finding minors. Dichotomy: one/two-sided error.
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.
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. Detail: local implementation of the reduction. Operations of the bipartite-tester are emulated via queries to the original graph.
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 shorter than 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. Detail: local implementation of the reduction. Operations of the bipartite-tester are emulated via queries to the original graph. (See next slide)
Testing Ck-minor freeness: auxiliary figures The reduction replaces red edges by blue edges. (Black edges remain intact.) 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 repl’t) and the tree remains.
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).
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