Sign outOpen workspaceSign in

MethodLayer 1

Eigenstate filtering inversion

Construct the minimax-optimal polynomial that is 1 at a target eigenvalue and uniformly small outside a spectral gap, and apply it through quantum signal processing. For a linear system x>|x> is the null eigenstate of a Hamiltonian built from AA and b>|b>, so one application of the filter solves it once a starting state with non-trivial overlap is supplied.

Takes

An access model for AA — sparse row/column entry oracles, or a block-encoding; a unitary preparing b\lvert b\rangle; a known upper bound κ\kappa on the condition number; the normalisation A1\lVert A\rVert \le 1; and a target state error ε\varepsilon.

Returns

A flagged state ε\varepsilon-close in 2\ell_2 to A1b/A1bA^{-1}\lvert b\rangle/\lVert A^{-1}\lvert b\rangle\rVert. It does not return x\lVert x\rVert, any entry of xx, or any classical functional of xx — those cost extra and are decided a layer above.

Same contract as the slot it fills.

This one, drawn

Eigenstate filtering inversionHHL: eigenvalue inversion by phase estimationQSVT matrix inversion · 3 parts insideQSVT matrix inversion · 3 parts inside — click the line to open it hereChebyshev LCU inversionDiscrete adiabatic inversion · 3 parts insideDiscrete adiabatic inversion · 3 parts inside — click the line to open it hereEigenstate filtering inversion · 3 parts inside, openEigenstate filtering inversion · 3 parts inside, openEigenstate filtering inversion · 3 parts inside, open — click the line to close itBlock-encode a matrix · 4 ways throughBlock-encode a matrix · 4 ways through — click the line to open it hereQuantum singular value transformation, a minimax eigenstate filter · 2 parts inside, openQuantum singular value transformation, a minimax eigenstate filter · 2 parts inside, openQuantum singular value transformation, a minimax eigenstate filter · 2 parts inside, open — click the line to close itBlock-encode a matrix ×n · 4 ways throughBlock-encode a matrix ×n · 4 ways through — click the line to open it hereQuantum singular value transformationEigenstate filtering inversionHHL: eigenvalue inversion by phase estimation — click the name to read about itHHLQSVT matrix inversion · 3 parts inside — click the name to read about itQSVT matrix inversionChebyshev LCU inversion — click the name to read about itChebyshev LCU inversionDiscrete adiabatic inversion · 3 parts inside — click the name to read about itDiscrete adiabatic inversionEigenstate filtering inversion · 3 parts inside, open — click the name to close itEigenstate filtering inversionBlock-encode a matrix · 4 ways through — click the name to read about itBlock-encode a matrixQuantum singular value transformation, a minimax eigenstate filter · 2 parts inside, open — click the name to close itQSVT, a minimax eigenstate filterBlock-encode a matrix ×n · 4 ways through — click the name to read about itBlock-encode a matrix ×nQuantum singular value transformation — click the name to read about itinterleave the encoding with phase shiftsEigenstate filtering inversion — click the name to read about itfilter out the orthogonal partLinear system Ax = b — you start hereSolution as a state — you finish hereBlock-encoding — what one part hands to the nextBlock-encoding — what one part hands to the nextBlock-encoding of f(A) — what one part hands to the next

Drag to pan. Pinch, or hold ctrl and scroll, to zoom. Arrow keys pan, plus and minus zoom, zero resets the view.

From Linear system Ax = b to Solution as a state

A circle is an object you are holding. This method is drawn heavier, opened into its own steps; the other lines between the same two ends are the alternatives recorded for the same slot. Circles are named on hover, and each one is a link.

4 lines here have ways through that this figure does not open. The map opens them in place. See it on the map

What it fills

  • Quantum linear solve

    Given access to a matrix AA and a unitary that prepares b>|b>, produce a flagged quantum state that is ε\varepsilon-close in l2l2 to the normalised A1bA^{-1}b. The deliverable is a state, not a classical vector.

When it applies

Requires a block-encoding of the Hamiltonian, a reasonable lower bound on the spectral gap, and an initial state with non-trivial overlap with the target eigenstate. Stated for a dd-sparse AA whose singular values lie in [1/κ,1][1/\kappa, 1] — the theorems are about singular values, not eigenvalues. Lin and Tong give two ways of supplying the starting state, one seeded by time-optimal adiabatic evolution and one that walks a Zeno path of intermediate Hamiltonians.

Requires

