Quantum signal processing: which polynomial pairs a QSP sequence realizes
ProvedQAlgorithms.Childs.qsp_characterizationFor let
and for let . For and a phase vector , the quantum signal processing sequence is
with factors . For a polynomial write for the polynomial with complex-conjugated coefficients (so for real ).
Lemma. Let and . There exists such that for every
if and only if
- and (with ; in particular when );
- has parity and has parity , where an even polynomial has parity and an odd one parity , i.e. and ;
- for all .
This characterization is the core of quantum signal processing: it says exactly which polynomial transformations of a signal can be implemented by interleaving the signal rotation with -rotations, and it is later lifted, via qubitization, to polynomial transformations of block-encoded operators.
Formalization Note The matrix identity is required for all , the domain on which is defined in (29.6). The degree condition uses Mathlib's degree with values in , so is written ; the parity of is written as parity , which is the same residue and avoids natural-number subtraction. Parity is the polynomial identity .
import Definitions.Def_QAlgorithms_Defs_Hamiltonian set_option autoImplicit false
namespace QAlgorithms.Childs
open Polynomial
/-- Childs, Lemma 29.1 (PDF p.152, citing [54, Theorem 3]): quantum signal processing.
For `k : ℕ` and `P, Q ∈ ℂ[x]`, there is `Φ ∈ ℝ^{k+1}` with
`W_Φ(x) = [[P(x), i Q(x) √(1−x²)], [i Q*(x) √(1−x²), P*(x)]]` for all `x ∈ [−1, 1]`
(the domain of `W(x)` in (29.6)) iff
(i) `deg P ≤ k` and `deg Q ≤ k − 1` (with `deg 0 = −∞`, so `Q = 0` when `k = 0`),
(ii) `P` has parity `k mod 2` and `Q` has parity `k − 1 ≡ k + 1 mod 2`, and
(iii) `|P(x)|² + (1 − x²)|Q(x)|² = 1` for all `x ∈ [−1, 1]`.
Here `P*` is `P` with conjugated coefficients. -/
theorem qsp_characterization (k : ℕ) (P Q : ℂ[X]) :
(∃ Φ : Fin (k + 1) → ℝ, ∀ x ∈ Set.Icc (-1 : ℝ) 1,
qspSequence Φ x =
!![P.eval (x : ℂ), Complex.I * Q.eval (x : ℂ) * (Real.sqrt (1 - x ^ 2) : ℂ);
Complex.I * (Q.map (starRingEnd ℂ)).eval (x : ℂ) * (Real.sqrt (1 - x ^ 2) : ℂ),
(P.map (starRingEnd ℂ)).eval (x : ℂ)]) ↔
((P.degree ≤ k ∧ Q.degree < k) ∧
(HasParity P k ∧ HasParity Q (k + 1)) ∧
∀ x ∈ Set.Icc (-1 : ℝ) 1,
‖P.eval (x : ℂ)‖ ^ 2 + (1 - x ^ 2) * ‖Q.eval (x : ℂ)‖ ^ 2 = 1) := by
sorry
end QAlgorithms.Childs
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Setting. Fix a natural number and two univariate polynomials with complex coefficients. For a polynomial , write for the polynomial obtained by complex-conjugating every coefficient of . For real this gives .
The objects involved. For a real number , the "signal" matrix is
Here is the real square root, which returns on negative arguments. Only is used below, so this convention does not matter there.
For a real angle , the "phase" matrix is
Given real angles , the QSP sequence is the ordered product
It contains exactly factors of . When it is just .
A polynomial "has parity " means
as polynomials. So is even when is even and odd when is odd.
The statement. The theorem asserts that the following two conditions are equivalent.
- (Achievability.) There exist real angles such that, for every real with ,
- (Conditions on .) All three of the following hold:
- Degree bounds: and . These use the convention that the zero polynomial has degree . In particular:
- when , the bound forces ;
- satisfies the degree bound for every .
- Parity: and .
- Normalization: for every real ,
- Degree bounds: and . These use the convention that the zero polynomial has degree . In particular:
Both the matrix identity in (1) and the normalization identity in (2) are required only for in the closed interval . The statement is a full "if and only if".
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.