About this map
Sections
What this is
Quantum algorithms are not written from scratch. They are assembled from a small number of reusable steps, and almost every published method is a different route through the same handful of them.
This is a map of those routes. Circles are the things an algorithm can be holding. Lines are the steps that carry you from one to the next. A method is a path across.
Nothing here is generated. Every line was read out of a paper and checked against it.
How to read it
- Something you can hold — a state, a matrix, a circuit, an answer.
- The same, in the middle of a step you have opened.
- A step. Someone has published a way through it.
- A step whose way through has not been pinned to one method.
- A step nothing published fills yet.
- A step you have opened. What is drawn inside it is how it was done.
- There is a record in the repository for this one.
How to move around
- Two fingers move the map. Pinch to zoom, or hold ctrl and scroll.
- Click a step to open it in place — everything else stays where it is.
- Click a name to read the full record without leaving the map.
- Arrow keys move, plus and minus zoom, zero puts it back.
What a line is claiming
A solid line means a paper puts those two steps together and we have the citation. A long-dashed line means the route is recorded but no single method has been named for that step. A short-dashed line means nothing published fills it — the step is real, the way through is not written yet.
A count after a step's name — ×T/h, ×O(κ) — means the route walks that step that many times rather than once. It is the source's own symbol, and the card says what it stands for and what one turn costs. A step with no count is a step no source we read said is repeated, which is not the same as one taken once.
A line drawn nested under another, on the soft shaded band behind it, is a narrower version of the line above it: the same construction, re-analysed or re-tuned, filling the same step. It is why two lines can draw the identical interior and still be two entries. Lines outside the band are alternatives to their neighbours, not versions of them.
The map does not hide the gaps. An empty step is drawn as an empty step.
What is not here yet
The map covers the algorithm literature. The repository covers circuits and primitives. They overlap less than you would expect, and where a method has no record we say so on its page rather than leaving the space blank.
Where something named here does have a record, its name links straight to it.
Method
Chebyshev pseudospectral collocation
A **global** discretization, and the only one on this slot. Write each component of the solution as a truncated Chebyshev series with the coefficients undetermined, then fix them by demanding that the differential equation hold exactly at the Chebyshev-Gauss-Lobatto nodes . What comes out is one linear system in the coefficients. Childs and Liu put the difference from every stepping scheme plainly: "instead of locally approximating the ODE at discretized times, these linear equations use the behavior of the differential equations at the times to capture their behavior over the entire interval ".
Open the full recordFills the slot: Choose a time discretization or propagator approximation
**Smoothness of the solution, and the rate is a function of how much of it there is.** Lemma 1, quoted by Childs and Liu from Gheorghiu, covers a solution : for a constant independent of . Lemma 2 covers and is the one the exponential precision needs: . In Childs and Liu's summary, "the convergence behavior of the spectral method is related to the smoothness of the solution". Chebyshev rather than Fourier is a stated choice with a stated reason: "a Fourier series provides an appropriate basis for periodic problems, whereas Chebyshev polynomials can be applied more generally", and "since general linear ODEs are non-periodic, and interpolation facilitates constructing a straightforward linear system, we develop a quantum algorithm based on the Chebyshev pseudo-spectral method". The Chebyshev-Gauss-Lobatto nodes are likewise chosen rather than assumed — they "achieve the highest convergence rate among all schemes with the same number of nodes", and they have the convenient property .
The generator , the interval , an error tolerance , and a target algebraic form.
Linear ODE system → Linear system Ax = bsolve for the Chebyshev coefficients
One system for a whole interval. The unknowns are the Chebyshev coefficients of Eq. (2.1), , and what pins them down is Eq. (2.2) — required to hold at each node — together with the initial condition of Eq. (2.3). The derivative never leaves the basis: the Chebyshev identity of Eq. (2.6) gives the upper-triangular differentiation matrix of Eq. (2.8), for odd and with and otherwise, so that and collocation becomes Eq. (2.10), . approximation: The exact solution is replaced by a degree- Chebyshev polynomial, and the error is governed by how smooth the solution is rather than by any step size. Lemma 2, for : . Lemma 1, for : , with independent of — the same construction, and the exponential rate is gone. assumption: The solution is smooth. Childs and Liu keep this in the foreground rather than the fine print: "our algorithm must assume that the solution is smooth", listed in the Discussion as an open problem. **Why these nodes and not any others.** The interpolation points are the Chebyshev-Gauss-Lobatto quadrature nodes , "since these nodes achieve the highest convergence rate among all schemes with the same number of nodes"; and because , evaluating the basis at them costs nothing. Their ordering is load-bearing too — and "are the initial and final states", so both the condition that goes in and the answer that comes out sit exactly on a node.
approximationassumption
The discrete object, its truncation-error bound, and its conditioning bound.
None found yet.
Read in full: arXiv:1901.00961, the only paper this node cites, carries no numerics anywhere — no figure, no table, no computed value, no dataset and no simulator. Its Appendix B is titled "An example of the quantum spectral method" and is a structural display rather than a run: it takes , , , and writes out the shape of the linear system with , and left symbolic. The register row for 1901.00961 records that as a full-text read.
given A(t), f(t), initial value gamma, interval [-1, 1], series length n
take the n+1 Chebyshev-Gauss-Lobatto nodes
t_l = cos(l*pi/n) for l = 0 ... n, so 1 = t_0 > t_1 > ... > t_n = -1
# highest convergence rate of any scheme with this many nodes;
# t_0 and t_n are the initial and final times, which is what lets the
# initial condition and the answer both be read off a node
write each component as an undetermined truncated Chebyshev series
x_i(t) = sum_{k=0..n} c_{i,k} T_k(t)
express the derivative in the same basis
dx_i/dt = sum_{k=0..n} c'_{i,k} T_k(t)
c'_{i,k} = sum_{j=0..n} [D_n]_{kj} c_{i,j}
[D_n]_{kj} = 2j/sigma_k for k+j odd and j > k, else 0
sigma_0 = 2, sigma_k = 1 for k >= 1
# D_n is upper triangular; it comes from 2T_k = T'_{k+1}/(k+1) - T'_{k-1}/(k-1)
collocate: demand the ODE hold at every node
for l = 0 ... n, for i = 0 ... d-1:
sum_k T_k(t_l) c'_{i,k} = sum_j A_ij(t_l) sum_k T_k(t_l) c_{j,k} + f_i(t_l)
# T_k(t_l) = cos(k*l*pi/n), so no evaluation of T_k is needed
add the initial condition as further rows
x_i(1) = gamma_i for i = 0 ... d-1
return the linear system in the unknowns c_{i,k}
# one global system for the whole interval, not one system per stepWhat Childs and Liu state for the discretization by itself is **the number of terms**, not an end-to-end complexity — the latter belongs to the route that calls a solver on the assembled system. Under Lemma 2's hypothesis: "if the solution is in , the spectral method approximates the solution to within using only terms in the Chebyshev series". Under Lemma 1's weaker hypothesis the same construction costs "". That gap between the two is the whole reason a spectral discretization is worth building, and it is also the reason the smoothness hypothesis cannot be dropped quietly.
None found yet.
None found yet.
The same document as `example.text` above, read again for a different question, and the paper's own wording is the trap: its introduction does say "we implement a Chebyshev pseudospectral method [4, 22] using the QLSA". That is the algorithm being constructed on paper. Across all 29 pages of arXiv:1901.00961 the words Qiskit, MATLAB, Python and benchmark do not occur, there is no numbered figure and no numbered table, and the one worked passage — Appendix B, "An example of the quantum spectral method" — fixes , , , and then writes the linear system out with , and left symbolic. Nothing was built and nothing was run, so there is no implementation of this method in the only paper this record cites. Said of that one document and not of the method: this is a classical pseudospectral scheme lifted onto the QLSA, its classical half has been implemented for decades, and a paper that does report a quantum implementation would belong here rather than replacing this reason.
Every paper cited here has been read in full, and none reports a run.
None found yet.
References
- Quantum spectral methods for differential equations
Andrew M. Childs, Jin-Peng Liu · 2019
Where the routes meet
11 problems nothing else needs — the places a reader arrives. Open a line to see what is recorded inside it, or click its name to go there.
13 lines have something recorded inside that you have not opened.
Of the routes that have been taken apart, 15 are built entirely from named slots, 15 hand off part of the work and finish the rest themselves, and 20 are one undivided act. None of the three is a defect; they are different things to reuse.
Every line on this figure, in words
The lines on this figure
Solve a nonlinear ODE dy/dt = F(y)
- Embed a nonlinear system into a linear one — opens into 6 · a way across — click it to open it here
- Solve a linear ODE du/dt = A(t)u + b(t) — opens into 9 · a way across — click it to open it here
- Choose a time discretization or propagator approximation → Quantum linear solve — open
- Choose a time discretization or propagator approximation — opens into 6 · a way across — click it to open it here
- Quantum linear solve — opens into 5 · a way across — click it to open it here
- Simulate Hamiltonian evolution → Estimate an observable — open
- Simulate Hamiltonian evolution — opens into 3 · a way across — click it to open it here
- Estimate an observable — opens into 4 · a way across — click it to open it here
Estimate an excited-state energy
- Variational quantum deflation — opens into 3 · a way across — click it to open it here
- Subspace-search variational eigensolver — opens into 3 · a way across — click it to open it here
- Quantum subspace expansion
- Quantum equation of motion
- Folded-spectrum variational eigensolver — opens into 3 · a way across — click it to open it here
- Penalty-constrained variational eigensolver — opens into 3 · a way across — click it to open it here
- Multistate contracted variational eigensolver — opens into 3 · a way across — click it to open it here
Every step you can open
1 of these have an object recorded in the middle; the rest open into the methods that fill them.
- Solve a nonlinear ODE dy/dt = F(y)
- Replace a spatial domain with a finite grid
- Discretize a PDE into one linear system
- Embed a nonlinear system into a linear one
- Solve a linear ODE du/dt = A(t)u + b(t)
- Recast a non-Hermitian generator as Hamiltonian evolution
- Choose a time discretization or propagator approximation
- Quantum linear solve
- Matrix function
- QSP phase factors
- Polynomial approximation
- Block-encode a matrix
- Prepare an input state
- Amplify a success branch
- Simulate Hamiltonian evolution
- Estimate an observable
- Compile a circuit to a specific device
- Satisfy the hardware connectivity constraint
- Approximate a continuous rotation in a discrete gate set
- Recover a noiseless expectation value by post-processing
- Build logical qubits at a target logical error rate
- Estimate a Hamiltonian's ground-state energy
- Choose a parameterised trial state
- Minimise the objective over the parameters
- Estimate an excited-state energy
- Measure what the machine can actually do
- Recover the period of a periodic function
- Estimate the eigenphase of a unitary
- Find the item a check accepts
- Walk a graph to the vertex you want
- Search a cost Hamiltonian for the assignment it minimises
What is on this map, counted
What is here, counted
147 nodes — 31 slots and 116 methods.
76 of the 147 link to a record in the Atlas, between them naming 89 records. The rest name papers and nothing else: this graph describes work the catalogue has not got yet, and the nodes with no record are the list of what a corpus pass has to go and read.
0 slots have no method recorded, and 32 methods have not been taken apart. Both are shown as what they are rather than left blank.
Every claim here rests on a source. This graph cites 140 papers; they and the 172 the Atlas cites alone are registered in one place, with what each reports and everywhere it is cited from. Papers