These do not move the route along. The method needs each of them alongside its own work, and the cost of getting them is part of what the method costs.

  • Prepare an input state

    Map 00|0\ldots0⟩ to a state whose amplitudes are proportional to a specified vector bb, to within ε\varepsilon. The cost is set by which description of bb you hold, not by the algorithm that consumes it.

    The filter is applied to a state ψ>=γψλ>+>|\psi> = \gamma|\psi_\lambda> + |\perp> with <ψλ>=0<\psi_\lambda|\perp> = 0, supplied by an oracle OψO_\psi; the block-encoding of PλP_\lambda succeeds with probability at least γ2\gamma^2, so oracle and filter are run on average O(1/γ2)O(1/\gamma^2) times, and amplitude amplification would only reduce that to O(1/γ)O(1/\gamma). For the linear system the right-hand side enters through OB0>=b>O_B|0> = |b>: the Zeno route starts from x(0)>=b>|x(0)> = |b> itself, and the AQC route runs AQC(p) to constant precision to obtain x~0>=γ00>x>+γ11>b>+>|\tilde x_0> = \gamma_0|0>|x> + \gamma_1|1>|b> + |\perp>. assumption: the starting state has non-trivial overlap with the target eigenstate, γ>0\gamma > 0 — and in the QLSP application γ0=Ω(1)|\gamma_0| = \Omega(1) is guaranteed, which is what turns the O(1/γ2)O(1/\gamma^2) repetition into a constant and makes amplitude amplification unnecessary.

    assumption

Example

Lin and Tong report one run, and it is classical: §4.3 with Fig. 2 presents numerical results obtained on a classical computer, testing the AQC-seeded variant. The test matrix AA is a randomly generated symmetric positive definite tridiagonal matrix BB added to a scalar multiple of the identity and then rescaled so that the eigenvalues of AA lie in [1,1][-1,1]. The off-diagonal entries of BB are drawn uniformly from [1,0][-1,0], each diagonal entry is the negative of the sum of the two adjacent entries in its row, and the (0,0)(0,0) and (N1,N1)(N-1,N-1) entries are made slightly larger so that BB is positive definite; the smallest eigenvalue of BB therefore sits very close to 00, and the authors chose the construction so that the condition number can be estimated with reasonable accuracy without computing eigenvalues. b>|b> is drawn from the uniform distribution on the unit sphere. The initial state is prepared by running AQC(p) for T=0.2κT = 0.2\kappa with p=1.5p = 1.5, which reaches a fidelity of about 0.60.6, and the filter R(x;1/(dκ))R_\ell(x; 1/(d\kappa)) of degree 22\ell is then applied. The reported outcome is the fidelity η=<xx~>\eta = |<x|\tilde{x}>| of the resulting state: at κ=30\kappa = 30, 6060 and 9090 alike, η\eta converges to 11 exponentially as \ell grows, plotted as log10(1η2)\log_{10}(1-\eta^2) falling steadily over degrees running to a few hundred, and the smallest \ell reaching a fixed fidelity — the two levels shown are η2=1103\eta^2 = 1-10^{-3} and η2=1104\eta^2 = 1-10^{-4} — grows linearly in κ\kappa. Two limits of this run should be stated plainly rather than glossed. First, the matrix dimension is never given: NN appears only as a symbol naming the last row and column of BB, and no numerical value for it is stated in §4.3, in the caption of Fig. 2, or anywhere else in the paper, so none is quoted here. Second, the simulation applies the filtering polynomial to the state directly rather than compiling it, so no block-encoding, no phase sequence, no ancilla measurement and no sparse-access oracle is exercised. What Fig. 2 validates is the complexity estimate — how the filter degree has to grow with κ\kappa and with the target fidelity — and not a circuit.

Classical simulation · Section 4.3, Figure 2 of arXiv:1910.14596

given  a block-encoding of the Hamiltonian -- for a linear system, the
       Hamiltonian built from A and |b>, whose null eigenstate is |x> --
       and a reasonable lower bound on the spectral gap

supply an initial state with non-trivial overlap with the target
    eigenstate
    # Lin and Tong give two ways of supplying it:
    #   (a) seeded by time-optimal adiabatic evolution
    #   (b) walking a Zeno path of intermediate Hamiltonians

construct the minimax-optimal polynomial that is 1 at a target
    eigenvalue and uniformly small outside a spectral gap
    # no degree is stated for it on this record, and no construction
apply it through quantum signal processing

# one application of the filter solves it, once a starting state with
# non-trivial overlap is supplied
# Lin and Tong's abstract states that neither algorithm uses phase
# estimation or amplitude amplification

# near-optimal O~(d kappa log(1/epsilon)) query complexity for a
# d-sparse matrix, for both variants, with kappa the condition number
# and epsilon the desired precision

# stated for a d-sparse A whose singular values lie in [1/kappa, 1], and
# the theorems are about singular values, not eigenvalues -- the filter
# is nonetheless described as being 1 at a target eigenvalue, and this
# listing leaves that where the record leaves it

