Efficient algorithms on sets of permutations, dominance, and real-weighted APSP

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


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(n 2.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(n 2.842) time algorithm for real vertex-weighted APSP, which slightly improves a recent result of Chan [STOC-07]. A set of permutations P ⊂ S n 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 ω < 2.376 is the matrix multiplication exponent. We note that the naive deterministic solution for this problem requires Θ(n3) time.

Original languageEnglish
Title of host publicationProceedings of the 20th Annual ACM-SIAM Symposium on Discrete Algorithms
PublisherAssociation for Computing Machinery (ACM)
Number of pages8
ISBN (Print)9780898716801
StatePublished - 2009
Event20th Annual ACM-SIAM Symposium on Discrete Algorithms - New York, NY, United States
Duration: 4 Jan 20096 Jan 2009

Publication series

NameProceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms


Conference20th Annual ACM-SIAM Symposium on Discrete Algorithms
Country/TerritoryUnited States
CityNew York, NY

ASJC Scopus subject areas

  • Software
  • General Mathematics


Dive into the research topics of 'Efficient algorithms on sets of permutations, dominance, and real-weighted APSP'. Together they form a unique fingerprint.

Cite this