Discrete Fourier transform over a ring

Last updated

In mathematics, the discrete Fourier transform over a ring generalizes the discrete Fourier transform (DFT), of a function whose values are commonly complex numbers, over an arbitrary ring.

Contents

Definition

Let R be any ring, let be an integer, and let be a principal nth root of unity, defined by: [1]

The discrete Fourier transform maps an n-tuple of elements of R to another n-tuple of elements of R according to the following formula:

By convention, the tuple is said to be in the time domain and the index j is called time. The tuple is said to be in the frequency domain and the index k is called frequency. The tuple is also called the spectrum of . This terminology derives from the applications of Fourier transforms in signal processing.

If R is an integral domain (which includes fields), it is sufficient to choose as a primitive nth root of unity, which replaces the condition ( 1 ) by: [1]

for
Proof

Take with . Since , , giving:

where the sum matches ( 1 ). Since is a primitive root of unity, . Since R is an integral domain, the sum must be zero. ∎

Another simple condition applies in the case where n is a power of two: ( 1 ) may be replaced by . [1]

Inverse

The inverse of the discrete Fourier transform is given as:

where is the multiplicative inverse of n in R (if this inverse does not exist, the DFT cannot be inverted).

Proof

Substituting ( 2 ) into the right-hand-side of ( 3 ), we get

This is exactly equal to , because when (by ( 1 ) with ), and when . ∎

Matrix formulation

Since the discrete Fourier transform is a linear operator, it can be described by matrix multiplication. In matrix notation, the discrete Fourier transform is expressed as follows:

The matrix for this transformation is called the DFT matrix.

Similarly, the matrix notation for the inverse Fourier transform is

Polynomial formulation

Sometimes it is convenient to identify an n-tuple with a formal polynomial

By writing out the summation in the definition of the discrete Fourier transform ( 2 ), we obtain:

This means that is just the value of the polynomial for , i.e.,

The Fourier transform can therefore be seen to relate the coefficients and the values of a polynomial: the coefficients are in the time-domain, and the values are in the frequency domain. Here, of course, it is important that the polynomial is evaluated at the nth roots of unity, which are exactly the powers of .

Similarly, the definition of the inverse Fourier transform ( 3 ) can be written:

With

this means that

We can summarize this as follows: if the values of are the coefficients of , then the values of are the coefficients of , up to a scalar factor and reordering. [2]

Special cases

Complex numbers

If is the field of complex numbers, then the th roots of unity can be visualized as points on the unit circle of the complex plane. In this case, one usually takes

which yields the usual formula for the complex discrete Fourier transform:

Over the complex numbers, it is often customary to normalize the formulas for the DFT and inverse DFT by using the scalar factor in both formulas, rather than in the formula for the DFT and in the formula for the inverse DFT. With this normalization, the DFT matrix is then unitary. Note that does not make sense in an arbitrary field.

Finite fields

If is a finite field, where q is a prime power, then the existence of a primitive nth root automatically implies that n divides , because the multiplicative order of each element must divide the size of the multiplicative group of F, which is . This in particular ensures that is invertible, so that the notation in ( 3 ) makes sense.

An application of the discrete Fourier transform over is the reduction of Reed–Solomon codes to BCH codes in coding theory. Such transform can be carried out efficiently with proper fast algorithms, for example, cyclotomic fast Fourier transform.

Polynomial formulation without nth root

Suppose . If , it may be the case that . This means we cannot find an root of unity in . We may view the Fourier transform as an isomorphism for some polynomials , in accordance with Maschke's theorem. The map is given by the Chinese remainder theorem, and the inverse is given by applying Bézout's identity for polynomials. [3]

, a product of cyclotomic polynomials. Factoring in is equivalent to factoring the prime ideal in . We obtain polynomials of degree where and is the order of .

As above, we may extend the base field to in order to find a primitive root, i.e. a splitting field for . Now , so an element maps to for each .

When p divides n

When , we may still define an -linear isomorphism as above. Note that where and . We apply the above factorization to , and now obtain the decomposition . The modules occurring are now indecomposable rather than irreducible.

Order of the DFT matrix

