Hadamard transform
   HOME

TheInfoList



OR:

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 In mathematics, the Fourier transform (FT) is an integral transform that takes a function as input then outputs another function that describes the extent to which various frequencies are present in the original function. The output of the tr ...
s. It performs an
orthogonal In mathematics, orthogonality (mathematics), orthogonality is the generalization of the geometric notion of ''perpendicularity''. Although many authors use the two terms ''perpendicular'' and ''orthogonal'' interchangeably, the term ''perpendic ...
, symmetric, involutive, linear operation on
real number In mathematics, a real number is a number that can be used to measure a continuous one- dimensional quantity such as a duration or temperature. Here, ''continuous'' means that pairs of values can have arbitrarily small differences. Every re ...
s (or
complex Complex commonly refers to: * Complexity, the behaviour of a system whose components interact in multiple ways so possible interactions are difficult to describe ** Complex system, a system composed of many components which may interact with each ...
, or
hypercomplex number In mathematics, hypercomplex number is a traditional term for an element (mathematics), element of a finite-dimensional Algebra over a field#Unital algebra, unital algebra over a field, algebra over the field (mathematics), field of real numbers. ...
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 In mathematics, the discrete Fourier transform (DFT) converts a finite sequence of equally-spaced Sampling (signal processing), samples of a function (mathematics), function into a same-length sequence of equally-spaced samples of the discre ...
s (DFTs), and is in fact equivalent to a multidimensional DFT of size . It decomposes an arbitrary input vector into a superposition of Walsh functions. The transform is named for the French
mathematician A mathematician is someone who uses an extensive knowledge of mathematics in their work, typically to solve mathematical problems. Mathematicians are concerned with numbers, data, quantity, mathematical structure, structure, space, Mathematica ...
Jacques Hadamard (), the German-American mathematician Hans Rademacher, and the American mathematician Joseph L. Walsh.


Definition

The Hadamard transform ''H''''m'' is a 2''m'' × 2''m'' matrix, the
Hadamard matrix In mathematics, an Hadamard matrix, named after the French mathematician Jacques Hadamard, is a square matrix whose entries are either +1 or −1 and whose rows are mutually orthogonal. In geometry, geometric terms, this means that each pair of r ...
(scaled by a normalization factor), that transforms 2''m'' real numbers ''x''''n'' into 2''m'' real numbers ''X''''k''. The Hadamard transform can be defined in two ways: recursively, or by using the binary ( base-2) representation of the indices ''n'' and ''k''. Recursively, we define the 1 × 1 Hadamard transform ''H''0 by the identity ''H''0 = 1, and then define ''H''''m'' for ''m'' > 0 by: H_m = \frac \begin H_ & H_ \\ H_ & -H_ \end where the 1/ is a normalization that is sometimes omitted. For ''m'' > 1, we can also define ''H''''m'' by: H_m = H_ \otimes H_ where \otimes represents the
Kronecker product In mathematics, the Kronecker product, sometimes denoted by ⊗, is an operation on two matrices of arbitrary size resulting in a block matrix. It is a specialization of the tensor product (which is denoted by the same symbol) from vector ...
. 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 (''k'', ''n'')-th entry by writing \begin k &= \sum^_ = k_ 2^ + k_ 2^ + \dots + k_1 2 + k_0 \\ n &= \sum^_ = n_ 2^ + n_ 2^ + \dots + n_1 2 + n_0 \end where the ''k''''j'' and ''n''''j'' are the bit elements (0 or 1) of ''k'' and ''n'', respectively. Note that for the element in the top left corner, we define: k = n = 0. In this case, we have: (H_m)_ = \frac (-1)^ This is exactly the multidimensional 2 \times 2 \times \cdots \times 2 \times 2 DFT, normalized to be unitary, if the inputs and outputs are regarded as multidimensional arrays indexed by the ''n''''j'' and ''k''''j'', respectively. Some examples of the Hadamard matrices follow. \begin H_0 & = +\begin1\end\\ pt H_1 & = \frac \left(\begin 1 & 1\\ 1 & -1 \end\right)\\ pt H_2 & = \frac \left(\begin 1 & 1 & 1 & 1\\ 1 & -1 & 1 & -1\\ 1 & 1 & -1 & -1\\ 1 & -1 & -1 & 1 \end\right)\\ pt H_3 & = \frac \left(\begin 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\ 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\ 1 & 1 & -1 & -1 & 1 & 1 & -1 & -1\\ 1 & -1 & -1 & 1 & 1 & -1 & -1 & 1\\ 1 & 1 & 1 & 1 & -1 & -1 & -1 & -1\\ 1 & -1 & 1 & -1 & -1 & 1 & -1 & 1\\ 1 & 1 & -1 & -1 & -1 & -1 & 1 & 1\\ 1 & -1 & -1 & 1 & -1 & 1 & 1 & -1 \end\right)\\ pt (H_n)_ & = \frac (-1)^ \end where i \cdot j is the bitwise
dot product In mathematics, the dot product or scalar productThe term ''scalar product'' means literally "product with a Scalar (mathematics), scalar as a result". It is also used for other symmetric bilinear forms, for example in a pseudo-Euclidean space. N ...
of the binary representations of the numbers i and j. For example, if n \;\geq\; 2, then (H_n)_ \;=\; (-1)^ \;=\; (-1)^ \;=\; (-1)^ \;=\; (-1)^1 \;=\; -1, agreeing with the above (ignoring the overall constant). Note that the first row, first column element of the matrix is denoted by (H_n)_ . ''H''1 is precisely the size-2 DFT. It can also be regarded as the
Fourier transform In mathematics, the Fourier transform (FT) is an integral transform that takes a function as input then outputs another function that describes the extent to which various frequencies are present in the original function. The output of the tr ...
on the two-element ''additive'' group of Z/(2). The rows of the Hadamard matrices are the Walsh functions.


Advantages of the Walsh–Hadamard transform


Real

According to the above definition of matrix ''H'', here we let ''H'' = ''H'' 'm'',''n''H ,n\begin 1 & 1 \\ 1 & -1 \end In the Walsh transform, only 1 and −1 will appear in the matrix. The numbers 1 and −1 are real numbers, so there is no need to perform a
complex number In mathematics, a complex number is an element of a number system that extends the real numbers with a specific element denoted , called the imaginary unit and satisfying the equation i^= -1; every complex number can be expressed in the for ...
calculation.


No multiplication is required

The DFT needs irrational multiplication, while the Hadamard transform does not. Even rational multiplication is not needed, since sign flips is all it takes.


Some properties are similar to those of the DFT

In the Walsh transform matrix, all entries in the first row (and column) are equal to 1. sign change calculated 1st row 0 second row=1. third row =2. . . . eighth row=7.H ,n= \left(\begin 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\ 1 & 1 & 1 & 1 & -1 & -1 & -1 & -1\\ 1 & 1 & -1 & -1 & -1 & -1 & 1 & 1\\ 1 & 1 & -1 & -1 & 1 & 1 & -1 & -1\\ 1 & -1 & -1 & 1 & 1 & -1 & -1 & 1\\ 1 & -1 & -1 & 1 & -1 & 1 & 1 & -1\\ 1 & -1 & 1 & -1 & -1 & 1 & -1 & 1\\ 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1 \end\right) Discrete Fourier transform: e^ In discrete Fourier transform, when m equal to zeros (mean first row), the result of DFT also is 1. At the second row, although it is different from the first row, we can observe a characteristic of the matrix that the signal in the first raw matrix is low frequency and it will increase the frequency at second row, increase more frequency until the last row. If we calculate zero crossing: First row = 0 zero crossing Second row = 1 zero crossing Third row = 2 zero crossings ⋮ Eight row = 7 zero crossings


Relation to Fourier transform

The Hadamard transform is in fact equivalent to a multidimensional DFT of size . Another approach is to view the Hadamard transform as a Fourier transform on the
Boolean group In mathematics, specifically in group theory, an elementary abelian group is an abelian group in which all elements other than the identity have the same order. This common order must be a prime number, and the elementary abelian groups in whic ...
(\Z / 2\Z)^n. Using the Fourier transform on finite (abelian) groups, the Fourier transform of a function f \colon (\Z/2\Z)^n \to \Complex is the function \widehat f defined by \widehat(\chi) = \sum_ f(a) \bar(a) where \chi is a character of (\Z/2\Z)^n. Each character has the form \chi_r(a) = (-1)^ for some r \in (\Z/2\Z)^n, where the multiplication is the boolean dot product on bit strings, so we can identify the input to \widehat with r \in (\Z/2\Z)^n ( Pontryagin duality) and define \widehat f \colon (\Z/2\Z)^n \to \Complex by \widehat(r) = \sum_ f(a) (-1)^ This is the Hadamard transform of f, considering the input to f and \widehat as boolean strings. In terms of the above formulation where the Hadamard transform multiplies a vector of 2^n complex numbers v on the left by the Hadamard matrix H_n the equivalence is seen by taking f to take as input the bit string corresponding to the index of an element of v, and having f output the corresponding element of v. Compare this to the usual
discrete Fourier transform In mathematics, the discrete Fourier transform (DFT) converts a finite sequence of equally-spaced Sampling (signal processing), samples of a function (mathematics), function into a same-length sequence of equally-spaced samples of the discre ...
which when applied to a vector v of 2^n complex numbers instead uses characters of the
cyclic group In abstract algebra, a cyclic group or monogenous group is a Group (mathematics), group, denoted C_n (also frequently \Z_n or Z_n, not to be confused with the commutative ring of P-adic number, -adic numbers), that is Generating set of a group, ge ...
\Z / 2^n \Z.


Computational complexity

In the classical domain, the Hadamard transform can be computed in n \log n operations (n = 2^m), using the fast Hadamard transform algorithm. In the quantum domain, the Hadamard transform can be computed in O(1) time, as it is a quantum logic gate that can be parallelized.


Quantum computing applications

The Hadamard transform is used extensively in
quantum computing A quantum computer is a computer that exploits quantum mechanical phenomena. On small scales, physical matter exhibits properties of wave-particle duality, both particles and waves, and quantum computing takes advantage of this behavior using s ...
. The 2 × 2 Hadamard transform H_1 is the quantum logic gate known as the Hadamard gate, and the application of a Hadamard gate to each qubit of an register in parallel is equivalent to the Hadamard transform


Hadamard gate

In quantum computing, the Hadamard gate is a one-
qubit In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical syste ...
rotation Rotation or rotational/rotary motion is the circular movement of an object around a central line, known as an ''axis of rotation''. A plane figure can rotate in either a clockwise or counterclockwise sense around a perpendicular axis intersect ...
, mapping the qubit-basis states , 0 \rangle and , 1 \rangle to two superposition states with equal weight of the computational basis states , 0 \rangle and , 1 \rangle . Usually the phases are chosen so that H=\frac\langle0, +\frac\langle1, in Dirac notation. This corresponds to the transformation matrix H_1=\frac\begin 1 & 1 \\ 1 & -1 \end in the , 0 \rangle , , 1 \rangle basis, also known as the computational basis. The states \frac and \frac are known as \left, \boldsymbol\right\rangle and \left, \boldsymbol\right\rangle respectively, and together constitute the polar basis in
quantum computing A quantum computer is a computer that exploits quantum mechanical phenomena. On small scales, physical matter exhibits properties of wave-particle duality, both particles and waves, and quantum computing takes advantage of this behavior using s ...
.


Hadamard gate operations

\begin H(, 0\rangle) &= \frac, 0\rangle + \frac, 1\rangle =: , +\rangle\\ H(, 1\rangle) &= \frac, 0\rangle - \frac, 1\rangle =: , -\rangle\\ H(, +\rangle) &= H\left( \frac, 0\rangle + \frac, 1\rangle \right) = \frac\Big( , 0\rangle + , 1\rangle\Big) + \frac\Big(, 0\rangle - , 1\rangle\Big) = , 0\rangle\\ H(, -\rangle) &= H\left( \frac, 0\rangle - \frac, 1\rangle \right) = \frac\Big( , 0\rangle + , 1\rangle\Big) - \frac\Big(, 0\rangle - , 1\rangle\Big) = , 1\rangle \end One application of the Hadamard gate to either a 0 or 1 qubit will produce a
quantum state In quantum physics, a quantum state is a mathematical entity that embodies the knowledge of a quantum system. Quantum mechanics specifies the construction, evolution, and measurement of a quantum state. The result is a prediction for the system ...
that, if observed, will be a 0 or 1 with equal probability (as seen in the first two operations). This is exactly like flipping a fair coin in the standard probabilistic model of computation. However, if the Hadamard gate is applied twice in succession (as is effectively being done in the last two operations), then the final state is always the same as the initial state.


Hadamard transform in quantum algorithms

Computing the quantum Hadamard transform is simply the application of a Hadamard gate to each qubit individually because of the tensor product structure of the Hadamard transform. This simple result means the quantum Hadamard transform requires \log_2 N operations, compared to the classical case of N \log_2 N operations. For an n-qubit system, Hadamard gates acting on each of the n qubits (each initialized to the , 0\rangle) can be used to prepare uniform
quantum superposition Quantum superposition is a fundamental principle of quantum mechanics that states that linear combinations of solutions to the Schrödinger equation are also solutions of the Schrödinger equation. This follows from the fact that the Schrödi ...
states when N is of the form N = 2^n. In this case case with n qubits, the combined Hadamard gate H_n is expressed as the tensor product of n Hadamard gates: H_n = \underbrace_ The resulting uniform quantum superposition state is then: H_ , 0\rangle^ = \frac \sum_^ , j\rangle This generalizes the preparation of uniform quantum states using Hadamard gates for any N = 2^n.
Measurement Measurement is the quantification of attributes of an object or event, which can be used to compare with other objects or events. In other words, measurement is a process of determining how large or small a physical quantity is as compared to ...
of this uniform quantum state results in a
random In common usage, randomness is the apparent or actual lack of definite pattern or predictability in information. A random sequence of events, symbols or steps often has no order and does not follow an intelligible pattern or combination. ...
state between , 0\rangle and Many
quantum algorithm In quantum computing, a quantum algorithm is an algorithm that runs on a realistic model of quantum computation, the most commonly used model being the quantum circuit model of computation. A classical (or non-quantum) algorithm is a finite seq ...
s use the Hadamard transform as an initial step, since as explained earlier, it maps ''n'' qubits initialized with , 0 \rangle to a superposition of all 2''n'' orthogonal states in the , 0 \rangle , , 1 \rangle basis with equal weight. For example, this is used in the Deutsch–Jozsa algorithm, Simon's algorithm, the Bernstein–Vazirani algorithm, and in Grover's algorithm. Note that Shor's algorithm uses both an initial Hadamard transform, as well as the quantum Fourier transform, which are both types of Fourier transforms on finite groups; the first on (\Z / 2 \Z)^n and the second on \Z /2^n \Z. Preparation of uniform quantum superposition states in the general case, when N 2^n is non-trivial and requires more work. An efficient and deterministic approach for preparing the superposition state , \Psi\rangle = \frac \sum_^ , j\rangle with a gate complexity and circuit depth of only O(\log_2 N) for all N was recently presented. This approach requires only n = \lceil \log_2 N \rceil qubits. Importantly, neither ancilla qubits nor any quantum gates with multiple controls are needed in this approach for creating the uniform superposition state , \Psi\rangle .


Molecular phylogenetics (evolutionary biology) applications

The Hadamard transform can be used to estimate
phylogenetic tree A phylogenetic tree or phylogeny is a graphical representation which shows the evolutionary history between a set of species or taxa during a specific time.Felsenstein J. (2004). ''Inferring Phylogenies'' Sinauer Associates: Sunderland, MA. In ...
s from molecular data.
Phylogenetics In biology, phylogenetics () is the study of the evolutionary history of life using observable characteristics of organisms (or genes), which is known as phylogenetic inference. It infers the relationship among organisms based on empirical dat ...
is the subfield of
evolutionary biology Evolutionary biology is the subfield of biology that studies the evolutionary processes such as natural selection, common descent, and speciation that produced the diversity of life on Earth. In the 1930s, the discipline of evolutionary biolo ...
focused on understanding the relationships among organisms. A Hadamard transform applied to a vector (or matrix) of site pattern frequencies obtained from a DNA multiple sequence alignment can be used to generate another vector that carries information about the tree topology. The invertible nature of the phylogenetic Hadamard transform also allows the calculation of site likelihoods from a tree topology vector, allowing one to use the Hadamard transform for
maximum likelihood estimation In statistics, maximum likelihood estimation (MLE) is a method of estimation theory, estimating the Statistical parameter, parameters of an assumed probability distribution, given some observed data. This is achieved by Mathematical optimization, ...
of phylogenetic trees. However, the latter application is less useful than the transformation from the site pattern vector to the tree vector because there are other ways to calculate site likelihoods that are much more efficient. However, the invertible nature of the phylogenetic Hadamard transform does provide an elegant tool for mathematic phylogenetics. The mechanics of the phylogenetic Hadamard transform involve the calculation of a vector \gamma(T) that provides information about the topology and branch lengths for tree T using the site pattern vector or matrix s(T). \gamma(T) = H^(\ln(Hs(T))) where H is the Hadamard matrix of the appropriate size. This equation can be rewritten as a series of three equations to simplify its interpretation: \begin r &= H s(T) \\ \rho &= \ln r \\ \gamma(T) &= H^\rho \end The invertible nature of this equation allows one to calculate an expected site pattern vector (or matrix) as follows: s(T)=H^(\exp(H\gamma(T))) We can use the Cavender–Farris– Neyman (CFN) two-state substitution model for DNA by encoding the
nucleotide Nucleotides are Organic compound, organic molecules composed of a nitrogenous base, a pentose sugar and a phosphate. They serve as monomeric units of the nucleic acid polymers – deoxyribonucleic acid (DNA) and ribonucleic acid (RNA), both o ...
s as binary characters (the purines A and G are encoded as R and the
pyrimidine Pyrimidine (; ) is an aromatic, heterocyclic, organic compound similar to pyridine (). One of the three diazines (six-membered heterocyclics with two nitrogen atoms in the ring), it has nitrogen atoms at positions 1 and 3 in the ring. The oth ...
s C and T are encoded as Y). This makes it possible to encode the multiple sequence alignment as the site pattern vector s(T) that can be converted to a tree vector \gamma(T), as shown in the following example: The example shown in this table uses the simplified three equation scheme and it is for a four taxon tree that can be written as ((A,B),(C,D)); in newick format. The site patterns are written in the order ABCD. This particular tree has two long terminal branches (0.2 transversion substitutions per site), two short terminal branches (0.025 transversion substitutions per site), and a short internal branch (0.025 transversion substitutions per site); thus, it would be written as ((A:0.025,B:0.2):0.025,(C:0.025,D:0.2)); in newick format. This tree will exhibit long branch attraction if the data are analyzed using the maximum parsimony criterion (assuming the sequence analyzed is long enough for the observed site pattern frequencies to be close to the expected frequencies shown in the s(T)=H^\rho column). The long branch attraction reflects the fact that the expected number of site patterns with index 6 -- which support the tree ((A,C),(B,D)); -- exceed the expected number of site patterns that support the true tree (index 4). Obviously, the invertible nature of the phylogenetic Hadamard transform means that the tree vector means that the tree vector \gamma(T) corresponds to the correct tree. Parsimony analysis after the transformation is therefore statistically consistent, as would be a standard maximum likelihood analysis using the correct model (in this case the CFN model). Note that the site pattern with 0 corresponds to the sites that have not changed (after encoding the nucleotides as purines or pyrimidines). The indices with asterisks (3, 5, and 6) are "parsimony-informative", and. the remaining indices represent site patterns where a single taxon differs from the other three taxa (so they are the equivalent of terminal branch lengths in a standard maximum likelihood phylogenetic tree). If one wishes to use nucleotide data without recoding as R and Y (and ultimately as 0 and 1) it is possible to encode the site patterns as a matrix. If we consider a four-taxon tree there are a total of 256 site patterns (four nucleotides to the 4th power). However, symmetries of the Kimura three-parameter (or K81) model allow us to reduce the 256 possible site patterns for DNA to 64 patterns, making it possible to encode the nucleotide data for a four-taxon tree as an 8 × 8 matrix in a manner similar to the vector of 8 elements used above for transversion (RY) site patterns. This is accomplished by recoding the data using the
Klein four-group In mathematics, the Klein four-group is an abelian group with four elements, in which each element is Involution (mathematics), self-inverse (composing it with itself produces the identity) and in which composing any two of the three non-identi ...
: As with RY data, site patterns are indexed relative to the base in the arbitrarily chosen first taxon with the bases in the subsequent taxa encoded relative to that first base. Thus, the first taxon receives the bit pair (0,0). Using those bit pairs one can produce two vectors similar to the RY vectors and then populate the matrix using those vectors. This can be illustrated using the example from Hendy et al. (1994), which is based on a multiple sequence alignment of four primate hemoglobin pseudogenes: The much larger number of site patterns in column 0 reflects the fact that column 0 corresponds to transition differences, which accumulate more rapidly than transversion differences in virtually all comparisons of genomic regions (and definitely accumulate more rapidly in the hemoglobin pseudogenes used for this worked example). If we consider the site pattern AAGG it would to binary pattern 0000 for the second element of the Klein group bit pair and 0011 for the first element. in this case binary pattern based on the first element first element corresponds to index 3 (so row 3 in column 0; indicated with a single asterisk in the table). The site patterns GGAA, CCTT, and TTCC would be encoded in the exact same way. The site pattern AACT would be encoded with binary pattern 0011 based on the second element and 0001 based on the first element; this yields index 1 for the first element and index 3 for the second. The index based on the second Klein group bit pair is multiplied by 8 to yield the column index (in this case it would be column 24) The cell that would include the count of AACT site patterns is indicated with two asterisks; however, the absence of a number in the example indicates that the sequence alignment include no AACT site patterns (likewise, CCAG, GGTC, and TTGA site patterns, which would be encoded in the same way, are absent).


Other applications

The Hadamard transform is also used in data encryption, as well as many
signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing ''signals'', such as audio signal processing, sound, image processing, images, Scalar potential, potential fields, Seismic tomograph ...
and
data compression In information theory, data compression, source coding, or bit-rate reduction is the process of encoding information using fewer bits than the original representation. Any particular compression is either lossy or lossless. Lossless compressi ...
algorithms In mathematics and computer science, an algorithm () is a finite sequence of mathematically rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for per ...
, such as JPEG XR and MPEG-4 AVC. In
video compression In information theory, data compression, source coding, or bit-rate reduction is the process of encoding information using fewer bits than the original representation. Any particular compression is either lossy or lossless. Lossless compression ...
applications, it is usually used in the form of the sum of absolute transformed differences. It is also a crucial part of significant number of algorithms in quantum computing. The Hadamard transform is also applied in experimental techniques such as
NMR Nuclear magnetic resonance (NMR) is a physical phenomenon in which atomic nucleus, nuclei in a strong constant magnetic field are disturbed by a weak oscillating magnetic field (in the near and far field, near field) and respond by producing ...
,
mass spectrometry Mass spectrometry (MS) is an analytical technique that is used to measure the mass-to-charge ratio of ions. The results are presented as a ''mass spectrum'', a plot of intensity as a function of the mass-to-charge ratio. Mass spectrometry is used ...
and
crystallography Crystallography is the branch of science devoted to the study of molecular and crystalline structure and properties. The word ''crystallography'' is derived from the Ancient Greek word (; "clear ice, rock-crystal"), and (; "to write"). In J ...
. It is additionally used in some versions of locality-sensitive hashing, to obtain pseudo-random matrix rotations.


See also

* Fast Walsh–Hadamard transform * Pseudo-Hadamard transform * Haar transform * Generalized distributive law


External links

* * * Pan, Jeng-shyan
Data Encryption Method Using Discrete Fractional Hadamard Transformation
(May 28, 2009) * Lachowicz, Dr. Pawel
Walsh–Hadamard Transform and Tests for Randomness of Financial Return-Series
(April 7, 2015) * *


References

{{DEFAULTSORT:Hadamard Transform Quantum algorithms Transforms