Matrix multiplication via arithmetic progressions
Journal of Symbolic Computation - Special issue on computational algebraic complexity
Generating pseudo-random permutations and maximum flow algorithms
Information Processing Letters
Computing dominances inEn (short communication)
Information Processing Letters
Witnesses for Boolean matrix multiplication and for transitive closure
Journal of Complexity
Rectangular matrix multiplication revisited
Journal of Complexity
Fast rectangular matrix multiplication and applications
Journal of Complexity
Fast Probabilistic Algorithms for Verification of Polynomial Identities
Journal of the ACM (JACM)
All pairs shortest paths using bridging sets and rectangular matrix multiplication
Journal of the ACM (JACM)
Probabilistic algorithms for sparse polynomials
EUROSAM '79 Proceedings of the International Symposiumon on Symbolic and Algebraic Computation
A derandomization using min-wise independent permutations
Journal of Discrete Algorithms
Finding a maximum weight triangle in n3-Δ time, with applications
Proceedings of the thirty-eighth annual ACM symposium on Theory of computing
All-pairs bottleneck paths for general graphs in truly sub-cubic time
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
More algorithms for all-pairs shortest paths in weighted graphs
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
All-pairs shortest paths with real weights in O(n3/ log n) time
WADS'05 Proceedings of the 9th international conference on Algorithms and Data Structures
More Algorithms for All-Pairs Shortest Paths in Weighted Graphs
SIAM Journal on Computing
Faster Algorithms for All-pairs Approximate Shortest Paths in Undirected Graphs
SIAM Journal on Computing
SOFSEM'12 Proceedings of the 38th international conference on Current Trends in Theory and Practice of Computer Science
Hi-index | 0.00 |
Sets of permutations play an important role in the design of some efficient algorithms. In this paper we design two algorithms that manipulate sets of permutations. Both algorithms, each solving a different problem, use fast matrix multiplication techniques to achieve a significant improvement in the running time over the naive solutions. For a set of permutations P ⊂ Sn we say that i k-dominates j if the number of permutations π ∈ P for which π(i) j) is k. The dominance matrix of P is the n x n matrix DP where DP(i, j) = k if and only if i k-dominates j. We give an efficient algorithm for computing DP using fast rectangular matrix multiplication. In particular, when |P| = n our algorithm runs in O(n2.684) time. Computing the dominance matrix of permutations is computationally equivalent to the dominance problem in computational geometry. Thus, our algorithm slightly improves upon a well-known O(n2.688) time algorithm of Matousek for the dominance problem. Permutation dominance is used, together with several other ingredients, to obtain a truly sub-cubic algorithm for the All Pairs Shortest Paths (APSP) problem in real-weighted directed graphs, where the number of distinct weights emanating from each vertex is O(n0.338). A special case of this algorithm implies an O(n2.842) time algorithm for real vertex-weighted APSP, which slightly improves a recent result of Chan [STOC-07]. A set of permutations P ⊂ Sn is fully expanding if the product of any two elements of P yields a distinct permutation. Stated otherwise, |P2| = |P|2 where P2 ⊂ Sn is the set of products of two elements of P. We present a randomized algorithm that computes |P2| and hence decides if P is fully expanding. The algorithm also produces a table that, for any σ1, σ2, σ3, σ4 ∈ P, answers the query σ1σ2 = σ3σ4 in Õ(1) time. The algorithm uses, among other ingredients, a combination of fast matrix multiplication and polynomial identity testing. In particular, for |P| = n our algorithm runs in O(nω) time where ω n3) time.