Finding the Smallest H-Subgraph in Real Weighted Graphs and Related Problems

Let G be a graph with real weights assigned to the vertices (edges). The weight of a subgraph of G is the sum of the weights of its vertices (edges). The MIN H-SUBGRAPH problem is to find a minimum weight subgraph isomorphic to H, if one exists. Our main results are new algorithms for the MIN H-SUBGRAPH problem. The only operations we allow on real numbers are additions and comparisons. Our algorithms are based, in part, on fast matrix multiplication. For vertex-weighted graphs with n vertices we obtain the following results. We present an O(nt(ω,h)) time algorithm for MIN H-SUBGRAPH in case H is a fixed graph with h vertices and ω< 2.376 is the exponent of matrix multiplication. The value of t(ω,h) is determined by solving a small integer program. In particular, the smallest triangle can be found in O(n2+1/(4−ω)) ≤o(n2.616) time, the smallest K4 in O(nω+1) time, the smallest K7 in O(n4+3/(4−ω)) time. As h grows, t(ω,h) converges to 3h/(6-ω) < 0.828h. Interestingly, only for h = 4,5,8 the running time of our algorithm essentially matches that of the (unweighted) H-subgraph detection problem. Already for triangles, our results improve upon the main result of [VW06]. Using rectangular matrix multiplication, the value of t(ω,h) can be improved; for example, the runtime for triangles becomes O(n2.575). We also present an algorithm whose running time is a function of m, the number of edges. In particular, the smallest triangle can be found in O(m(18−4ω)/(13−3ω)) ≤o(m1.45) time. For edge-weighted graphs we present an O(m2−1/k logn) time algorithm that finds the smallest cycle of length 2k or 2k-1. This running time is identical, up to a logarithmic factor, to the running time of the algorithm of Alon et al. for the unweighted case. Using the color coding method and a recent algorithm of Chan for distance products, we obtain an O(n3/logn) time randomized algorithm for finding the smallest cycle of any fixed length.

[1]  Friedrich Eisenbrand,et al.  On the complexity of fixed parameter clique and dominating set , 2004, Theor. Comput. Sci..

[2]  Noga Alon,et al.  Derandomization, witnesses for Boolean matrix multiplication and construction of perfect hash functions , 1994, Algorithmica.

[3]  Raimund Seidel,et al.  On the All-Pairs-Shortest-Path Problem in Unweighted Undirected Graphs , 1995, J. Comput. Syst. Sci..

[4]  Ryan Williams,et al.  Finding a maximum weight triangle in n3-Δ time, with applications , 2006, STOC '06.

[5]  Don Coppersmith,et al.  Rectangular Matrix Multiplication Revisited , 1997, J. Complex..

[6]  Andrzej Lingas,et al.  LCA Queries in Directed Acyclic Graphs , 2005, ICALP.

[7]  Dieter Kratsch,et al.  Finding and Counting Small Induced Subgraphs Efficiently , 1995, WG.

[8]  Norishige Chiba,et al.  Arboricity and Subgraph Listing Algorithms , 1985, SIAM J. Comput..

[9]  J. Håstad Clique is hard to approximate withinn1−ε , 1999 .

[10]  Noga Alon,et al.  Finding and counting given length cycles , 1997, Algorithmica.

[11]  Michael L. Fredman,et al.  New Bounds on the Complexity of the Shortest Path Problem , 1976, SIAM J. Comput..

[12]  Timothy M. Chan All-Pairs Shortest Paths with Real Weights in O(n3/log n) Time , 2008, Algorithmica.

[13]  Michael L. Fredman,et al.  How Good is the Information Theory Bound in Sorting? , 1976, Theor. Comput. Sci..

[14]  Michael R. Fellows,et al.  Fixed-Parameter Tractability and Completeness II: On Completeness for W[1] , 1995, Theor. Comput. Sci..

[15]  Mam Riess Jones Color Coding , 1962, Human factors.

[16]  Bernd Voigt,et al.  Finding Minimally Weighted Subgraphs , 1991, WG.

[17]  Steven Skiena,et al.  Lowest common ancestors in trees and directed acyclic graphs , 2005, J. Algorithms.

[18]  Svatopluk Poljak,et al.  On the complexity of the subgraph problem , 1985 .

[19]  Victor Y. Pan,et al.  Fast Rectangular Matrix Multiplication and Applications , 1998, J. Complex..

[20]  Raphael Yuster,et al.  Detecting short directed cycles using rectangular matrix multiplication and dynamic programming , 2004, SODA '04.

[21]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

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

[23]  Uriel Feige,et al.  The Dense k -Subgraph Problem , 2001, Algorithmica.