| Faster randomized and deterministic algorithms for minimum cycle bases in directed graphs. Preliminary versions of the results in this paper appeared in ICALP’05 and ICALP’06. submitted for publication (2006) | |||||||||||||||
Abstract | |||||||||||||||
| We consider the problem of computing a minimum cycle basis in a directed graph. The input to this problem is a directed graph G whose edges have non-negative weights. A cycle in this graph is actually a cycle in the underlying undirected graph with edges traversable in both directions. A {−1,0,1} edge incidence vector is associated with each cycle: edges traversed by the cycle in the right direction get 1 and edges traversed in the opposite direction get-1. The vector space over Q generated by these vectors is the cycle space of G. A set of cycles is called a cycle basis of G if it forms a basis for this vector space. We seek a cycle basis where the sum of weights of the cycles is minimum. We present an O(m 3 n + m 2 n 2 logn) algorithm for computing a minimum cycle basis in a directed graph with m edges and n vertices. The previous best algorithm had a running time of Õ(m ω+1 n), where ω < 2.376 is the exponent of matrix multiplication. We obtain our algorithm by using fast matrix multiplication over rings and an efficient extension of Dijkstra’s algorithm to compute a shortest cycle in G whose dot product with a function on its edge set is non-zero. We also present a simple O(m 2 n + mn 2 logn) Monte Carlo algorithm. The problem of computing a minimum cycle basis in an undirected graph has been well-studied. In this problem a {0,1} incidence vector is associated with each cycle and the vector space over Z2 generated by these vectors is the cycle space of the graph. The fastest known algorithm for computing a minimum cycle basis in an undirected graph runs in O(m 2 n+mn 2 logn) time and our randomized algorithm for directed graphs matches this running time. ∗ Preliminary versions of the results in this paper appeared in ICALP’05 and ICALP’06 [12, 10]. | |||||||||||||||
Publication details | |||||||||||||||
| |||||||||||||||