Amplitude amplification: the closed form and the ⌊π/(4θ)⌋ bound (BHMT) #
Category: 1-Mathlib (CSD-free).
Glossary: https://glossary.constraintsurfacedynamics.com/amplitude-amplification/
Plain-language, CSD-role and formal statements of amplitude amplification, with
this module as its Lean anchor. Kept symmetric by scripts/check-glossary.sh.
Brassard–Høyer–Mosca–Tapp amplitude amplification (quant-ph/0005055), the theorem Grover's
algorithm is an instance of, on a register over an arbitrary finite computational basis ι
with an arbitrary good set G : Finset ι:
- The two-reflection rotation. The amplification step
ampStep φ G = reflect φ ∘ oracleFlip G— reflection about the initial state composed with the sign flip on the good coordinates — acts on the plane spanned by the (unit) good and bad components as a rotation by2θ(ampStep_ampState), wheresin θ = √(goodProb G φ). - ★★ The closed form (
amplitude_amplification): for any unitψwith0 < goodProb G ψ < 1, afterjamplification rounds the success probability is exactlysin²((2j+1)·θ)withθ = arcsin √(goodProb G ψ). No asymptotics. - ★ The optimal count (
amplitude_amplification_succeeds):m = ⌊π/(4θ)⌋rounds land the angle withinθofπ/2, so the success probability is at least1 − a. - ★ The quadratic speedup (
amplification_query_bound):m ≤ π/(4√a), since√a = sin θ ≤ θ. - Non-vacuity at a closed instance (
amplification_quarter): ata = 1/4a single round succeeds with certainty (θ = π/6,3θ = π/2).
Grover's algorithm is the instance φ = uniform superposition, G = {w}
(Empirical/QM/Algorithms/Grover.lean re-derives its headline from this module), and the
k-marked-items generalisation is the instance |G| = k (grover_multi_success, same file).
Honest scope #
Query counting is by rounds of the abstract step; no oracle model or gate decomposition is
claimed (the same matrix-level scope as Fourier.lean/PhaseEstimation.lean). The degenerate
boundaries are real and excluded by hypothesis: goodProb = 0 leaves no plane to rotate and
goodProb = 1 nothing to amplify. Amplitude estimation (BHMT Thm 12) is assembled in
AmplitudeEstimation.lean from this module's eigenstructure section. For unknown a, the
QSearch engine (BHMT Lemma 2) is the final section here: a uniformly random round count
below M succeeds with average probability ≥ 1/4 once M·sin 2θ ≥ 1
(qsearch_average) — the paper's Thm 3 wraps this in an exponential-doubling schedule whose
expected-runtime bookkeeping is a probabilistic-process argument, not formalised
(⚠️ RESIDUE(R-002), specs/amplitude-amplification-plan.md AA-6).
The operators #
The good-coordinate truncation P_G ψ: keep the amplitudes on G, zero elsewhere.
Equations
- QuantumInfo.goodProj G ψ = (WithLp.equiv 2 (ι → ℂ)).symm fun (i : ι) => if i ∈ G then ψ.ofLp i else 0
Instances For
The success probability of ψ against the good set G: ∑_{i ∈ G} ‖ψ i‖².
Instances For
The success probability is the sum of the Born probabilities over the good set.
The oracle reflection I − 2 P_G: a phase flip on the good coordinates.
Equations
- QuantumInfo.oracleFlip G ψ = ψ - 2 • QuantumInfo.goodProj G ψ
Instances For
The reflection about a state 2|φ⟩⟨φ| − I (the generalised diffusion operator).
Instances For
One amplification step: the oracle flip followed by reflection about φ.
Equations
- QuantumInfo.ampStep φ G ψ = QuantumInfo.reflect φ (QuantumInfo.oracleFlip G ψ)
Instances For
The rotation plane #
The rotation-plane state at angle γ: (sin γ) g + (cos γ) b for a good unit
component g and a bad unit component b.
Instances For
Truncating the plane state to G keeps exactly the good component.
The oracle flip negates the angle: oracleFlip (ampState γ) = ampState (−γ).
The two product-to-sum identities that make two reflections a rotation #
★ The two-reflection rotation (the heart of BHMT): one amplification step advances the
plane angle by 2θ, where θ is the angle of the reflecting state φ = ampState θ.
The iterated rotation: j amplification steps from the θ-state reach the
(2j+1)θ-state.
The plane state's success probability is sin² γ (the bad component vanishes on G and
the good component carries unit weight there).
The decomposition of a state into its good and bad unit components #
The good unit component of ψ against G.
Equations
- QuantumInfo.goodUnit G ψ = (↑√(QuantumInfo.goodProb G ψ))⁻¹ • QuantumInfo.goodProj G ψ
Instances For
The bad unit component of ψ against G.
Equations
- QuantumInfo.badUnit G ψ = (↑√(1 - QuantumInfo.goodProb G ψ))⁻¹ • (ψ - QuantumInfo.goodProj G ψ)
Instances For
The good unit component carries unit weight on G.
⟨g, g⟩ = 1 for the good unit component.
⟨g, b⟩ = 0: the components live on disjoint coordinates.
The decomposition: ψ = ampState (goodUnit) (badUnit) (arcsin √a).
The headline #
★★ Amplitude amplification (BHMT), the closed form. For a unit state ψ with success
probability a = goodProb G ψ strictly between 0 and 1, j rounds of the amplification
step ampStep ψ G — reflect about ψ after flipping the good-coordinate signs — yield success
probability exactly sin²((2j+1)·θ), θ = arcsin √a. Grover's algorithm and its k-marked
generalisation are instances (Empirical/QM/Algorithms/Grover.lean).
The optimal count and the quadratic speedup #
★ The ⌊π/(4θ)⌋ round count succeeds with probability at least 1 − a. The chosen
count lands the accumulated angle within θ of π/2, where the success probability is at
least cos²θ = 1 − a. This is the bound Grover analyses defer to "downstream arithmetic": here
it is a theorem about the closed form.
★ The quadratic speedup as an inequality: the chosen round count is at most
π/(4√a), since √a = sin θ ≤ θ.
Non-vacuity at a closed instance: at success probability exactly 1/4 a single
amplification round succeeds with certainty — θ = π/6, and 3θ = π/2.
The eigenstructure of the amplification step (AA-5a) #
On the rotation plane the step Q = ampStep (ampState θ) G is a rotation by 2θ, so its
eigenvectors there are g ± i·b with eigenvalues e^{±2iθ} — the fact amplitude estimation
(BHMT Thm 12) feeds to phase estimation. This section delivers the eigenstructure and the
estimate's error algebra; the two-register kickback marginal is AA-5b
(specs/amplitude-amplification-plan.md).
The amplification step is additive.
The amplification step is ℂ-homogeneous.
The e^{+2iθ} eigenvector of the amplification step on the rotation plane: g + i·b.
Equations
- QuantumInfo.eigenPlus g b = g + Complex.I • b
Instances For
The e^{−2iθ} eigenvector: g − i·b.
Equations
- QuantumInfo.eigenMinus g b = g - Complex.I • b
Instances For
The eigenvectors recombine to the good component: v₊ + v₋ = 2g.
The eigenvectors recombine to the bad component: v₊ − v₋ = 2i·b.
★ The + eigenvector equation: on the rotation plane the amplification step has
g + i·b as an eigenvector with eigenvalue e^{2iθ}. This is the spectral fact amplitude
estimation hands to phase estimation.
★ The − eigenvector equation: g − i·b carries eigenvalue e^{−2iθ}.
Iterated eigen-action: j amplification steps scale the + eigenvector by
e^{2ijθ} — the phase a counting register would estimate.
Iterated eigen-action, − branch: j steps scale the − eigenvector by
e^{−2ijθ}.
The eigen-decomposition of the rotation-plane state:
ampState γ = (−i/2)e^{iγ}·v₊ + (i/2)e^{−iγ}·v₋ — branch weights 1/4·‖v₊‖² = 1/2 each. The
bridge from the amplification plane to the phase-estimation branches.
The estimate's error algebra (BHMT Lemma 7 shape) #
★ The sin² perturbation bound:
|sin²x − sin²y| ≤ |sin 2y|·|x−y| + |x−y|² — the Lipschitz-plus-quadratic control that turns
a phase-estimate error into an amplitude-estimate error.
★ The amplitude-estimation error bound (BHMT Lemma 7). If the true amplitude is
a = sin²θ (with cos θ = √(1−a)) and the estimated angle θ' is within ε of θ, then
the estimated amplitude sin²θ' is within 2√(a(1−a))·ε + ε² of a. With the
phase-estimation window ε = π/T this is the standard
|ã − a| ≤ 2π√(a(1−a))/T + π²/T²; instantiating it on the two-register kickback marginal is
AA-5b.
Unknown amplitude: the averaged rotation (QSearch engine, BHMT Lemma 2) #
When a is unknown the optimal count ⌊π/(4θ)⌋ cannot be computed. BHMT's remedy: pick the
round count uniformly at random below a guess M. The average success probability has an
exact closed form — the odd-angle sin² sum telescopes — and once M·sin 2θ ≥ 1 it is at
least 1/4, independent of a. The exponential-doubling schedule built on this
(BHMT Thm 3) is algorithmic bookkeeping and not formalised.
The telescoped average (product form, BHMT Lemma 2):
4 sin(2θ) · ∑_{m<M} sin²((2m+1)θ) = 2M sin(2θ) − sin(4Mθ) — exactly, for every θ. The
sin² sum telescopes through sin(2A+2θ) − sin(2A−2θ) = 2 cos(2A) sin(2θ) at the odd
angles A = (2m+1)θ.
★ The QSearch engine (BHMT Lemma 2 on the register): for any unit state with unknown
success probability 0 < a < 1, as soon as the guess M satisfies M · 2√(a(1−a)) ≥ 1, the
amplification rounds 0, …, M−1 have total success probability at least M/4 — i.e., a
uniformly random round count below M succeeds with average probability ≥ 1/4, with no
knowledge of a. This is the engine of BHMT's unknown-a search; the exponential-doubling
schedule wrapping it (their Thm 3) is not formalised.