Core Concepts
A simple FFT-based algorithm for efficient subset convolution that maintains the running time of the original algorithm while eliminating the need for set function transforms.
Abstract
The content discusses a new algorithm for efficiently computing subset convolution, a fundamental tool in exact and parameterized algorithms. The original algorithm proposed by Björklund et al. in 2007 had a running time of O(2^n n^2) and used set function transforms like the zeta and Möbius transforms.
The key insights of the new algorithm are:
It interprets the set functions as vectors indexed by the natural binary representation of subsets and transforms them directly via the Fast Fourier Transform (FFT), without the need for set function transforms.
It computes the convolution in the frequency domain by multiplying the transformed set functions and then applying the inverse FFT.
It then "cleans up" the output by setting the values for sets with cardinality different from the current one to 0.
This approach maintains the O(2^n n^2) running time of the original algorithm while eliminating the issues of large intermediate outputs and floating-point precision errors that plagued the previous algorithm. The author also discusses the implications of this work, such as enabling the use of efficient FFT libraries and further "sinking the algorithmic isthmus" between sequence convolution and subset convolution.
Stats
The algorithm has a running time of O(2^n n^2), maintaining the running time of the original algorithm proposed by Björklund et al.