21 research outputs found
Algorithmic Applications of Baur-Strassen's Theorem: Shortest Cycles, Diameter and Matchings
Consider a directed or an undirected graph with integral edge weights from
the set [-W, W], that does not contain negative weight cycles. In this paper,
we introduce a general framework for solving problems on such graphs using
matrix multiplication. The framework is based on the usage of Baur-Strassen's
theorem and of Strojohann's determinant algorithm. It allows us to give new and
simple solutions to the following problems:
* Finding Shortest Cycles -- We give a simple \tilde{O}(Wn^{\omega}) time
algorithm for finding shortest cycles in undirected and directed graphs. For
directed graphs (and undirected graphs with non-negative weights) this matches
the time bounds obtained in 2011 by Roditty and Vassilevska-Williams. On the
other hand, no algorithm working in \tilde{O}(Wn^{\omega}) time was previously
known for undirected graphs with negative weights. Furthermore our algorithm
for a given directed or undirected graph detects whether it contains a negative
weight cycle within the same running time.
* Computing Diameter and Radius -- We give a simple \tilde{O}(Wn^{\omega})
time algorithm for computing a diameter and radius of an undirected or directed
graphs. To the best of our knowledge no algorithm with this running time was
known for undirected graphs with negative weights.
* Finding Minimum Weight Perfect Matchings -- We present an
\tilde{O}(Wn^{\omega}) time algorithm for finding minimum weight perfect
matchings in undirected graphs. This resolves an open problem posted by
Sankowski in 2006, who presented such an algorithm but only in the case of
bipartite graphs.
In order to solve minimum weight perfect matching problem we develop a novel
combinatorial interpretation of the dual solution which sheds new light on this
problem. Such a combinatorial interpretation was not know previously, and is of
independent interest.Comment: To appear in FOCS 201
Metatheorems for Dynamic Weighted Matching
We consider the maximum weight matching (MWM) problem in dynamic graphs. We provide two reductions. The first reduces the dynamic MWM problem on m-edge, n-node graphs with weights bounded by N to the problem with weights bounded by (n/eps)^2, so that if the MWM problem can be alpha-approximated with update time t(m,n,N), then it can also be (1+eps)alpha-approximated with update time O(t(m,n,(n/eps)^2)log^2 n+log n loglog N)). The second reduction reduces the dynamic MWM problem to the dynamic maximum cardinality matching (MCM) problem in which the graph is unweighted. This reduction shows that if there is an alpha-approximation algorithm for MCM with update time t(m,n) in m-edge n-node graphs, then there is also a (2+eps)alpha-approximation algorithm for MWM with update time O(t(m,n)eps^{-2}log^2 N). We also obtain better bounds in our reductions if the ratio between the largest and the smallest edge weight is small. Combined with recent work on MCM, these two reductions substantially improve upon the state-of-the-art of dynamic MWM algorithms
An Improved Algorithm for Computing All the Best Swap Edges of a Tree Spanner
A tree sigma-spanner of a positively real-weighted n-vertex and m-edge undirected graph G is a spanning tree T of G which approximately preserves (i.e., up to a multiplicative stretch factor sigma) distances in G.
Tree spanners with provably good stretch factors find applications in communication networks, distributed systems, and network design. However, finding an optimal or even a good tree spanner is a very hard computational task. Thus, if one has to face a transient edge failure in T, the overall effort that has to be afforded to rebuild a new tree spanner (i.e., computational costs, set-up of new links, updating of the routing tables, etc.) can be rather prohibitive. To circumvent this drawback, an effective alternative is that of associating with each tree edge a best possible (in terms of resulting stretch) swap edge -- a well-established approach in the literature for several other tree topologies. Correspondingly, the problem of computing all the best swap edges of a tree spanner is a challenging algorithmic problem, since solving it efficiently means to exploit the structure of shortest paths not only in G, but also in all the scenarios in which an edge of T has failed. For this problem we provide a very efficient solution, running in O(n^2 log^4 n) time, which drastically improves (almost by a quadratic factor in n in dense graphs!) on the previous known best result
Sharp Bounds on Davenport-Schinzel Sequences of Every Order
One of the longest-standing open problems in computational geometry is to
bound the lower envelope of univariate functions, each pair of which
crosses at most times, for some fixed . This problem is known to be
equivalent to bounding the length of an order- Davenport-Schinzel sequence,
namely a sequence over an -letter alphabet that avoids alternating
subsequences of the form with length
. These sequences were introduced by Davenport and Schinzel in 1965 to
model a certain problem in differential equations and have since been applied
to bounding the running times of geometric algorithms, data structures, and the
combinatorial complexity of geometric arrangements.
Let be the maximum length of an order- DS sequence over
letters. What is asymptotically? This question has been answered
satisfactorily (by Hart and Sharir, Agarwal, Sharir, and Shor, Klazar, and
Nivasch) when is even or . However, since the work of Agarwal,
Sharir, and Shor in the mid-1980s there has been a persistent gap in our
understanding of the odd orders.
In this work we effectively close the problem by establishing sharp bounds on
Davenport-Schinzel sequences of every order . Our results reveal that,
contrary to one's intuition, behaves essentially like
when is odd. This refutes conjectures due to Alon et al.
(2008) and Nivasch (2010).Comment: A 10-page extended abstract will appear in the Proceedings of the
Symposium on Computational Geometry, 201
Maintenance of 2- and 3-connected components of graphs; Part I: 2- and 3-edge-connected components
In this paper a data structure is presented to efficiently maintain the 2and 3-edge-connected components of a graph, under insertions of edges in the graph. Starting from an "empty" graph of n nodes, the insertion of e edges takes O(n log n-[- e) time in total. The data structure allows for insertions of nodes also (in the same time bounds, taking n as the final number of nodes). Moreover