Practical guides to AI, computing, modelling, simulation, optimization and quantum computing, featuring hands-on tutorials, experiments and research.

Quantum Computing: The Walsh-Hadamard Matrix — Backbone of Grover’s Diffusion Operator

Part of the Quantum Computing: A Complete Learning Path series.
QUANTUM SERIES 2026
The mathematical foundation behind Grover’s diffusion operator — derived from first principles.

In the Grover’s Algorithm — Inversion About the Mean walkthrough, the diffusion operator applies H⊗³ twice per iteration. Every single step is governed by a sign table called the Hadamard Reference. That table is not a lookup shortcut — it is the 8×8 Walsh-Hadamard Transform matrix written out in full. This post derives it from scratch: one qubit, then two, then all three, arriving at the complete matrix and the rule behind every sign in it.


1  ·  The Circuit: Three Qubits, Three Hadamard Gates

We initialise all three qubits in the ground state |0⟩ and route each through its own independent Hadamard gate. There are no two-qubit (entangling) gates here — the circuit is entirely parallel.

Qubit Input Gate Output ket
q₀ |0⟩ H (1/√2)( |0⟩ + |1⟩ )
q₁ |0⟩ H (1/√2)( |0⟩ + |1⟩ )
q₂ |0⟩ H (1/√2)( |0⟩ + |1⟩ )

All three outputs are identical because all three inputs are identical. The structure we need emerges when we take their tensor product.

2  ·  Single-Qubit Hadamard Action

The Hadamard gate H maps the two computational basis states as follows:

Input H |input⟩ Short notation
|0⟩ (1/√2)( |0⟩ + |1⟩ ) |+⟩
|1⟩ (1/√2)( |0⟩ |1⟩ ) |−⟩

In matrix form:

H  =  (1/√2)    +1   +1 
 +1   −1 
Key property: H is its own inverse — H² = I. Every element has magnitude 1/√2, so tensoring three copies multiplies the magnitudes to 1/√8 while the signs follow a precise bitwise pattern.
3  ·  Two-Qubit Tensor Product: q₀ ⊗ q₁

Expanding the tensor product of the first two post-H qubits:

|+⟩ ⊗ |+⟩
  = (1/√2)(|0⟩ + |1⟩) ⊗ (1/√2)(|0⟩ + |1⟩)
  = (1/2)( |0⟩⊗|0⟩ + |0⟩⊗|1⟩ + |1⟩⊗|0⟩ + |1⟩⊗|1⟩ )
  = (1/2)( |00⟩ + |01⟩ + |10⟩ + |11⟩ )
All four two-qubit basis states appear with equal amplitude 1/2. Measurement probability per state: (1/2)² = 25%.
4  ·  Three-Qubit Tensor Product: q₀ ⊗ q₁ ⊗ q₂

Adding the third qubit expands the superposition to all 8 three-bit strings:

|+⟩ ⊗ |+⟩ ⊗ |+⟩
  = (1/√2)³ (|0⟩+|1⟩) ⊗ (|0⟩+|1⟩) ⊗ (|0⟩+|1⟩)
  = (1/√8)( |000⟩ + |001⟩ + |010⟩ + |011⟩
            + |100⟩ + |101⟩ + |110⟩ + |111⟩ )
This is |ψinit — the uniform superposition over all 8 basis states that opens Grover’s algorithm (Phase 0 in the walkthrough). Each state carries amplitude +1/√8 ≈ 0.3535 and measurement probability 1/8 = 12.5%. All signs are positive because we only applied H to |0⟩ inputs — the sign variation appears when H⊗³ acts on states other than |000⟩.
5  ·  The 8×8 Walsh-Hadamard Sign Matrix

When H⊗³ is applied to an arbitrary basis state |j⟩, the result is:

H⊗³ |j⟩  =  (1/√8)   Σᵢ   (−1)popcount(i AND j)   |i⟩

The entry at row i, column j carries sign (−1)popcount(i AND j) divided by √8. The table below shows all 64 signs — green (+) for +1/√8 and red (−) for −1/√8:

H⊗³ |j⟩ →
output |i⟩ ↓
|000⟩ |001⟩ |010⟩ |011⟩ |100⟩ |101⟩ |110⟩ |111⟩
H|000⟩ + + + + + + + +
H|001⟩ + + + +
H|010⟩ + + + +
H|011⟩ + + + +
H|100⟩ + + + +
H|101⟩ + + + +
H|110⟩ + + + +
H|111⟩ + + + +
+  =  amplitude +1/√8 ≈ +0.3535      =  amplitude −1/√8 ≈ −0.3535
6  ·  Why the Sign is (−1)popcount(i AND j)

Because H acts independently on each qubit, H⊗³ is the tensor product of three 2×2 matrices. The entry at row i, column j is simply the product of the three corresponding single-qubit entries:

