Which problems have strongly exponential complexity?
Journal of Computer and System Sciences
Alternative Algorithms for Counting All Matchings in Graphs
STACS '03 Proceedings of the 20th Annual Symposium on Theoretical Aspects of Computer Science
A polynomial-time approximation algorithm for the permanent of a matrix with nonnegative entries
Journal of the ACM (JACM)
Fourier meets möbius: fast subset convolution
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
Exact Algorithms for Exact Satisfiability and Number of Perfect Matchings
Algorithmica - Parameterized and Exact Algorithms
Counting Subgraphs via Homomorphisms
ICALP '09 Proceedings of the 36th International Colloquium on Automata, Languages and Programming: Part I
Set Partitioning via Inclusion-Exclusion
SIAM Journal on Computing
Partitioning into Sets of Bounded Cardinality
Parameterized and Exact Computation
Computing sparse permanents faster
Information Processing Letters
Saving space by algebraization
Proceedings of the forty-second ACM symposium on Theory of computing
Exponential time complexity of the permanent and the Tutte polynomial
ICALP'10 Proceedings of the 37th international colloquium conference on Automata, languages and programming
Counting perfect matchings in graphs of degree 3
FUN'12 Proceedings of the 6th international conference on Fun with Algorithms
Information Processing Letters
Faster exponential-time algorithms in graphs of bounded average degree
ICALP'13 Proceedings of the 40th international conference on Automata, Languages, and Programming - Volume Part I
Hi-index | 0.00 |
We show that there is a polynomial space algorithm that counts the number of perfect matchings in an n-vertex graph in O*(2n/2) ⊂ O(1.415n) time. (O*(f(n)) suppresses functions polylogarithmic in f(n)). The previously fastest algorithms for the problem was the exponential space O*(((1 + √5)/2)n) ⊂ O(1.619n) time algorithm by Koivisto, and for polynomial space, the O(1.942n) time algorithm by Nederlof. Our new algorithm's runtime matches up to polynomial factors that of Ryser's 1963 algorithm for bipartite graphs. We present our algorithm in the more general setting of computing the hafnian over an arbitrary ring, analogously to Ryser's algorithm for permanent computation. We also give a simple argument why the general exact set cover counting problem over a slightly superpolynomial sized family of subsets of an n element ground set cannot be solved in O*(2(1−ε1)n) time for any ε1 0 unless there are O*(2(1−ε2)n) time algorithms for computing an n x n 0/1 matrix permanent, for some ε2 0 depending only on ε1.