Generating and Searching Families of FFT Algorithms
Abstract
A fundamental question of longstanding theoretical interest is to prove the lowest exact count of real additions and multiplications required to compute a poweroftwo discrete Fourier transform (DFT). For 35 years the splitradix algorithm held the record by requiring just 4n log n  6n + 8 arithmetic operations on real numbers for a sizen DFT, and was widely believed to be the best possible. Recent work by Van Buskirk et al. demonstrated improvements to the splitradix operation count by using multiplier coefficients or "twiddle factors" that are not nth roots of unity for a sizen DFT. This paper presents a Boolean Satisfiabilitybased proof of the lowest operation count for certain classes of DFT algorithms. First, we present a novel way to choose new yet valid twiddle factors for the nodes in flowgraphs generated by common poweroftwo fast Fourier transform algorithms, FFTs. With this new technique, we can generate a large family of FFTs realizable by a fixed flowgraph. This solution space of FFTs is cast as a Boolean Satisfiability problem, and a modern Satisfiability Modulo Theory solver is applied to search for FFTs requiring the fewest arithmetic operations. Surprisingly, we find that there are FFTs requiring fewer operations than the splitradix even when all twiddle factors are nth roots of unity.
 Publication:

arXiv eprints
 Pub Date:
 March 2011
 arXiv:
 arXiv:1103.5740
 Bibcode:
 2011arXiv1103.5740H
 Keywords:

 Computer Science  Information Theory;
 Computer Science  Logic in Computer Science;
 Computer Science  Symbolic Computation
 EPrint:
 Preprint submitted on March 28, 2011, to the Journal on Satisfiability, Boolean Modeling and Computation