Abstract
Vassilevska and Williams (STOC’09) showed how to count simple paths on k vertices and matchings on k/2 edges in an n-vertex graph in time nk/2+O(1). In the same year, two different algorithms with the same runtime were given by Koutis and Williams (ICALP’09), and Björklund et al. (ESA’09), via nst/2+O(1)-time algorithms for counting t-tuples of pairwise disjoint sets drawn from a given family of s-sized subsets of an n-element universe. Shortly afterwards, Alon and Gutner (TALG’10) showed that these problems have Ω(n⌊ st/2⌋) and Ω(n⌊ k/2⌋) lower bounds when counting by color coding.
Here, we show that one can do better—we show that the “meet-in-the-middle” exponent st/2 can be beaten and give an algorithm that counts in time n0.45470382st+O(1) for t a multiple of three. This implies algorithms for counting occurrences of a fixed subgraph on k vertices and pathwidth p ≪ k in an n-vertex graph in n0.45470382k+2p+O(1) time, improving on the three mentioned algorithms for paths and matchings, and circumventing the color-coding lower bound. We also give improved bounds for counting t-tuples of disjoint s-sets for s = 2,3,4.
Our algorithms use fast matrix multiplication. We show an argument that this is necessary to go below the meet-in-the-middle barrier.
- Noga Alon and Shai Gutner. 2010. Balanced families of perfect hash functions and their applications. ACM Trans. Algorithms 6, 3, 54:1--54:12. Google ScholarDigital Library
- Omid Amini, Fedor V. Fomin, and Saket Saurabh. 2012. Counting subgraphs via homomorphisms. SIAM J. Discrete Math. 26, 2, 695--717. Google ScholarCross Ref
- Erwin H. Bareiss. 1968. Sylvester’s identity and multistep integer-preserving gaussian elimination. Math. Comp. 22, 565--578. 0025-5718Google Scholar
- Andreas Björklund. 2012. Below all subsets for some permutational counting problems. CoRR abs/1211.0391.Google Scholar
- Andreas Björklund, Thore Husfeldt, Petteri Kaski, and Mikko Koivisto. 2008. The fast intersection transform with applications to counting paths. CoRR abs/0809.2489.Google Scholar
- Andreas Björklund, Thore Husfeldt, Petteri Kaski, and Mikko Koivisto. 2009. Counting paths and packings in halves. In ESA (Lecture Notes in Computer Science), Amos Fiat and Peter Sanders (Eds.), Vol. 5757. Springer, Berlin, 578--586.Google Scholar
- Andreas Björklund, Thore Husfeldt, Petteri Kaski, and Mikko Koivisto. 2010. Trimmed Moebius inversion and graphs of bounded degree. Theory Comput. Syst. 47, 3, 637--654. Google ScholarDigital Library
- Andreas Björklund, Thore Husfeldt, Petteri Kaski, Mikko Koivisto, Jesper Nederlof, and Pekka Parviainen. 2012. Fast zeta transforms for lattices with few irreducibles. In SODA, Yuval Rabani (Ed.). SIAM, 1436--1444. Google ScholarDigital Library
- Radu Curticapean. 2013. Counting matchings of size is #W{1}-hard. In ICALP (1) (Lecture Notes in Computer Science), Fedor V. Fomin, Rsi Freivalds, Marta Kwiatkowska, and David Peleg (Eds.), Vol. 7965. Springer, Berlin, 352--363. Google ScholarDigital Library
- Radu Curticapean, Holger Dell, and Dániel Marx. 2017. Homomorphisms are a good basis for counting small subgraphs. In STOC. ACM, 210--223. Google ScholarDigital Library
- Radu Curticapean and Dániel Marx. 2014. Complexity of counting subgraphs: Only the boundedness of the vertex-cover number counts. In FOCS. IEEE Computer Society, 130--139. Google ScholarDigital Library
- Josep Díaz, Maria Serna, and Dimitrios M. Thilikos. 2002. Counting -colorings of partial -trees. Theoret. Comput. Sci. 281, 1--2, 291--309. Google ScholarDigital Library
- Friedrich Eisenbrand and Fabrizio Grandoni. 2004. On the complexity of fixed parameter clique and dominating set. Theoret. Comput. Sci. 326, 1--3, 57--67. Google ScholarDigital Library
- Jörg Flum and Martin Grohe. 2004. The parameterized complexity of counting problems. SIAM J. Comput. 33, 4, 892--922. Google ScholarDigital Library
- Fedor V. Fomin, Daniel Lokshtanov, Venkatesh Raman, Saket Saurabh, and B. V. Raghavendra Rao. 2012. Faster algorithms for finding and counting subgraphs. J. Comput. Syst. Sci. 78, 3, 698--706. Google ScholarDigital Library
- Anka Gajentaan and Mark H. Overmars. 2012. On a class of O(n2) problems in computational geometry. Comput. Geom. 45, 4, 140--152. Google ScholarDigital Library
- Ellis Horowitz and Sartaj Sahni. 1974. Computing partitions with applications to the knapsack problem. J. Assoc. Comput. Mach. 21, 277--292. 0004-5411 Google ScholarDigital Library
- Russell Impagliazzo and Ramamohan Paturi. 2001. On the complexity of k-SAT. J. Comput. Syst. Sci. 62, 2, 367--375. Google ScholarDigital Library
- Alon Itai and Michael Rodeh. 1978. Finding a minimum circuit in a graph. SIAM J. Comput. 7, 4, 413--423. Google ScholarDigital Library
- Nancy G. Kinnersley. 1992. The vertex separation number of a graph equals its path-width. Inform. Process. Lett. 42, 6, 345--350. Google ScholarDigital Library
- Ton Kloks, Dieter Kratsch, and Haiko Müller. 2000. Finding and counting small induced subgraphs efficiently. Inform. Process. Lett. 74, 3--4, 115--121. Google ScholarDigital Library
- Ioannis Koutis and Ryan Williams. 2009. Limits and applications of group algebras for parameterized problems. In ICALP (1) (Lecture Notes in Computer Science), Susanne Albers, Alberto Marchetti-Spaccamela, Yossi Matias, Sotiris E. Nikoletseas, and Wolfgang Thomas (Eds.), Vol. 5555. Springer, Berlin, 653--664. Google ScholarDigital Library
- Miroslaw Kowaluk, Andrzej Lingas, and Eva-Marta Lundell. 2013. Counting and detecting small subgraphs via equations. SIAM J. Discrete Math. 27, 2, 892--909. Google ScholarCross Ref
- J. M. Landsberg. 2012. Tensors: Geometry and Applications. Graduate Studies in Mathematics, Vol. 128. American Mathematical Society, Providence, RI. xx+439 pages.Google Scholar
- François Le Gall. 2012. Faster algorithms for rectangular matrix multiplication. In FOCS. IEEE Computer Society, 514--523. Google ScholarDigital Library
- François Le Gall. 2014. Powers of Tensors and Fast Matrix Multiplication. arXiv:1401.7714.Google Scholar
- Grazia Lotti and Francesco Romani. 1983. On the asymptotic complexity of rectangular matrix multiplication. Theoret. Comput. Sci. 23, 2, 171--185. Google ScholarCross Ref
- J. Nešetřil and S. Poljak. 1985. On the complexity of the subgraph problem. Comment. Math. Univ. Carolin. 26, 2, 415--419. CMUCAA0010-2628Google Scholar
- Victor Pan. 1984. How can we speed up matrix multiplication? SIAM Rev. 26, 3, 393--415. Google ScholarDigital Library
- Victor Y. Pan. 2014. Matrix multiplication, trilinear decompositions, APA algorithms, and summation. CoRR abs/1412.1145. http://arxiv.org/abs/1412.1145Google Scholar
- Virginia Vassilevska and Ryan Williams. 2009. Finding, minimizing, and counting weighted subgraphs. In STOC, Michael Mitzenmacher (Ed.). ACM, 455--464. Google ScholarDigital Library
- Virginia Vassilevska Williams. 2012. Multiplying matrices faster than Coppersmith-Winograd. In STOC, Howard J. Karloff and Toniann Pitassi (Eds.). ACM, 887--898. Google ScholarDigital Library
Index Terms
- Counting Thin Subgraphs via Packings Faster than Meet-in-the-Middle Time
Recommendations
Homomorphisms are a good basis for counting small subgraphs
STOC 2017: Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of ComputingWe introduce graph motif parameters, a class of graph parameters that depend only on the frequencies of constant-size induced subgraphs. Classical works by Lovász show that many interesting quantities have this form, including, for fixed graphs H, the ...
Counting thin subgraphs via packings faster than meet-in-the-middle time
SODA '14: Proceedings of the twenty-fifth annual ACM-SIAM symposium on Discrete algorithmsVassilevska and Williams (STOC 2009) showed how to count simple paths on k vertices and matchings on k/2 edges in an n-vertex graph in time nk/2+O(1). In the same year, two different algorithms with the same runtime were given by Koutis and Williams (...
Complexity of Counting Subgraphs: Only the Boundedness of the Vertex-Cover Number Counts
FOCS '14: Proceedings of the 2014 IEEE 55th Annual Symposium on Foundations of Computer ScienceFor a class C of graphs, #Sub(C) is the counting problem that, given a graph H from C and an arbitrary graph G, asks for the number of subgraphs of G isomorphic to H. It is known that if C has bounded vertex-cover number (equivalently, the size of the ...
Comments