ART

In computational mathematics, the Hadamard ordered fast Walsh–Hadamard transform (FWHTh) is an efficient algorithm to compute the Walsh–Hadamard transform (WHT). A naive implementation of the WHT of order \( n=2^{m} \) would have a computational complexity of O( \( n^{2}) \). The FWHTh requires only \( n\log n \) additions or subtractions.

Fast walsh hadamard transform 8

The fast Walsh–Hadamard transform applied to a vector of length 8

1010 0110 Walsh spectrum (fast WHT)

Example for the input vector (1, 0, 1, 0, 0, 1, 1, 0)

The FWHTh is a divide and conquer algorithm that recursively breaks down a WHT of size n into two smaller WHTs of size n/2. [1] This implementation follows the recursive definition of the \( {\displaystyle 2^{m}\times 2^{m}} \) Hadamard matrix \( H_{m} \):

\( {\displaystyle H_{m}={\frac {1}{\sqrt {2}}}{\begin{pmatrix}H_{m-1}&H_{m-1}\\H_{m-1}&-H_{m-1}\end{pmatrix}}.} \)

The \( 1/{\sqrt {2}} \) normalization factors for each stage may be grouped together or even omitted.

The sequency ordered, also known as Walsh ordered, fast Walsh–Hadamard transform, FWHTw, is obtained by computing the FWHTh as above, and then rearranging the outputs.

A simple fast nonrecursive implementation of the Walsh-Hadamard transform follows from decomposition of the Hadamard transform matrix as \( {\displaystyle H_{m}=A^{m}} \), where A is m-th root of \( H_{m} \). [2]

Python example code

def fwht(a) -> None:
    """In-place Fast Walsh–Hadamard Transform of array a."""
    h = 1
    while h < len(a):
        for i in range(0, len(a), h * 2):
            for j in range(i, i + h):
                x = a[j]
                y = a[j + h]
                a[j] = x + y
                a[j + h] = x - y
        h *= 2

See also

Fast Fourier transform

References

Fino, B. J.; Algazi, V. R. (1976). "Unified Matrix Treatment of the Fast Walsh–Hadamard Transform". IEEE Transactions on Computers. 25 (11): 1142–1146. doi:10.1109/TC.1976.1674569.

Yarlagadda and Hershey, "Hadamard Matrix Analysis and Synthesis", 1997 (Springer)

External links

Charles Constantine Gumas, A century old, the fast Hadamard transform proves useful in digital communications

Undergraduate Texts in Mathematics

Graduate Texts in Mathematics

Graduate Studies in Mathematics

Mathematics Encyclopedia

World

Index

Hellenica World - Scientific Library

Retrieved from "http://en.wikipedia.org/"
All text is available under the terms of the GNU Free Documentation License