Phase Kickback (Explained)
April 6, 2025
Phase kickback is one of the most useful “little tricks” in quantum computing. It explains how a controlled operation—apparently acting on the target—can end up putting a phase on the control.
This idea shows up everywhere: oracle phase marking in Grover, and especially in quantum phase estimation (which relies on the QFT).
The key setup
You need three ingredients:
- A control qubit in superposition:
- A target register in a special state
- A unitary such that is an eigenstate of :
Now apply the controlled- gate (control on the first qubit, target is ).
The “kickback” algebra (why it works)
Start with the joint state:
Controlled- acts as:
- if control is : do nothing
- if control is : apply to the target
So the output is:
$$ \alpha\lvert 0\rangle\lvert\psi\rangle + \beta\lvert 1\rangle,U\lvert\psi\rangle
\alpha\lvert 0\rangle\lvert\psi\rangle + \beta\lvert 1\rangle,e^{i\theta}\lvert\psi\rangle. $$
And here’s the punchline: because is unchanged (only picks up a phase), the state factors:
The target returns to the same physical state, while the control has acquired a relative phase on its component. That phase is now “stored” on the control qubit, where it can interfere with other amplitudes.
From bit-oracle to phase-oracle (the practical version)
Many algorithms start from a reversible “bit oracle” for a Boolean function :
If you prepare the ancilla as , then flipping it applies a phase:
So without measuring anything, the function value ends up encoded as a phase on .
This is exactly the “marking” behavior used in Grover-style phase oracles.
Tiny example in Qiskit (controlled-Rz)
The rotation has eigenstates and :
If you use as the target eigenstate, then a controlled- kicks back a phase onto the control:
import numpy as np
from qiskit import QuantumCircuit
phi = np.pi / 3
qc = QuantumCircuit(2)
# control in |+>
qc.h(0)
# target eigenstate |1>
qc.x(1)
# controlled unitary
qc.crz(phi, 0, 1)
qc.draw("text")Next
- See how phase marking appears in Grover: What is an oracle?
- See where phase information gets read out: Quantum Fourier Transform (QFT)