Cost, as the source states it

Lin and Tong: both QLSP variants achieve the near-optimal O~(dκlog(1/ε))\tilde{O}(d \kappa \log(1/\varepsilon)) query complexity for a dd-sparse matrix, where κ\kappa is the condition number and ε\varepsilon the desired precision. Their abstract states that neither algorithm uses phase estimation or amplitude amplification.

Implementations

  • AQC(p)-seeded eigenstate filtering

    The QLSP solver of §4. AA is dd-sparse with singular values in [1/κ,1][1/\kappa, 1], reached through the sparse-access oracles OA,1O_{A,1} and OA,2O_{A,2}, and b>|b> through an oracle OBO_B; the task is to produce x>A1b>|x> \propto A^{-1}|b> with fidelity 1ε1-\varepsilon. What names this variant is how it supplies the starting state for the filter: time-optimal adiabatic evolution, run only to constant precision.

    Everything enters through oracles: OA,1O_{A,1} and OA,2O_{A,2} for sparse access to AA, and OBO_B for b>|b>. The only concrete instances put through the algorithm are the random symmetric positive definite tridiagonal matrices of §4.3, whose construction is described in the example.

    Theorem 8: fidelity 1ε1-\varepsilon with success probability Ω(1)\Omega(1), flagged by an ancilla measurement outcome, using O(dκ(loglog(dκ)/log(dκ)+log(1/ε)))O(d\kappa(\log\log(d\kappa)/\log(d\kappa) + \log(1/\varepsilon))) queries to OA,1O_{A,1}, OA,2O_{A,2} and OBO_B; O(dκ(nlog(1/ε)+(n+log(dκ))loglog(dκ)/log(dκ)))O(d\kappa(n\log(1/\varepsilon) + (n + \log(d\kappa))\log\log(d\kappa)/\log(d\kappa))) other primitive gates; and O(n+log(dκ))O(n + \log(d\kappa)) qubits. Of those qubits only O(log(dκ))O(\log(d\kappa)) come from anywhere other than the block-encoding of AA, and they are mainly the cost of the time-dependent Hamiltonian simulation. When the oracles have poly(n)\mathrm{poly}(n) gate complexity the total gate complexity, and hence the runtime, is O~(poly(n)dκlog(1/ε))\tilde{O}(\mathrm{poly}(n) d\kappa \log(1/\varepsilon)). This is the variant the numerical test of §4.3 exercises, and that test ran on a classical computer; no simulator package and no hardware is named.

  • Zeno-path eigenstate filtering

    The QLSP solver of §5: same input model and same target as the AQC-seeded variant, built so that no time-dependent Hamiltonian simulation is needed at all. Rather than evolving continuously from the null eigenstate of H0H_0 to the null eigenstate of H1H_1, it traverses the eigenpath by a series of approximate projections — the quantum Zeno variant the authors take from Boixo, Knill and Somma. Performing each projection by eigenstate filtering rather than by quantum phase estimation or phase randomization is what turns the error dependence from O(1/ε)O(1/\varepsilon) into O(log(1/ε))O(\log(1/\varepsilon)).

    The path is cut at fj=f(j/M)f_j = f(j/M) with the schedule f(s)=(1κs)/(1κ1)f(s) = (1-\kappa^{-s})/(1-\kappa^{-1}), which splits [0,1][0,1] into MM segments of equal LL^*-length; without a schedule the algorithm would carry an unfavourable square dependence on the minimum spectral gap along the eigenpath. Step 1 fixes M=4log2(κ)/(11/κ)2M = \lceil 4\log^2(\kappa)/(1-1/\kappa)^2 \rceil and εP=1/(162M2)\varepsilon_P = 1/(162M^2). Each H(f)H(f) is given a (1f+fd,n+6,0)(1-f+fd, n+6, 0)-block-encoding UH(f)U_H(f), and eigenstate filtering to precision εP\varepsilon_P turns it into a (1,n+8,εP)(1, n+8, \varepsilon_P)-block-encoding of the projector P0(f)=x(f)><x(f)P_0(f) = |x(f)><x(f)|. Starting from x~(0)>=b>|\tilde{x}(0)> = |b>, each turn applies that block-encoding and measures the n+8n+8 ancilla qubits: all zeros advances the walk to x~(fj)>|\tilde{x}(f_j)>, and any other outcome aborts and restarts from b>|b>. The final turn runs the filter to accuracy ε/4\varepsilon/4 instead of εP\varepsilon_P, and that is deliberate — the earlier turns' filtering errors affect only the success probability, while the last turn alone controls the fidelity of the output.

    Theorem 11: fidelity 1ε1-\varepsilon with success probability Ω(1)\Omega(1), using O(dκ(log(κ)loglog(κ)+log(1/ε)))O(d\kappa(\log(\kappa)\log\log(\kappa) + \log(1/\varepsilon))) queries to OA,1O_{A,1}, OA,2O_{A,2} and OBO_B, O(ndκ(log(κ)loglog(κ)+log(1/ε)))O(nd\kappa(\log(\kappa)\log\log(\kappa) + \log(1/\varepsilon))) other primitive gates, and O(n)O(n) qubits. Only O(1)O(1) of those are extra ancillas, against O(log(dκ))O(\log(d\kappa)) for the AQC-seeded variant, precisely because nothing here does time-dependent Hamiltonian simulation. Assuming error-free projections the success probability is bounded below by 1/41/4, and with εP\varepsilon_P chosen as in Step 1 it is still bounded below by a constant. The authors say plainly that the constant factors they prove, particularly those in the success-probability estimate for this solver, are rather loose, and that tighter estimates would help an actual implementation. They also note, without carrying it out, that using fixed-point amplitude amplification to move from x(fj)>|x(f_j)> to x(fj+1)>|x(f_{j+1})> would shave a further log(κ)\log(\kappa) factor up to loglog\log\log terms. No numerics are reported for this variant: the run in Fig. 2 is the AQC-seeded one.

  • Chebyshev LCU compilation of the filter

    Named but not built, and this entry exists to record exactly that. Both solvers above compile the filter through quantum signal processing; a remark in §3 says the filtering procedure can also be implemented by alternative methods such as LCU, and gives the two numbers that would govern the swap. Nobody has run it, in this paper or in anything cited from it here.

    R(;Δ~)R_\ell(\cdot; \tilde{\Delta}) expands exactly into the first 2+12\ell+1 Chebyshev polynomials, and since R(x;Δ~)1|R_\ell(x; \tilde{\Delta})| \le 1 the 11-norm of the expansion coefficients is bounded above by 2+22\ell+2. The price of the swap is O(log)O(\log \ell) additional qubits for the LCU expansion. Nothing beyond those two statements is given: no circuit, no query count, no gate count and no run.