Suppose so we have an root of unity . Let be the above DFT matrix, a Vandermonde matrix with entries for . Recall that since if , then every entry is 1. If , then we have a geometric series with common ratio , so we obtain . Since the numerator is zero, but so the denominator is nonzero.

First computing the square, . Computing similarly and simplifying the deltas, we obtain . Thus, and the order is .

Normalizing the DFT matrix

In order to align with the complex case and ensure the matrix is order 4 exactly, we can normalize the above DFT matrix with . Note that though may not exist in the splitting field of , we may form a quadratic extension in which the square root exists. We may then set , and .

Unitarity

Suppose . One can ask whether the DFT matrix is unitary over a finite field. If the matrix entries are over , then one must ensure is a perfect square or extend to in order to define the order two automorphism . Consider the above DFT matrix . Note that is symmetric. Conjugating and transposing, we obtain .

by a similar geometric series argument as above. We may remove the by normalizing so that and . Thus is unitary iff . Recall that since we have an root of unity, . This means that . Note if was not a perfect square to begin with, then and so .

For example, when we need to extend to to get a 5th root of unity. .

For a nonexample, when we extend to to get an 8th root of unity. , so , and in this case and . is a square root of the identity, so is not unitary.

Eigenvalues of the DFT matrix

When , we have an root of unity in the splitting field . Note that the characteristic polynomial of the above DFT matrix may not split over . The DFT matrix is order 4. We may need to go to a further extension , the splitting extension of the characteristic polynomial of the DFT matrix, which at least contains fourth roots of unity. If is a generator of the multiplicative group of , then the eigenvalues are , in exact analogy with the complex case. They occur with some nonnegative multiplicity.

Number-theoretic transform

The number-theoretic transform (NTT) [4] is obtained by specializing the discrete Fourier transform to , the integers modulo a prime p. This is a finite field, and primitive nth roots of unity exist whenever n divides , so we have for a positive integer ξ. Specifically, let be a primitive th root of unity, then an nth root of unity can be found by letting .

e.g. for ,

when

The number theoretic transform may be meaningful in the ring , even when the modulus m is not prime, provided a principal root of order n exists. Special cases of the number theoretic transform such as the Fermat Number Transform (m = 2k+1), used by the Schönhage–Strassen algorithm, or Mersenne Number Transform [5] (m = 2k  1) use a composite modulus.

Discrete weighted transform

The discrete weighted transform (DWT) is a variation on the discrete Fourier transform over arbitrary rings involving weighting the input before transforming it by multiplying elementwise by a weight vector, then weighting the result by another vector. [6] The Irrational base discrete weighted transform is a special case of this.

Properties

Most of the important attributes of the complex DFT, including the inverse transform, the convolution theorem, and most fast Fourier transform (FFT) algorithms, depend only on the property that the kernel of the transform is a principal root of unity. These properties also hold, with identical proofs, over arbitrary rings. In the case of fields, this analogy can be formalized by the field with one element, considering any field with a primitive nth root of unity as an algebra over the extension field [ clarification needed ]

In particular, the applicability of fast Fourier transform algorithms to compute the NTT, combined with the convolution theorem, mean that the number-theoretic transform gives an efficient way to compute exact convolutions of integer sequences. While the complex DFT can perform the same task, it is susceptible to round-off error in finite-precision floating point arithmetic; the NTT has no round-off because it deals purely with fixed-size integers that can be exactly represented.

Fast algorithms

For the implementation of a "fast" algorithm (similar to how FFT computes the DFT), it is often desirable that the transform length is also highly composite, e.g., a power of two. However, there are specialized fast Fourier transform algorithms for finite fields, such as Wang and Zhu's algorithm, [7] that are efficient regardless of whether the transform length factors.

See also

Related Research Articles

<span class="mw-page-title-main">Discrete Fourier transform</span> Type of Fourier transform in discrete mathematics

