The Setup
You want to measure something — a magnetic field, a gravitational wave, a rotation rate, the phase accumulated by an atom in an optical lattice. You have \(n\) probes. The question is: how precisely can you estimate the parameter?
With classical probes, each independently picking up signal and independently suffering noise, the measurement uncertainty goes as:
\[\Delta\theta \geq \frac{1}{\sqrt{n}}\]
This is the Standard Quantum Limit (SQL). It is not a fundamental law of nature — it is just the central limit theorem. Independent probes average their noise as \(1/\sqrt{n}\). If you can correlate the probes, you can do better.
The quantum bound is the Heisenberg limit:
\[\Delta\theta \geq \frac{1}{n}\]
This is a factor of \(\sqrt{n}\) better than the SQL. For 100 probes, that is 10x better precision. For 10,000 probes (not unreasonable in atom interferometry), it is 100x.
The Heisenberg limit is not a target that might someday be achieved. It is a theorem: no measurement strategy can do better. And there exists a state that saturates it exactly.
What Quantum Fisher Information Measures
The precision of any unbiased estimator is bounded by the Cramér-Rao inequality:
\[\Delta\theta \geq \frac{1}{\sqrt{F_Q(\rho, H)}}\]
where \(F_Q\) is the quantum Fisher information (QFI). This is the central object in quantum metrology: it tells you the maximum achievable precision for a given state \(\rho\) and generator \(H\).
For a state with spectral decomposition \(\rho = \sum_i \lambda_i |i\rangle\langle i|\):
\[F_Q(\rho, H) = 2\sum_{i,j} \frac{(\lambda_i - \lambda_j)^2}{\lambda_i + \lambda_j} |\langle i|H|j\rangle|^2\]
For pure states \(\rho = |\psi\rangle\langle\psi|\) this simplifies to:
\[F_Q = 4\left(\langle\psi|H^2|\psi\rangle - \langle\psi|H|\psi\rangle^2\right) = 4\,\text{Var}_\psi(H)\]
QFI is four times the variance of the generator in the probe state.
This tells you something important: precision is variance. The more spread out a state is in the eigenbasis of the generator, the more sensitive it is to rotations generated by \(H\).
Two States, Two Regimes
Consider \(n\) qubits with generator \(H = J_z = \frac{1}{2}\sum_i \sigma_z^{(i)}\).
Product state (each qubit in \(|+\rangle = \frac{1}{\sqrt{2}}(|0\rangle + |1\rangle)\)):
\[|\psi_{\text{prod}}\rangle = |{+}\rangle^{\otimes n}\]
The variance of \(J_z\) is \(n/4\) (each qubit contributes \(1/4\) independently). So:
\[F_Q^{\text{prod}} = 4 \cdot \frac{n}{4} = n\]
Precision: \(\Delta\theta \geq 1/\sqrt{n}\) — the SQL.
GHZ state:
\[|\text{GHZ}\rangle = \frac{1}{\sqrt{2}}\left(|0\rangle^{\otimes n} + |1\rangle^{\otimes n}\right)\]
Now compute the variance of \(J_z\). The eigenvalue of \(J_z\) for \(|0\rangle^{\otimes n}\) is \(n/2\); for \(|1\rangle^{\otimes n}\) it is \(-n/2\). The GHZ state is an equal superposition of the two extremes.
\[\langle J_z \rangle = 0, \quad \langle J_z^2 \rangle = \frac{n^2}{4}\]
\[F_Q^{\text{GHZ}} = 4 \cdot \frac{n^2}{4} = n^2\]
Precision: \(\Delta\theta \geq 1/n\) — the Heisenberg limit. GHZ states saturate it exactly.
The reason is clear: the GHZ state has maximum spread in \(J_z\) eigenvalues (\(\pm n/2\), as far apart as possible). It is maximally sensitive to phase rotations. The superposition is doing real work.
from qrl.domains.sensing import (
QuantumSensor, quantum_fisher_information,
heisenberg_limit, standard_quantum_limit, quantum_advantage_factor,
)
n = 10
# Product state sensor
prod = QuantumSensor("phase_estimator", n_probes=n)
prod.set_state("product")
prod.set_generator("Jz")
# GHZ state sensor
ghz = QuantumSensor("phase_estimator", n_probes=n)
ghz.set_state("ghz")
ghz.set_generator("Jz")
print(f"SQL (n={n}): {standard_quantum_limit(n):.4f}")
print(f"Product state QFI: {prod.qfi():.1f}")
print(f"Product precision: {prod.precision():.4f}")
print()
print(f"Heisenberg limit: {heisenberg_limit(n):.4f}")
print(f"GHZ QFI: {ghz.qfi():.1f}")
print(f"GHZ precision: {ghz.precision():.4f}")
print(f"Quantum advantage: {ghz.quantum_advantage():.1f}x")Output:
SQL (n=10): 0.3162
Product state QFI: 10.0
Product precision: 0.3162
Heisenberg limit: 0.1000
GHZ QFI: 100.0
GHZ precision: 0.1000
Quantum advantage: 3.2x
Why SQL Is an Entanglement Statement
The SQL is not just a statistical fact. It is the precision achievable with separable (unentangled) states.
The key theorem (Giovannetti, Lloyd, Maccone, 2006): for any separable state \(\rho_{\text{sep}}\),
\[F_Q(\rho_{\text{sep}}, H) \leq n \cdot \max_i f(p_i)\]
where the maximum is bounded by the single-probe Fisher information. Unentangled states cannot exceed the SQL.
Conversely: any state that beats the SQL must be entangled. There is no loophole. You cannot achieve Heisenberg scaling with a product state, no matter how cleverly you measure.
This is what makes quantum sensing genuinely quantum — not in the vague sense of “uses qubits”, but in the precise sense that the advantage is impossible without entanglement. The Heisenberg limit is an entanglement certificate.
Spin Squeezing: The Practical Path
GHZ states are theoretically optimal but notoriously fragile. A single photon loss or qubit error destroys the \(n\)-particle coherence completely.
In practice, the most successful approach is spin squeezing: redistribute quantum noise from the measured quadrature into the unmeasured one, using two-axis twisting or one-axis twisting Hamiltonians.
from qrl.domains.sensing import spin_squeezing
# One-axis twisting: H = χ Jz²
result = spin_squeezing(n_qubits=50, squeezing_parameter=0.1, axis="z")
print(f"Squeezing parameter xi²: {result['xi_sq']:.3f}")
print(f"Metrological gain: {result['metrological_gain_dB']:.1f} dB")
print(f"QFI: {result['qfi']:.1f}")
print(f"SQL QFI (reference): {50:.1f}")Output:
Squeezing parameter xi²: 0.312
Metrological gain: 5.1 dB
QFI: 160.3
SQL QFI (reference): 50
The squeezed state achieves \(F_Q = 160\) vs the SQL’s 50 — 3.2x better precision with 50 qubits. And unlike GHZ, squeezed states retain metrological advantage even under moderate decoherence.
This is why optical lattice clocks and LIGO-style interferometers use squeezing rather than GHZ: the advantage is real, the state is robust.
Ramsey Interferometry
The canonical protocol for sensing with qubits is Ramsey interferometry:
- Prepare \(|+\rangle^{\otimes n}\) (product state) or \(|\text{GHZ}\rangle\) (entangled)
- Let the state accumulate phase \(\theta\) under the generator \(H\) for time \(t\)
- Apply a second \(\pi/2\) pulse
- Measure
from qrl.domains.sensing import ramsey_interferometry
# Classical Ramsey with n=20 atoms
result_classical = ramsey_interferometry(n_atoms=20, t_coherence=1.0,
state="product")
# Entangled Ramsey
result_entangled = ramsey_interferometry(n_atoms=20, t_coherence=1.0,
state="ghz")
print(f"Classical sensitivity: {result_classical['sensitivity']:.4f} rad/√Hz")
print(f"Entangled sensitivity: {result_entangled['sensitivity']:.4f} rad/√Hz")
print(f"Improvement factor: {result_classical['sensitivity']/result_entangled['sensitivity']:.2f}x")The coherence time \(t_c\) matters as much as \(n\). State-of-the-art optical lattice clocks run \(10^4\) atoms for coherence times of 10–100 seconds, achieving fractional frequency uncertainties below \(10^{-18}\) — better than 1 second of error in the age of the universe.
The Mach-Zehnder View
For photonic sensors — gyroscopes, phase estimation, LIDAR — the relevant protocol is the Mach-Zehnder interferometer with \(N\)-photon NOON states:
\[|\text{NOON}\rangle = \frac{1}{\sqrt{2}}\left(|N,0\rangle + |0,N\rangle\right)\]
This is the photonic analogue of GHZ: \(N\) photons in superposition between two arms. The phase sensitivity scales as \(1/N\) (Heisenberg), compared to \(1/\sqrt{N}\) for coherent input.
from qrl.domains.sensing import mach_zehnder
# Coherent input (SQL-limited)
mzi_coherent = mach_zehnder(n_photons=100, input_state="coherent")
# NOON state input (Heisenberg-limited)
mzi_noon = mach_zehnder(n_photons=100, input_state="noon")
print(f"Coherent sensitivity: {mzi_coherent['phase_sensitivity']:.4f} rad")
print(f"NOON sensitivity: {mzi_noon['phase_sensitivity']:.4f} rad")
print(f"Heisenberg advantage: {mzi_coherent['phase_sensitivity']/mzi_noon['phase_sensitivity']:.1f}x")LIGO uses a variant of this: squeezed light injected into the dark port of a Michelson interferometer. The squeezing was switched on in 2019 and provided an immediate sensitivity improvement at high frequencies, extending the detection range for neutron star mergers by ~15%.
What QRL Adds
QRL treats sensing as a quantum relation between the probe state and the parameter. The entanglement structure of the probe state determines what it can know about the world.
This is not just philosophy — it gives a clean computational path:
- Construct the probe state \(\rho\)
- Compute \(F_Q(\rho, H)\) from first principles
- Read off the Cramér-Rao bound: \(\Delta\theta \geq 1/\sqrt{F_Q}\)
- Compare to Heisenberg limit \(1/n\) and SQL \(1/\sqrt{n}\)
All of these steps are native QRL operations. You can sweep over entanglement parameters, over decoherence rates, over probe number — and watch the QFI surface.
The Heisenberg limit is a consequence of the structure of quantum mechanics applied to estimation. It is not an engineering barrier to be broken — it is a theorem to be saturated. And it requires entanglement to saturate it.
The next domain is quantum chemistry — where the same entanglement structure that gives Heisenberg scaling in sensing appears as correlation energy in molecular ground states. Different measurement, same resource.