172 IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 48, NO. 1, JANUARY 2000 Split Manageable Efficient Algorithm for Fourier and Hadamard Transforms Artyom M. Grigoryan and Sos S. Agaian Abstract—In this paper, a general, efficient, manageable split al- gorithm to compute one–dimensional (1-D) unitary transforms, by using the special partitioning in the frequency domain, is intro- duced. The partitions determine fast transformations that split the -point unitary transform into a set of -point transforms ( ). Here, we introduce a class of split- ting transformations: the so-called paired transforms. Based on these transforms, the decompositions of the Fourier transforms of arbitrary orders are given, and the corresponding algorithms are considered. Comparative estimates revealing the efficiency of the proposed algorithms with respect to the known ones are given. In particular, a proposed method of calculating the -point Fourier transform requires multiplications and additions. In terms of the paired transforms, the splitting of the -point Hadamard transform is described. As a re- sult, the proposed algorithm for computing this transform uses on the average no more than six operations of additions per sample. Index Terms—Discrete fast and Hadamard transforms, fast al- gorithms, paired transforms. I. INTRODUCTION I N THE PAST decade, fast orthogonal transforms have been widely used in areas such as data compression, pattern recognition and image reconstruction, interpolation, linear filtering, and spectral analysis [1]–[4]. The suitability of unitary transforms in each of the above applications depends on the properties of their basis functions as well as on the existence of fast algorithms, including parallel ones. Since the introduction of the fast Fourier transform (FFT) [5], Fourier analysis has become one of the most frequently used tools in signal/image processing and communication systems; other discrete trans- forms and different fast algorithms for computing transforms have been introduced [1], [6]–[9]. Fast algorithms of interest are the fractional DFT [10], split-radix, vector split-radix, mixed radix [11], [12], Winograd algorithm, extending Winograd’s small convolution algorithms [32], prefactor, arithmetic, and least-mean-square algorithms [13]–[16]. The main problem when calculating the transform relates to construction of the decomposition, namely, the transition to the short DFT’s with minimal computational complexity. The Manuscript received May 1, 1998; revised June 28, 1999. The associate editor coordinating the review of this paper and approving it for publication was Dr. Frans M. Coetzee. A. M. Grigoryan is with the Department of Electrical Engineering, Texas A&M University, College Station, TX 77843-3128 USA (e-mail: artyom@ee.tamu.edu). S. S. Agaian is with the Division of Engineering, The University of Texas, San Antonio, San Antonio, TX 78249-0669 USA (e-mail: sagaian@voy- ager1.eng.utsa.edu). Publisher Item Identifier S 1053-587X(00)00089-1. computation of unitary transforms are complicated and time consuming. In many cases, we have to consider transforms of complex orders, as well as , where is an odd prime [20], [33]. Prime length FFT’s [30], [31], [34], which are the building blocks for composite length DFT’s, can be used in different ways. Since the decomposition of the DFT is not unique, it is natural to ask how to manage splittings and how to obtain the fastest algorithm of the DFT. The lower bound of arithmetical operations for computing the linear transform has been found [17] and equals for DFT and for the Hadamard transform, which shows that existent algorithms have room for improvement. The difference between the lower bound and the complexity of fast transform algorithms (for example, for the split-radix algorithm, the upper bound equals ) shows that it is possible to obtain FFT algorithms that will be faster than existent ones. One approach is in designing efficient manageable split algorithms, and there are many reasons for that. Indeed, many algorithms make different assumptions about the transform length. The signal/image processing related to engineering research becomes increasingly dependent on the develop- ment and implementation of the algorithms of orthogonal or nonorthogonal transforms and convolution operations in modern computer systems. The increasing importance of processing large vectors and parallel computing in many scientific and engineering applications requires new ideas for designing super-efficient algorithms of the transforms and their implementations. The present paper introduces a flexible, manageable split algorithm for computing unitary transforms of arbitrary orders by using different partitioning in the frequency domain and new paired representation of the transforms. These types of partitioning have been used for multidimensional transforms [18]–[20] but will be described below for the one-dimensional (1-D) case. The number of partitions depends on the type of the unitary transforms and their orders. The greater the order of the transform the more opportunities to obtain such partitioning, which results in an effective decomposition of the transform. Section II presents a problem treated in the present paper. Sec- tion III reviews briefly some necessary background material, in- cluding the concept of a partition revealing the transform and the concept of a splitting of the transform. Section IV describes the proposed algorithm, as well as properties of the so-called paired transforms, which results in the splitting of the trans- form. Sections V and VI describe the paired representations of the Fourier and Hadamard transforms and algorithms for com- puting them. The matrix equations describing the decomposi- tion of these transforms based on the paired transforms are also 1053–587X/00$10.00 © 2000 IEEE