Algorithmic Applications of Baur-Strassen's Theorem: Shortest Cycles, Diameter and Matchings

Consider a directed or undirected graph with integral edge weights in [-W, W]. This paper introduces a general framework for solving problems on such graphs using matrix multiplication. The framework is based on the Baur-Strassen Theorem and Strojohann's determinant algorithm. For directed and undirected graphs without negative cycles we obtain simple Õ(Wnω) running time algorithms for finding a shortest cycle, computing the diameter or radius, and detecting a negative weight cycle. For each of these problems we unify and extend the class of graphs for which Õ(Wnω) time algorithms are known. In particular no such algorithms were known for any of these problems in undirected graphs with (potentially) negative weights. We also present an Õ(Wnω) time algorithm for minimum weight perfect matching. This resolves an open problem posed by Sankowski in 2006, who presented such an algorithm for bipartite graphs. Our algorithm uses a novel combinatorial interpretation of the linear program dual for minimum perfect matching. We believe this framework will find applications for finding larger spectra of related problems. As an example we give a simple Õ(Wnω) time algorithm to find all the vertices that lie on cycles of length at most t, for given t. This improves an Õ(Wnω) time algorithm of Yuster.

[1]  Alon Itai,et al.  Finding a minimum circuit in a graph , 1977, STOC '77.

[2]  Piotr Sankowski,et al.  Algorithmic Applications of Baur-Strassen's Theorem: Shortest Cycles, Diameter and Matchings , 2012, FOCS.

[3]  Andreas Björklund,et al.  Determinant Sums for Undirected Hamiltonicity , 2010, 2010 IEEE 51st Annual Symposium on Foundations of Computer Science.

[4]  Alexander Schrijver,et al.  Combinatorial optimization. Polyhedra and efficiency. , 2003 .

[5]  Raphael Yuster,et al.  Computing the diameter polynomially faster than APSP , 2010, ArXiv.

[6]  Robert E. Tarjan,et al.  A quick method for finding shortest pairs of disjoint paths , 1984, Networks.

[7]  Silvio Micali,et al.  Priority queues with variable priority and an O(EV log V) algorithm for finding a maximal weighted matching in general graphs , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[8]  Piotr Sankowski,et al.  Processor Efficient Parallel Matching , 2005, SPAA '05.

[9]  Raphael Yuster,et al.  Answering distance queries in directed graphs using fast matrix multiplication , 2005, 46th Annual IEEE Symposium on Foundations of Computer Science (FOCS'05).

[10]  Dan Suciu,et al.  Journal of the ACM , 2006 .

[11]  Uri Zwick,et al.  All pairs shortest paths using bridging sets and rectangular matrix multiplication , 2000, JACM.

[12]  Jacob T. Schwartz,et al.  Fast Probabilistic Algorithms for Verification of Polynomial Identities , 1980, J. ACM.

[13]  Richard Zippel,et al.  Probabilistic algorithms for sparse polynomials , 1979, EUROSAM.

[14]  Raphael Yuster,et al.  A shortest cycle for each vertex of a graph , 2011, Inf. Process. Lett..

[15]  J. Morgenstern,et al.  How to compute fast a function and all its derivatives: a variation on the theorem of Baur-strassen , 1985, SIGA.

[16]  Arne Storjohann,et al.  High-order lifting and integrality certification , 2003, J. Symb. Comput..

[17]  Liam Roditty,et al.  Minimum Weight Cycles and Triangles: Equivalences and Algorithms , 2011, 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science.

[18]  Telikepalli Kavitha,et al.  Efficient algorithms for maximum weight matchings in general graphs with small edge weights , 2012, SODA.

[19]  Piotr Sankowski,et al.  Shortest Paths in Matrix Multiplication Time , 2005, ESA.

[20]  Ming-Yang Kao,et al.  A Decomposition Theorem for Maximum Weight Bipartite Matchings with Applications to Evolutionary Trees , 1999, ESA.

[21]  Harold N. Gabow,et al.  Data structures for weighted matching and nearest common ancestors with linking , 1990, SODA '90.

[22]  Eli Upfal,et al.  Constructing a perfect matching is in random NC , 1985, STOC '85.

[23]  Zvi Galil,et al.  Efficient implementation of graph algorithms using contraction , 1984, JACM.

[24]  Jack Edmonds,et al.  An introduction to matching , 1967 .

[25]  Uri Zwick,et al.  All pairs shortest paths in undirected graphs with integer weights , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[26]  N GabowHarold An Efficient Implementation of Edmonds' Algorithm for Maximum Matching on Graphs , 1976 .

[27]  Timothy M. Chan More algorithms for all-pairs shortest paths in weighted graphs , 2007, STOC '07.

[28]  Harold N. Gabow,et al.  A scaling algorithm for weighted matching on general graphs , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[29]  Nicholas J. A. Harvey Algebraic Structures and Algorithms for Matching and Matroid Problems , 2006, 2006 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS'06).

[30]  Harold N. Gabow,et al.  An Efficient Implementation of Edmonds' Algorithm for Maximum Matching on Graphs , 1976, JACM.

[31]  Piotr Sankowski,et al.  Maximum weight bipartite matching in matrix multiplication time , 2009, Theor. Comput. Sci..

[32]  Donald B. Johnson,et al.  Efficient Algorithms for Shortest Paths in Sparse Networks , 1977, J. ACM.

[33]  Harold N. Gabow,et al.  An efficient reduction technique for degree-constrained subgraph and bidirected network flow problems , 1983, STOC.

[34]  Piotr Sankowski,et al.  Maximum matchings via Gaussian elimination , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[35]  Seth Pettie,et al.  A new approach to all-pairs shortest paths on real-weighted graphs , 2004, Theor. Comput. Sci..

[36]  Harold N. Gabow,et al.  A combinatoric interpretation of dual variables for weighted matching and f-factors , 2012, Theor. Comput. Sci..

[37]  Jack Edmonds,et al.  Maximum matching and a polyhedron with 0,1-vertices , 1965 .

[38]  Ravindra K. Ahuja,et al.  Network Flows: Theory, Algorithms, and Applications , 1993 .

[39]  Robert E. Tarjan,et al.  Faster scaling algorithms for general graph matching problems , 1991, JACM.

[40]  Anton Kotzig,et al.  Z teórie konečných grafov s lineárnym faktorom. III. , 1960 .