Title: Finding Cycles and Trees in Sublinear Time
1Finding 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
2Preliminaries (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
3Our 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
kgt3, 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 No o(N1/2)-query algorithm
can find such cycles. THM 3 For every fixed
kgt1, 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
4Our 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 kgt3, an Õ(N1/2)-time algorithm for finding
(small) Ck-minors in N-vertex graphs that are far
from being Ck-minor free. Optimality For any H
that contains a cycle, no o(N1/2)-query algorithm
can find H-minors in a N-vertex graphs that is
far from being H-minor free. THM 3 For every
fixed kgt1, an O(1)-time algorithm for finding
Tk-minors in graphs that are far from Tkminor
free, where Tk denotes the k-vertex star. THM 4
For any cycle-free H, an O(1)-time algorithm for
finding H-minors in graphs that are far from
Hminor free.
Dichotomy H with/w.o. cycles.
5Property Testing One-sided versus two-sided error
(Aux. slide)
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 ProbTG(n)1 2/3
(1 for one-sided error). - If G is far from having the property, then
ProbTG(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.
6One-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.
7Our 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 kgt3, 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-free H, an O(1)-time one-sided
error tester for Hminor freeness.
8Techniques 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.
9Techniques 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 lt k with adequate gadgets.
E.g., for k4, 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)
10Testing C4-minor freeness (via a reduction)
Replacing triangles by 3-stars
(Aux. slide)
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
replacement) and the tree remains.
11Techniques 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 v bad 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).
12A 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 gt 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
of k-paths).There is an obvious exp(k)/e-time
tester.
13The End
- The slides of this talk are available at
http//www.wisdom.weizmann.ac.il/oded/T/minor.pp
t - The paper itself is available at
- http//www.wisdom.weizmann.ac.il/oded/p_minor
.html