Each Grover iteration rotates the plane by
ProvedGroverWiki.groverIteration_rotationgrover-algorithmquantum-computingquantum-search
Let , let have exactly one index with , let , and let . Then for every angle ,
In the orthonormal basis of the plane, one Grover iteration is the rotation by the angle towards .
Preamble
import Mathlib import Definitions.Def_GroverWiki_Defs open Matrix
Formal statement
namespace GroverWiki
/-- The Grover iteration `U_s U_ω` rotates every state `cos φ |s'⟩ + sin φ |ω⟩` of the plane
by the angle `θ = 2 arcsin(1/√N)`. -/
theorem groverIteration_rotation {N : ℕ} (hN : 2 ≤ N) (f : Fin N → Fin 2) (ω : Fin N)
(hω : ∀ x, f x = 1 ↔ x = ω) (φ : ℝ) :
groverIteration f *ᵥ
((Real.cos φ : ℂ) • perpState ω + (Real.sin φ : ℂ) • ket ω) =
(Real.cos (φ + 2 * Real.arcsin (1 / Real.sqrt N)) : ℂ) • perpState ω +
(Real.sin (φ + 2 * Real.arcsin (1 / Real.sqrt N)) : ℂ) • ket ω := by sorry
end GroverWiki
Source
Wikipedia, "Grover's algorithm", revision oldid=1373498442, https://en.wikipedia.org/w/index.php?title=Grover%27s_algorithm&oldid=1373498442, section "Geometric proof" (PDF p. 5)
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.