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
QSVT matrix inversion
Block-encode , apply the quantum singular value transformation with an odd polynomial approximating a scaled away from the origin, then amplify. Because it acts on singular values, need not be Hermitian or sparse — only block-encodable.
Open the full recordFills the slot: Quantum linear solveExpand it here — a map of just this
Requires a projected unitary encoding of whose non-zero singular values are all at least (so after normalisation), with . What the transform produces is , the Moore-Penrose pseudoinverse carrying a subnormalisation, so the raw output is not the normalised solution state — converting it is what the amplification step is for.
An access model for — sparse row/column entry oracles, or a block-encoding; a unitary preparing ; a known upper bound on the condition number; the normalisation ; and a target state error .
Linear system Ax = b → Block-encodingBlock-encode a matrix runs m = O((1/δ) log(1/ε)) applications of U and U†
The route touches only through a projected unitary encoding , of which a block-encoding — — is the special case. The transformation queries it times as and , coherently, with a single ancilla qubit carrying the phase shifts. assumption: Every non-zero singular value of is at least , which is after normalisation. assumption: For the end-to-end form, Chakraborty, Gilyén and Jeffery need the encoding's own error to be , and its subnormalisation multiplies the query count.
assumption
The loop stays coherent: nothing is measured between turns. The preparation may still be reapplied every turn — what the loop never pays is a readout and a restart from classical data. The price is depth, and a success probability that multiplies down the chain. Gilyén, Su, Low and Wiebe's Theorem 41 count, and δ = 1/κ after normalisation — so this is the condition number, appearing as a number of turns rather than as a mysterious factor. The log(1/ε) is what an approximating polynomial of that degree costs, and it is why this route's precision dependence is logarithmic where phase-estimation inversion's is not.
Block-encoding → Block-encoding of f(A)Matrix function
With every non-zero singular value at least , an odd real polynomial that -approximates on gives , which -approximates . approximation: is replaced by with , which is -close to only on , and in turn by an odd Chebyshev expansion of degree . assumption: Singular value transformation by real polynomials requires to have parity and to satisfy for every ; the construction secures the bound by taking with an even polynomial approximating a rectangle function.
approximationassumption
Block-encoding of f(A) → Solution as a stateapply the assembled pseudoinverse
Assembled: for there is an and an efficiently computable whose circuit , restricted to the singular-value subspaces that are zero or at least , implements to error — using a single ancilla qubit, uses of and , uses of and , and single-qubit gates. Because the transform acts on singular values, it applies to an arbitrary matrix rather than only a Hermitian or normal one. assumption: ; the authors call the part quite natural but not necessary, removable through their Corollary 69.
assumption
A flagged state -close in to . It does not return , any entry of , or any classical functional of — those cost extra and are decided a layer above.
- Prepare an input state
Map to a state whose amplitudes are proportional to a specified vector , to within . The cost is set by which description of you hold, not by the algorithm that consumes it.
The problem this hop feeds is stated with a procedure that computes in the image of , the target being a state within of . assumption: lies in the image of — in Chakraborty, Gilyén and Jeffery's Theorem 30 it is an input state spanned by the eigenvectors of . Preparing it costs , and that cost enters the end-to-end bill multiplied by the condition number, as the term.
assumption
- Amplify a success branch
Take a routine whose output lands in the wanted subspace only with probability , and raise that probability to near 1 using quadratically fewer repetitions than restarting the routine would need.
The flagged branch carries the subnormalisation: applying the -block-encoding of to leaves , so standard amplitude amplification needs a number of rounds linear in and the overall dependence on comes out quadratic. Chakraborty, Gilyén and Jeffery recover a linear by using variable-time amplitude amplification in its place. assumption: Variable-time amplitude amplification needs the solver recast as a variable-stopping-time algorithm — a sequence of steps , each with its own single-qubit clock register, where step runs gapped phase estimation on at precision and inverts only the branch that step flags.
assumption
Gilyén, Su, Low and Wiebe report no numerical work whatever — their only figures are circuit diagrams for the gate sequences of Theorem 17 — and Chakraborty, Gilyén and Jeffery have no figures at all. The numbers the register finds are Lin and Tong's Section 4.3 with Figure 2, and they measure the eigenstate-filtering route, which is written up on the `eigenstate-filtering-inversion` record.
given a projected unitary encoding of A whose non-zero singular values are
all at least d (d = 1/k after normalisation), with 0 < e <= d <= 1/2
block-encode A
prepare |b>
apply the quantum singular value transformation with an odd polynomial
approximating a scaled 1/x away from the origin
# m = O((1/d) log(1/e)) applications of U and U^-1, coherently -- the
# condition number appearing as a number of turns, not as a factor
# what the transform produces is (d/2) A^+, the Moore-Penrose pseudoinverse
# carrying a subnormalisation. This is NOT yet the normalised solution state.
amplify # which is what converts it
# A need not be Hermitian or sparse -- only block-encodable, because the
# transform acts on singular valuesGilyén, Su, Low and Wiebe (Theorem 41) implement to error with applications of and , using a single ancilla qubit. Chakraborty, Gilyén and Jeffery (Theorem 30) give the block-encoded end-to-end form , where is the subnormalisation, the cost of the block-encoding and the cost of preparing .
None found yet.
The figure is a query count against the block-encoding, not a gate count, and it carries neither nor the amplification. Lin and Tong summarise the end-to-end QSP/QSVT query complexity as , reduced to only by variable-time amplitude amplification — and they state that the performance of that technique for this problem has not been quantitatively reported in the literature.
Direct Moore-Penrose pseudoinverse by singular value transformation (Theorem 41)
- Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics
András Gilyén, Yuan Su, Guang Hao Low, Nathan Wiebe · 2018
About
Section 3.7, and the paper's own framing is that once singular values can be transformed the pseudoinverse costs nothing extra to state. If and is a singular value decomposition, then , where inverts the diagonal entries except that zeros stay zero. So the whole construction reduces to finding one odd polynomial and feeding it to the singular value transformation machinery of Theorem 17 and Corollary 18. Nothing about the matrix is assumed beyond a projected unitary encoding of it and a lower bound on the non-zero singular values.
Methods
An odd real polynomial that -approximates on gives , which -approximates . The polynomial is built in three pieces. Lemma 40 borrows Childs, Kothari and Somma's Lemmas 17 to 19: with the odd function is -close to on , and with an odd Chebyshev sum of degree is -close to on , bounded there by . The proof of Theorem 41 then takes a of degree that -approximates on , an even of the same order of degree from Lemma 29 with , its own and approximating the rectangle function, and sets , which is odd, of degree , and bounded by in absolute value on so that Corollary 18 applies; the gate count follows from Lemma 19. The statement is that for there are an and an efficiently computable with the operator norm of at most , where . The circuit uses a single ancilla qubit, uses of and , uses of and , and single-qubit gates. The authors add that the hypothesis is quite natural but not necessary and can be removed through Corollary 69.
Data
No instance is fixed. enters only as a projected unitary encoding and the bounds are stated in , and alone; no matrix, no dimension and no right-hand side appears anywhere in the section.
Code
No software artefact is named or released. The phase sequence is called efficiently computable and the paper says what that means: the proofs of its Theorems 3 to 5 are constructive, and the hardest step is finding all roots of a degree- univariate complex polynomial, which can be done to precision on a classical computer in time .
Results
No numerics. The paper's only figures are the circuit diagrams of Figure 1, showing how to implement a gate, how to implement with one ancilla qubit, two gates and an gate, and the complete circuit used in Theorem 17. Nothing is simulated and no device is named.
- Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics
Threshold pseudoinverse for principal component regression (Corollary 42)
- Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics
András Gilyén, Yuan Su, Guang Hao Low, Nathan Wiebe · 2018
About
Section 3.8, where the same singular value transformation is pointed at principal component regression. The object wanted there is not but , the pseudoinverse restricted to the singular directions above a threshold , because the regression's optimal solution is . This is a second inversion construction rather than an application of the first, and the paper says why in the proof.
Methods
For and there are an and an efficiently computable such that is within of , at the same gate budget as Theorem 41: one ancilla qubit, uses of and , uses of and , and single-qubit gates. The construction is deliberately not a composition: applying the singular value threshold projector of Theorem 31 and then the pseudoinverse of Theorem 41 is stated to be suboptimal, so instead the two theorems' polynomials are multiplied together and the singular value transformation is performed once, according to the product polynomial. To solve regression one applies the result to and then amplitude amplifies. The paper states the caveat itself: strictly one would need to have no overlap with left singular vectors whose singular values fall in and a non-negligible overlap with those above , but a left singular vector inside that band is still mapped meaningfully, to with .
Data
No instance is fixed; as with Theorem 41 the statement is entirely in , and the threshold .
Code
None found yet.
Results
No numerics are reported for this construction either.
- Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics
Block-encoding of the inverse from negative matrix powers, with standard amplification
- The power of block-encoded matrix powers: improved regression techniques via faster Hamiltonian simulation
Shantanav Chakraborty, András Gilyén, Stacey Jeffery · 2018
About
Section 4.3. The problem is stated as: given access to an matrix and a procedure computing a quantum state in the image of , prepare a state within of , with supplied as a block-encoding rather than through sparse access. This entry is the straightforward route the paper writes first, and it is worth separating from the variable-time one because the paper separates them and because the two differ in exactly the -dependence this record's reservations are about.
Methods
Lemma 9 at is the inversion step: for a Hermitian with and an -block-encoding of it costing elementary gates, with , one can implement a -block-encoding of in complexity . It is worth being exact about how that lemma is proved, because it is not by a phase sequence: the authors build on van Apeldoorn, Gilyén, Gribling and de Wolf's general techniques for implementing smooth functions of a Hamiltonian, which access only through controlled Hamiltonian simulation, and the paper's own speed-up comes from doing that simulation faster in the block-encoding model. The solve is then as simple as it sounds, namely apply the unitary to and amplitude amplify, and the subnormalisation is what it costs: because the encoding carries , the number of amplification rounds is linear in and the overall dependence on comes out quadratic. Footnote 18 records the sign handling: when the eigenvalues lie in one replaces by , and in general quantum phase estimation first separates the projection of onto the positive eigenspace from its projection onto the negative one, with or applied controlled on that.
Data
No instance is fixed anywhere in the paper.
Code
None found yet.
Results
No numerics. The paper reports no numerical experiment, names no simulator or device, and contains no figures at all.
- The power of block-encoded matrix powers: improved regression techniques via faster Hamiltonian simulation
Variable-time quantum linear systems algorithm (Theorem 30)
- The power of block-encoded matrix powers: improved regression techniques via faster Hamiltonian simulation
Shantanav Chakraborty, András Gilyén, Stacey Jeffery · 2018
About
The same section's second construction, which exists to remove the quadratic the first one pays. Sparse-access solvers already had a linear dependence on through Ambainis' variable-time amplitude amplification, applied in a setting close to this one by Childs, Kothari and Somma; the authors follow their notation and proof to get the same for the block-encoding model.
Methods
The solver is recast as a variable-stopping-time algorithm with steps, on single-qubit clock registers , an input register holding , a single-qubit flag register , workspace registers for gapped phase estimation, and an -qubit ancilla register for the block-encoding. With , step does two things: if are in it applies gapped phase estimation to at precision and accuracy , using as workspace and writing its output qubit into ; and if is then it applies on . Gapped phase estimation is Lemma 28, restated from Childs, Kothari and Somma: it decides whether an eigenphase satisfies or , at cost . The inversion inside it is Corollary 29, itself a corollary of Lemma 9 at , followed by a rotation controlled on being that replaces by a constant independent of , with . Variable-time amplitude amplification (their Theorem 23) is then applied to , and erases the ancillas, leaving the whole thing in block-encoded form. Theorem 30 states the result: for and Hermitian whose non-zero eigenvalues lie in , given , an -block-encoding implementable in elementary gates, and an input state spanning the eigenvectors of preparable in time , the output is -close to at cost . Footnote 21 removes the Hermiticity: any dilates to a Hermitian matrix of dimension whose eigenvalues are the singular values of , so the theorem and its corollaries apply to non-symmetric matrices too.
Data
No instance is fixed anywhere in the paper.
Code
None found yet.
Results
No numerics. The bound is proved and never measured, and Lin and Tong note the consequence from outside: to the extent of their knowledge the performance of variable-time amplitude amplification for solving the quantum linear system problem has not been quantitatively reported in the literature.
- The power of block-encoded matrix powers: improved regression techniques via faster Hamiltonian simulation
None found yet.
References
- Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics
András Gilyén, Yuan Su, Guang Hao Low, Nathan Wiebe · 2018
- The power of block-encoded matrix powers: improved regression techniques via faster Hamiltonian simulation
Shantanav Chakraborty, András Gilyén, Stacey Jeffery · 2018
- Optimal polynomial based quantum eigenstate filtering with application to solving quantum linear systems
Lin Lin, Yu Tong · 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