H⊗³[i, j]  =  H[i₀, j₀]  ×  H[i₁, j₁]  ×  H[i₂, j₂]

Each single-qubit factor equals +1 unless both the k-th bit of i and the k-th bit of j are 1, in which case it equals −1. So the k-th factor contributes a sign of (−1)iₖ·jₖ. Multiplying all three:

sign(i, j)  =  (−1)i₀j₀ + i₁j₁ + i₂j₂  =  (−1)popcount(i AND j)
The rule in plain terms: bitwise AND the row index and the column index, count the 1-bits, check parity. Even count → positive. Odd count → negative.

Quick verification: row H|101⟩, column |011⟩

i (row) j (col) i AND j popcount Sign
101 (= 5) 011 (= 3) 001 1 (odd) − ✓

Matches the matrix in Section 5: row H|101⟩, column |011⟩ is indeed .

7  ·  Connection to Grover’s Diffusion Operator

This matrix is the Hadamard Reference table used throughout the Grover’s Algorithm — Inversion About the Mean post. The diffusion operator D = H⊗³ (2|0⟩⟨0| − I) H⊗³ works in three sub-steps, each directly using this matrix:

Sub-step Operation Grover walkthrough steps
First H⊗³ Maps computational basis → Hadamard basis. Each amplitude spreads across all 8 columns via the sign table. 4.1  ·  6.1  ·  8.1
Phase flip 2|0⟩⟨0|−I: keeps |000⟩ unchanged, negates all other states. This is the inversion-about-the-mean mechanism. 4.2  ·  6.2  ·  8.2
Second H⊗³ Maps back to computational basis using the same sign table (H is self-inverse). Routes constructive interference into the target state. 4.3  ·  6.3  ·  8.3
The bottom line: without the sign structure of the Walsh-Hadamard matrix, neither the uniform superposition (Phase 0) nor the diffusion step (every iteration) would work. The matrix is the silent engine behind Grover’s quadratic speedup.
Frequently Asked Questions

What is the Walsh-Hadamard matrix used for in Grover’s algorithm?

It’s the 8×8 sign table produced by H⊗³ on three qubits. It builds the uniform superposition at the start of the algorithm and forms both halves of the diffusion operator that Grover’s algorithm applies every iteration to amplify the marked state’s amplitude.

How do you compute the sign of an entry in the Hadamard matrix?

Take the bitwise AND of the row index i and column index j, count the number of 1-bits in the result (the popcount), then check its parity. An even popcount gives a positive sign; an odd popcount gives a negative sign.

Why does H⊗³ create a uniform superposition?

Applying H to each of three |0⟩ qubits independently and taking the tensor product spreads the amplitude evenly across all 8 basis states, each with magnitude 1/√8. Since the input is all zeros, every sign works out positive — the row of the matrix corresponding to |000⟩ is entirely +.

Is the Hadamard gate its own inverse?

Yes — H² = I. This is why the same H⊗³ matrix appears twice in Grover’s diffusion operator: once to map into the Hadamard basis, and again afterward to map back to the computational basis, using the identical sign table both times.


Quantum Series 2026  ·  Built with Qiskit 1.x

✦ This article was generated with the assistance of Claude by Anthropic

Continue the Quantum Series

Comments

5 responses to “Quantum Computing: The Walsh-Hadamard Matrix — Backbone of Grover’s Diffusion Operator”

  1. Quantum Computing: A Complete Learning Path – Techucation Avatar

    […] turns out to be exactly the Hadamard gate, a small result that anchors the bigger picture. 3 The Walsh-Hadamard Matrix: Backbone of Grover’s Diffusion Operator How the Hadamard sign table generalises to n qubits and powers Grover’s diffusion step. […]

    Like

  2. Introduction to Quantum Computing: Qubits, Hadamard Gates, and Superposition – Techucation Avatar

    […] Deutsch’s algorithm and its four cases, then study Grover’s inversion about the mean and the Walsh–Hadamard matrix in Grover’s diffusion operator. The complete sequence is collected in the Quantum Computing learning […]

    Like

  3. The No-Cloning Theorem in Quantum Computing: Why You Can’t Copy a Qubit – Techucation Avatar

    […] inequality simulator. Play and learn with the CHSH game. Continue the Quantum Series ← Walsh–Hadamard matrix View the complete Quantum Computing learning path → Quantum […]

    Like

  4. Quantum Fourier Transform (QFT) of a Single Qubit is Hadamard Transform – Malcolm Low | Practical AI, Simulation & Quantum Computing Avatar

    […] ← Previous: Introduction to Quantum Computing: Qubits, Hadamard Gates, and Superposition Next: Quantum Computing: The Walsh-Hadamard Matrix — Backbone of Grover’s Diffusion Operator &rarr… Learning path: View the complete Quantum Computing learning path […]

    Like

Leave a comment