- Hadamard transform
The Hadamard transform (also known as the Walsh-Hadamard transform, Hadamard-Rademacher-Walsh transform, Walsh transform, or Walsh-Fourier transform) is an example of a generalized class of
Fourier transform s. It is named for the Frenchmathematician Jacques Solomon Hadamard , the German-American mathematicianHans Adolph Rademacher , and the American mathematicianJoseph Leonard Walsh . It performs an orthogonal, symmetric,involutary , linear operation onreal number s (orcomplex number s, although the Hadamard matrices themselves are purely real).The Hadamard transform can be regarded as being built out of size-2
discrete Fourier transform s (DFTs), and is in fact equivalent to a multidimensional DFT of size . It decomposes an arbitrary input vector into a superposition ofWalsh function s.Definition
The Hadamard transform is a matrix, the
Hadamard matrix (scaled by a normalization factor), that transforms real numbers into real numbers . We can define the Hadamard transform in two ways:recursively , or by using the binary (base-2) representation of the indices and .Recursively, we define the Hadamard transform by the identity , and then define for by:
:
where the is a normalization that is sometimes omitted. Thus, other than this normalization factor, the Hadamard matrices are made up entirely of 1 and −1.
Equivalently, we can define the Hadamard matrix by its -th entry by writing and , where the and are the binary digits (0 or 1) of and , respectively. In this case, we have:
:.
This is exactly the multi-dimensional DFT, normalized to be unitary, if we regard the inputs and outputs as multidimensional arrays indexed by the and , respectively.
Some examples of the Hadamard matrices follow.
:
:
(This is precisely the size-2 DFT. It can also be regarded as the
Fourier transform on the two-element "additive" group of Z/(2).):
:
The rows of the Hadamard matrices are the
Walsh function s.Computational complexity
The Hadamard transform can be computed in operations, using the
fast Hadamard transform algorithm.Quantum computing applications
In
quantum information processing the Hadamard transformation, more often called Hadamard gate in this context (cf.quantum gate ), is a one-qubit rotation , mapping the qubit-basis states and to two superposition states with equal weight of the computational basis states and . Usually the phases are chosen so that we have:in
Dirac notation . This corresponds to thetransformation matrix :in the basis.
Many
quantum algorithm s use the Hadamard transform as an initial step, since it maps "n" qubits initialized with to a superposition of all 2"n" orthogonal states in the basis with equal weight.:Hadamard gate operations::. :.:;:.Other applications
The Hadamard transform can be used to generate
random number s with aGaussian distribution by thecentral limit theorem . Or you can combine a series of Hadamard transforms with randompermutation s to transform data intoGaussian noise .The Hadamard transform is also used in many
signal processing , anddata compression algorithms , such asHD Photo and MPEG-4 AVC. Invideo compression applications, it is usually used in the form of thesum of absolute transformed differences .ee also
*
Fast Walsh-Hadamard transform
*Hadamard matrix
*Joseph Leonard Walsh
*Pseudo-Hadamard transform External links
* Terry Ritter, [http://www.ciphersbyritter.com/RES/WALHAD.HTM Walsh-Hadamard Transforms: A Literature Survey] (Aug. 1996)
* Charles Constantine Gumas, [http://www.archive.chipcenter.com/dsp/DSP000517F1.html]
* Jörg Arndt, [http://www.jjj.de/fxt/ fxtbook.pdf]
Wikimedia Foundation. 2010.