Finding a maximum weight triangle in n3-Δ time, with applications

  • Authors:
  • Virginia Vassilevska;Ryan Williams

  • Affiliations:
  • Carnegie Mellon University, Pittsburgh, PA;Carnegie Mellon University, Pittsburgh, PA

  • Venue:
  • Proceedings of the thirty-eighth annual ACM symposium on Theory of computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present the first truly sub-cubic algorithms for finding a maximum node-weighted triangle in directed and undirected graphs with arbitrary real weights. The first is an O(B • n3+ω/2) = O(B • n2.688) deterministic algorithm, where n is the number of nodes, ω is the matrix multiplication exponent, and B is the number of bits of precision. The second is a strongly polynomial randomized algorithm that runs in O(n3+ω/2 log n) expected worst-case time. To achieve this, we show how to efficiently sample a weighted triangle uniformly at random, out of just those triangles whose total weight falls in some prescribed interval (W1,W2) for arbitrary weights W1 and W2. Previous approaches to the problem resulted in time bounds with either an exponential dependence on B, or a runtime of the form Ω(n3/(log n)c). The algorithms are easily extended to finding a maximum node-weighted induced subgraph on 3k nodes in Õ(n(3+ω)k/2) = O(n2.688 k) time.We give applications to a variety of problems, including a stable matching problem between buyers and sellers in computational economics, and discuss the possibility of extending our approach to a truly sub-cubic algorithm for computing all-pairs shortest paths on directed graphs with arbitrary weights.