Fine-grained reductions from approximate counting to decision
The main problems in fine-grained complexity are CNF-SAT, the Orthogonal Vectors problem, 3SUM, and the Negative-Weight Triangle problem (which is closely related to All-Pairs Shortest Path). In this paper, we consider the approximate counting version of each problem; thus instead of simply deciding whether a witness exists, we attempt to (multiplicatively) approximate the number of witnesses. In each case, we provide a fine-grained reduction from the approximate counting form to the usual decision form. For example, if there is an O(c^n)-time algorithm that solves k-SAT for all k, then we prove there is an O((c+o(1))^n)-time algorithm to approximately count the satisfying assignments. Similarly, we get that the exponential time hypothesis (ETH) is equivalent to an approximate counting version. This mirrors a result of Sipser (STOC 1983) and Stockmeyer (SICOMP 1985), who proved such a result in the classical polynomial-time setting, and a similar result due to Müller (IWPEC 2006) in the FPT setting. Our algorithm for polynomial-time problems applies in a general setting in which we approximately count edges of a bipartite graph to which we have limited access. In particular, this means it can be applied to problem variants in which significant improvements over the conjectured running time bounds are already known. For example, the Orthogonal Vectors problem over GF(m)^d for constant m can be solved in time n·poly(d) by a result of Williams and Yu (SODA 2014); our result implies that we can approximately count the number of orthogonal pairs with essentially the same running time. Moreover, our overhead is only polylogarithmic, so it can be applied to subpolynomial improvements such as the n^3/(Θ(√( n))) time algorithm for the Negative-Weight Triangle problem due to Williams (STOC 2014).
READ FULL TEXT