What it needs

  1. Block-encode a matrix 4 methods

    Wrap an operator AA inside a larger unitary UU so that A/αA/α sits in UU's top-left block, giving every routine above it one uniform way to touch the matrix. The subnormalization αα and the ancilla count are outputs of this layer, not free parameters.

  2. Matrix function 2 methods

    Given a block-encoding of AA and a target function ff bounded on [1,1][-1,1], produce a circuit whose designated block is an ε\varepsilon-approximation of ff applied to the singular values (or eigenvalues) of AA.

Slots it makes unnecessary

These do not fill the slot. They replace the span it belongs to, so this layer is not on their path at all.

  • Amplify a success branch

    Take a routine whose output lands in the wanted subspace only with probability aa, and raise that probability to near 1 using quadratically fewer repetitions than restarting the routine would need.

Other ways to fill the same slot

Different approaches

  • HHL: eigenvalue inversion by phase estimation

    Prepare b>|b>, run phase estimation against eiAte^{-iAt} to write eigenvalue estimates into an ancilla register, apply a controlled rotation with amplitude proportional to 1/λ~1/λ̃, uncompute the estimation and post-select on the rotation ancilla. The success amplitude is about 1/κ1/κ, so the procedure is amplified O(κ)O(κ) times.

  • QSVT matrix inversion

    Block-encode AA, apply the quantum singular value transformation with an odd polynomial approximating a scaled 1/x1/x away from the origin, then amplify. Because it acts on singular values, AA need not be Hermitian or sparse — only block-encodable.

  • Chebyshev LCU inversion

    Expand an approximation of 1/x1/x in Chebyshev polynomials and implement that expansion directly through the quantum walk associated with a sparse AA, rather than through Hamiltonian simulation. Phase estimation is never used, which is what removes the poly(1/ε)\mathrm{poly}(1/\varepsilon) bottleneck.

  • Discrete adiabatic inversion

    Encode the solution as the null eigenstate of a Hamiltonian path built from AA and b>|b>, follow that path with a sequence of qubitization walk operators to fixed precision, then finish with an eigenstate filter implemented as a linear combination of walk operators rather than by quantum signal processing. Costa and co-authors prove an adiabatic theorem for intrinsically discrete-time evolutions, which removes the residual log(κ)\log(κ) that continuous adiabatic treatments carried.

In the Atlas

No record in the Atlas covers this yet. The catalogue is circuits and primitives; this part of the literature is not in it.

Sources