In mathematics, the discrete Fourier transform (DFT) converts a finite sequence of equally-spaced samples of a function into a same-length sequence of equally-spaced samples of the discrete-time Fourier transform (DTFT), which is a complex-valued function of frequency. The interval at which the DTFT is sampled is the reciprocal of the duration of the input sequence. An inverse DFT (IDFT) is a Fourier series, using the DTFT samples as coefficients of complex sinusoids at the corresponding DTFT frequencies. It has the same sample-values as the original input sequence. The DFT is therefore said to be a frequency domain representation of the original input sequence. If the original sequence spans all the non-zero values of a function, its DTFT is continuous, and the DFT provides discrete samples of one cycle. If the original sequence is one cycle of a periodic function, the DFT provides all the non-zero values of one DTFT cycle.

Reed–Solomon codes are a group of error-correcting codes that were introduced by Irving S. Reed and Gustave Solomon in 1960. They have many applications, including consumer technologies such as MiniDiscs, CDs, DVDs, Blu-ray discs, QR codes, Data Matrix, data transmission technologies such as DSL and WiMAX, broadcast systems such as satellite communications, DVB and ATSC, and storage systems such as RAID 6.

<span class="mw-page-title-main">Matrix multiplication</span> Mathematical operation in linear algebra

In mathematics, particularly in linear algebra, matrix multiplication is a binary operation that produces a matrix from two matrices. For matrix multiplication, the number of columns in the first matrix must be equal to the number of rows in the second matrix. The resulting matrix, known as the matrix product, has the number of rows of the first and the number of columns of the second matrix. The product of matrices A and B is denoted as AB.

In mathematics and signal processing, the Z-transform converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex valued frequency-domain representation.

In the mathematical field of differential geometry, a metric tensor is an additional structure on a manifold M that allows defining distances and angles, just as the inner product on a Euclidean space allows defining distances and angles there. More precisely, a metric tensor at a point p of M is a bilinear form defined on the tangent space at p, and a metric field on M consists of a metric tensor at each point p of M that varies smoothly with p.

A discrete Hartley transform (DHT) is a Fourier-related transform of discrete, periodic data similar to the discrete Fourier transform (DFT), with analogous applications in signal processing and related fields. Its main distinction from the DFT is that it transforms real inputs to real outputs, with no intrinsic involvement of complex numbers. Just as the DFT is the discrete analogue of the continuous Fourier transform (FT), the DHT is the discrete analogue of the continuous Hartley transform (HT), introduced by Ralph V. L. Hartley in 1942.

Rader's algorithm (1968), named for Charles M. Rader of MIT Lincoln Laboratory, is a fast Fourier transform (FFT) algorithm that computes the discrete Fourier transform (DFT) of prime sizes by re-expressing the DFT as a cyclic convolution.

In linear algebra, a square matrix  is called diagonalizable or non-defective if it is similar to a diagonal matrix. That is, if there exists an invertible matrix  and a diagonal matrix such that . This is equivalent to . This property exists for any linear map: for a finite-dimensional vector space , a linear map  is called diagonalizable if there exists an ordered basis of  consisting of eigenvectors of . These definitions are equivalent: if  has a matrix representation as above, then the column vectors of  form a basis consisting of eigenvectors of , and the diagonal entries of  are the corresponding eigenvalues of ; with respect to this eigenvector basis,  is represented by .

Bruun's algorithm is a fast Fourier transform (FFT) algorithm based on an unusual recursive polynomial-factorization approach, proposed for powers of two by G. Bruun in 1978 and generalized to arbitrary even composite sizes by H. Murakami in 1996. Because its operations involve only real coefficients until the last computation stage, it was initially proposed as a way to efficiently compute the discrete Fourier transform (DFT) of real data. Bruun's algorithm has not seen widespread use, however, as approaches based on the ordinary Cooley–Tukey FFT algorithm have been successfully adapted to real data with at least as much efficiency. Furthermore, there is evidence that Bruun's algorithm may be intrinsically less accurate than Cooley–Tukey in the face of finite numerical precision.

In linear algebra, a QR decomposition, also known as a QR factorization or QU factorization, is a decomposition of a matrix A into a product A = QR of an orthonormal matrix Q and an upper triangular matrix R. QR decomposition is often used to solve the linear least squares (LLS) problem and is the basis for a particular eigenvalue algorithm, the QR algorithm.

In mathematics, the (field) norm is a particular mapping defined in field theory, which maps elements of a larger field into a subfield.

In linear algebra, the Frobenius companion matrix of the monic polynomial is the square matrix defined as

In linear algebra, a circulant matrix is a square matrix in which all rows are composed of the same elements and each row is rotated one element to the right relative to the preceding row. It is a particular kind of Toeplitz matrix.

In applied mathematics, a DFT matrix is an expression of a discrete Fourier transform (DFT) as a transformation matrix, which can be applied to a signal through matrix multiplication.

In mathematics, a logarithm of a matrix is another matrix such that the matrix exponential of the latter matrix equals the original matrix. It is thus a generalization of the scalar logarithm and in some sense an inverse function of the matrix exponential. Not all matrices have a logarithm and those matrices that do have a logarithm may have more than one logarithm. The study of logarithms of matrices leads to Lie theory since when a matrix has a logarithm then it is in an element of a Lie group and the logarithm is the corresponding element of the vector space of the Lie algebra.

<span class="mw-page-title-main">Prony's method</span> Method to estimate the components of a signal

Prony analysis was developed by Gaspard Riche de Prony in 1795. However, practical use of the method awaited the digital computer. Similar to the Fourier transform, Prony's method extracts valuable information from a uniformly sampled signal and builds a series of damped complex exponentials or damped sinusoids. This allows the estimation of frequency, amplitude, phase and damping components of a signal.

In applied mathematics, the non-uniform discrete Fourier transform of a signal is a type of Fourier transform, related to a discrete Fourier transform or discrete-time Fourier transform, but in which the input signal is not sampled at equally spaced points or frequencies. It is a generalization of the shifted DFT. It has important applications in signal processing, magnetic resonance imaging, and the numerical solution of partial differential equations.

In analytical mechanics, the mass matrix is a symmetric matrix M that expresses the connection between the time derivative of the generalized coordinate vector q of a system and the kinetic energy T of that system, by the equation

In quantum computing, the quantum Fourier transform (QFT) is a linear transformation on quantum bits, and is the quantum analogue of the discrete Fourier transform. The quantum Fourier transform is a part of many quantum algorithms, notably Shor's algorithm for factoring and computing the discrete logarithm, the quantum phase estimation algorithm for estimating the eigenvalues of a unitary operator, and algorithms for the hidden subgroup problem. The quantum Fourier transform was discovered by Don Coppersmith.

The cyclotomic fast Fourier transform is a type of fast Fourier transform algorithm over finite fields. This algorithm first decomposes a DFT into several circular convolutions, and then derives the DFT results from the circular convolution results. When applied to a DFT over , this algorithm has a very low multiplicative complexity. In practice, since there usually exist efficient algorithms for circular convolutions with specific lengths, this algorithm is very efficient.

References

  1. 1 2 3 Martin Fürer, "Faster Integer Multiplication", STOC 2007 Proceedings, pp. 5766. Section 2: The Discrete Fourier Transform.
  2. R. Lidl and G. Pilz. Applied Abstract Algebra, 2nd edition. Wiley, 1999, pp. 217–219.
  3. https://github.com/jacksonwalters/dft-finite-field
  4. Agarwal, R.; Burrus, C. (April 1974). "Fast Convolution using fermat number transforms with applications to digital filtering". IEEE Transactions on Acoustics, Speech, and Signal Processing. 22 (2): 87–97. doi:10.1109/TASSP.1974.1162555. ISSN   0096-3518.
  5. Rader, C.M. (December 1972). "Discrete Convolutions via Mersenne Transforms". IEEE Transactions on Computers. C-21 (12): 1269–1273. doi:10.1109/T-C.1972.223497. ISSN   0018-9340. S2CID   1939809.
  6. Crandall, Richard; Fagin, Barry (1994), "Discrete weighted transforms and large-integer arithmetic" (PDF), Mathematics of Computation, 62 (205): 305–324, doi: 10.2307/2153411 , JSTOR   2153411
  7. Yao Wang and Xuelong Zhu, "A fast algorithm for the Fourier transform over finite fields and its VLSI implementation", IEEE Journal on Selected Areas in Communications 6(3)572–577, 1988