diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0fa49e9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/node_modules/ + +.DS_Store diff --git a/CNAME b/CNAME deleted file mode 100644 index 73bc10a..0000000 --- a/CNAME +++ /dev/null @@ -1,2 +0,0 @@ -quantumalgorithmzoo.org -www.quantumalgorithmzoo.org \ No newline at end of file diff --git a/index.html b/index.html deleted file mode 100644 index 6ba396b..0000000 --- a/index.html +++ /dev/null @@ -1,4924 +0,0 @@ - - - - - - - - Quantum Algorithm Zoo - - - - - - - - - -
- -
-
-

This is a comprehensive catalog of quantum algorithms. If you notice any errors or -omissions, please email me at stephen.jordan@microsoft.com. (Alternatively, you may -submit a pull request to the repository on github.) -Your help is appreciated and will be acknowledged.

-
- - -

Algebraic and Number Theoretic Algorithms

- -Algorithm: Factoring
-Speedup: Superpolynomial
-Description: Given an n-bit integer, find the prime -factorization. The quantum algorithm of Peter Shor solves this in -\( \widetilde{O} (n^3) \) time -[82,125]. -The fastest known classical algorithm for integer factorization is the -general number field sieve, which is believed to run in time \( -2^{\widetilde{O}(n^{1/3})} \). The best rigorously proven upper bound -on the classical complexity of factoring is \( O(2^{n/4+o(1)}) \) via the Pollard-Strassen algorithm -[252, 362]. Shor's -factoring algorithm breaks RSA public-key encryption and the -closely related quantum algorithms for discrete logarithms break the DSA -and ECDSA digital signature schemes and the Diffie-Hellman -key-exchange protocol. A quantum algorithm even faster than Shor's for -the special case of factoring “semiprimes”, which are -widely used in cryptography, is given in [271]. -If small factors exist, Shor's algorithm can be beaten by a quantum -algorithm using Grover search to speed up the elliptic curve factorization -method [366]. Additional optimized versions of Shor's algorithm are given in [384, 386]. There are proposed classical public-key -cryptosystems not believed to be broken by quantum algorithms, cf. -[248]. At the core of Shor's factoring algorithm is -order finding, which can be reduced to the Abelian hidden subgroup problem, -which is solved using the quantum Fourier transform. A number of other -problems are known to reduce to integer factorization including the -membership problem for matrix groups over fields of odd order -[253], and certain diophantine problems relevant to -the synthesis of quantum circuits [254]. -

- -Algorithm: Discrete-log
-Speedup: Superpolynomial
-Description: We are given three n-bit -numbers a, b, and N, with the promise that -\( b = a^s \mod N \) for some s. The task is to find s. -As shown by Shor [82], this can be achieved -on a quantum computer in poly(n) time. The fastest known -classical algorithm requires time superpolynomial in n. By similar -techniques to those in [82], quantum computers -can solve the discrete logarithm problem on elliptic curves, thereby breaking -elliptic curve cryptography [109, 14]. A further optimization to Shor's algorithm is given in [385]. The superpolynomial quantum speedup has also been extended to the discrete -logarithm problem on semigroups [203, -204]. See also Abelian hidden subgroup. -

- -Algorithm: Pell's Equation
-Speedup: Superpolynomial
-Description: Given a positive nonsquare integer d, -Pell's equation is \( x^2 - d y^2 = 1 \). For any such d -there are infinitely many pairs of integers (x,y) -solving this equation. Let \( (x_1,y_1) \) be the pair that minimizes -\( x+y\sqrt{d} \). If d is an n-bit integer -(i.e. \( 0 \leq d \lt 2^n \) ), \( (x_1,y_1) \) - may in general require exponentially many bits to write down. Thus it - is in general impossible to find \( (x_1,y_1) \) in polynomial time. - Let \( R = \log(x_1+y_1 \sqrt{d}) \). \( \lfloor R \rceil \) - uniquely identifies \( (x_1,y_1) \). As shown by Hallgren -[49], given a n-bit number -d, a quantum computer can find \( \lfloor R \rceil \) - in poly(n) time. No polynomial time classical algorithm for - this problem is known. Factoring reduces to this problem. This - algorithm breaks the Buchman-Williams cryptosystem. See also Abelian - hidden subgroup. -

- -Algorithm: Principal Ideal
-Speedup: Superpolynomial
-Description: We are given an n-bit integer d and an - invertible ideal I of the ring \( \mathbb{Z}[\sqrt{d}] \). - I is a principal ideal if there exists \( \alpha \in \mathbb{Q}(\sqrt{d}) \) - such that \( I = \alpha \mathbb{Z}[\sqrt{d}] \). \( \alpha \) may be exponentially - large in d. Therefore \( \alpha \) cannot in general even be written down - in polynomial time. However, \( \lfloor \log \alpha \rceil \) - uniquely identifies \( \alpha \). The task is to determine whether I - is principal and if so find \( \lfloor \log \alpha \rceil \). - As shown by Hallgren, this can be done in polynomial time on a quantum computer - [49]. A modified quantum algorithm for this problem - using fewer qubits was given in [131]. A quantum - algorithm solving the principal ideal problem in number fields of arbitrary degree - (i.e. scaling polynomially in the degree) was subsequently given in - [329]. Factoring reduces to solving Pell's equation, - which reduces to the principal ideal problem. Thus the principal ideal problem - is at least as hard as factoring and therefore is probably not in P. See also - Abelian hidden subgroup. -

- -Algorithm: Unit Group
-Speedup: Superpolynomial
-Description: The number field \( \mathbb{Q}(\theta) \) - is said to be of degree d if the lowest degree polynomial of which - \( \theta \) is a root has degree d. The set \( \mathcal{O} \) - of elements of \( \mathbb{Q}(\theta) \) which are roots of monic polynomials in - \( \mathbb{Z}[x] \) forms a ring, called the ring of integers of - \( \mathbb{Q}(\theta) \). The set of units (invertible elements) of the ring - \( \mathcal{O} \) form a group denoted \( \mathcal{O}^* \). As shown by - Hallgren [50], and independently by Schmidt and - Vollmer [116], for any \( \mathbb{Q}(\theta) \) - of fixed degree, a quantum computer can find in polynomial time a set - of generators for \( \mathcal{O}^* \) given a description of \( \theta \). - No polynomial time classical algorithm for this problem is known. Hallgren - and collaborators subsequently discovered how to achieve polynomial scaling - in the degree [213]. See also [329]. - The algorithms rely on solving Abelian hidden subgroup problems over the additive - group of real numbers. -

- -Algorithm: Class Group
-Speedup: Superpolynomial
-Description: - The number field \( \mathbb{Q}(\theta) \) - is said to be of degree d if the lowest degree polynomial of which - \( \theta \) is a root has degree d. The set \( \mathcal{O} \) - of elements of \( \mathbb{Q}(\theta) \) which are roots of monic polynomials in - \( \mathbb{Z}[x] \) forms a ring, called the ring of integers of - \( \mathbb{Q}(\theta) \), which is a Dedekind domain. For a Dedekind domain, the nonzero - fractional ideals modulo the nonzero principal ideals form a group called the class group. - As shown by Hallgren [50], a quantum computer can find - a set of generators for the class group of the ring of - integers of any constant degree number field, given a description of \( \theta \), in time - poly(log(\( | \mathcal{O} | \))). An improved quantum algorithm, whose runtime is also - polynomial in d was subsequently given in [329]. - No polynomial time classical algorithm for these problems are known. See also Abelian - hidden subgroup. -

- -Algorithm: Gauss Sums
-Speedup: Superpolynomial
-Description: Let \( \mathbb{F}_q \) be a finite field. The elements other - than zero of \( \mathbb{F}_q \) form a group \( \mathbb{F}_q^\times \) under - multiplication, and the elements of \( \mathbb{F}_q \) form an (Abelian but - not necessarily cyclic) group \( \mathbb{F}_q^+ \) under addition. We can choose - some character \( \chi^\times \) of \( \mathbb{F}_q^\times \) and some - character \( \chi^+ \) of \( \mathbb{F}_q^+ \). The corresponding Gauss sum - is the inner product of these characters: - \( \sum_{x \neq 0 \in \mathbb{F}_q} \chi^+(x) \chi^\times(x) \) - As shown by van Dam and Seroussi [90], Gauss sums - can be estimated to polynomial precision on a quantum computer in polynomial - time. Although a finite ring does not form a group under - multiplication, its set of units does. Choosing a representation for - the additive group of the ring, and choosing a representation for the - multiplicative group of its units, one can obtain a Gauss sum over - the units of a finite ring. These can also be estimated to polynomial - precision on a quantum computer in polynomial - time [90]. No polynomial time - classical algorithm for estimating Gauss sums is known. Discrete log - reduces to Gauss sum estimation [90]. Certain partition - functions of the Potts model can be computed by a polynomial-time quantum algorithm - related to Gauss sum estimation [47]. -

- -Algorithm:Primality Proving
-Speedup:Polynomial
-Description: Given an n-bit number, return a proof of its primality. The fastest classical -algorithms are AKS, the best versions of which [393, 394] have -essentially-quartic complexity, and ECPP, where the heuristic complexity of the fastest version -[395] is also essentially quartic. The fastest known quantum algorithm for this -problem is the method of Donis-Vela and Garcia-Escartin [396], with complexity -\( O(n^2 (\log \ n)^3 \log \ \log \ n) \). This improves upon a prior factoring-based quantum algorithm -for primality proving [397] that has complexity \( O(n^3 \log \ n \ \log \ \log \ n) \). -A recent result of Harvey and Van Der Hoeven [398] can be used to improve the -complexity of the factoring-based quantum algorithm for primality proving to \( O(n^3 \log n) \) -and it may be possible to similarly reduce the complexity of the Donis-Vela-Garcia-Escartin algorithm -to \( O(n^2 (\log \ n)^3) \) [399]. -

- -Algorithm:Solving Exponential Congruences
-Speedup:Polynomial
-Description: - We are given \( a,b,c,f,g \in \mathbb{F}_q \). We must find integers \(x,y\) - such that \( a f^x + b g^y = c \). As shown in [111], - quantum computers can solve this problem in \( \widetilde{O}(q^{3/8}) \) time whereas the best - classical algorithm requires \( \widetilde{O}(q^{9/8}) \) time. The quantum algorithm of - [111] is based on the quantum algorithms for discrete logarithms - and searching. -

- -Algorithm: Matrix Elements of Group Representations
-Speedup: Superpolynomial
-Description: All representations of finite groups and compact linear -groups can be expressed as unitary matrices given an appropriate choice of -basis. Conjugating the regular representation of a group by the -quantum Fourier transform circuit over that group yields a direct sum -of the group's irreducible representations. Thus, the efficient -quantum Fourier transform over the symmetric -group [196], together with the Hadamard -test, yields a fast quantum algorithm for additively approximating -individual matrix elements of the arbitrary irreducible -representations of \( S_n \). Similarly, using the quantum Schur -transform [197], one can efficiently approximate matrix elements of -the irreducible representations of SU(n) that have polynomial weight. -Direct implementations of individual irreducible representations for -the groups U(n), SU(n), SO(n), and \( A_n \) by efficient quantum -circuits are given in [106]. Instances that appear -to be exponentially hard for known classical algorithms are also -identified in [106].

- -Algorithm: Verifying Matrix Products
-Speedup: Polynomial
-Description: Given three \( n \times n \) matrices, A,B, and C, - the matrix product verification problem is to decide whether AB=C. - Classically, the best known algorithm achieves this in time \( O(n^2) \), - whereas the best known classical algorithm for matrix multiplication runs in time - \( O(n^{2.373}) \). Ambainis et al. discovered a quantum algorithm for this - problem with runtime \( O(n^{7/4}) \) [6]. Subsequently, - Buhrman and Špalek improved upon this, obtaining a quantum algorithm for this - problem with runtime \( O(n^{5/3}) \) [19]. This latter - algorithm is based on results regarding quantum walks that were proven in - [85]. -

- -Algorithm: Subset-sum
-Speedup: Polynomial
-Description: Given a list of integers \( x_1,\ldots,x_n \), and -a target integer s, the subset-sum problem is to determine -whether the sum of any subset of the given integers adds up -to s. This problem is NP-complete, and therefore is unlikely to -be solvable by classical or quantum algorithms with polynomial -worst-case complexity. In the hard instances the given integers -are of order \( 2^n \) and much research on subset sum focuses on -average case instances in this regime. In [178], a quantum -algorithm is given that solves such instances in time \( 2^{0.241n} \), -up to polynomial factors. This quantum algorithm works by applying a -variant of Ambainis's quantum walk algorithm for -element-distinctness [7] to speed up a sophisticated -classical algorithm for this problem due to Howgrave-Graham and -Joux. The fastest known classical algorithm for such instances of subset-sum runs in time -\( 2^{0.291n} \), up to polynomial factors [404].

- -Algorithm: Decoding
-Speedup: Varies
-Description: Classical error correcting codes allow the -detection and correction of bit-flips by storing data -reduntantly. Maximum-likelihood decoding for arbitrary linear codes is -NP-complete in the worst case, but for structured codes or bounded -error efficient decoding algorithms are known. Quantum algorithms have -been formulated to speed up the decoding of convolutional codes -[238] and simplex codes -[239].

- -Algorithm: Quantum Cryptanalysis
-Speedup: Various
-Description: It is well-known that Shor's algorithms for -factoring and discrete logarithms -[82,125] -completely break the RSA and Diffie-Hellman cryptosystems, as well as -their elliptic-curve-based variants [109, 14]. -(A number of "post-quantum" public-key cryptosystems have been proposed to replace these -primitives, which are not known to be broken by quantum attacks.) -Beyond Shor's algorithm, there is a growing body of work on quantum -algorithms specifically designed to attack cryptosystems. These -generally fall into three categories. The first is quantum algorithms -providing polynomial or sub-exponential time attacks on cryptosystems -under standard assumptions. In particular, the algorithm of Childs, -Jao, and Soukharev for finding isogenies of elliptic curves breaks -certain elliptic curve based cryptosystems in subexponential time -that were not already broken by Shor's algorithm -[283]. The second category is quantum algorithms -achieving polynomial improvement over known classical cryptanalytic -attacks by speeding up parts of these classical algorithms using -Grover search, quantum collision finding, etc. Such attacks -on private-key [284, 285, 288, 315, 316] -and public-key [262, 287] primitives, do not -preclude the use of the associated cryptosystems but may influence -choice of key size. The third category is attacks that make use of quantum -superposition queries to block ciphers. These attacks in many cases completely -break the cryptographic primitives [286, 289, -290, 291, 292]. -However, in most practical situations such superposition queries are -unlikely to be feasible. - - -
- - -

Oracular Algorithms

- -Algorithm: Searching
-Speedup: Polynomial
-Description: We are given an oracle with N - allowed inputs. For one input w ("the winner") the corresponding output is - 1, and for all other inputs the corresponding output is 0. The task is to find - w. On a classical computer this requires \( \Omega(N) \) - queries. The quantum algorithm of Lov Grover achieves this using - \( O(\sqrt{N}) \) queries [48], which is - optimal [216]. This has algorithm has - subsequently been generalized to search in the presence of multiple - "winners" [15], evaluate the sum of an arbitrary - function [15,16,73], - find the global minimum of an arbitrary function - [35,75, 255], take advantage of alternative - initial states [100] or nonuniform probabilistic priors - [123], work with oracles whose runtime varies - between inputs [138], approximate - definite integrals [77], and converge to a - fixed-point - [208, 209]. Considerations on optimizing - the depth of quantum search circuits are given in [405]. The - generalization of Grover's algorithm known as amplitude estimation - [17] - is now an important primitive in quantum algorithms. Amplitude estimation forms the - core of most known quantum algorithms related to collision finding and graph - properties. One of the natural applications for Grover search is speeding up the - solution to NP-complete problems such as 3-SAT. Doing so is nontrivial, because - the best classical algorithm for 3-SAT is not quite a brute force search. Nevertheless, - amplitude amplification enables a quadratic quantum speedup over the best - classical 3-SAT algorithm, as shown in [133]. Quadratic - speedups for other constraint satisfaction problems are obtained in - [134]. For further examples of application of - Grover search and amplitude amplification see - [261, 262]. A problem closely - related to, but harder than, Grover search, is spatial search, in - which database queries are limited by some graph structure. On - sufficiently well-connected graphs, \(O(\sqrt{n})\) quantum query - complexity is still achievable [274,275,303, -304, 305, 306, 330]. -

- - -Algorithm: Abelian Hidden Subgroup
-Speedup: Superpolynomial
-Description: Let G be a finitely generated Abelian group, and let - H be some subgroup of G such that G/H is finite. Let f - be a function on G such that for any \( g_1,g_2 \in G \), \( f(g_1) = f(g_2) \) - if and only if \( g_1 \) and \( g_2 \) are in the same coset of H. The task is - to find H (i.e. find a set of generators for H) by making queries - to f. This is solvable on a quantum computer using \( O(\log \vert G\vert) \) - queries, whereas classically \( \Omega(|G|) \) are required. This algorithm was first - formulated in full generality by Boneh and Lipton in [14]. However, - proper attribution of this algorithm is difficult because, as described in chapter 5 of - [76], it subsumes many historically important quantum - algorithms as special cases, including Simon's algorithm [108], - which was the inspiration for Shor's period finding algorithm, which forms the core - of his factoring and discrete-log algorithms. The Abelian hidden subgroup algorithm - is also at the core of the Pell's equation, principal ideal, unit group, and class - group algorithms. In certain instances, the Abelian hidden subgroup problem can be - solved using a single query rather than order \( \log(\vert G\vert) \), as shown - in [30]. It is normally assumed in period finding that the - function \(f(x) \neq f(y) \) unless \( x-y = s \), where \( s \) is the period. - A quantum algorithm which applies even when this restiction is relaxed is given in - [388]. Period finding has been generalized to apply to - oracles which provide only the few most significant bits about the underlying - function in [389]. -

- - -Algorithm: Non-Abelian Hidden Subgroup
-Speedup: Superpolynomial
-Description: Let G be a finitely generated group, and let H be - some subgroup of G that has finitely many left cosets. Let f be a - function on G such that for any \( g_1, g_2 \), \( f(g_1) = f(g_2) \) - if and only if \( g_1 \) and \( g_2 \) are in the same left coset of H. - The task is to find H (i.e. find a set of generators for H) - by making queries to f. This is solvable on a quantum computer using - \( O(\log(|G|) \) queries, whereas classically \( \Omega(|G|) \) - are required [37,51]. - However, this does not qualify as an efficient quantum algorithm because in general, - it may take exponential time to process the quantum states obtained from these - queries. Efficient quantum algorithms for the hidden subgroup problem are known for - certain specific non-Abelian groups -[81,55,72,53,9,22,56,71,57,43,44,28,126,207,273]. - A slightly outdated survey is given in [69]. Of - particular interest are the symmetric group and the dihedral group. A solution - for the symmetric group would solve graph isomorphism. A solution for the - dihedral group would solve certain lattice problems [78]. - Despite much effort, no polynomial-time solution for these groups is known, except in - special cases [312]. However, - Kuperberg [66] found a time \( 2^{O( \sqrt{\log N})}) \) - algorithm for finding a hidden subgroup of the dihedral group \( D_N \). Regev - subsequently improved this algorithm so that it uses not only subexponential time - but also polynomial space [79]. A - further improvement in the asymptotic scaling of the required number - of qubits is obtained in [218]. Quantum query speedups (though - not necessarily efficient quantum algorithms in terms of gate count) for - somewhat more general problems of testing for isomorphisms of functions under sets of - permutations are given in [311] -

- -Algorithm: Bernstein-Vazirani
-Speedup: Polynomial Directly, Superpolynomial Recursively
-Description: We are given an oracle whose input is n - bits and whose output is one bit. Given input \( x \in \{0,1\}^n \), the output is - \( x \odot h \), where h is the "hidden" string of n bits, and - \( \odot \) denotes the bitwise inner product modulo 2. The task is to find h. - On a classical computer this requires n queries. As shown by Bernstein and - Vazirani [11], this can be achieved on a quantum - computer using a single query. Furthermore, one can construct recursive versions of - this problem, called recursive Fourier sampling, such that quantum computers require - exponentially fewer queries than classical computers - [11]. See - [256, 257] for related work -on the ubiquity of quantum speedups from generic quantum circuits and -[258, 270] for related work on a quantum query speedup -for detecting correlations between the an oracle function and the -Fourier transform of another. -

- -Algorithm: Deutsch-Jozsa
-Speedup: Exponential over P, none over BPP
-Description: We are given an oracle whose input is n bits and whose output - is one bit. We are promised that out of the \( 2^n \) possible inputs, either all of them, - none of them, or half of them yield output 1. The task is to distinguish the balanced case - (half of all inputs yield output 1) from the constant case (all or none of the inputs yield - output 1). It was shown by Deutsch [32] that for n=1, this - can be solved on a quantum computer using one query, whereas any deterministic classical - algorithm requires two. This was historically the first well-defined quantum algorithm - achieving a speedup over classical computation. (A related, more recent, pedagogical - example is given in [259].) A single-query quantum algorithm for - arbitrary n was developed by Deutsch and Jozsa in [33]. - Although probabilistically easy to solve with O(1) queries, the Deutsch-Jozsa problem - has exponential worst case deterministic query complexity classically. -

- -Algorithm: Formula Evaluation
-Speedup: Polynomial
-Description: A Boolean expression is called a formula if each variable is used only - once. A formula corresponds to a circuit with no fanout, which consequently has the topology - of a tree. By Reichardt's span-program formalism, it is now known - [158] that the quantum query complexity of any formula - of O(1) fanin on N variables is \( \Theta(\sqrt{N}) \). - This result culminates from a long line of work - [27,8,80,159,160], - which started with the discovery by Farhi et al. [38] - that NAND trees on \( 2^n \) variables can be evaluated on quantum computers in time - \( O(2^{0.5n}) \) using a continuous-time quantum walk, whereas classical computers - require \( \Omega(2^{0.753n}) \) queries. In many cases, the quantum formula-evaluation - algorithms are efficient not only in query complexity but also in time-complexity. The - span-program formalism also yields quantum query complexity lower bounds - [149]. Although originally discovered from a different point of - view, Grover's algorithm can be regarded as a special case of formula evaluation in which - every gate is OR. The quantum complexity of evaluating non-boolean formulas has also been - studied [29], but is not as fully understood. Childs et al. - have generalized to the case in which input variables may be repeated (i.e. the first - layer of the circuit may include fanout) [101]. They - obtained a quantum algorithm using \( O(\min \{N,\sqrt{S},N^{1/2} G^{1/4} \}) \) - queries, where N is the number of input variables not including multiplicities, - S is the number of inputs counting multiplicities, and G is the number of - gates in the formula. References [164], - [165], and [269] consider - special cases of the NAND tree problem in which the number of NAND - gates taking unequal inputs is limited. Some of these cases yield - superpolynomial separation between quantum and classical query - complexity. -

- -Algorithm: Hidden Shift
-Speedup: Superpolynomial
-Description: We are given oracle access to some function f on - \( \mathbb{Z}_N \). We know that f(x) = g(x+s) where g is a known function - and s is an unknown shift. The hidden shift problem is to find s. By - reduction from Grover's problem it is clear that at least \( \sqrt{N} \) queries - are necessary to solve hidden shift in general. However, certain special cases of the - hidden shift problem are solvable on quantum computers using O(1) queries. In - particular, van Dam et al. showed that this can be done if f is a multiplicative - character of a finite ring or field [89]. The previously - discovered shifted Legendre symbol algorithm - [88,86] is subsumed as a - special case of this, because the Legendre symbol \( \left(\frac{x}{p} \right) \) - is a multiplicative character of \( \mathbb{F}_p \). No classical algorithm running in time - O(polylog(N)) is known for these problems. Furthermore, the quantum algorithm - for the shifted Legendre symbol problem would break a certain - cryptographic pseudorandom generator given the ability to make - quantum queries to the generator [89]. - A quantum speedup for hidden shift problems of difference sets is given in [312], - and this also subsumes the Legendre symbol problem as a special case. - Roetteler has found exponential quantum speedups for - finding hidden shifts of certain nonlinear Boolean functions - [105,130]. Building on this work, - Gavinsky, Roetteler, and Roland have shown [142] that the hidden - shift problem on random boolean functions \( f:\mathbb{Z}_2^n \to \mathbb{Z}_2 \) - has O(n) average case quantum complexity, whereas the classical query - complexity is \( \Omega(2^{n/2}) \). The results in [143], - though they are phrased in terms of the hidden subgroup problem for the dihedral group, imply - that the quantum query complexity of the hidden shift problem for an injective function - on \( \mathbb{Z}_N \) is O(log n), whereas the classical query complexity is - \( \Theta(\sqrt{N}) \). However, the best known quantum circuit complexity for injective - hidden shift on \( \mathbb{Z}_N \) is \( O(2^{C \sqrt{\log N}}) \), achieved by Kuperberg's - sieve algorithm [66]. A recent result, building upon [408, 43], - achieves exponential quantum speedups for some generalizations of the Hidden shift problem including - the hidden multiple shift problem, in which one has query access to \(f_s(x) = f(x-hs) \) - over some allowed range of s and one wishes to infer h [407]. -

- -Algorithm: Polynomial interpolation
-Speedup: Varies
-Description: Let \( p(x) = a_d x^d + \ldots + a_1 x + a_0 \) be a polynomial over the finite field \( \mathrm{GF}(q) \). One is given access to an oracle that, given \( x \in \mathrm{GF}(q) \), returns \( p(x) \). The polynomial reconstruction problem is, by making queries to the oracle, to determine the coefficients \( a_d,\ldots,a_0 \). Classically, \( d + 1 \) queries are necessary and sufficient. (In some sources use the term reconstruction instead of interpolation for this problem.) Quantumly, \( d/2 + 1/2 \) queries are necessary and \( d/2 + 1 \) queries are sufficient [360,361]. For multivariate polynomials of degree d in n variables the interpolation problem has classical query complexity \( \binom{n+d}{d} \). As shown in [387], the quantum query complexity is \( O \left( \frac{1}{n+1} \binom{n+d}{d} \right) \) over \( \mathbb{R} \) and \( \mathbb{C} \) and it is \( O \left( \frac{d}{n+d} \binom{n+d}{d} \right) \) over \( \mathbb{F}_q \) for sufficiently large q. Quantum algorithms have also been discovered for the case that the oracle returns \( \chi(f(x)) \) where \( \chi \) is a quadratic character of \( \mathrm{GF}(q) \) [390], and the case where the oracle returns \( f(x)^e \) [392]. These generalize the hidden shift algorithm of [89] and achieve an exponential speedup over classical computation. A quantum algorithm for reconstructing rational functions over finite fields given noisy and incomplete oracle access to the function values is given in [391]. -

- -Algorithm: Pattern matching
-Speedup: Superpolynomial
-Description: Given strings T of length n -and P of length m < n, both from some finite -alphabet, the pattern matching problem is to find an occurrence -of P as a substring of T or to report that P is -not a substring of T. More generally, T and P -could be d-dimensional arrays rather than one-dimensional -arrays (strings). Then, the pattern matching problem is to return the -location of P as a \(m \times m \times \ldots \times m\) -block within the \(n \times n \times \ldots \times n\) array T -or report that no such location exists. The \( \Omega(\sqrt{N}) \) -query lower bound for unstructured search [216] -implies that the worst-case quantum query complexity of this problem -is \( \Omega ( \sqrt{n} + \sqrt{m} ) \). A quantum algorithm achieving -this, up to logarithmic factors, was obtained in -[217]. This quantum algorithm works through the -use of Grover's algorithm together with a classical method called -deterministic sampling. More recently, Montanaro showed that -superpolynomial quantum speedup can be achieved on average case -instances of pattern matching, provided that m is greater than -logarithmic in n. Specifically, the quantum algorithm given in -[215] solves average case pattern matching in -\( \widetilde{O}((n/m)^{d/2} 2^{O(d^{3/2} \sqrt{\log m})})\) time. This -quantum algorithm is constructed by generalizing Kuperberg's quantum -sieve algorithm [66] for dihedral hidden subgroup and -hidden shift problems so that it can operate in d dimensions -and accomodate small amounts of noise, and then classically reducing the -pattern matching problem to this noisy d-dimensional version of -hidden shift. -

- -Algorithm: Ordered Search
-Speedup: Constant factor
-Description: We are given oracle access to a list of N numbers in order - from least to greatest. Given a number x, the task is to find out where in the - list it would fit. Classically, the best possible algorithm is binary search which takes - \( \log_2 N \) queries. Farhi et al. showed that a quantum computer can achieve - this using 0.53 \( \log_2 N \) queries [39]. Currently, the best - known deterministic quantum algorithm for this problem uses 0.433 \( \log_2 N \) - queries [103]. A lower bound of \( \frac{\ln 2}{\pi} \log_2 N \) - quantum queries has been proven for this problem - [219, 24]. In - [10], a randomized quantum algorithm is given whose expected - query complexity is less than \( \frac{1}{3} \log_2 N \). -

- -Algorithm: Graph Properties in the Adjacency Matrix Model
-Speedup: Polynomial
-Description: Let G be a graph of n vertices. We are given access to - an oracle, which given a pair of integers in {1,2,...,n} tells us whether the - corresponding vertices are connected by an edge. Building on previous work - [35,52,36], Dürr - et al. [34] show that the quantum query complexity - of finding a minimum spanning tree of weighted graphs, and deciding connectivity for - directed and undirected graphs have \( \Theta(n^{3/2}) \) quantum query complexity, - and that finding lowest weight paths has \( O(n^{3/2}\log^2 n) \) quantum query complexity. Deciding whether a graph is bipartite, detecting cycles, and deciding whether a given vertex can be reached from another (st-connectivity) can all be achieved using a number of queries and quantum gates that both scale as \( \widetilde{O}(n^{3/2}) \), and only logarithmically many qubits, as shown in [317], building upon [13, 272, 318]. A span-program-based quantum algorithm for detecting trees of a given - size as minors in \( \widetilde{O}(n) \) time is given in - [240]. A graph property is - sparse if there exists a constant c such that every graph with the property has - a ratio of edges to vertices at most c. Childs and Kothari have shown that all - sparse graph properties have query complexity \( \Theta(n^{2/3}) \) if they cannot be - characterized by a list of forbidden subgraphs and \( o(n^{2/3}) \) - (little-o) - if they can [140]. The former algorithm is based on Grover - search, the latter on the quantum walk formalism of [141]. - By Mader's theorem, sparse graph properties include all nontrivial minor-closed properties. - These include planarity, being a forest, and not containing a path of - given length. According to the widely-believed Aanderaa-Karp-Rosenberg conjecture, all of the above problems have \( \Omega(n^2) \) classical query complexity. Another - interesting computational problem is finding a subgraph H in a given graph G. - The simplest case of this finding the triangle, that is, the clique of size three. The - fastest known quantum algorithm for this finds a triangle in \( O(n^{5/4}) \) - quantum queries [319], improving upon - [276, 175, 171, - 70, 152, - 21]. Stronger quantum query complexity upper bounds are known when the graphs are sufficiently sparse [319, 320]. Classically, triangle finding - requires \( \Omega(n^2) \) queries [21]. - More generally, a quantum computer can find an - arbitrary subgraph of k vertices using \( O(n^{2-2/k-t}) \) queries where - \( t=(2k-d-3)/(k(d+1)(m+2)) \) and d and m are such that H has - a vertex of degree d and m+d edges - [153]. This improves on the previous algorithm of - [70]. In some cases, this query complexity is beaten by - the quantum algorithm of [140], which finds H - using \( \widetilde{O}\left( n^{\frac{3}{2}-\frac{1}{\mathrm{vc}(H)+1}} \right) \) - queries, provided G is sparse, where vc(H) is the size of the minimal - vertex cover of H. A quantum algorithm for finding - constant-sized sub-hypergraphs over 3-uniform hypergraphs in \( - O(n^{1.883}) \) queries is given in [241]. -

- -Algorithm: Graph Properties in the Adjacency List Model
-Speedup: Polynomial
-Description: Let G be a graph of N vertices, M edges, and - degree d. We are given access to an oracle which, when queried with the label - of a vertex and \( j \in \{1,2,\ldots,d\} \) outputs the jth neighbor of the - vertex or null if the vertex has degree less than d. Suppose we are given the - promise that G is either bipartite or is far from bipartite in the sense that - a constant fraction of the edges would need to be removed to achieve bipartiteness. Then, - as shown in [144], the quantum complexity of deciding - bipartiteness is \( \widetilde{O}(N^{1/3}) \). Also in [144], - it is shown that distinguishing expander graphs from graphs that are far from - being expanders has quantum complexity \( \widetilde{O}(N^{1/3}) \) and - \( \widetilde{\Omega}(N^{1/4}) \), whereas the classical complexity is - \( \widetilde{\Theta}(\sqrt{N}) \). The key quantum algorithmic tool is Ambainis' algorithm for - element distinctness. In [34], it is shown that finding a minimal - spanning tree has quantum query complexity \( \Theta(\sqrt{NM}) \), deciding graph - connectivity has quantum query complexity \( \Theta(N) \) in the undirected case, and - \( \widetilde{\Theta}(\sqrt{NM}) \) in the directed case, and computing the lowest weight - path from a given source to all other vertices on a weighted graph has quantum - query complexity \( \widetilde{\Theta}(\sqrt{NM}) \). In [317] quantum algorithms are given for st-connectivity, deciding bipartiteness, and deciding whether a graph is a forest, which run in \( \widetilde{O}(N \sqrt{d}) \) time and use only logarithmically many qubits. -

- -Algorithm: Welded Tree
-Speedup: Superpolynomial
-Description: Some computational problems can be phrased in terms of the query - complexity of finding one's way through a maze. That is, there is some graph G - to which one is given oracle access. When queried with the label of a given node, - the oracle returns a list of the labels of all adjacent nodes. The task is, starting - from some source node (i.e. its label), to find the label of a certain marked - destination node. As shown by Childs et al. [26], - quantum computers can exponentially outperform classical computers at this task for - at least some graphs. Specifically, consider the graph obtained by joining together - two depth-n binary trees by a random "weld" such that all nodes but the two - roots have degree three. Starting from one root, a quantum computer can find the other - root using poly(n) queries, whereas this is provably impossible using classical - queries. -

- -Algorithm: Collision Finding and Element Distinctness
-Speedup: Polynomial
-Description: Suppose we are given oracle access to a two to one - function f on a domain of size N. The collision problem - is to find a pair \( x,y \in \{1,2,\ldots,N\} \) such that f(x) = f(y). - The classical randomized query complexity of this problem is \( \Theta(\sqrt{N}) \), - whereas, as shown by Brassard et al., a quantum computer can achieve this - using \(O(N^{1/3}) \) queries [18]. (See also [315].) Removing the - promise that f is two-to-one yields a problem called element distinctness, which - has \( \Theta(N) \) classical query complexity. Improving upon - [21], Ambainis gives a quantum algorithm with query - complexity of \( O(N^{2/3}) \) for element distinctness, which is - optimal [7, 374]. The problem of - deciding whether any k-fold collisions exist is - called k-distinctness. Improving upon - [7,154], - the best quantum query complexity for k-distinctness is - \( O(n^{3/4 - 1/(4(2^k-1))}) \) - [172, 173]. For k=2,3 this is also the time-complexity, up to logarithmic - factors, by [7]. For \( k > 3\) the fastest known quantum algorithm has time complexity \( O(n^{(k-1)/k}) \) [363]. - Given two functions f and g, on domains of - size N and M, respectively a claw is a pair x,y such that f(x) = - g(y). In the case that N=M, the algorithm of [7] - solves claw-finding in \( O(N^{2/3}) \) queries, improving on the previous \( O(N^{3/4} \log N) \) quantum algorithm - of [21]. Further work gives improved query complexity for various parameter regimes -in which \(N \neq M\) [364, 365]. More generally, a related problem to - element distinctness, is, given oracle access to a sequence, to - estimate the \(k^{\mathrm{th}}\) frequency moment \(F_k = \sum_j n_j^k - \), where \(n_j\) is the number of times that j occurs in the - sequence. An approximately quadratic speedup for this problem is - obtained in [277]. See also graph collision. -

- - -Algorithm: Graph Collision
-Speedup: Polynomial
-Description: -We are given an undirected graph of n vertices and oracle -access to a labelling of the vertices by 1 and 0. The graph collision -problem is, by querying this oracle, to decide whether there exist a -pair of vertices, connected by an edge, both of which are labelled -1. One can embed Grover's unstructured search problem as an instance -of graph collision by choosing the star graph, labelling the center 1, -and labelling the remaining vertices by the database entries. Hence, -this problem has quantum query complexity \( \Omega(\sqrt{n}) \) and -classical query complexity \( \Theta (n) \). In -[70], Magniez, Nayak, and Szegedy gave -a \( O(N^{2/3}) \)-query quantum algorithm for graph collision on -general graphs. This remains the best upper bound on quantum query -complexity for this problem on general graphs. However, stronger upper -bounds have been obtained for several special classes of -graphs. Specifically, the quantum query complexity on a -graph G is \( \widetilde{O}(\sqrt{n} + \sqrt{l}) \) where l -is the number of non-edges in G [161], -\(O(\sqrt{n} \alpha^{1/6}) \) where \(\alpha\) is the size of the -largest independent set of G [172], -\(O(\sqrt{n} + \sqrt{\alpha^*})\) where \( \alpha^* \) is the maximum -total degree of any independent set of G -[200], and \(O(\sqrt{n} t^{1/6}) \) where t is -the treewidth of G [201]. Furthermore, the -quantum query complexity is \( \widetilde{O}(\sqrt{n}) \) with high -probability for random graphs in which the presence or absence of an -edge between each pair of vertices is chosen independently with fixed -probability, (i.e. Erdős-Rényi graphs) -[200]. See [201] for a -summary of these results as well as new upper bounds for two -additional classes of graph that are too complicated to describe here. -

- -Algorithm: Matrix Commutativity
-Speedup: Polynomial
-Description: We are given oracle access to k matrices, each of which are - \( n \times n \). Given integers \( i,j \in \{1,2,\ldots,n\} \), and - \( x \in \{1,2,\ldots,k\} \) the oracle returns the ij matrix element of the - \( x^{\mathrm{th}} \) matrix. The task is to decide whether all of these k - matrices commute. As shown by Itakura [54], this can be achieved - on a quantum computer using \( O(k^{4/5}n^{9/5}) \) queries, whereas classically this - requires \( \Omega( k n^2 ) \) queries. -

- -Algorithm: Group Commutativity
-Speedup: Polynomial
-Description: We are given a list of k generators for a group G and - access to a blackbox implementing group multiplication. By querying this blackbox we - wish to determine whether the group is commutative. The best known classical algorithm - is due to Pak and requires O(k) queries. Magniez and Nayak have shown that the - quantum query complexity of this task is \( \widetilde{\Theta}(k^{2/3}) \) - [139]. -

- -Algorithm: Hidden Nonlinear Structures
-Speedup: Superpolynomial
-Description: Any Abelian group G can be visualized as a lattice. A subgroup - H of G is a sublattice, and the cosets of H are all the shifts of - that sublattice. The Abelian hidden subgroup problem is normally solved by obtaining - superposition over a random coset of the Hidden subgroup, and then taking the Fourier - transform so as to sample from the dual lattice. Rather than generalizing to - non-Abelian groups (see non-Abelian hidden subgroup), one can instead generalize to - the problem of identifying hidden subsets other than lattices. As shown by Childs -et al. [23] this problem is efficiently solvable - on quantum computers for certain subsets defined by polynomials, such as spheres. - Decker et al. showed how to efficiently solve some related problems in - [31, 212]. -

- -Algorithm: Center of Radial Function
-Speedup: Polynomial
-Description: We are given an oracle that evaluates a function f from - \( \mathbb{R}^d \) to some arbitrary set S, where f is spherically - symmetric. We wish to locate the center of symmetry, up to some precision. - (For simplicity, let the precision be fixed.) In [110], - Liu gives a quantum algorithm, based on a curvelet transform, that solves - this problem using a constant number of quantum queries independent of - d. This constitutes a polynomial speedup over the classical lower - bound, which is \( \Omega(d) \) queries. The algorithm works when the function - f fluctuates on sufficiently small scales, e.g., when the level sets - of f are sufficiently thin spherical shells. The quantum algorithm is shown - to work in an idealized continuous model, and nonrigorous arguments suggest that - discretization effects should be small. -

- -Algorithm: Group Order and Membership
-Speedup: Superpolynomial
-Description: Suppose a finite group G is given oracularly in the following way. - To every element in G, one assigns a corresponding label. Given an ordered pair of - labels of group elements, the oracle returns the label of their product. There are several - classically hard problems regarding such groups. One is to find the group's order, given the - labels of a set of generators. Another task is, given a bitstring, to decide whether it - corresponds to a group element. The constructive version of this membership problem requires, - in the yes case, a decomposition of the given element as a product of group generators. - Classically, these problems cannot be solved using polylog(|G|) queries even if - G is Abelian. For Abelian groups, quantum computers can solve these problems using - polylog(|G|) queries by reduction to the Abelian hidden subgroup problem, as shown - by Mosca [74]. Furthermore, as shown by Watrous - [91], quantum computers can solve these problems - using polylog(|G|) queries for any solvable group. For groups given as matrices - over a finite field rather than oracularly, the order finding and constructive membership - problems can be solved in polynomial time by using the quantum algorithms for discrete log - and factoring [124]. See also group isomorphism. -

- - -Algorithm: Group Isomorphism
-Speedup: Superpolynomial
-Description: Let G be a finite group. To every element of -G is assigned an arbitrary label (bit string). Given an ordered pair -of labels of group elements, the group oracle returns the label of their -product. Given access to the group oracles for two groups G and -G', and a list of generators for each group, we must decide whether -G and G' are isomorphic. For Abelian groups, we can solve this -problem using poly(log |G|, log |G'|) queries to the oracle -by applying the quantum algorithm of [127], which -decomposes any Abelian group into a canonical direct product of cyclic groups. -The quantum algorithm of [128] solves the group -isomorphism problem using poly(log |G|, log |G'|) queries for a -certain class of non-Abelian groups. Specifically, a group G is in this -class if G has a normal Abelian subgroup A and an element -y of order coprime to |A| such that G -= A, y. Zatloukal has recently given an exponential -quantum speedup for some instances of a problem closely related to -group isomorphism, namely testing equivalence of group extensions -[202]. -

- -Algorithm: Statistical Difference
-Speedup: Polynomial
-Description: Suppose we are given two black boxes A and B - whose domain is the integers 1 through T and whose range is the integers - 1 through N. By choosing uniformly at random among allowed inputs we obtain a - probability distribution over the possible outputs. We wish to approximate to constant - precision the L1 distance between the probability distributions determined by A - and B. Classically the number of necessary queries scales essentially linearly - with N. As shown in [117], a quantum computer can - achieve this using \( O(\sqrt{N}) \) queries. Approximate uniformity and orthogonality - of probability distributions can also be decided on a quantum computer using - \( O(N^{1/3}) \) queries. The main tool is the quantum counting algorithm of - [16]. A further improved quantum algorithm for - this task is obtained in [265]. -

- -Algorithm: Finite Rings and Ideals
-Speedup: Superpolynomial
-Description: Suppose we are given black boxes implementing the addition and - multiplication operations on a finite ring R, not necessarily commutative, along - with a set of generators for R. With respect to addition, R forms a - finite Abelian group (R,+). As shown in [119], on a quantum - computer one can find in poly(log |R|) time a set of additive generators - \( \{h_1,\ldots,h_m\} \subset R \) such that - \( (R,+) \simeq \langle h_1 \rangle \times \ldots \times \langle h_M \rangle\) - and m is polylogarithmic in |R|. This allows efficient computation of a - multiplication tensor for R. As shown in [118], one can - similarly find an additive generating set for any ideal in R. This allows one - to find the intersection of two ideals, find their quotient, prove whether a given ring - element belongs to a given ideal, prove whether a given element is a unit and if so - find its inverse, find the additive and multiplicative identities, compute the order of - an ideal, solve linear equations over rings, decide whether an ideal is maximal, find - annihilators, and test the injectivity and surjectivity of ring homomorphisms. As shown - in [120], one can also use a quantum computer to efficiently - decide whether a given polynomial is identically zero on a given finite black box ring. - Known classical algorithms for these problems scale as poly(|R|). -

- -Algorithm: Counterfeit Coins
-Speedup: Polynomial
-Description: Suppose we are given N coins, k of which are - counterfeit. The real coins are all of equal weight, and the counterfeit coins are - all of some other equal weight. We have a pan balance and can compare the weight of - any pair of subsets of the coins. Classically, we need \( \Omega(k \log(N/k)) \) - weighings to identify all of the counterfeit coins. We can introduce an oracle such - that given a pair of subsets of the coins of equal cardinality, it outputs one bit - indicating balanced or unbalanced. Building on previous work by Terhal and Smolin - [137], Iwama et al. have shown [136] - that on a quantum computer, one can identify all of the counterfeit coins using - \( O(k^{1/4}) \) queries. The core techniques behind the quantum speedup are amplitude - amplification and the Bernstein-Vazirani algorithm.

- -Algorithm: Matrix Rank
-Speedup: Polynomial
-Description: Suppose we are given oracle access to the (integer) entries of an - \( n \times m \) matrix A. We wish to determine the rank of the matrix. - Classically this requires order nm queries. Building on - [149], Belovs [150] gives a - quantum algorithm that can use fewer queries given a promise that the rank of the - matrix is at least r. Specifically, Belovs' algorithm uses - \( O(\sqrt{r(n-r+1)}LT) \) queries, where L is the root-mean-square - of the reciprocals of the r largest singular values of A and - T is a factor that depends on the sparsity of the matrix. For general A, - \( T = O(\sqrt{nm}) \). If A has at most k nonzero entries in any row or - column then \( T = O(k \log(n+m)) \). (To achieve the corresponding query complexity in - the k-sparse case, the oracle must take a column index as input, and provide a - list of the nonzero matrix elements from that column as output.) As an important special - case, one can use these quantum algorithms for the problem of determining whether a - square matrix is singular, which is sometimes referred to as the determinant problem. - For general A the quantum query complexity of the determinant problem is no - lower than the classical query complexity [151]. However, - [151] does not rule out a quantum speedup given a promise on A, - such as sparseness or lack of small singular values.

- -Algorithm: Matrix Multiplication over Semirings
-Speedup: Polynomial
-Description: A semiring is a set endowed with addition and -multiplication operations that obey all the axioms of a ring except -the existence additive inverses. Matrix multiplication over various -semirings has many applications to graph problems. Matrix -multiplication over semirings can be sped up by straightforward Grover -improvements upon schoolbook multiplication, yielding a quantum -algorithm that multiplies a pair of \(n \times n\) matrices in \( -\widetilde{O}(n^{5/2}) \) time. For some semirings this algorithm -outperforms the fastest known classical algorithms and for some -semirings it does not [206]. -A case of particular interest is the Boolean semiring, in which OR -serves as addition and AND serves as multiplication. No quantum -algorithm is known for Boolean semiring matrix multiplication in the -general case that beats the best classical algorithm, which has -complexity \( n^{2.373} \). However, for sparse input our output, -quantum speedups are known. Specifically, let A,B -be n by n Boolean matrices. Let C=AB, -and let l be the number of entries of C that are equal -to 1 (i.e. TRUE). Improving upon - [19, 155, 157], -the best known upper bound on quantum query complexity is -\(\widetilde{O}(n \sqrt{l}) \), as shown in -[161]. If instead the input matrices are sparse, a -quantum speedup over the fastest known classical algorithm also has -been found in a certain regime [206]. -For detailed comparison to classical algorithms, see -[155, 206]. Quantum -algorithms have been found to perform matrix multiplication over the -(max,min) semiring in \(\widetilde{O}(n^{2.473})\) time and over the -distance dominance semiring in \(\widetilde{O}(n^{2.458})\) time -[206]. The fastest known classical -algorithm for both of these problems has \(\widetilde{O}(n^{2.687})\) -complexity. -

- -Algorithm: Subset finding
-Speedup: Polynomial
-Description: We are oracle access to a function \( f:D \to R \) where D and - R are finite sets. Some property \( P \subset (D \times R)^k \) is specified, for - example as an explicit list. Our task is to find a size-k subset of D - satisfying P, i.e. \( ((x_1,f(x_1)),\ldots,(x_k,f(x_k))) - \in P \), or reject if none exists. As usual, we wish to do this - with the minimum number of queries to f. Generalizing the - result of [7], it was shown in - [162] that this can be achieved using - \(O(|D|^{k/(k+1)}) \) quantum queries. As an noteworthy special case, this algorithm - solves the k-subset-sum problem of finding k numbers from a list with some - desired sum. A matching lower bound for the quantum query complexity is proven in -[163].

- -Algorithm: Search with Wildcards
-Speedup: Polynomial
-Description: -The search with wildcards problem is to identify a hidden n-bit -string x by making queries to an oracle f. Given \( S -\subseteq \{1,2,\ldots,n\} \) and \( y \in \{0,1\}^{|S|} \), f -returns one if the substring of x specified by S is equal -to y, and returns zero otherwise. Classically, this problem has -query complexity \(\Theta(n)\). As shown in -[167], the quantum query -complexity of this problem is \( \Theta(\sqrt{n}) \). Interestingly, -this quadratic speedup is achieved not through amplitude -amplification or quantum walks, but rather through use of the -so-called Pretty Good Measurement. The paper -[167] also gives a quantum speedup -for the related problem of combinatorial group testing. This result -and subsequent faster quantum algorithms for group testing are -discussed in the entry on Junta Testing and Group Testing. -

- -Algorithm: Network flows
-Speedup: Polynomial
-Description: A network is a directed graph whose edges are -labeled with numbers indicating their carrying capacities, and two of -whose vertices are designated as the source and the sink. A flow on a -network is an assignment of flows to the edges such that no flow -exceeds that edge's capacity, and for each vertex other than the -source and sink, the total inflow is equal to the total outflow. The -network flow problem is, given a network, to find the flow that maximizes -the total flow going from source to sink. For a network with n -vertices, m edges, and integer capacities of maximum -magnitude U, [168] -gives a quantum algorithm to find the maximal flow in time \( O(\min -\{n^{7/6} \sqrt{m} \ U^{1/3}, \sqrt{nU}m\} \times \log n) \). The -network flow problem is closely related to the problem of finding a -maximal matching of a graph, that is, a maximal-size subset of edges -that connects each vertex to at most one other vertex. The paper -[168] gives algorithms for finding -maximal matchings that run in time \( O(n \sqrt{m+n} \log n) \) if -the graph is bipartite, and \( O(n^2 ( \sqrt{m/n} + \log n) \log n) \) -in the general case. The core of these algorithms is Grover search. -The known upper bounds on classical complexity of the network flow and -matching problems are complicated to state because different classical -algorithms are preferable in different parameter regimes. However, in -certain regimes, the above quantum algorithms beat all known classical -algorithms. (See [168] for -details.)

- -Algorithm: Electrical Resistance
-Speedup: Exponential
-Description: -We are given oracle access to a weighted graph of n vertices and maximum -degree d whose edge weights are to be interpreted as electrical resistances. -Our task is to compute the resistance between a chosen pair of vertices. Wang gave -two quantum algorithms in [210] for this task that run in time -\(\mathrm{poly}( \log n, d, 1/\phi, 1/\epsilon) \), where \( \phi \) is the expansion -of the graph, and the answer is to be given to within a factor of \( 1+\epsilon \). -Known classical algorithms for this problem are polynomial in n rather than -\( \log n \). One of Wang's algorithms is based on a novel use of -quantum walks. The other is based on the quantum algorithm of -[104] for solving linear systems of equations. The first quantum -query complexity upper bounds for the electrical resistance problem in the adjacency -query model are given in [280] using approximate span programs. -

- -Algorithm: Junta Testing and Group Testing
-Speedup: Polynomial
-Description: -A function \(f:\{0,1\}^n \to \{0,1\}\) is a k-junta if it -depends on at most k of its input bits. The k-junta -testing problem is to decide whether a given function is -a k-junta or is \( \epsilon \)-far from -any k-junta. Althoug it is not obvious, this problem is closely -related to group testing. A group testing problem is defined by a -function \(f:\{1,2,\ldots,n\} \to \{0,1\}\). One is given oracle -access to F, which takes as input subsets of -\( \{1,2,\ldots,n\} \). F(S) = 1 if there exists \(x \in - S \) such that f(x) = 1 and -F(S) = 0 otherwise. In [266] a -quantum algorithm is given solving the k-junta problem using -\( \widetilde{O}(\sqrt{k/\epsilon}) \) queries and -\( \widetilde{O}(n \sqrt{k/\epsilon}) \) time. This is a quadratic -speedup over the classical complexity, and improves upon a previous -quantum algorithm for k-junta testing given in -[267]. A polynomial speedup for a gapped -(i.e. approximation) version of group testing is also given in -[266], improving upon the earlier results of -[167,268]. -
- - -

Approximation and Simulation Algorithms

- -Algorithm: Quantum Simulation
-Speedup: Superpolynomial
-Description: It is believed that for any physically realistic Hamiltonian -H on n degrees of freedom, the corresponding time evolution operator - \( e^{-i H t} \) can be implemented using poly(n,t) gates. Unless BPP=BQP, - this problem is not solvable in general on a classical computer in polynomial time. - Many techniques for quantum simulation have been developed for - general classes of Hamiltonians - [25,95,92,5,12,170,205,211,244,245,278,293,294,295,372,382], - chemical dynamics - [63,68,227,310,375], condensed - matter physics - [1,99, 145], relativistic quantum mechanics (the Dirac and Klein-Gordon equations) [367,369,370,371], - open quantum systems [376, 377,378,379], - and quantum field theory - [107,166,228,229,230,368]. - The exponential complexity of classically simulating quantum systems led Feynman to - first propose that quantum computers might outperform classical computers on certain tasks -[40]. Although the problem of finding ground energies of local - Hamiltonians is QMA-complete and therefore probably requires exponential time on a quantum - computer in the worst case, quantum algorithms have been developed to approximate ground -[102,231,232,233,234,235,308,321,322,380,381] -as well as thermal states [132,121,281,282,307] -for some classes of Hamiltonians and equilibrium states for some classes of master equations [430]. Efficient quantum algorithms have been also obtained for preparing certain classes of tensor network states -[323,324,325,326,327,328]. -

- -Algorithm: Knot Invariants
-Speedup: Superpolynomial
-Description: As shown by -Freedman [42, -41], et al., finding a certain additive approximation to the Jones - polynomial of the plat closure of a braid at \( e^{i 2 \pi/5} \) is a BQP-complete problem. This - result was reformulated and extended to \( e^{i 2 \pi/k} \) for arbitrary k by Aharonov - et al. [4,2]. Wocjan and Yard further - generalized this, obtaining a quantum algorithm to estimate the HOMFLY polynomial - [93], of which the Jones polynomial is a special case. Aharonov - et al. subsequently showed that quantum computers can in polynomial time estimate a - certain additive approximation to the even more general Tutte polynomial for planar - graphs [3]. It is not fully understood for what range of parameters - the approximation obtained in [3] is BQP-hard. (See also partition - functions.) Polynomial-time quantum algorithms have also been - discovered for additively approximating link invariants arising from - quantum doubles of finite groups - [174]. (This problem is not known to - be BQP-hard.) As shown in [83], the - problem of finding a certain additive approximation to the Jones - polynomial of the trace closure of a braid at \( e^{i 2 \pi/5} \) is - DQC1-complete. -

- -Algorithm: Three-manifold Invariants
-Speedup: Superpolynomial
-Description: The Turaev-Viro invariant is a function that takes - three-dimensional manifolds as input and produces a real number as output. Homeomorphic - manifolds yield the same number. Given a three-manifold specified by a Heegaard splitting, - a quantum computer can efficiently find a certain additive approximation to its - Turaev-Viro invariant, and this approximation is BQP-complete [129]. - Earlier, in [114], a polynomial-time quantum algorithm was given - to additively approximate the Witten-Reshitikhin-Turaev (WRT) invariant of a manifold - given by a surgery presentation. Squaring the WRT invariant yields the Turaev-Viro - invariant. However, it is unknown whether the approximation achieved in - [114] is BQP-complete. A suggestion of a possible link between - quantum computation and three-manifold invariants was also given in - [115]. -

- - -Algorithm: Partition Functions
-Speedup: Superpolynomial
-Description: For a classical system with a finite set of states S the - partition function is \( Z = \sum_{s \in S} e^{-E(s)/kT} \), where T is the - temperature and k is Boltzmann's constant. Essentially every thermodynamic - quantity can be calculated by taking an appropriate partial derivative of the partition - function. The partition function of the Potts model is a special case of the Tutte - polynomial. A quantum algorithm for approximating the Tutte polynomial is given in - [3]. Some connections between these approaches are discussed - in [67]. Additional algorithms for estimating partition - functions on quantum computers are given in [112,113,45,47]. - A BQP-completeness result (where the "energies" are allowed to be complex) is also given in - [113]. A method for approximating partition functions by simulating - thermalization processes is given in [121]. A quadratic speedup - for the approximation of general partition functions is given in - [122]. A method based on quantum walks, achieving - polynomial speedup for evaluating partition functions is given in - [265]. -

- -Algorithm: Quantum Approximate Optimization
-Speedup: Superpolynomial
-Description: For many combinatorial optimization problems, -finding the exact optimal solution is NP-complete. There are also hardness-of-approximation -results proving that finding an approximation with sufficiently -small error bound is NP-complete. For certain problems there is a gap -between the best error bound achieved by a polynomial-time classical -approximation algorithm and the error bound proven to be NP-hard. In -this regime there is potential for exponential speedup by quantum -computation. In [242] a new quantum algorithmic -technique called the Quantum Approximate Optimization Algorithm (QAOA) -was proposed for finding approximate solutions to -combinatorial optimization problems. In [243] it -was subsequently shown that QAOA solves a combinatorial -optimization problem called Max E3LIN2 with a better approximation -ratio than any polynomial-time classical algorithm known at the -time. However, an efficient classical algorithm achieving an even -better approximation ratio (in fact, the approximation ratio -saturating the limit set by hardness-of-approximation) was -subsequently discovered [260]. Presently, the power of -QAOA relative to classical computing is an active area of research -[300, 301, 302, -314]. -

- -Algorithm: Semidefinite Programming
-Speedup: Polynomial (with some exceptions)
-Description: Given a list of m + 1 Hermitian \(n \times n \) -matrices \(C, A_1, A_2, \ldots, A_m\) and m numbers -\(b_1, \ldots, b_m \), the problem of semidefinite programming is to -find the positive semidefinite \( n \times n \) -matrix X that maximizes tr(CX) subject to the -constraints \( \mathrm{tr} (A_j X) \leq b_j \) for \( j = 1,2,\ldots, -m \). Semidefinite programming has many applications in operations -research, combinatorial optimization, and quantum information, and it -includes linear programming as a special case. Introduced in -[313], and subsequently improved in [383, 425], -quantum algorithms are now known that can approximately solve semidefinite programs to within \( \pm \epsilon \) in time -\( O (\sqrt{m} \log m \cdot \mathrm{poly}(\log n, r, \epsilon^{-1})) \), where r is -the rank of the semidefinite program. This constitutes a quadratic speedup over the fastest -classical algorithms when r is small compared to n. The quantum algorithm is -based on amplitude amplification and quantum Gibbs sampling [121, 307]. -In a model in which input is provided in the form of quantum states the quantum algorithm -for semidefinite programming can achieve superpolynomial speedup, as discussed in [383], -although recent dequantization results [421] delineate limitations on -the context in which superpolynomial quantum speedup for semidefinite programs is possible. -

- -Algorithm: Zeta Functions
-Speedup: Superpolynomial
-Description: Let f(x,y) be a degree-d -polynomial over a finite field \( \mathbb{F}_p \). Let \( N_r \) be -the number of projective solutions to f(x,y = 0 over the -extension field \( \mathbb{F}_{p^r} \). The zeta function for f -is defined to be \( Z_f(T) = \exp \left( \sum_{r=1}^\infty -\frac{N_r}{r} T^r \right) \). Remarkably, \( Z_f(T) \) always has the -form \( Z_f(T) = \frac{Q_f(T)}{(1-pT)(1-T)} \) where \( Q_f(T) \) is a -polynomial of degree 2g and \(g = \frac{1}{2} (d-1)(d-2) \) is -called the genus of f. Given \( Z_f(T) \) one can easily -compute the number of zeros of f over any extension field \( -\mathbb{F}_{p^r} \). One can similarly define the zeta function -when the original field over which f is defined does not have -prime order. As shown by Kedlaya [64], -quantum computers can determine the zeta function of a genus g -curve over a finite field \( \mathbb{F}_{p^r} \) in -\( \mathrm{poly}(\log p, r, g) \) time. The fastest known classical algorithms -are all exponential in either log(p) or g. In a -diffent, but somewhat related contex, van Dam has conjectured that due -to a connection between the zeros of Riemann zeta functions -and the eigenvalues of certain quantum operators, quantum computers -might be able to efficiently approximate the number of solutions to -equations over finite fields [87]. -

- -Algorithm: Weight Enumerators
-Speedup: Superpolynomial
-Description: Let C be a code on n bits, i.e. a subset of - \( \mathbb{Z}_2^n \). The weight enumerator of C is - \( S_C(x,y) = \sum_{c \in C} x^{|c|} y^{n-|c|} \) where - |c| denotes the Hamming weight of c. Weight enumerators have many - uses in the study of classical codes. If C is a linear code, it can be defined by - \( C = \{c: Ac = 0\} \) where A is a matrix over \( \mathbb{Z}_2 \) - In this case \( S_C(x,y) = \sum_{c:Ac=0} x^{|c|} y^{n-|c|} \). Quadratically signed - weight enumerators (QWGTs) are a generalization of this: - \( S(A,B,x,y) = \sum_{c:Ac=0} (-1)^{c^T B c} x^{|c|} y^{n-|c|} \). Now consider the - following special case. Let A be an \( n \times n \) matrix over \( \mathbb{Z}_2 \) - such that diag(A)=I. Let lwtr(A) be the lower triangular matrix resulting - from setting all entries above the diagonal in A to zero. Let l,k be positive - integers. Given the promise that - \( |S(A,\mathrm{lwtr}(A),k,l)| \geq \frac{1}{2} (k^2+l^2)^{n/2} \) - the problem of determining the sign of \( S(A,\mathrm{lwtr}(A),k,l) \) is BQP-complete, - as shown by Knill and Laflamme in [65]. The evaluation of QWGTs is - also closely related to the evaluation of Ising and Potts model partition functions - [67,45,46]. -

- -Algorithm: Simulated Annealing
-Speedup: Polynomial
-Description: In simulated annealing, one has a series of Markov chains defined by - stochastic matrices \( M_1, M_2,\ldots,M_n \). These are slowly varying in the sense that - their limiting distributions \( pi_1, \pi_2, \ldots, \pi_n \) satisfy - \( |\pi_{t+1} -\pi_t| \lt \epsilon \) for some small \( \epsilon \). - These distributions can often be thought of as thermal distributions at successively lower - temperatures. If \( \pi_1 \) can be easily prepared, then by applying this - series of Markov chains one can sample from \( \pi_n \). Typically, one wishes for - \( \pi_n \) to be a distribution over good solutions to some optimization problem. Let - \( \delta_i \) be the gap between the largest and second largest eigenvalues of - \( M_i \). Let \( \delta = \min_i \delta_i \). The run time of this classical algorithm - is proportional to \( 1/\delta \). Building upon results of Szegedy - [135,85], Somma et al. have - shown [84, 177] that - quantum computers can sample from \( \pi_n \) with a runtime - proportional to \( 1/\sqrt{\delta} \). Additional methods by which - classical Markov chain Monte Carlo algorithms can be sped up using - quantum walks are given in [265]. -

- -Algorithm: String Rewriting
-Speedup: Superpolynomial
-Description: String rewriting is a fairly general model of computation. String - rewriting systems (sometimes called grammars) are specified by a list of rules by which - certain substrings are allowed to be replaced by certain other substrings. For example, - context free grammars, are equivalent to the pushdown automata. In - [59], Janzing and Wocjan showed that a certain string - rewriting problem is PromiseBQP-complete. Thus quantum computers can solve it in - polynomial time, but classical computers probably cannot. Given three strings - s,t,t', and a set of string rewriting rules satisfying certain promises, the - problem is to find a certain approximation to the difference between the number of - ways of obtaining t from s and the number of ways of obtaining t' - from s. Similarly, certain problems of approximating the difference in number of - paths between pairs of vertices in a graph, and difference in transition probabilities - between pairs of states in a random walk are also BQP-complete - [58]. -

- -Algorithm: Matrix Powers
-Speedup: Superpolynomial
-Description: Quantum computers have an exponential advantage in approximating - matrix elements of powers of exponentially large sparse matrices. Suppose we are have - an \( N \times N \) symmetric matrix A such that there are at most polylog(N) - nonzero entries in each row, and given a row index, the set of nonzero entries can be - efficiently computed. The task is, for any 1 < i < N, and any m - polylogarithmic in N, to approximate \( (A^m)_{ii} \) the \( i^{\mathrm{th}} \) - diagonal matrix element of \( A^m \). The approximation is additive to within - \( b^m \epsilon \) where b is a given upper bound on |A| and \( \epsilon \) - is of order 1/polylog(N). As shown by Janzing and Wocjan, this problem is - PromiseBQP-complete, as is the corresponding problem for off-diagonal matrix elements - [60]. Thus, quantum computers can solve it in polynomial - time, but classical computers probably cannot. -

-
- - -

Optimization, Numerics, and Machine Learning

- -Algorithm: Constraint Satisfaction
-Speedup: Polynomial
-Description: Constraint satisfaction problems, many of which -are NP-hard, are ubiquitous in computer science, a canonical example -being 3-SAT. If one wishes to satisfy as many constraints as possible -rather than all of them, these become combinatorial optimization -problems. (See also adiabatic algorithms.) The brute force -solution to constraint satisfaction problems can be quadratically sped -up using Grover's algorithm. However, most constraint satisfaction -problems are solvable by classical algorithms that (although still -exponential-time) run more than quadratically faster than brute force -checking of all possible solutions. Nevertheless, a polynomial quantum -speedup over the fastest known classical algorithm for 3-SAT is given -in [133], and polynomial quantum -speedups for some other constraint satisfaction problems are given in -[134, 298]. In [423] a quadratic -quantum speedup for approximate solutions to homogeneous QUBO/Ising problems -is obtained by building upon the quantum algorithm for semidefinite programming. -A commonly used classical algorithm for constraint satisfaction is -backtracking, and for some problems this algorithm is the fastest known. -A general quantum speedup for backtracking algorithms is given in -[264] and further improved in [422].

- - -Algorithm: Adiabatic Algorithms
-Speedup: Unknown
-Description: In adiabatic quantum computation one starts with -an initial Hamiltonian whose ground state is easy to prepare, and -slowly varies the Hamiltonian to one whose ground state encodes the -solution to some computational problem. By the adiabatic theorem, the -system will track the instantaneous ground state provided the -variation of the Hamiltonian is sufficiently slow. The runtime of an -adiabatic algorithm scales at worst as \(1/ \gamma^3 \) where \( \gamma \) -is the minimum eigenvalue gap between the ground state -and the first excited state [185]. If the -Hamiltonian is varied sufficiently smoothly, one can improve this to -\( \widetilde{O}(1/\gamma^2) \) [247]. Adiabatic -quantum computation was first proposed by Farhi et al. as a -method for solving NP-complete combinatorial optimization problems -[96, 186]. Adiabatic quantum algorithms for -optimization problems typically use "stoquastic" Hamiltonians, which -do not suffer from the sign problem. Such algorithms are sometimes -referred to as quantum annealing. Adiabatic quantum computation with -non-stoquastic Hamiltonians is as powerful as the quantum circuit -model [97]. Adiabatic algorithms -using stoquastic Hamiltonians are probably less powerful -[183], but are likely more powerful -than classical computation [429]. The asymptotic runtime of adiabatic -optimization algorithms is notoriously difficult to analyze, but some -progress has been achieved -[179,180,181,182,187,188,189,190,191,226]. (Also -relevant is an earlier literature on quantum annealing, which -originally referred to a classical optimization algorithm that works by -simulating a quantum process, much as simulated annealing is a -classical optimization algorithm that works by simulating a thermal -process. See e.g. -[199, 198].) Adiabatic quantum -computers can perform a process somewhat analogous -to Grover search in \( O(\sqrt{N}) \) time -[98]. Adiabatic quantum algorithms -achieving quadratic speedup for a more general class of problems are -constructed in [184] by adapting techniques from -[85]. Adiabatic quantum algorithms have been -proposed for several specific problems, including PageRank -[176], machine learning -[192, 195], finding Hadamard -matrices [406], and graph problems [193, 194]. -Some quantum simulation algorithms also use adiabatic state -preparation. -

- -Algorithm: Gradients, Structured Search, and Learning Polynomials
-Speedup: Polynomial
-Description: Suppose we are given a oracle for computing some smooth function -\( f:\mathbb{R}^d \to \mathbb{R} \). The inputs and outputs to f are given to -the oracle with finitely many bits of precision. The task is to estimate \( \nabla f \) -at some specified point \( \mathbf{x}_0 \in \mathbb{R}^d \). As shown in -[61], a quantum computer can achieve this using one query, -whereas a classical computer needs at least d+1 queries. In [20], -Bulger suggested potential applications for optimization problems. As shown in appendix D -of [62], a quantum computer can use the gradient algorithm to find -the minimum of a quadratic form in d dimensions using O(d) queries, whereas, -as shown in [94], a classical computer needs at least \( \Omega(d^2) \) -queries. Single query quantum algorithms for finding the minima of basins based on Hamming -distance were given in -[147,148,223]. -The quantum algorithm of [62] can also extract all \( d^2 \) -matrix elements of the quadratic form using O(d) queries, and more generally, all -\( d^n \) nth derivatives of a smooth function of d variables in \( O(d^{n-1}) \) -queries. Remarkably general results in [418,419,420] -give quantum speedups for convex optimization and volume estimation of convex bodies, as well -as query complexity lower bounds. Roughly speaking these results show that for convex -optimization and volume estimation in d dimensions one gets a quadratic speedup in d -just as was found earlier for the special case of minimizing quadratic forms. -As shown in [130,146], -quadratic forms and multilinear polynomials in d variables over a finite field may -be extracted with a factor of d fewer quantum queries than are required classically. -

- -Algorithm: Linear Systems
-Speedup: Superpolynomial
-Description: We are given oracle access to an \( n \times n \) matrix A and -some description of a vector b. We wish to find some property of f(A)b -for some efficiently computable function f. Suppose A is a Hermitian matrix -with O(polylog n) nonzero entries in each row and condition number k. -As shown in [104], a quantum computer can in \( O(k^2 \log n) \) -time compute to polynomial precision various expectation values of operators with respect -to the vector f(A)b (provided that a quantum state proportional to b is -efficiently constructable). For certain functions, such as f(x)=1/x, this -procedure can be extended to non-Hermitian and even non-square A. The -runtime of this algorithm was subsequently improved to \( O(k \log^3 k \log n) \) -in [138]. Exponentially improved -scaling of runtime with precision was obtained in -[263]. Some methods to extend this algorithm to apply to non-sparse matrices -have been proposed [309,402], although these require certain partial sums of the matrix elements to -be pre-computed. Extensions of this quantum algorithm have been applied to problems of estimating electromagnetic -scattering crossections [249] (see also [369] for a different approach), solving linear -differential equations [156, 296], estimating -electrical resistance of networks [210], least-squares -curve-fitting [169], solving Toeplitz systems -[297], and machine learning -[214,222,250,251,309]. -However, the linear-systems-based quantum algorithms for recommendation systems [309] -and principal component analysis [250] were subsequently "dequantized" by Tang -[400, 401]. -That is, Tang obtained polynomial time classical randomized algorithms for these problems, thus proving -that the proposed quantum algorithms for these tasks do not achieve exponential speedup. -Some limitations of the quantum machine learning algorithms based on -linear systems are nicely summarized in [246]. -In [220] it was shown that quantum -computers can invert well-conditioned \( n \times n \) matrices -using only \( O( \log n ) \) qubits, whereas the best classical -algorithm uses order \( \log^2 n \) bits. Subsequent improvements to -this quantum algorithm are given in [279]. -

- -Algorithm: Machine Learning
-Speedup: Varies
-Description: -Maching learning encompasses a wide variety of computational problems -and can be attacked by a wide variety of algorithmic techniques. This -entry summarizes quantum algorithmic techniques for improved machine -learning. Many of the quantum algorithms here are cross-listed under -other headings. In -[214,222,250,251,309,338,339,359,403], -quantum algorithms for solving linear systems [104] are -applied to speed up cluster-finding, principal component analysis, -binary classification, training of neural networks, and various forms of regression, provided the data satisfies certain conditions. However, a number of quantum machine learning algorithms based on -linear systems have subsequently been "dequantized". Specifically, Tang showed in [400, 401] that the -problems of recommendation systems and principal component analysis solved by the quantum algorithms of [251,309] can in fact also be solved in polynomial time randomized classical algorithms. -A cluster-finding method not based on the linear systems algorithm of [104] is given in [336]. The papers -[192,195,344,345,346,348] -explore the use of adiabatic optimization techniques to speed up the training of -classifiers. In [221], a method is proposed for -training Boltzmann machines by manipulating coherent quantum states -with amplitudes proportional to the Boltzmann weights. Polynomial speedups -can be obtained by applying Grover search and related techniques such as amplitude amplification to amenable -subroutines of state of the art classical machine learning algorithms. See, -for example -[358,340,341,342,343]. -Other quantum machine learning algorithms not falling into one of the above categories include -[337,349]. -Some limitations of quantum machine learning algorithms are nicely -summarized in [246]. Many other quantum query algorithms that extract hidden structure of the -black-box function could be cast as machine learning algorithms. See for example -[146,23,11,31,212]. -Query algorithms for learning the majority and "battleship" functions are -given in [224]. Large quantum advantages for -learning from noisy oracles are given in [236,237]. In [428] quantum kernel estimation is used to implement -a support-vector classifier solving a learning problem that is provably as hard as discrete logarithm. Several recent review articles -[299,332,333] -and a book [331] are available which summarize the state of the field. -There is a related body of work, not strictly within the standard setting of quantum algorithms, -regarding quantum learning in the case that the data itself is quantum coherent. -See e.g. [350,334,335,351,352,353,354,355,356,357]. -

- -Algorithm: Tensor Principal Component Analysis
-Speedup: Polynomial (quartic)
-Description: -In [424] a quantum algorithm is given for an idealized problem motivated by machine learning -applications on high-dimensional data sets. Consider \(T = \lambda v_{\mathrm{sig}}^{\otimes p} + G \) where -G is a p-index tensor of Gaussian random variables, symmetrized over all permutations of indices, and -\(v_{\mathrm{sig}}\) is an N-dimensional vector of magnitude \(\sqrt{N}\). The task is to recover \(v_{\mathrm{sig}}\). -Consider \( \lambda = \alpha N^{-p/4}\). The best classical algorithms succeed when \( \alpha \gg 1\) and have time and -space complexity that scale exponentially in \( \alpha^{-1}\). The quantum algorithm of [424] solves -this problem in polynomial space and with runtime scaling quartically better in \( \alpha^{-1} \) than the classical spectral -algorithm. The quantum algorithm works by encoding the problem into the eigenspectrum of a many-body Hamiltonian and applying -phase estimation together with amplitude amplification. -

- -Algorithm: Solving Differential Equations
-Speedup: Superpolynomial
-Description: Consider linear first order differential equation \( \frac{d}{dt} \mathbf{x} = A(t) \mathbf{x} + \mathbf{b}(t) \), where -\( \mathbf{x} \) and \( \mathbf{b} \) are N-dimensional vectors and A is an \(N \times N\) matrix. Given an initial condition -\( \mathbf{x}(0) \) one wishes to compute the solution \( \mathbf{x}(t) \) at some later time t to some precision \( \epsilon \) in -the sense that the normalized vector \( x(t)/\|x(t)\| \) produced has distance at most \( \epsilon \) from the exact solution. In [156], -Berry gives a quantum algorithm for this problem that runs in time \( O(t^2 \mathrm{poly}(1/\epsilon) \mathrm{poly log} N) \), whereas the fastest classical algorithms -run in time \( O ( t \mathrm{poly} N ) \). The final result is produced in the form of a quantum superposition state on \( O(log N) \) qubits whose amplitudes contain -the components of \( \mathbf{x}(t) \). The algorithm works by reducing the problem to linear algebra via a high-order finite difference method and applying -the quantum linear algebra primitive of [104]. In [410] an improved quantum algorithm for this problem was given -which brings the epsilon dependence down to \( \mathrm{poly log}(1/\epsilon) \). A quantum algorithm for solving nonlinear differential equations (again in the -sense of obtaining a solution encoded in the amplitudes) is described in [411], which has exponential scaling in t. -In [426,427] quantum algorithms are given for solving nonlinear differential equations that scale as \( O(t^2) \). -These are applicable to a restricted class of nonlinear differential equations. In particular, their solutions must not grow or shrink in magnitude too rapidly. -Partial differential equations can be reduced to ordinary differential equations through discretization, and higher order differential equations can be -reduced to first order through additiona of auxiliary variables. Consequently, these more general problems can be solved through the methods of -[156, 104]. However, quantum algorithms designed to solve these problems directly may be more -efficient (and for specific problems one may analyze the complexity of tasks that are unspecified in a more general formulation such as -preparation of relevant initial states). In [249] a quantum algorithm is given which solves the wave equation by -applying finite-element methods to reduce it to linear algebra and then applying the quantum linear algebra algorithm of [104] -with preconditioning. In [369] a quantum algorithm is given for solving the wave equation by discretizing it -with finite differences and massaging it into the form of a Schrodinger equation which is then simulated using the method of [245]. The -problem solved by [369] is not equivalent to that solved by [249] because in [249] the problem -is reduced to a time-indepent one through assuming sinusoidal time dependence and applying separation of variables, whereas [369] solves -the time-dependent problem. The quantum speedup achieved over classical methods for solving the wave equation in d-dimensiona is polynomial for fixed -d but expontial in d. Concrete resource estimates for quantum algorithms to solve differential equations are given in -[412, 413, 414]. A quantum algorithm for solving linear partial differential equations using -continuous-variable quantum computing is given in [415]. In [296] quantum finite element methods are analyzed in -a general setting. A quantum spectral method for solving differential equations is given in [416]. A quantum algorithm for solving the Vlasov equation is -given in [417]. -

- -Algorithm: Quantum Dynamic Programming
-Speedup: Polynomial
-Description: In [409] the authors introduce a problem called path-in-the-hypercube. In this problem, one given -a subgraph of the hypercube and asked whether there is a path along this subgraph that starts from the all zeros vertex, -ends at the all ones vertex, and makes only Hamming weight increasing moves. (The vertices of the hypercube graph correspond -to bit strings of length n and the hypercube graph joins vertices of Hamming distance one.) Many NP-complete problems -for which the best classical algorithm is dynamic programming can be modeled as instances of path-in-the-hypercube. By -combining Grover search with dynamic programming methods, a quantum algorithm can solve path-in-the-hypercube in time -\( O^*(1.817^n) \), where the notation \( O^* \) indicates that polynomial factors are being omitted. The fastest known -classical algorithm for this problem runs in time \( O^*(2^n) \). Using this primitive quantum algorithms can be constructed -that solve vertex ordering problems in \( O^*(1.817^n) \) vs. \( O^* (2^n) \) classically, graph bandwidth in \( O^*(2.946^n) \) -vs. \( O^*(4.383^n) \) classically, travelling salesman and feedback arc set in \( O^*(1.729^n) \) vs. \( O^*(2^n) \) classically, -and minimum set cover in \( O( \mathrm{poly}(m,n) 1.728^n ) \) vs. \( O(nm2^n) \) classically. -

- -
- - -

Acknowledgments

-I thank the following people for contributing their expertise (in -chronological order). - -
- -
- - -

References

- -
-
1
-
-Daniel S. Abrams and Seth Lloyd -
Simulation of many-body Fermi systems on a universal quantum - computer. -
Physical Review Letters, 79(13):2586-2589, 1997. -
arXiv:quant-ph/9703054 -

- -
2
-
-Dorit Aharonov and Itai Arad -
The BQP-hardness of approximating the Jones polynomial. -
New Journal of Physics 13:035019, 2011. -
arXiv:quant-ph/0605181 -

- -
3
-
-Dorit Aharonov, Itai Arad, Elad Eban, and Zeph Landau -
Polynomial quantum algorithms for additive approximations of the - Potts model and other points of the Tutte plane. -
-arXiv:quant-ph/0702008, 2007. -

- -
4
-
-Dorit Aharonov, Vaughan Jones, and Zeph Landau -
A polynomial quantum algorithm for approximating the Jones - polynomial. -
In Proceedings of the 38th ACM Symposium on Theory of - Computing, 2006. -
arXiv:quant-ph/0511096 -

- -
5
-
-Dorit Aharonov and Amnon Ta-Shma -
Adiabatic quantum state generation and statistical zero knowledge. -
In Proceedings of the 35th ACM Symposium on Theory of - Computing, 2003. -
-arXiv:quant-ph/0301023. -

- -
6
-
-A. Ambainis, H. Buhrman, P. Høyer, M. Karpinizki, and P. Kurur -
Quantum matrix verification. -
Unpublished Manuscript, 2002. -

- -
7
-
-Andris Ambainis -
Quantum walk algorithm for element distinctness. -
SIAM Journal on Computing, 37:210-239, 2007. -
arXiv:quant-ph/0311001 -

- -
8
-
-Andris Ambainis, Andrew M. Childs, Ben W.Reichardt, Robert Špalek, and - Shengyu Zheng -
Every AND-OR formula of size N can be evaluated in time \( n^{1/2+o(1)} \) - on a quantum computer. -
In Proceedings of the 48th IEEE Symposium on the Foundations of - Computer Science, pages 363-372, 2007. -
-arXiv:quant-ph/0703015 and -arXiv:0704.3628 -

- -
9
-
-Dave Bacon, Andrew M. Childs, and Wim van Dam -
From optimal measurement to efficient quantum algorithms for the - hidden subgroup problem over semidirect product groups. -
In Proceedings of the 46th IEEE Symposium on Foundations of - Computer Science, pages 469-478, 2005. -
arXiv:quant-ph/0504083 -

- -
10
-
-Michael Ben-Or and Avinatan Hassidim -
Quantum search in an ordered list via adaptive learning. -
-arXiv:quant-ph/0703231, 2007. -

- -
11
-
-Ethan Bernstein and Umesh Vazirani -
Quantum complexity theory. -
In Proceedings of the 25th ACM Symposium on the Theory of - Computing, pages 11-20, 1993. -

- -
12
-
-D.W. Berry, G. Ahokas, R. Cleve, and B. C. Sanders -
Efficient quantum algorithms for simulating sparse Hamiltonians. -
Communications in Mathematical Physics, 270(2):359-371, 2007. -
arXiv:quant-ph/0508139 -

- -
13
-
-A. Berzina, A. Dubrovsky, R. Frivalds, L. Lace, and O. Scegulnaja -
Quantum query complexity for some graph problems. -
In Proceedings of the 30th Conference on Current Trends in - Theory and Practive of Computer Science, pages 140-150, 2004. -

- -
14
-
-D. Boneh and R. J. Lipton -
Quantum cryptanalysis of hidden linear functions. -
In Don Coppersmith, editor, CRYPTO '95, Lecture Notes in - Computer Science, pages 424-437. Springer-Verlag, 1995. -

- -
15
-
-M. Boyer, G. Brassard, P. Høyer, and A. Tapp -
Tight bounds on quantum searching. -
Fortschritte der Physik, 46:493-505, 1998. -

- -
16
-
-G. Brassard, P. Høyer, and A. Tapp -
Quantum counting. -
-arXiv:quant-ph/9805082, 1998. -

- -
17
-
-Gilles Brassard, Peter Høyer, Michele Mosca, and Alain Tapp -
Quantum amplitude amplification and estimation. -
In Samuel J. Lomonaco Jr. and Howard E. Brandt, editors, Quantum - Computation and Quantum Information: A Millennium Volume, - volume 305 of - AMS Contemporary Mathematics Series. American Mathematical Society, 2002. -
arXiv:quant-ph/0005055 -

- -
18
-
-Gilles Brassard, Peter Høyer, and Alain Tapp -
Quantum algorithm for the collision problem. -
ACM SIGACT News, 28:14-19, 1997. -
arXiv:quant-ph/9705002 -

- -
19
-
-Harry Buhrman and Robert Špalek -
Quantum verification of matrix products. -
In Proceedings of the 17th ACM-SIAM Symposium on Discrete - Algorithms, pages 880-889, 2006. -
arXiv:quant-ph/0409035 -

- -
20
-
-David Bulger -
Quantum basin hopping with gradient-based local optimisation. -
-arXiv:quant-ph/0507193, 2005. -

- -
21
-
-Harry Burhrman, Christoph Dürr, Mark Heiligman, Peter Høyer, - Frédéric Magniez, Miklos Santha, and Ronald de Wolf -
Quantum algorithms for element distinctness. -
In Proceedings of the 16th IEEE Annual Conference on - Computational Complexity, pages 131-137, 2001. -
arXiv:quant-ph/0007016 -

- -
22
-
-Dong Pyo Chi, Jeong San Kim, and Soojoon Lee -
Notes on the hidden subgroup problem on some semi-direct product - groups. -
Phys. Lett. A 359(2):114-116, 2006. -
arXiv:quant-ph/0604172 -

- -
23
-
-A. M. Childs, L. J. Schulman, and U. V. Vazirani -
Quantum algorithms for hidden nonlinear structures. -
In Proceedings of the 48th IEEE Symposium on Foundations of - Computer Science, pages 395-404, 2007. -
arXiv:0705.2784 -

- -
24
-
-Andrew Childs and Troy Lee -
Optimal quantum adversary lower bounds for ordered search. -
Proceedings of ICALP 2008 -
arXiv:0708.3396 -

- -
25
-
-Andrew M. Childs -
Quantum information processing in continuous time. -
PhD thesis, MIT, 2004. -

- -
26
-
-Andrew M. Childs, Richard Cleve, Enrico Deotto, Edward Farhi, Sam Gutmann, and - Daniel A. Spielman -
Exponential algorithmic speedup by quantum walk. -
In Proceedings of the 35th ACM Symposium on Theory of - Computing, pages 59-68, 2003. -
arXiv:quant-ph/0209131 -

- -
27
-
-Andrew M. Childs, Richard Cleve, Stephen P. Jordan, and David Yonge-Mallo -
Discrete-query quantum algorithm for NAND trees. -
Theory of Computing, 5:119-123, 2009. -
arXiv:quant-ph/0702160 -

- -
28
-
-Andrew M. Childs and Wim van Dam -
Quantum algorithm for a generalized hidden shift problem. -
In Proceedings of the 18th ACM-SIAM Symposium on Discrete - Algorithms, pages 1225-1232, 2007. -
-arXiv:quant-ph/0507190. -

- -
29
-
-Richard Cleve, Dmitry Gavinsky, and David L. Yonge-Mallo -
Quantum algorithms for evaluating MIN-MAX trees. -
In Theory of Quantum Computation, Communication, and -Cryptography, pages 11-15, -
Springer, 2008. (LNCS Vol. 5106) -
arXiv:0710.5794. -

- -
30
-
-J. Niel de Beaudrap, Richard Cleve, and John Watrous -
Sharp quantum versus classical query complexity separations. -
Algorithmica, 34(4):449-461, 2002. -
-arXiv:quant-ph/0011065v2. -

- -
31
-
-Thomas Decker, Jan Draisma, and Pawel Wocjan -
Quantum algorithm for identifying hidden polynomials. -
Quantum Information and Computation, 9(3):215-230, 2009. -
-arXiv:0706.1219. -

- -
32
-
-David Deutsch -
Quantum theory, the Church-Turing principle, and the universal - quantum computer. -
Proceedings of the Royal Society of London Series A, - 400:97-117, 1985. -

- -
33
-
-David Deutsch and Richard Jozsa -
Rapid solution of problems by quantum computation. -
Proceedings of the Royal Society of London Series A, - 493:553-558, 1992. -

- -
34
-
-Christoph Dürr, Mark Heiligman, Peter Høyer, and Mehdi Mhalla -
Quantum query complexity of some graph problems. -
SIAM Journal on Computing, 35(6):1310-1328, 2006. -
-arXiv:quant-ph/0401091. -

- -
35
-
-Christoph Dürr and Peter Høyer -
A quantum algorithm for finding the minimum. -
-arXiv:quant-ph/9607014, 1996. -

- -
36
-
-Christoph Dürr, Mehdi Mhalla, and Yaohui Lei -
Quantum query complexity of graph connectivity. -
-arXiv:quant-ph/0303169, 2003. -

- -
37
-
-Mark Ettinger, Peter Høyer, and Emanuel Knill -
The quantum query complexity of the hidden subgroup problem is - polynomial. -
Information Processing Letters, 91(1):43-48, 2004. -
-arXiv:quant-ph/0401083. -

- -
38
-
-Edward Farhi, Jeffrey Goldstone, and Sam Gutmann -
A quantum algorithm for the Hamiltonian NAND tree. -
Theory of Computing 4:169-190, 2008. -
-arXiv:quant-ph/0702144. -

- -
39
-
-Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser -
Invariant quantum algorithms for insertion into an ordered list. -
-arXiv:quant-ph/9901059, 1999. -

- -
40
-
-Richard P. Feynman -
Simulating physics with computers. -
International Journal of Theoretical Physics, 21(6/7):467-488, - 1982. -

- -
41
-
-Michael Freedman, Alexei Kitaev, and Zhenghan Wang -
Simulation of topological field theories by quantum computers. -
Communications in Mathematical Physics, 227:587-603, 2002. -

- -
42
-
-Michael Freedman, Michael Larsen, and Zhenghan Wang -
A modular functor which is universal for quantum computation. -
Comm. Math. Phys. 227(3):605-622, 2002. -
arXiv:quant-ph/0001108. -

- -
43
-
-K. Friedl, G. Ivanyos, F. Magniez, M. Santha, and P. Sen -
Hidden translation and translating coset in quantum computing. -
SIAM Journal on Computing Vol. 43, pp. 1-24, 2014. -
Appeared earlier in Proceedings of the 35th ACM Symposium on Theory of - Computing, pages 1-9, 2003. -
-arXiv:quant-ph/0211091. -

- -
44
-
-D. Gavinsky -
Quantum solution to the hidden subgroup problem for - poly-near-Hamiltonian-groups. -
Quantum Information and Computation, 4:229-235, 2004. -

- -
45
-
-Joseph Geraci -
A new connection between quantum circuits, graphs and the Ising -partition function -
Quantum Information Processing, 7(5):227-242, 2008. -
-arXiv:0801.4833. -

- -
46
-
-Joseph Geraci and Frank Van Bussel -
A theorem on the quantum evaluation of weight enumerators for a -certain class of cyclic Codes with a note on cyclotomic cosets. -
-arXiv:cs/0703129, 2007. -

- -
47
-
-Joseph Geraci and Daniel A. Lidar -
On the exact evaluation of certain instances of the Potts partition - function by quantum computers. -
Comm. Math. Phys. Vol. 279, pg. 735, 2008. -
arXiv:quant-ph/0703023. -

- -
48
-
-Lov K. Grover -
Quantum mechanics helps in searching for a needle in a haystack. -
Physical Review Letters, 79(2):325-328, 1997. -
-arXiv:quant-ph/9605043. -

- -
49
-
-Sean Hallgren -
Polynomial-time quantum algorithms for Pell's equation and the - principal ideal problem. -
In Proceedings of the 34th ACM Symposium on Theory of - Computing, 2002. -

- -
50
-
-Sean Hallgren -
Fast quantum algorithms for computing the unit group and class group - of a number field. -
In Proceedings of the 37th ACM Symposium on Theory of - Computing, 2005. -

- -
51
-
-Sean Hallgren, Alexander Russell, and Amnon Ta-Shma -
Normal subgroup reconstruction and quantum computation using group - representations. -
SIAM Journal on Computing, 32(4):916-934, 2003. -

- -
52
-
-Mark Heiligman -
Quantum algorithms for lowest weight paths and spanning trees in - complete graphs. -
-arXiv:quant-ph/0303131, 2003. -

- -
53
-
-Yoshifumi Inui and François Le Gall -
Efficient quantum algorithms for the hidden subgroup problem over a - class of semi-direct product groups. -
Quantum Information and Computation, 7(5/6):559-570, 2007. -
-arXiv:quant-ph/0412033. -

- -
54
-
-Yuki Kelly Itakura -
Quantum algorithm for commutativity testing of a matrix set. -
Master's thesis, University of Waterloo, 2005. -
-arXiv:quant-ph/0509206. -

- -
55
-
-Gábor Ivanyos, Frédéric Magniez, and Miklos Santha -
Efficient quantum algorithms for some instances of the non-abelian - hidden subgroup problem. -
In Proceedings of the 13th ACM Symposium on Parallel Algorithms - and Architectures, pages 263-270, 2001. -
-arXiv:quant-ph/0102014. -

- -
56
-
-Gábor Ivanyos, Luc Sanselme, and Miklos Santha -
An efficient quantum algorithm for the hidden subgroup problem in - extraspecial groups. -
In Proceedings of the 24th Symposium on Theoretical Aspects of - Computer Science, 2007. -
-arXiv:quant-ph/0701235. -

- -
57
-
-Gábor Ivanyos, Luc Sanselme, and Miklos Santha -
An efficient quantum algorithm for the hidden subgroup problem in - nil-2 groups. -
In LATIN 2008: Theoretical Informatics, pg. 759-771, -Springer (LNCS 4957). -
arXiv:0707.1260. -

- -
58
-
-Dominik Janzing and Pawel Wocjan -
BQP-complete problems concerning mixing properties of classical - random walks on sparse graphs. -
-arXiv:quant-ph/0610235, 2006. -

- -
59
-
-Dominik Janzing and Pawel Wocjan -
A promiseBQP-complete string rewriting problem. -
Quantum Information and Computation, 10(3/4):234-257, 2010. -
arXiv:0705.1180. -

- -
60
-
-Dominik Janzing and Pawel Wocjan -
A simple promiseBQP-complete matrix problem. -
Theory of Computing, 3:61-79, 2007. -
-arXiv:quant-ph/0606229. -

- -
61
-
-Stephen P. Jordan -
Fast quantum algorithm for numerical gradient estimation. -
Physical Review Letters, 95:050501, 2005. -
-arXiv:quant-ph/0405146. -

- -
62
-
-Stephen P. Jordan -
Quantum Computation Beyond the Circuit Model. -
PhD thesis, Massachusetts Institute of Technology, 2008. -
-arXiv:0809.2307. -

- -
63
-
-Ivan Kassal, Stephen P. Jordan, Peter J. Love, Masoud Mohseni, and Alán - Aspuru-Guzik -
Quantum algorithms for the simulation of chemical dynamics. -
Proc. Natl. Acad. Sci. Vol. 105, pg. 18681, 2008. -
arXiv:0801.2986. -

- -
64
-
-Kiran S. Kedlaya -
Quantum computation of zeta functions of curves. -
Computational Complexity, 15:1-19, 2006. -
-arXiv:math/0411623. -

- -
65
-
-E. Knill and R. Laflamme -
Quantum computation and quadratically signed weight enumerators. -
Information Processing Letters, 79(4):173-179, 2001. -
-arXiv:quant-ph/9909094. -

- -
66
-
-Greg Kuperberg -
A subexponential-time quantum algorithm for the dihedral hidden - subgroup problem. -
SIAM Journal on Computing, 35(1):170-188, 2005. -
arXiv:quant-ph/0302112. -

- -
67
-
-Daniel A. Lidar -
On the quantum computational complexity of the Ising spin glass - partition function and of knot invariants. -
New Journal of Physics Vol. 6, pg. 167, 2004. -
-arXiv:quant-ph/0309064. -

- -
68
-
-Daniel A. Lidar and Haobin Wang -
Calculating the thermal rate constant with exponential speedup on a - quantum computer. -
Physical Review E, 59(2):2429-2438, 1999. -
-arXiv:quant-ph/9807009. -

- -
69
-
-Chris Lomont -
The hidden subgroup problem - review and open problems. -
-arXiv:quant-ph/0411037, 2004. -

- -
70
-
-Frédéric Magniez, Miklos Santha, and Mario Szegedy -
Quantum algorithms for the triangle problem. -
SIAM Journal on Computing, 37(2):413-424, 2007. -
-arXiv:quant-ph/0310134. -

- -
71
-
-Carlos Magno, M. Cosme, and Renato Portugal -
Quantum algorithm for the hidden subgroup problem on a class of - semidirect product groups. -
-arXiv:quant-ph/0703223, 2007. -

- -
72
-
-Cristopher Moore, Daniel Rockmore, Alexander Russell, and Leonard Schulman -
The power of basis selection in Fourier sampling: the hidden - subgroup problem in affine groups. -
In Proceedings of the 15th ACM-SIAM Symposium on Discrete - Algorithms, pages 1113-1122, 2004. -
-arXiv:quant-ph/0211124. -

- -
73
-
-M. Mosca -
Quantum searching, counting, and amplitude amplification by - eigenvector analysis. -
In R. Freivalds, editor, Proceedings of International Workshop - on Randomized Algorithms, pages 90-100, 1998. -

- -
74
-
-Michele Mosca -
Quantum Computer Algorithms. -
PhD thesis, University of Oxford, 1999. -

- -
75
-
-Ashwin Nayak and Felix Wu -
The quantum query complexity of approximating the median and related - statistics. -
In Proceedings of 31st ACM Symposium on the Theory of - Computing, 1999. -
-arXiv:quant-ph/9804066. -

- -
76
-
-Michael A. Nielsen and Isaac L. Chuang. -
Quantum Computation and Quantum Information. -
Cambridge University Press, Cambridge, UK, 2000. -

- -
77
-
-Erich Novak -
Quantum complexity of integration. -
Journal of Complexity, 17:2-16, 2001. -
-arXiv:quant-ph/0008124. -

- -
78
-
-Oded Regev -
Quantum computation and lattice problems. -
In Proceedings of the 43rd Symposium on Foundations of Computer - Science, 2002. -
-arXiv:cs/0304005. -

- -
79
-
-Oded Regev -
A subexponential time algorithm for the dihedral hidden subgroup - problem with polynomial space. -
-arXiv:quant-ph/0406151, 2004. -

- -
80
-
-Ben Reichardt and Robert Špalek -
Span-program-based quantum algorithm for evaluating formulas. -
Proceedings of STOC 2008 -
arXiv:0710.2630. -

- -
81
-
-Martin Roetteler and Thomas Beth -
Polynomial-time solution to the hidden subgroup problem for a class - of non-abelian groups. -
-arXiv:quant-ph/9812070, 1998. -

- -
82
-
-Peter W. Shor -
Polynomial-time algorithms for prime factorization and discrete - logarithms on a quantum computer. -
SIAM Journal on Computing, 26(5):1484-1509, 1997. -
-arXiv:quant-ph/9508027. -

- -
83
-
-Peter W. Shor and Stephen P. Jordan -
Estimating Jones polynomials is a complete problem for one clean - qubit. -
Quantum Information and Computation, 8(8/9):681-714, 2008. -
-arXiv:0707.2831. -

- -
84
-
-R. D. Somma, S. Boixo, and H. Barnum -
Quantum simulated annealing. -
-arXiv:0712.1008, 2007. -

- -
85
-
-M. Szegedy -
Quantum speed-up of Markov chain based algorithms. -
In Proceedings of the 45th IEEE Symposium on Foundations of - Computer Science, pg. 32, 2004. -

- -
86
-
-Wim van Dam -
Quantum algorithms for weighing matrices and quadratic residues. -
Algorithmica, 34(4):413-428, 2002. -
-arXiv:quant-ph/0008059. -

- -
87
-
-Wim van Dam -
Quantum computing and zeros of zeta functions. -
-arXiv:quant-ph/0405081, 2004. -

- -
88
-
-Wim van Dam and Sean Hallgren -
Efficient quantum algorithms for shifted quadratic character - problems. -
-arXiv:quant-ph/0011067, 2000. -

- -
89
-
-Wim van Dam, Sean Hallgren, and Lawrence Ip -
Quantum algorithms for some hidden shift problems. -
SIAM Journal on Computing, 36(3):763-778, 2006. -
-arXiv:quant-h/0211140. -

- -
90
-
-Wim van Dam and Gadiel Seroussi -
Efficient quantum algorithms for estimating Gauss sums. -
-arXiv:quant-ph/0207131, 2002. -

- -
91
-
-John Watrous -
Quantum algorithms for solvable groups. -
In Proceedings of the 33rd ACM Symposium on Theory of - Computing, pages 60-67, 2001. -
-arXiv:quant-ph/0011023. -

- -
92
-
-Stephen Wiesner -
Simulations of many-body quantum systems by a quantum computer. -
-arXiv:quant-ph/9603028, 1996. -

- -
93
-
-Pawel Wocjan and Jon Yard -
The Jones polynomial: quantum algorithms and applications in - quantum complexity theory. -
Quantum Information and Computation 8(1/2):147-180, 2008. -
arXiv:quant-ph/0603069. -

- -
94
-
-Andrew Yao -
On computing the minima of quadratic forms. -
In Proceedings of the 7th ACM Symposium on Theory of Computing, pages 23-26, 1975. -

- -
95
-
-Christof Zalka -
Efficient simulation of quantum systems by quantum computers. -
Proceedings of the Royal Society of London Series A, 454:313, - 1996. -
-arXiv:quant-ph/9603026. -

- -
96
-
-Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser -
Quantum computation by adiabatic evolution. -
arXiv:quant-ph/0001106, -2000. -

- -
97
-
-Dorit Aharonov, Wim van Dam, Julia Kempe, Zeph Landau, Seth Lloyd, and -Oded Regev -
Adiabatic Quantum Computation is Equivalent to Standard Quantum -Computation. -
SIAM Journal on Computing, 37(1):166-194, 2007. -
arXiv:quant-ph/0405098 -

- -
98
-
-Jérémie Roland and Nicolas J. Cerf -
Quantum search by local adiabatic evolution. -
Physical Review A, 65(4):042308, 2002. -
-arXiv:quant-ph/0107015 -

- -
99
-
-L.-A. Wu, M.S. Byrd, and D. A. Lidar -
Polynomial-Time Simulation of Pairing Models on a Quantum Computer. -
Physical Review Letters, 89(6):057904, 2002. -
-arXiv:quant-ph/0108110 -

- -
100
-
-Eli Biham, Ofer Biham, David Biron, Markus Grassl, and Daniel Lidar -
Grover's quantum search algorithm for an arbitrary initial -amplitude distribution. -
Physical Review A, 60(4):2742, 1999. -
-arXiv:quant-ph/9807027 -and arXiv:quant-ph/0010077 -

- -
101
-
-Andrew Childs, Shelby Kimmel, and Robin Kothari -
The quantum query complexity of read-many formulas -
In Proceedings of ESA 2012, pg. 337-348, Springer. (LNCS 7501) -
arXiv:1112.0548, 2011. -

- -
102
-
-Alán Aspuru-Guzik, Anthony D. Dutoi, Peter J. Love, and Martin Head-Gordon -
Simulated quantum computation of molecular energies. -
Science, 309(5741):1704-1707, 2005. -
arXiv:quant-ph/0604193 -

- -
103
-
-A. M. Childs, A. J. Landahl, and P. A. Parrilo -
Quantum algorithms for the ordered search problem via semidefinite -programming. -
Physical Review A, 75 032335, 2007. -
arXiv:quant-ph/0608161 -

- -
104
-
-Aram W. Harrow, Avinatan Hassidim, and Seth Lloyd -
Quantum algorithm for solving linear systems of equations. -
Physical Review Letters 15(103):150502, 2009. -
arXiv:0811.3171. -

- -
105
-
-Martin Roetteler -
Quantum algorithms for highly non-linear Boolean functions. -
Proceedings of SODA 2010 -
arXiv:0811.3208. -

- -
106
-
-Stephen P. Jordan -
Fast quantum algorithms for approximating the irreducible representations -of groups. -
arXiv:0811.0562, 2008. -

- -
107
-
-Tim Byrnes and Yoshihisa Yamamoto -
Simulating lattice gauge theories on a quantum computer. -
Physical Review A, 73, 022328, 2006. -
arXiv:quant-ph/0510027. -

- -
108
-
-D. Simon -
On the Power of Quantum Computation. -
In Proceedings of the 35th Symposium on Foundations of Computer - Science, pg. 116-123, 1994. -

- -
109
-
-John Proos and Christof Zalka -
Shor's discrete logarithm quantum algorithm for elliptic curves. -
Quantum Information and Computation, Vol. 3, No. 4, -pg.317-344, 2003. -
arXiv:quant-ph/0301141. -

- -
110
-
-Yi-Kai Liu -
Quantum algorithms using the curvelet transform. -
Proceedings of STOC 2009, pg. 391-400. -
arXiv:0810.4968. -

- -
111
-
-Wim van Dam and Igor Shparlinski -
Classical and quantum algorithms for exponential congruences. -
Proceedings of TQC 2008, pg. 1-10. -
arXiv:0804.1109. -

- -
112
-
-Itai Arad and Zeph Landau -
Quantum computation and the evaluation of tensor networks. -
SIAM Journal on Computing, 39(7):3089-3121, 2010. -
arXiv:0805.0040. -

- -
113
-
-M. Van den Nest, W. Dür, R. Raussendorf, and H. J. Briegel -
Quantum algorithms for spin models and simulable gate sets for quantum -computation. -
Physical Review A, 80:052334, 2009. -
arXiv:0805.1214. -

- -
114
-
-Silvano Garnerone, Annalisa Marzuoli, and Mario Rasetti -
Efficient quantum processing of 3-manifold topological -invariants. -
Advances in Theoretical and Mathematical Physics, -13(6):1601-1652, 2009. -
arXiv:quant-ph/0703037. -

- -
115
-
-Louis H. Kauffman and Samuel J. Lomonaco Jr. -
q-deformed spin networks, knot polynomials and anyonic topological quantum computation. -
Journal of Knot Theory, Vol. 16, No. 3, pg. 267-332, 2007. -
arXiv:quant-ph/0606114. -

- -
116
-
-Arthur Schmidt and Ulrich Vollmer -
Polynomial time quantum algorithm for the computation of the unit group of a number field. -
In Proceedings of the 37th Symposium on the Theory of Computing, pg. 475-480, 2005. -

- -
117
-
-Sergey Bravyi, Aram Harrow, and Avinatan Hassidim -
Quantum algorithms for testing properties of distributions. -
IEEE Transactions on Information Theory 57(6):3971-3981, 2011. -
arXiv:0907.3920. -

- -
118
-
-Pawel M. Wocjan, Stephen P. Jordan, Hamed Ahmadi, and Joseph P. Brennan -
Efficient quantum processing of ideals in finite rings. -
arXiv:0908.0022, 2009. -

- -
119
-
-V. Arvind, Bireswar Das, and Partha Mukhopadhyay -
The complexity of black-box ring problems. -
In Proceedings of COCCOON 2006, pg 126-145. -

- -
120
-
-V. Arvind and Partha Mukhopadhyay -
Quantum query complexity of multilinear identity testing. -
In Proceedings of STACS 2009, pg. 87-98. -

- -
121
-
-David Poulin and Pawel Wocjan -
Sampling from the thermal quantum Gibbs state and evaluating partition functions with a quantum computer. -
Physical Review Letters 103:220502, 2009. -
arXiv:0905.2199 -

- -
122
-
-Pawel Wocjan, Chen-Fu Chiang, Anura Abeyesinghe, and Daniel Nagaj -
Quantum speed-up for approximating partition functions. -
Physical Review A 80:022340, 2009. -
arXiv:0811.0596 -

- -
123
-
-Ashley Montanaro -
Quantum search with advice. -
In Proceedings of the 5th conference on Theory of quantum -computation, communication, and cryptography (TQC 2010) -
arXiv:0908.3066 -

- -
124
-
-Laszlo Babai, Robert Beals, and Akos Seress -
Polynomial-time theory of matrix groups. -
In Proceedings of STOC 2009, pg. 55-64. -

- -
125
-
-Peter Shor -
Algorithms for Quantum Computation: Discrete Logarithms and Factoring. -
In Proceedings of FOCS 1994, pg. 124-134. -

- -
126
-
-Aaron Denney, Cristopher Moore, and Alex Russell -
Finding conjugate stabilizer subgroups in PSL(2;q) and related -groups. -
Quantum Information and Computation 10(3):282-291, 2010. -
arXiv:0809.2445. -

- -
127
-
-Kevin K. H. Cheung and Michele Mosca -
Decomposing finite Abelian groups. -
Quantum Information and Computation 1(2):26-32, 2001. -
arXiv:cs/0101004. -

- -
128
-
-François Le Gall -
An efficient quantum algorithm for some instances of the group -isomorphism problem. -
In Proceedings of STACS 2010. -
arXiv:1001.0608. -

- -
129
-
-Gorjan Alagic, Stephen Jordan, Robert Koenig, and Ben Reichardt -
Approximating Turaev-Viro 3-manifold invariants is universal for -quantum computation. -
Physical Review A 82, 040302(R), 2010. -
arXiv:1003.0923 -

- -
130
-
-Martin Rötteler -
Quantum algorithms to solve the hidden shift problem for quadratics and for functions of large Gowers norm. -
In Proceedings of MFCS 2009, pg 663-674. -
arXiv:0911.4724. -

- -
131
-
-Arthur Schmidt -
Quantum Algorithms for many-to-one Functions to Solve the Regulator and the Principal Ideal Problem. -
arXiv:0912.4807, 2009. -

- -
132
-
-K. Temme, T.J. Osborne, K.G. Vollbrecht, D. Poulin, and F. Verstraete -
Quantum Metropolis Sampling. -
Nature, Vol. 471, pg. 87-90, 2011. -
arXiv:0911.3635. -

- -
133
-
-Andris Ambainis -
Quantum Search Algorithms. -
SIGACT News, 35 (2):22-35, 2004. -
arXiv:quant-ph/0504012 -

- -
134
-
-Nicolas J. Cerf, Lov K. Grover, and Colin P. Williams -
Nested quantum search and NP-hard problems. -
Applicable Algebra in Engineering, Communication and Computing, 10 (4-5):311-338, 2000. -

- -
135
-
-Mario Szegedy
-Spectra of Quantized Walks and a \( \sqrt{\delta \epsilon} \) rule.
-arXiv:quant-ph/0401053, -2004. -

- -
136
-
-Kazuo Iwama, Harumichi Nishimura, Rudy Raymond, and Junichi Teruyama -
Quantum Counterfeit Coin Problems. -
In Proceedings of 21st International Symposium on Algorithms - and Computation (ISAAC2010), LNCS 6506, pp.73-84, 2010. -
arXiv:1009.0416 -

- -
137
-
-Barbara Terhal and John Smolin -
Single quantum querying of a database. -
Physical Review A 58:1822, 1998. -
arXiv:quant-ph/9705041 -

- -
138
-
-Andris Ambainis -
Variable time amplitude amplification and a faster quantum algorithm -for solving systems of linear equations. -
arXiv:1010.4458, 2010. -

- -
139
-
-Frédéric Magniez and Ashwin Nayak -
Quantum complexity of testing group commutativity. -
In Proceedings of 32nd International Colloquium on Automata, -Languages and Programming. LNCS 3580, pg. 1312-1324, 2005. -
arXiv:quant-ph/0506265 -

- -
140
-
-Andrew Childs and Robin Kothari -
Quantum query complexity of minor-closed graph properties. -
In Proceedings of the 28th Symposium on Theoretical Aspects of - Computer Science (STACS 2011), pg. 661-672 -
arXiv:1011.1443 -

- -
141
-
-Frédéric Magniez, Ashwin Nayak, Jérémie Roland, and Miklos Santha -
Search via quantum walk. -
In Proceedings STOC 2007, pg. 575-584. -
arXiv:quant-ph/0608026 -

- -
142
-
-Dmitry Gavinsky, Martin Roetteler, and Jérémy Roland -
Quantum algorithm for the Boolean hidden shift problem. -
In Proceedings of the 17th annual international conference -on Computing and combinatorics (COCOON '11), 2011. -
arXiv:1103.3017 -

- -
143
-
-Mark Ettinger and Peter Høyer -
On quantum algorithms for noncommutative hidden subgroups. -
Advances in Applied Mathematics, Vol. 25, No. 3, pg. 239-251, 2000. -
arXiv:quant-ph/9807029 -

- -
144
-
-Andris Ambainis, Andrew Childs, and Yi-Kai Liu -
Quantum property testing for bounded-degree graphs. -
In Proceedings of RANDOM '11: Lecture Notes in Computer Science 6845, pp. 365-376, 2011. -
arXiv:1012.3174 -

- -
145
-
-G. Ortiz, J.E. Gubernatis, E. Knill, and R. Laflamme -
Quantum algorithms for Fermionic simulations. -
Physical Review A 64: 022319, 2001. -
arXiv:cond-mat/0012334 -

- -
146
-
-Ashley Montanaro -
The quantum query complexity of learning multilinear -polynomials. -
Information Processing Letters, 112(11):438-442, 2012. -
arXiv:1105.3310. -

- -
147
-
-Tad Hogg -
Highly structured searches with quantum computers. -
Physical Review Letters 80: 2473, 1998. -

- -
148
-
-Markus Hunziker and David A. Meyer -
Quantum algorithms for highly structured search problems. -
Quantum Information Processing, Vol. 1, No. 3, pg. 321-341, 2002. -

- -
149
-
-Ben Reichardt -
Span programs and quantum query complexity: The general adversary -bound is nearly tight for every Boolean function. -
In Proceedings of the 50th IEEE Symposium on Foundations of -Computer Science (FOCS '09), pg. 544-551, 2009. -
arXiv:0904.2759 -

- -
150
-
-Aleksandrs Belovs -
Span-program-based quantum algorithm for the rank problem. -
arXiv:1103.0842, -2011. -

- -
151
-
-Sebastian Dörn and Thomas Thierauf -
The quantum query complexity of the determinant. -
Information Processing Letters Vol. 109, No. 6, pg. 305-328, 2009. -

- -
152
-
-Aleksandrs Belovs -
Span programs for functions with constant-sized 1-certificates. -
In Proceedings of STOC 2012, pg. 77-84. -
arXiv:1105.4024. -

- -
153
-
-Troy Lee, Frédéric Magniez, and Mikos Santha -
A learning graph based quantum query algorithm for finding -constant-size subgraphs. -
Chicago Journal of Theoretical Computer Science, -Vol. 2012, Article 10, 2012. -
arXiv:1109.5135. -

- -
154
-
-Aleksandrs Belovs and Troy Lee -
Quantum algorithm for k-distinctness with prior knowledge on the input. -
arXiv:1108.3022, 2011. -

- -
155
-
-François Le Gall -
Improved output-sensitive quantum algorithms for Boolean matrix multiplication. -
In Proceedings of the 23rd Annual ACM-SIAM Symposium on Discrete -Algorithms (SODA '12), 2012. -

- -
156
-
-Dominic Berry -
Quantum algorithms for solving linear differential equations. -
J. Phys. A: Math. Theor.47, 105301, 2014. -
[arXiv:1010.2745]. -

- -
157
-
-Virginia Vassilevska Williams and Ryan Williams -
Subcubic equivalences between path, matrix, and triangle problems. -
In 51st IEEE Symposium on Foundations of Computer Science - (FOCS '10) pg. 645 - 654, 2010. -

- -
158
-
-Ben W. Reichardt -
Reflections for quantum query algorithms. -
In Proceedings of the 22nd ACM-SIAM Symposium on Discrete - Algorithms (SODA), pg. 560-569, 2011. -
arXiv:1005.1601 -

- -
159
-
-Ben W. Reichardt -
Span-program-based quantum algorithm for evaluating unbalanced formulas. -
arXiv:0907.1622, 2009. -

- -
160
-
-Ben W. Reichardt -
Faster quantum algorithm for evaluating game trees. -
In Proceedings of the 22nd ACM-SIAM Symposium on Discrete - Algorithms (SODA), pg. 546-559, 2011. -
arXiv:0907.1623 -

- -
161
-
-Stacey Jeffery, Robin Kothari, and Frédéric Magniez -
Improving quantum query complexity of Boolean matrix -multiplication using graph collision. -
In Proceedings of ICALP 2012, pg. 522-532. -
arXiv:1112.5855. -

- -
162
-
-Andrew M. Childs and Jason M. Eisenberg -
Quantum algorithms for subset finding. -
Quantum Information and Computation 5(7):593-604, 2005. -
arXiv:quant-ph/0311038. -

- -
163
-
-Aleksandrs Belovs and Robert Špalek -
Adversary lower bound for the k-sum problem. -
In Proceedings of ITCS 2013, pg. 323-328. -
arXiv:1206.6528. -

- -
164
-
-Bohua Zhan, Shelby Kimmel, and Avinatan Hassidim -
Super-polynomial quantum speed-ups for Boolean evaluation trees -with hidden structure. -
ITCS 2012: Proceedings of the 3rd Innovations in Theoretical - Computer Science, ACM, pg. 249-265. -
arXiv:1101.0796 -

- -
165
-
-Shelby Kimmel -
Quantum adversary (upper) bound. -
39th International Colloquium on Automata, Languages and - Programming - ICALP 2012 Volume 7391, p. 557-568. -
arXiv:1101.0797 -

- -
166
-
-Stephen Jordan, Keith Lee, and John Preskill -
Quantum algorithms for quantum field theories. -
Science, Vol. 336, pg. 1130-1133, 2012. -
arXiv:1111.3633 -

- -
167
-
-Andris Ambainis and Ashley Montanaro -
Quantum algorithms for search with wildcards and combinatorial -group testing. -
arXiv:1210.1148, 2012. -

- -
168
-
-Andris Ambainis and Robert Špalek -
Quantum algorithms for matching and network flows. -
Proceedings of STACS 2007, pg. 172-183. -
arXiv:quant-ph/0508205 -

- -
169
-
-Nathan Wiebe, Daniel Braun, and Seth Lloyd -
Quantum data-fitting. -
Physical Review Letters 109, 050505, 2012. -
arXiv:1204.5242 -

- -
170
-
-Andrew Childs and Nathan Wiebe -
Hamiltonian simulation using linear combinations of unitary -operations. -
Quantum Information and Computation 12, 901-924, 2012. -
arXiv:1202.5822 -

- -
171
-
-Stacey Jeffery, Robin Kothari, and Frédéric Magniez -
Nested quantum walks with quantum data structures. -
In Proceedings of the 24th ACM-SIAM Symposium on Discrete Algorithms (SODA'13), pg. 1474-1485, 2013. -
arXiv:1210.1199 -

- -
172
-
-Aleksandrs Belovs -
Learning-graph-based quantum algorithm for k-distinctness. -
Proceedings of STOC 2012, pg. 77-84. -
arXiv:1205.1534, 2012. -

- -
173
-
-Andrew Childs, Stacey Jeffery, Robin Kothari, and Frédéric Magniez -
A time-efficient quantum walk for 3-distinctness using nested updates. -
arXiv:1302.7316, 2013. -

- -
174
-
-Hari Krovi and Alexander Russell -
Quantum Fourier transforms and the complexity of link invariants -for quantum doubles of finite groups. -
Commun. Math. Phys. 334, 743-777, 2015 -
arXiv:1210.1550 -

- -
175
-
-Troy Lee, Frédéric Magniez, and Miklos Santha -
Improved quantum query algorithms for triangle finding and -associativity testing. -
arXiv:1210.1014, 2012. -

- -
176
-
-Silvano Garnerone, Paolo Zanardi, and Daniel A. Lidar -
Adiabatic quantum algorithm for search engine ranking. -
Physical Review Letters 108:230506, 2012. -

- -
177
-
-R. D. Somma, S. Boixo, H. Barnum, and E. Knill -
Quantum simulations of classical annealing. -
Physical Review Letters 101:130504, 2008. -
arXiv:0804.1571 -

- -
178
-
-Daniel J. Bernstein, Stacey Jeffery, Tanja Lange, and Alexander Meurer -
Quantum algorithms for the subset-sum problem. -
from cr.yp.to. -

- -
179
-
-Boris Altshuler, Hari Krovi, and Jérémie Roland -
Anderson localization casts clouds over adiabatic quantum optimization. -
Proceedings of the National Academy of Sciences -107(28):12446-12450, 2010. -
arXiv:0912.0746 -

- -
180
-
-Ben Reichardt -
The quantum adiabatic optimization algorithm and local minima. -
In Proceedings of STOC 2004, pg. 502-510. -[Erratum]. -

- -
181
-
-Edward Farhi, Jeffrey Goldstone, and Sam Gutmann -
Quantum adiabatic evolution algorithms versus simulated annealing. -
arXiv:quant-ph/0201031, - 2002. -

- -
182
-
-E. Farhi, J. Goldstone, D. Gosset, S. Gutmann, H. B. Meyer, and P. Shor -
Quantum adiabatic algorithms, small gaps, and different paths. -
Quantum Information and Computation, 11(3/4):181-214, 2011. -
arXiv:0909.4766. -

- -
183
-
-Sergey Bravyi, David P. DiVincenzo, Roberto I. Oliveira, and Barbara M. Terhal -
The Complexity of Stoquastic Local Hamiltonian Problems. -
Quantum Information and Computation, 8(5):361-385, 2008. -
arXiv:quant-ph/0606140. -

- -
184
-
-Rolando D. Somma and Sergio Boixo -
Spectral gap amplification. -
SIAM Journal on Computing, 42:593-610, 2013. -
arXiv:1110.2494. -

- -
185
-
-Sabine Jansen, Mary-Beth Ruskai, Ruedi Seiler -
Bounds for the adiabatic approximation with applications to quantum computation. -
Journal of Mathematical Physics, 48:102111, 2007. -
arXiv:quant-ph/0603175. -

- -
186
-
-E. Farhi, J. Goldstone, S. Gutmann, J. Lapan, A. Lundgren, and D. Preda -
A Quantum Adiabatic Evolution Algorithm Applied to Random Instances of an NP-Complete Problem. -
Science, 292(5516):472-475, 2001. -
arXiv:quant-ph/0104129. -

- -
187
-
-Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj -
How to make the quantum adiabatic algorithm fail. -
International Journal of Quantum Information, 6(3):503-516, 2008. -
arXiv:quant-ph/0512159. -

- -
188
-
-Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj -
Unstructured randomness, small gaps, and localization. -
Quantum Information and Computation, 11(9/10):840-854, 2011. -
arXiv:1010.0009. -

- -
189
-
-Edward Farhi, Jeffrey Goldstone, Sam Gutmann -
Quantum adiabatic evolution algorithms with different paths. -
arXiv:quant-ph/0208135, -2002. -

- -
190
-
-Wim van Dam, Michele Mosca, and Umesh Vazirani -
How powerful is adiabatic quantum computation? -
In Proceedings of FOCS 2001, pg. 279-287. -
arXiv:quant-ph/0206003 -[See also this.] -

- -
191
-
-E. Farhi, D. Gosset, I. Hen, A. W. Sandvik, P. Shor, A. P. Young, and F. Zamponi -
The performance of the quantum adiabatic algorithm on random -instances of two optimization problems on regular hypergraphs. -
Physical Review A, 86:052334, 2012. -
arXiv:1208.3757. -

- -
192
-
-Kristen L. Pudenz and Daniel A. Lidar -
Quantum adiabatic machine learning. -
Quantum Information Processing, 12:2027, 2013. -
arXiv:1109.0325. -

- -
193
-
-Frank Gaitan and Lane Clark -
Ramsey numbers and adiabatic quantum computing. -
Physical Review Letters, 108:010501, 2012. -
arXiv:1103.1345. -

- -
194
-
-Frank Gaitan and Lane Clark -
Graph isomorphism and adiabatic quantum computing. -
Physical Review A, 89(2):022342, 2014. -
arXiv:1304.5773, -2013. -

- -
195
-
-Hartmut Neven, Vasil S. Denchev, Geordie Rose, and William G. Macready -
Training a binary classifier with the quantum adiabatic algorithm. -
arXiv:0811.0416, -2008. -

- -
196
-
-Robert Beals -
Quantum computation of Fourier transforms over symmetric groups. -
In Proceedings of STOC 1997, pg. 48-53. -

- -
197
-
-Dave Bacon, Isaac L. Chuang, and Aram W. Harrow -
The quantum Schur transform: I. efficient qudit circuits. -
In Proceedings of SODA 2007, pg. 1235-1244. -
arXiv:quant-ph/0601001. -

- -
198
-
-S. Morita, H. Nishimori -
Mathematical foundation of quantum annealing. -
Journal of Methematical Physics, 49(12):125210, 2008. -

- -
199
-
-A. B. Finnila, M. A. Gomez, C. Sebenik, C. Stenson, J. D. Doll -
Quantum annealing: a new method for minimizing multidimensional -functions. -
Chemical Physics Letters, 219:343-348, 1994. -

- -
200
-
-D. Gavinsky and T. Ito -
A quantum query algorithm for the graph collision problem. -
arXiv:1204.1527, -2012. -

- -
201
-
-Andris Ambainis, Kaspars Balodis, Jānis Iraids, Raitis Ozols, and -Juris Smotrovs -
Parameterized quantum query complexity of graph collision. -
arXiv:1305.1021, -2013. -

- -
202
-
-Kevin C. Zatloukal -
Classical and quantum algorithms for testing equivalence of -group extensions. -
arXiv:1305.1327, -2013. -

- -
203
-
-Andrew Childs and Gábor Ivanyos -
Quantum computation of discrete logarithms in semigroups. -
arXiv:1310.6238, -2013. -

- -
204
-
-Matan Banin and Boaz Tsaban -
A reduction of semigroup DLP to classic DLP. -
arXiv:1310.7903, -2013. -

- -
205
-
-D. W. Berry, R. Cleve, and R. D. Somma -
Exponential improvement in precision for Hamiltonian-evolution simulation. -
arXiv:1308.5424, -2013. -

- -
206
-
-François Le Gall and Harumichi Nishimura -
Quantum algorithms for matrix products over semirings. -
arXiv:1310.3898, -2013. -

- -
207
-
-Nolan Wallach -
A quantum polylog algorithm for non-normal maximal cyclic hidden -subgroups in the affine group of a finite field. -
arXiv:1308.1415, -2013. -

- -
208
-
-Lov Grover -
Fixed-point quantum search. -
Phys. Rev. Lett. 95(15):150501, 2005. -
arXiv:quant-ph/0503205 -

- -
209
-
-Tathagat Tulsi, Lov Grover, and Apoorva Patel -
A new algorithm for fixed point quantum search. -
Quantum Information and Computation 6(6):483-494, 2005. -
arXiv:quant-ph/0505007 -

- -
210
-
-Guoming Wang -
Quantum algorithms for approximating the effective resistances of electrical networks. -
arXiv:1311.1851 -

- -
211
-
-Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and Rolando D. Somma -
Exponential improvement in precision for simulating sparse Hamiltonians -
arXiv:1312.1414 -

- -
212
-
-Thomas Decker, Peter Høyer, Gabor Ivanyos, and Miklos Santha -
Polynomial time quantum algorithms for certain bivariate hidden polynomial problems -
arXiv:1305.1543 -

- -
213
-
-Kirsten Eisenträger, Sean Hallgren, Alexei Kitaev, and Fang Song -
A quantum algorithm for computing the unit group of an arbitrary degree number field -
In Proceedings of STOC 2014 pg. 293-302. -

- -
214
-
-Seth Lloyd, Masoud Mohseni, and Patrick Robentrost -
Quantum algorithms for supervised and unsupervised machine learning -
arXiv:1307.0411 -

- -
215
-
-Ashley Montanaro -
Quantum pattern matching fast on average -
arXiv:1408.1816 -

- -
216
-
-Charles H. Bennett, Ethan Bernstein, Gilles Brassard, and Umesh Vazirani -
Strengths and weaknesses of quantum computing -
SIAM J. Comput. 26(5):1524-1540, 1997 -
arXiv:quant-ph/9701001 -

- -
217
-
-H. Ramesh and V. Vinay -
String matching in \( \widetilde{O}(\sqrt{n} + \sqrt{m}) \) -quantum time -
Journal of Discrete Algorithms 1:103-110, 2003 -
arXiv:quant-ph/0011049 -

- -
218
-
-Greg Kuperberg -
Another subexponential-time quantum algorithm for the dihedral -hidden subgroup problem -
In Proceedings of TQC pg. 20-34, 2013 -
arXiv:1112.3333 -

- -
219
-
-Peter Høyer, Jan Neerbek, and Yaoyun Shi -
Quantum complexities of ordered searching, sorting, and element -distinctness -
In Proceedings of ICALP pg. 346-357, 2001 -
arXiv:quant-ph/0102078 -

- -
220
-
-Amnon Ta-Shma -
Inverting well conditioned matrices in quantum logspace -
In Proceedings of STOC 2013 pg. 881-890. -

- -
221
-
-Nathan Wiebe, Ashish Kapoor, and Krysta Svore -
Quantum deep learning -
arXiv:1412.3489 -

- -
222
-
-Seth Lloyd, Silvano Garnerone, and Paolo Zanardi -
Quantum algorithms for topological and geometric analysis of big data -
arXiv:1408.3106 -

- -
223
-
-David A. Meyer and James Pommersheim -
Single-query learning from abelian and non-abelian Hamming -distance oracles -
arXiv:0912.0583 -

- -
224
-
-Markus Hunziker, David A. Meyer, Jihun Park, James Pommersheim, and -Mitch Rothstein -
The geometry of quantum learning -
Quantum Information Processing 9:321-341, 2010. -
arXiv:quant-ph/0309059 -

- -
225
-
-Lawrence M. Ioannou and Michele Mosca -
Limitations on some simple adiabatic quantum algorithms -
International Journal of Quantum Information, 6(3):419-426, 2008. -
arXiv:quant-ph/0702241 -

- -
226
-
-Michael Jarret and Stephen P. Jordan -
Adiabatic optimization without local minima -
Quantum Information and Computation, 15(3/4):0181-0199, 2015. -
arXiv:1405.7552 -

- -
227
-
-Matthew B. Hastings, Dave Wecker, Bela Bauer, and Matthias Troyer -
Improving quantum algorithms for quantum chemistry -
Quantum Information and Computation, 15(1/2):0001-0021, 2015. -
arXiv:1403.1539 -

- -
228
-
-Stephen P. Jordan, Keith S. M. Lee, and John Preskill -
Quantum simulation of scattering in scalar quantum field theories -
Quantum Information and Computation, 14(11/12):1014-1080, 2014. -
arXiv:1112.4833 -

- -
229
-
-Stephen P. Jordan, Keith S. M. Lee, and John Preskill -
Quantum algorithms for fermionic quantum field theories -
arXiv:1404.7115 -

- -
230
-
-Gavin K. Brennen, Peter Rohde, Barry C. Sanders, and Sukhi Singh -
Multi-scale quantum simulation of quantum field theory using wavelets -
arXiv:1412.0750 -

- -
231
-
-Hefeng Wang, Sabre Kais, Alán Aspuru-Guzik, and Mark R. Hoffmann. -
Quantum algorithm for obtaining the energy spectrum of molecular -systems -
Physical Chemistry Chemical Physics, 10(35):5388-5393, 2008. -
arXiv:0907.0854 -

- -
232
-
-Ivan Kassal and Alán Aspuru-Guzik -
Quantum algorithm for molecular properties and geometry optimization -
Journal of Chemical Physics, 131(22), 2009. -
arXiv:0908.1921 -

- -
233
-
-James D. Whitfield, Jacob Biamonte, and Alán Aspuru-Guzik -
Simulation of electronic structure Hamiltonians using quantum computers -
Molecular Physics, 109(5):735-750, 2011. -
arXiv:1001.3855 -

- -
234
-
-Borzu Toloui and Peter J. Love -
Quantum algorithms for quantum chemistry based on the sparsity -of the CI-matrix -
arXiv:1312.2529 -

- -
235
-
-James D. Whitfield -
Spin-free quantum computational simulations and symmetry adapted states -
Journal of Chemical Physics, 139(2):021105, 2013. -
arXiv:1306.1147 -

- -
236
-
-Andrew W. Cross, Graeme Smith, and John A. Smolin -
Quantum learning robust to noise -
arXiv:1407.5088 -

- -
237
-
-Aram W. Harrow and David J. Rosenbaum -
Uselessness for an oracle model with internal randomness -
Quantum Information and Computation 14(7/8):608-624, 2014 -
arXiv:1111.1462 -

- -
238
-
-Jon R. Grice and David A. Meyer -
A quantum algorithm for Viterbi decoding of classical -convolutional codes -
arXiv:1405.7479 -

- -
239
-
-Alexander Barg and Shiyu Zhou -
A quantum decoding algorithm of the simplex code -
Proceedings of the 36th Annual Allerton Conference, 1998 -
Available at author's homepage. -

- -
240
-
-Guoming Wang -
Span-program-based quantum algorithm for tree detection -
arXiv:1309.7713, 2013. -

- -
241
-
-François Le Gall, Harumichi Nishimura, and Seiichiro Tani -
Quantum algorithm for finding constant-sized sub-hypergraphs -over 3-uniform hypergraphs -
In Proceedings of COCOON, 2014. pg. 429-440 -
arXiv:1310.4127 -

- -
242
-
-Edward Farhi, Jeffrey Goldstone, and Sam Gutmann -
A quantum approximate optimization algorithm -
arXiv:1411.4028, 2014. -

- -
243
-
-Edward Farhi, Jeffrey Goldstone, and Sam Gutmann -
A quantum approximate optimization algorithm applied to a -bounded occurrence constraint problem -
arXiv:1412.6062, 2014. -

- -
244
-
-Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and -Rolando D. Somma -
Simulating Hamiltonian dynamics with a truncated Taylor series -
arXiv:1412.4687, 2014. -

- -
245
-
-Dominic W. Berry, Andrew M. Childs, and Robin Kothari -
Hamiltonian simulation with nearly optimal dependence on all parameters -
arXiv:1501.01715, 2015. -

- -
246
-
-Scott Aaronson -
Read the fine print -
Nature Physics 11:291-293, 2015. -
[fulltext] -

- -
247
-
-Alexander Elgart and George A. Hagedorn -
A note on the switching adiabatic theorem -
Journal of Mathematical Physics 53(10):102202, 2012. -
arXiv:1204.2318 -

- -
248
-
-Daniel J. Bernstein, Johannes Buchmann, and Erik Dahmen, Eds. -
Post-Quantum Cryptography -
Springer, 2009. -

- -
249
-
-B. D. Clader, B. C. Jacobs, and C. R. Sprouse -
Preconditioned quantum linear system algorithm -
Phys. Rev. Lett. 110:250504, 2013. -
arXiv:1301.2340 -

- -
250
-
-S. Lloyd, M. Mohseni, and P. Rebentrost -
Quantum principal component analysis -
Nature Physics. 10(9):631, 2014. -
arXiv:1307.0401 -

- -
251
-
-Patrick Rebentrost, Masoud Mohseni, and Seth Lloyd -
Quantum support vector machine for big data classification -
Phys. Rev. Lett. 113, 130503, 2014. -
arXiv:1307.0471 -

- -
252
-
-J. M. Pollard -
Theorems on factorization and primality testing -
Proceedings of the Cambridge Philosophical Society. 76:521-228, 1974. -

- -
253
-
-L. Babai, R. Beals, and A. Seress -
Polynomial-time theory of matrix groups -
In Proceedings of STOC 2009, pg. 55-64. -

- -
254
-
-Neil J. Ross and Peter Selinger -
Optimal ancilla-free Clifford+T approximations of z-rotations -
arXiv:1403.2975, 2014. -

- -
255
-
-L. A. B. Kowada, C. Lavor, R. Portugal, and C. M. H. de Figueiredo -
A new quantum algorithm for solving the minimum searching problem -
International Journal of Quantum Information, Vol. 6, No. 3, - pg. 427-436, 2008. -

- -
256
-
-Sean Hallgren and Aram Harrow -
Superpolynomial speedups based on almost any quantum circuit -
Proceedings of ICALP 2008, pg. 782-795. -
arXiv:0805.0007 -

- -
257
-
-Fernando G.S.L. Brandao and Michal Horodecki -
Exponential quantum speed-ups are generic -
Quantum Information and Computation, Vol. 13, Pg. 0901, 2013 -
arXiv:1010.3654 -

- -
258
-
-Scott Aaronson and Andris Ambainis -
Forrelation: A problem that optimally separates quantum from classical computing. -
arXiv:1411.5729, 2014. -

- -
259
-
-Z. Gedik -
Computational speedup with a single qutrit -
arXiv:1403.5861, 2014. -

- -
260
-
-Boaz Barak, Ankur Moitra, Ryan O'Donnell, Prasad Raghavendra, Oded -Regev, David Steurer, Luca Trevisan, Aravindan Vijayaraghavan, David -Witmer, and John Wright -
Beating the random assignment on constraint satisfaction problems of bounded degree -
arXiv:1505.03424, 2015. -

- -
261
-
-David Cornwell -
Amplified Quantum Transforms -
arXiv:1406.0190, 2015. -

- -
262
-
-T. Laarhoven, M. Mosca, and J. van de Pol -
Solving the shortest vector problem in lattices faster using quantum search -
Proceedings of PQCrypto13, pp. 83-101, 2013. -
arXiv:1301.6176 -

- -
263
-
-Andrew M. Childs, Robin Kothari, and Rolando D. Somma -
Quantum linear systems algorithm with exponentially improved -dependence on precision -
arXiv:1511.02306, 2015. -

- -
264
-
-Ashley Montanaro -
Quantum walk speedup of backtracking algorithms -
arXiv:1509.02374, 2015. -

- -
265
-
-Ashley Montanaro -
Quantum speedup of Monte Carlo methods -
arXiv:1504.06987, 2015. -

- -
266
-
-Andris Ambainis, Aleksandrs Belovs, Oded Regev, and Ronald de Wolf -
Efficient quantum algorithms for (gapped) group testing and -junta testing -
arXiv:1507.03126, 2015. -

- -
267
-
-A. Atici and R. A. Servedio -
Quantum algorithms for learning and testing juntas -
Quantum Information Processing, 6(5):323-348, 2007. -
arXiv:0707.3479 -

- -
268
-
-Aleksandrs Belovs -
Quantum algorithms for learning symmetric juntas via the -adversary bound -
Computational Complexity, 24(2):255-293, 2015. -
(Also appears in proceedings of CCC'14). -
arXiv:1311.6777 -

- -
269
-
-Stacey Jeffery and Shelby Kimmel -
NAND-trees, average choice complexity, and effective resistance -
arXiv:1511.02235, 2015. -

- -
270
-
-Scott Aaronson, Shalev Ben-David, and Robin Kothari -
Separations in query complexity using cheat sheets -
arXiv:1511.01937, 2015. -

- -
271
-
-Frédéric Grosshans, Thomas Lawson, François -Morain, and Benjamin Smith -
Factoring safe semiprimes with a single quantum query -
arXiv:1511.04385, 2015. -

- -
272
-
-Agnis Āriņš -
Span-program-based quantum algorithms for graph bipartiteness -and connectivity -
arXiv:1510.07825, 2015. -

- -
273
-
Juan Bermejo-Vega and Kevin C. Zatloukal -
Abelian hypergroups and quantum computation -
arXiv:1509.05806, 2015. -

- -
274
-
Andrew Childs and Jeffrey Goldstone -
Spatial search by quantum walk -
Physical Review A, 70:022314, 2004. -
arXiv:quant-ph/0306054 -

- -
275
-
Shantanav Chakraborty, Leonardo Novo, Andris Ambainis, and Yasser Omar -
Spatial search by quantum walk is optimal for almost all graphs -
arXiv:1508.01327, 2015. -

- -
276
-
François Le Gall -
Improved quantum algorithm for triangle finding via -combinatorial arguments -
In Proceedings of the 55th IEEE Annual Symposium on - Foundations of Computer Science (FOCS), pg. 216-225, 2014. -
arXiv:1407.0085 -

- -
277
-
Ashley Montanaro -
The quantum complexity of approximating the frequency moments -
arXiv:1505.00113, 2015. -

- -
278
-
Rolando D. Somma -
Quantum simulations of one dimensional quantum systems -
arXiv:1503.06319, 2015. -

- -
279
-
Bill Fefferman and Cedric Yen-Yu Lin -
A complete characterization of unitary quantum space -
arXiv:1604.01384, 2016. -

- -
280
-
Tsuyoshi Ito and Stacey Jeffery -
Approximate span programs -
arXiv:1507.00432, 2015. -

- -
281
-
Arnau Riera, Christian Gogolin, and Jens Eisert -
Thermalization in nature and on a quantum computer -
Physical Review Letters, 108:080402 (2012) -
arXiv:1102.2389. -

- -
282
-
Michael J. Kastoryano and Fernando G. S. L. Brandao -
Quantum Gibbs Samplers: the commuting case -
Communications in Mathematical Physics, 344(3):915-957 (2016) -
arXiv:1409.3435. -

- -
283
-
Andrew M. Childs, David Jao, and Vladimir Soukharev -
Constructing elliptic curve isogenies in quantum subexponential time -
Journal of Mathematical Cryptology, 8(1):1-29 (2014) -
arXiv:1012.4019. -

- -
284
-
Markus Grassl, Brandon Langenberg, Martin Roetteler, and Rainer Steinwandt -
Applying Grover's algorithm to AES: quantum resource estimates -
arXiv:1512.04965, 2015. -

- -
285
-
M. Ami, O. Di Matteo, V. Gheorghiu, M. Mosca, A. Parent, and J. Schanck -
Estimating the cost of generic quantum pre-image attacks on -SHA-2 and SHA-3 -
arXiv:1603.09383, 2016. -

- -
286
-
Marc Kaplan, Gaetan Leurent, Anthony Leverrier, and Maria Naya-Plasencia -
Quantum differential and linear cryptanalysis -
arXiv:1510.05836, 2015. -

- -
287
-
Scott Fluhrer -
Quantum Cryptanalysis of NTRU -
Cryptology ePrint Archive: Report 2015/676, 2015. -

- -
288
-
Marc Kaplan -
Quantum attacks against iterated block ciphers -
arXiv:1410.1434, 2014. -

- -
289
-
H. Kuwakado and M. Morii -
Quantum distinguisher between the 3-round Feistel cipher and the random permutation -
In Proceedings of IEEE International Symposium on Information Theory (ISIT), -pg. 2682-2685, 2010. -

- -
290
-
H. Kuwakado and M. Morii -
Security on the quantum-type Even-Mansour cipher -
In Proceedings of International Symposium on Information Theory and its Applications (ISITA), - pg. 312-316, 2012. -

- -
291
-
Martin Roetteler and Rainer Steinwandt -
A note on quantum related-key attacks -
arXiv:1306.2301, 2013. -

- -
292
-
Thomas Santoli and Christian Schaffner -
Using Simon's algorithm to attack symmetric-key cryptographic primitives -
arXiv:1603.07856, 2016. -

- -
293
-
Rolando D. Somma -
A Trotter-Suzuki approximation for Lie groups with applications to Hamiltonian simulation -
arXiv:1512.03416, 2015. -

- -
294
-
Guang Hao Low and Isaac Chuang -
Optimal Hamiltonian simulation by quantum signal processing -
arXiv:1606.02685, 2016. -

- -
295
-
Dominic W. Berry and Leonardo Novo -
Corrected quantum walk for optimal Hamiltonian simulation -
arXiv:1606.03443, 2016. -

- -
296
-
Ashley Montanaro and Sam Pallister -
Quantum algorithms and the finite element method -
arXiv:1512.05903, 2015. -

- -
297
-
Lin-Chun Wan, Chao-Hua Yu, Shi-Jie Pan, Fei Gao, and Qiao-Yan Wen -
Quantum algorithm for the Toeplitz systems -
arXiv:1608.02184, 2016. -

- -
298
-
Salvatore Mandra, Gian Giacomo Guerreschi, and Alan Aspuru-Guzik -
Faster than classical quantum algorithm for dense formulas of exact satisfiability and occupation problems -
arXiv:1512.00859, 2015. -

- -
299
-
J. Adcock, E. Allen, M. Day, S. Frick, J. Hinchliff, M. Johnson, S. Morley-Short, S. Pallister, A. Price, and S. Stanisic -
Advances in quantum machine learning -
arXiv:1512.02900, 2015. -

- -
300
-
Cedric Yen-Yu Lin and Yechao Zhu -
Performance of QAOA on typical instances of constraint satisfaction problems with bounded degree -
arXiv:1601.01744, 2016. -

- -
301
-
Dave Wecker, Matthew B. Hastings, and Matthias Troyer -
Training a quantum optimizer -
arXiv:1605.05370, 2016. -

- -
302
-
Edward Farhi and Aram W. Harrow -
Quantum supremacy through the quantum approximate optimization algorithm -
arXiv:1602.07674, 2016. -

- -
303
-
Thomas G. Wong -
Quantum walk search on Johnson graphs -
arXiv:1601.04212, 2016. -

- -
304
-
Jonatan Janmark, David A. Meyer, and Thomas G. Wong -
Global symmetry is unnecessary for fast quantum search -
Physical Review Letters 112:210502, 2014. -
arXiv:1403.2228 -

- -
305
-
David A. Meyer and Thomas G. Wong -
Connectivity is a poor indicator of fast quantum search -
Physical Review Letters 114:110503, 2014. -
arXiv:1409.5876 -

- -
306
-
Thomas G. Wong -
Spatial search by continuous-time quantum walk with multiple marked vertices -
Quantum Information Processing 15(4):1411-1443, 2016. -
arXiv:1501.07071 -

- -
307
-
Anirban Naryan Chowdhury and Rolando D. Somma -
Quantum algorithms for Gibbs sampling and hitting-time estimation -
arXiv:1603.02940, 2016. -

- -
308
-
Edward Farhi, Shelby Kimmel, and Kristan Temme -
A quantum version of Schoning's algorithm applied to quantum 2-SAT -
arXiv:1603.06985, 2016. -

- -
309
-
Iordanis Kerenidis and Anupam Prakash -
Quantum recommendation systems -
Innovations in Theoretical Computer Science (ITCS 2017), LIPIcs, vol. 67, pg. 1868-8969. -
[arXiv:1603.08675] -

- -
310
-
Markus Reiher, Nathan Wiebe, Krysta M. Svore, Dave Wecker, and Matthias Troyer -
Elucidating reaction mechanisms on quantum computers -
arXiv:1605.03590, 2016. -

- -
311
-
Aram W. Harrow and Ashley Montanaro -
Sequential measurements, disturbance, and property testing -
arXiv:1607.03236, 2016. -

- -
312
-
Martin Roetteler -
Quantum algorithms for abelian difference sets and applications to dihedral hidden subgroups -
arXiv:1608.02005, 2016. -

- -
313
-
Fernando G.S.L. Brandao and Krysta Svore -
Quantum speed-ups for semidefinite programming -
arXiv:1609.05537, 2016. -

- -
314
-
Z-C Yang, A. Rahmani, A. Shabani, H. Neven, and C. Chamon -
Optimizing variational quantum algorithms using Pontryagins's minimum principle -
arXiv:1607.06473, 2016. -

- -
315
-
Gilles Brassard, Peter Høyer, and Alain Tapp -
Quantum cryptanalysis of hash and claw-free functions -
In Proceedings of the 3rd Latin American symposium on Theoretical Informatics (LATIN'98), pg. 163-169, 1998. -

- -
316
-
Daniel J. Bernstein -
Cost analysis of hash collisions: Will quantum computers make SHARCS obsolete? -
In Proceedings of the 4th Workshop on Special-purpose Hardware for Attacking Cryptographic Systems (SHARCS'09), pg. 105-116, 2009.
-[available here] -

- -
317
-
Chris Cade, Ashley Montanaro, and Aleksandrs Belovs -
Time and space efficient quantum algorithms for detecting cycles and testing bipartiteness -
arXiv:1610.00581, 2016. -

- -
318
-
A. Belovs and B. Reichardt -
Span programs and quantum algorithms for st-connectivity and claw detection -
In European Symposium on Algorithms (ESA'12), pg. 193-204, 2012.
-arXiv:1203.2603 -

- -
319
-
Titouan Carette, Mathieu Laurière, and Frédéric Magniez -
Extended learning graphs for triangle finding -
arXiv:1609.07786, 2016. -

- -
320
-
F. Le Gall and N. Shogo -
Quantum algorithm for triangle finding in sparse graphs -
In Proceedings of the 26th International Symposium on Algorithms and Computation (ISAAC'15), pg. 590-600, 2015. -

- -
321
-
Or Sattath and Itai Arad -
A constructive quantum Lovász local lemma for commuting projectors -
Quantum Information and Computation, 15(11/12)987-996pg, 2015. -
arXiv:1310.7766 -

- -
322
-
Martin Schwarz, Toby S. Cubitt, and Frank Verstraete -
An information-theoretic proof of the constructive commutative quantum Lovász local lemma -
arXiv:1311.6474 -

- -
323
-
C. Shoen, E. Solano, F. Verstraete, J. I. Cirac, and M. M. Wolf -
Sequential generation of entangled multi-qubit states -
Physical Review Letters, 95:110503, 2005.
-arXiv:quant-ph/0501096 -

- -
324
-
C. Shoen, K. Hammerer, M. M. Wolf, J. I. Cirac, and E. Solano -
Sequential generation of matrix-product states in cavity QED -
Physical Review A, 75:032311, 2007.
-arXiv:quant-ph/0612101 -

- -
325
-
Yimin Ge, András Molnár, and J. Ignacio Cirac -
Rapid adiabatic preparation of injective PEPS and Gibbs states -
Physical Review Letters, 116:080503, 2016.
-arXiv:1508.00570 -

- -
326
-
Martin Schwarz, Kristan Temme, and Frank Verstraete -
Preparing projected entangled pair states on a quantum computer -
Physical Review Letters, 108:110502, 2012.
-arXiv:1104.1410 -

- -
327
-
Martin Schwarz, Toby S. Cubitt, Kristan Temme, Frank Verstraete, and David Perez-Garcia -
Preparing topological PEPS on a quantum computer -
Physical Review A, 88:032321, 2013.
-arXiv:1211.4050 -

- -
328
-
M. Schwarz, O. Buerschaper, and J. Eisert -
Approximating local observables on projected entangled pair states -
arXiv:1606.06301, 2016. -

- -
329
-
Jean-François Biasse and Fang Song -
Efficient quantum algorithms for computing class groups and solving the principal ideal problem in arbitrary degree number fields -
Proceedings of the 27th Annual ACM-SIAM Symposium on Discrete -Algorithms (SODA '16), pg. 893-902, 2016. -

- -
330
-
Peter Høyer and Mojtaba Komeili -
Efficient quantum walk on the grid with multiple marked elements -
Proceedings of the 34th Symposium on Theoretical Aspects of Computer Science (STACS 2017), 42, 2016. -
arXiv:1612.08958 -

- -
331
-
Peter Wittek -
Quantum Machine Learning: what quantum computing means to data mining -
Academic Press, 2014. -

- -
332
-
Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione -
An introduction to quantum machine learning -
Contemporary Physics, 56(2):172, 2014. -
arXiv:1409.3097 -

- -
333
-
J. Biamonte, P. Wittek, N. Pancotti, P. Rebentrost, N. Wiebe, and S. Lloyd -
Quantum machine learning -
arXiv:1611.09347 -

- -
334
-
Esma Aïmeur, Gilles Brassard, and Sébastien Gambs -
Machine learning in a quantum world -
In Advances in Artificial Intelligence: 19th Conference of the Canadian Society for Computational Studies of Intelligence -pg. 431-442, Springer, 2006. -

- -
335
-
Vedran Dunjko, Jacob Taylor, and Hans Briegel -
Quantum-enhanced machine learning -
Phys. Rev. Lett 117:130501, 2016. -

- -
336
-
Nathan Wiebe, Ashish Kapoor, and Krysta Svore -
Quantum algorithms for nearest-neighbor methods for supervised and unsupervised learning -
Quantum Information and Computation 15(3/4): 0318-0358, 2015. -
arXiv:1401.2142 -

- -
337
-
Seokwon Yoo, Jeongho Bang, Changhyoup Lee, and Junhyoug Lee -
A quantum speedup in machine learning: finding a N-bit Boolean function for a classification -
New Journal of Physics 6(10):103014, 2014. -
arXiv:1303.6055 -

- -
338
-
Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione -
Prediction by linear regression on a quantum computer -
Physical Review A 94:022342, 2016. -
arXiv:1601.07823 -

- -
339
-
Zhikuan Zhao, Jack K. Fitzsimons, and Joseph F. Fitzsimons -
Quantum assisted Gaussian process regression -
arXiv:1512.03929 -

- -
340
-
Esma Aïmeur, Gilles Brassard, and Sébastien Gambs -
Quantum speed-up for unsupervised learning -
Machine Learning, 90(2):261-287, 2013. -

- -
341
-
Nathan Wiebe, Ashish Kapoor, and Krysta Svore -
Quantum perceptron models -
Advances in Neural Information Processing Systems 29 (NIPS 2016), pg. 3999–4007, 2016. -
arXiv:1602.04799 -

- -
342
-
G. Paparo, V. Dunjko, A. Makmal, M. Martin-Delgado, and H. Briegel -
Quantum speedup for active learning agents -
Physical Review X4(3):031002, 2014. -
arXiv:1401.4997 -

- -
343
-
Daoyi Dong, Chunlin Chen, Hanxiong Li, and Tzyh-Jong Tarn -
Quantum reinforcement learning -
IEEE Transactions on Systems, Man, and Cybernetics- Part B (Cybernetics)38(5):1207, 2008. -

- -
344
-
Daniel Crawford, Anna Levit, Navid Ghadermarzy, Jaspreet S. Oberoi, and Pooya Ronagh -
Reinforcement learning using quantum Boltzmann machines -
arXiv:1612.05695, 2016. -

- -
345
-
Steven H. Adachi and Maxwell P. Henderson -
Application of Quantum Annealing to Training of Deep Neural Networks -
arXiv:1510.06356, 2015. -

- -
346
-
M. Benedetti, J. Realpe-Gómez, R. Biswas, and A. Perdomo-Ortiz -
Quantum-assisted learning of graphical models with arbitrary pairwise connectivity -
arXiv:1609.02542, 2016. -

- -
348
-
M. H. Amin, E. Andriyash, J. Rolfe, B. Kulchytskyy, and R. Melko -
Quantum Boltzmann machine -
arXiv:1601.02036, 2016. -

- -
349
-
Peter Wittek and Christian Gogolin -
Quantum enhanced inference in Markov logic networks -
Scientific Reports7:45672, 2017. -
arXiv:1611.08104, 2016. -

- -
350
-
N. H. Bshouty and J. C. Jackson -
Learning DNF over the uniform distribution using a quantum example oracle -
SIAM Journal on Computing28(3):1136-1153, 1999. -

- -
351
-
Srinivasan Arunachalam and Ronald de Wolf -
A survey of quantum learning theory -
arXiv:1701.06806, 2017. -

- -
352
-
Rocco A. Servedio and Steven J. Gortler -
Equivalences and separations between quantum and classical learnability -
SIAM Journal on Computing, 33(5):1067-1092, 2017. -

- -
353
-
Srinivasan Arunachalam and Ronald de Wolf -
Optimal quantum sample complexity of learning algorithms -
arXiv:1607.00932, 2016. -

- -
354
-
Alex Monràs, Gael Sentís, and Peter Wittek -
Inductive quantum learning: why you are doing it almost right -
arXiv:1605.07541, 2016. -

- -
355
-
A. Bisio, G. Chiribella, G. M. D'Ariano, S. Facchini, and P. Perinotti -
Optimal quantum learning of a unitary transformation -
Physical Review A 81:032324, 2010. -
arXiv:0903.0543. -

- -
356
-
M. Sasaki, A. Carlini, and R. Jozsa -
Quantum template matching -
Physical Review A 64:022317, 2001. -
arXiv:quant-ph/0102020. -

- -
357
-
Masahide Sasaki and Alberto Carlini -
Quantum learning and universal quantum matching machine -
Physical Review A 66:022303, 2002. -
arXiv:quant-ph/0202173. -

- -
358
-
Esma Aïmeur, Gilles Brassard, and Sébastien Gambs -
Quantum clustering algorithms -
In Proceedings of the 24th International Conference on Machine Learning (ICML), pg. 1-8, 2007. -

- -
359
-
Iordanis Kerenidis and Anupam Prakash -
Quantum gradient descent for linear systems and least squares -
arXiv:1704.04992, 2017. -

- -
360
-
Dan Boneh and Mark Zhandry -
Quantum-secure message authentication codes -
In Proceedings of Eurocrypt, pg. 592-608, 2013. -

- -
361
-
A. M. Childs, W. van Dam, S-H Hung, and I. E. Shparlinski -
Optimal quantum algorithm for polynomial interpolation -
In Proceedings of the 43rd International Colloquium on Automata, Languages, and Programming (ICALP), pg. 16:1-16:13, 2016. -
arXiv:1509.09271 -

- -
362
-
Volker Strassen -
Einige Resultate über Berechnungskomplexität -
In Jahresbericht der Deutschen Mathematiker-Vereinigung, 78(1):1-8, 1976/1977. -

- -
363
-
Stacey Jeffery -
Frameworks for Quantum Algorithms -
PhD thesis, U. Waterloo, 2014. -

- -
364
-
Seiichiro Tani -
An improved claw finding algorithm using quantum walk -
In Mathematical Foundations of Computer Science (MFCS), pg. 536-547, 2007. -
arXiv:0708.2584 -

- -
365
-
K. Iwama and A. Kawachi -
A new quantum claw-finding algorithm for three functions -
New Generation Computing, 21(4):319-327, 2003. -

- -
366
-
D. J. Bernstein, N. Heninger, P. Lou, and L. Valenta -
Post-quantum RSA -
IACR e-print 2017/351, 2017. -

- -
367
-
Francois Fillion-Gourdeau, Steve MacLean, and Raymond Laflamme -
Quantum algorithm for the dsolution of the Dirac equation -
arXiv:1611.05484, 2016. -

- -
368
-
Ali Hamed Moosavian and Stephen Jordan -
Faster quantum algorithm to simulate Fermionic quantum field theory -
arXiv:1711.04006, 2017. -

- -
369
-
Pedro C.S. Costa, Stephen Jordan, and Aaron Ostrander -
Quantum algorithm for simulating the wave equation -
arXiv:1711.05394, 2017. -

- -
370
-
Jeffrey Yepez -
Highly covariant quantum lattice gas model of the Dirac equation -
arXiv:1106.0739, 2011. -

- -
371
-
Jeffrey Yepez -
Quantum lattice gas model of Dirac particles in 1+1 dimensions -
arXiv:1307.3595, 2013. -

- -
372
-
Bruce M. Boghosian and Washington Taylor -
Simulating quantum mechanics on a quantum computer -
Physica D 120:30-42, 1998. -
[arXiv:quant-ph/9701019] -

- -
373
-
Yimin Ge, Jordi Tura, and J. Ignacio Cirac -
Faster ground state preparation and high-precision ground energy estimation on a quantum computer -
arXiv:1712.03193, 2017. -

- -
374
-
Renato Portugal -
Element distinctness revisited -
arXiv:1711.11336, 2017. -

- -
375
-
Kanav Setia and James D. Whitfield -
Bravyi-Kitaev superfast simulation of fermions on a quantum computer -
arXiv:1712.00446, 2017. -

- -
376
-
Richard Cleve and Chunhao Wang -
Efficient quantum algorithms for simulating Lindblad evolution -
arXiv:1612.09512, 2016. -

- -
377
-
M. Kliesch, T. Barthel, C. Gogolin, M. Kastoryano, and J. Eisert -
Dissipative quantum Church-Turing theorem -
Physical Review Letters 107(12):120501, 2011. -
[arXiv:1105.3986] -

- -
378
-
A. M. Childs and T. Li -
Efficient simulation of sparse Markovian quantum dynamics -
arXiv:1611.05543, 2016. -

- -
379
-
R. Di Candia, J. S. Pedernales, A. del Campo, E. Solano, and J. Casanova -
Quantum simulation of dissipative processes without reservoir engineering -
Scientific Reports 5:9981, 2015. -

- -
380
-
R. Babbush, D. Berry, M. Kieferová, G. H. Low, Y. Sanders, A. Sherer, and N. Wiebe -
Improved techniques for preparing eigenstates of Fermionic Hamiltonians -
arXiv:1711.10460, 2017. -

- -
381
-
D. Poulin, A. Kitaev, D. S. Steiger, M. B. Hasting, and M. Troyer -
Fast quantum algorithm for spectral properties -
arXiv:1711.11025, 2017. -

- -
382
-
Guang Hao Low and Isaac Chuang -
Hamiltonian simulation bt qubitization -
arXiv:1610.06546, 2016. -

- -
383
-
F.G.S.L. Brandão, A. Kalev, T. Li, C. Y.-Y. Lin, K. M. Svore, and X. Wu -
Quantum SDP Solvers: Large Speed-ups, Optimality, and Applications to Quantum Learning -
Proceedings of ICALP 2019 -
[arXiv:1710.02581] -

- -
384
-
M. Ekerå and J. Håstad -
Quantum Algorithms for Computing Short Discrete Logarithms and Factoring RSA Integers -
Proceedings of PQCrypto 2017, pg. 347-363. (LNCS Volume 10346), 2017.

- -
385
-
M. Ekerå -
On post-processing in the quantum algorithm for computing short discrete logarithms -
IACR ePrint Archive Report 2017/1122, 2017.

- -
386
-
D. J. Bernstein, J.-F. Biasse, and M. Mosca -
A low-resource quantum factoring algorithm -
Proceedings of PQCrypto 2017, pg. 330-346 (LNCS Volume 10346), 2017.

- -
387
-
Jianxin Chen, Andrew M. Childs, and Shih-Han Hung -
Quantum algorithm for multivariate polynomial interpolation -
Proceedings of the Royal Society A, 474:20170480, 2017. -
arXiv:1701.03990 -

- -
388
-
Lisa Hales and Sean Hallgren -
An improved quantum Fourier transform algorithm and applications. -
In Proceedings of FOCS 2000, pg. 515-525. -

- -
389
-
Igor Shparlinski and Arne Winterhof -
Quantum period reconstruction of approximate sequences -
Information Processing Letters, 103:211-215, 2007. -

- -
390
-
Alexander Russell and Igor E. Shparlinski -
Classical and quantum function reconstruction via character evaluation -
Journal of Complexity, 20:404-422, 2004. -

- -
391
-
Sean Hallgren, Alexander Russell, and Igor Shparlinski -
Quantum noisy rational function reconstruction -
Proceedings of COCOON 2005, pg. 420-429. -

- -
392
-
G. Ivanyos, M. Karpinski, M. Santha, N. Saxena, and I. Shparlinski -
Polynomial interpolation and identity testing from high powers over finite fields -
Algorithmica, 80:560-575, 2017. -

- -
393
-
Qi Cheng -
Primality Proving via One Round in ECPP and One Iteration in AKS -
Journal of Cryptology, Volume 20, Issue 3, pg. 375-387, July 2007. -

- -
394
-
Daniel J. Bernstein -
Proving primality in essentially quartic random time -
Mathematics of Computation, Vol. 76, pg. 389-403, 2007. -

- -
395
-
F. Morain -
Implementing the asymptotically fast version of the elliptic curve primality proving algorithm -
Mathematics of Computation, Vol. 76, pg. 493-505, 2007. -

- -
396
-
Alvaro Donis-Vela and Juan Carlos Garcia-Escartin -
A quantum primality test with order finding -
arXiv:1711.02616, 2017. -

- -
397
-
H. F. Chau and H.-K. Lo -
Primality test via quantum factorization -
International Journal of Modern Physics C, Vol. 8, No. 2, pg. 131-138, 1997. -
[arXiv:quant-ph/9508005] -

- -
398
-
David Harvey and Joris Van Der Hoeven -
Integer multiplication in time \( O(n \log \ n) \) -
hal-02070778, 2019. -

- -
399
-
Charles Greathouse -
personal communication, 2019. -

- -
400
-
Ewin Tang -
A quantum-inspired classical algorithm for recommendation systems -
In Proceedings of STOC 2019, pg. 217-228. -
[arXiv:1807.04271] -

- -
401
-
Ewin Tang -
Quantum-inspired classical algorithms for principal component analysis and supervised clustering -
arXiv:1811.00414, 2018. -

- -
402
-
L. Wossnig, Z. Zhao, and A. Prakash -
A quantum linear system algorithm for dense matrices -
Physical Review Letters vol. 120, no. 5, pg. 050502, 2018. -
arXiv:1704.06174, 2017. -

- -
403
-
Zhikuan Zhao, Alejandro Pozas-Kerstjens, Patrick Rebentrost, and Peter Wittek -
Bayesian Deep Learning on a Quantum Computer -
Quantum Machine Intelligence vol. 1, pg. 41-51, 2019. -
[arXiv:1806.11463] -

- -
404
-
Anja Becker, Jean-Sebastien Coron, and Antoine Joux -
Improved generic algorithms for hard knapsacks -
Proceedings of Eurocrypt 2011 pg. 364-385 -
[IACR eprint 2011/474] -

- -
405
-
Kun Zhang and Vladimir E. Korepin -
Low depth quantum search algorithm -
arXiv:1908.04171, 2019. -

- -
406
-
Andriyan Bayo Suksmono and Yuichiro Minato -
Finding Hadamard matrices by a quantum annealing machine -
Scientific Reports 9:14380, 2019. -
[arXiv:1902.07890] -

- -
407
-
Gábor Ivanyos, Anupam Prakash, and Miklos Santha -
On learning linear functions from subset and its applications in quantum computing -
26th Annual European Symposium on Algorithms (ESA 2018), LIPIcs volume 112, 2018. -
[arXiv:1806.09660] -

- -
408
-
Gábor Ivanyos -
On solving systems of random linear disequations -
Quantum Information and Computation, 8(6):579-594, 2008. -
[arXiv:0704.2988] -

- -
409
-
A. Ambainis, K. Balodis, J. Iraids, M. Kokainis, K. Prusis, and J. Vihrovs -
Quantum speedups for exponential-time dynamic programming algorithms -
Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 19), pg. 1783-1793, 2019. -
[arXiv:1807.05209] -

- -
410
-
Dominic W. Berry, Andrew M. Childs, Aaron Ostrander, and Guoming Wang -
Quantum algorithm for linear differential equations with exponentially improved dependence on precision -
Communications in Mathematical Physics, 356(3):1057-1081, 2017. -
[arXiv:1701.03684] -

- -
411
-
Sarah K. Leyton and Tobias J. Osborne -
Quantum algorithm to solve nonlinear differential equations -
arXiv:0812.4423 -

- -
412
-
Y. Cao, A. Papageorgiou, I. Petras, J. Traub, and S. Kais -
Quantum algorithm and circuit design solving the Poisson equation -
New Journal of Physics 15(1):013021, 2013. -
[arXiv:1207.2485] -

- -
413
-
S. Wang, Z. Wang, W. Li, L. Fan, Z. Wei, and Y. Gu -
Quantum fast Poisson solver: the algorithm and modular circuit design -
arXiv:1910.09756, 2019. -

- -
414
-
A. Scherer, B. Valiron, S.-C. Mau, S. Alexander, E. van den Berg, and T. Chapuran -
Concrete resource analysis of the quantum linear system algorithm used to compute the electromagnetic scattering crossection of a 2D target -
Quantum Information Processing 16:60, 2017. -
[arXiv:1505.06552] -

- -
415
-
Juan Miguel Arrazola, Timjan Kalajdziavski, Christian Weedbrook, and Seth Lloyd -
Quantum algorithm for nonhomogeneous linear partial differential equations -
Physical Review A 100:032306, 2019. -
[arXiv:1809.02622] -

- -
416
-
Andrew Childs and Jin-Peng Liu -
Quantum spectral methods for differential equations -
arXiv:1901.00961 -

- -
417
-
Alexander Engle, Graeme Smith, and Scott E. Parker -
A quantum algorithm for the Vlasov equation -
arXiv:1907.09418 -

- -
418
-
Shouvanik Chakrabarti, Andrew M. Childs, Tongyang Li, and Xiaodi Wu -
Quantum algorithms and lower bounds for convex optimization -
arXiv:1809.01731 -

- -
419
-
S. Chakrabarti, A. M. Childs, S.-H. Hung, T. Li, C. Wang, and X. Wu -
Quantum algorithm for estimating volumes of convex bodies -
arXiv:1908.03903 -

- -
420
-
Joran van Apeldoorn, András Gilyén, Sander Gribling, and Ronald de Wolf -
Convex optimization using quantum oracles -
arXiv:1809.00643 -

- -
421
-
Nai-Hui Chia, Andráas Gilyén, Tongyang Li, Han-Hsuan Lin, Ewin Tang, and Chunhao Wang -
Sampling-based sublinear low-rank matrix arithmetic framework for dequantizing quantum machine learning -
Proceedings of STOC 2020, pg. 387-400 -
[arXiv:1910.06151] -

- -
422
-
Andris Ambainis and Martins Kokainis -
Quantum algorithm for tree size estimation, with applications to backtracking and 2-player games -
Proceedings of STOC 2017, pg. 989-1002 -
[arXiv:1704.06774] -

- -
423
-
Fernando G.S L. Brandão, Richard Kueng, Daniel Stilck França -
Faster quantum and classical SDP approximations for quadratic binary optimization -
arXiv:1909.04613 -

- -
424
-
Matthew B. Hastings -
Classical and Quantum Algorithms for Tensor Principal Component Analysis -
Quantum 4:237, 2020. -
[arXiv:1907.12724] -

- -
425
-
Joran van Apeldoorn, András Gilyén, Sander Gribling, and Ronald de Wolf -
Quantum SDP-Solvers: Better upper and lower bounds -
Quantum 4:230, 2020. -
[arXiv:1705.01843] -

- -
426
-
J-P Liu, H. Kolden, H. Krovi, N. Loureiro, K. Trivisa, and A. M. Childs -
Efficient quantum algorithm for dissipative nonlinear differential equations -
arXiv:2011.03185 -

- -
427
-
S. Lloyd, G. De Palma, C. Gokler, B. Kiani, Z-W Liu, M. Marvian, F. Tennie, and T. Palmer -
Quantum algorithm for nonlinear differential equations -
arXiv:2011.06571 -

- -
428
-
Yunchao Liu, Srinivasan Arunachalam, and Kristan Temme -
A rigorous and robust quantum speed-up in supervised machine learning -
arXiv:2010.02174 -

- -
429
-
Matthew B. Hastings -
The power of adiabatic quantum computation with no sign problem -
arXiv:2005.03791 -

- -
430
-
Nathan Ramusat and Vincenzo Savona -
A quantum algorithm for the direct estimation of the steady state of open quantum systems -
arXiv:2008.07133 -

- -
-
- - -
- - diff --git a/newzoo.css b/newzoo.css deleted file mode 100644 index 125d263..0000000 --- a/newzoo.css +++ /dev/null @@ -1,81 +0,0 @@ -body, html { - margin:0; - padding:0; - color:#000; - background: #ECF7FD; - font-family: "arial", sans-serif; -} - -img { - border:0; -} - -#wrap { - width:1050px; - margin:0 auto; - background: white; -} - -#header { - background: rgb(32, 115, 192); - margin-top: 15px; - padding: 10px; - color: white; -} - -h1 { - position: relative; - left: 10px; - top: 3px; - font-weight: normal; -} - -h1 { - margin:0; -} - -#main { - float:left; - width:679px; - padding:10px; - background: white; - border-right-style: solid; - border-right-width: 1px; - border-right-color: black; - font-size: 15px; - line-height: 1.2; -} - -h2 { - margin:0 0 1em; -} - -#sidebar { - float:right; - width:320px; - padding:10px; - background: white; - font-size: 14px; -} - -#footer { - clear:both; - padding:5px 10px 10px 10px; - background:#EEEEEE; - border-top-style: solid; - border-top-width: 1px; - border-top-color: black; - margin-bottom: 15px; -} - -#footer p { - margin:0; -} - -.navlist { - line-height: 1.5; -} - -#notice { - background: #FECB65; -} \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..3615ac0 --- /dev/null +++ b/package.json @@ -0,0 +1,24 @@ +{ + "name": "svelte-app", + "version": "1.0.0", + "private": true, + "scripts": { + "build": "rollup -c", + "dev": "rollup -c -w", + "start": "sirv public --no-clear" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^17.0.0", + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^11.0.0", + "rollup": "^2.3.4", + "rollup-plugin-css-only": "^3.1.0", + "rollup-plugin-livereload": "^2.0.0", + "rollup-plugin-svelte": "^7.0.0", + "rollup-plugin-terser": "^7.0.0", + "svelte": "^3.0.0" + }, + "dependencies": { + "sirv-cli": "^1.0.0" + } +} diff --git a/public/build/bundle.css b/public/build/bundle.css new file mode 100644 index 0000000..3c51346 --- /dev/null +++ b/public/build/bundle.css @@ -0,0 +1,8 @@ +.header.svelte-14nzddd{grid-area:header}.search-bar.svelte-14nzddd{grid-area:search-bar}.menu.svelte-14nzddd{grid-area:menu}.display-info.svelte-14nzddd{grid-area:display-info}.footer.svelte-14nzddd{grid-area:footer}.grid-container.svelte-14nzddd{display:grid;grid-template-areas:'header header' + 'search-bar search-bar' + 'menu display-info' + 'footer footer';grid-template-columns:min-content}.grid-container-mobile.svelte-14nzddd{display:grid;grid-template-areas:'header header' + 'search-bar search-bar' + 'menu menu' + 'display-info display-info' + 'footer footer';grid-template-columns:min-content}#search-input.svelte-1jblrb6{width:230px}#search-bar.svelte-1jblrb6{text-align:center;padding:10px}.dropdown.svelte-1jblrb6{position:relative;display:inline-block}.dropdown-content.svelte-1jblrb6{position:absolute;background-color:#f6f6f6;width:230px;max-height:250px;overflow-y:scroll;border:1px solid #ddd;z-index:10000}header.svelte-szjetr{background-color:rgb(32, 115, 192);padding:10px}h1.svelte-szjetr{font-size:40px;color:white;text-align:center}#display-info.svelte-ul1a8l{padding:0 15px 35px 15px}.menu-tabs.svelte-1r3ouor{grid-area:menu-tabs}.alg-tabs.svelte-1r3ouor{grid-area:alg-tabs}.grid-container.svelte-1r3ouor{display:grid;grid-template-areas:'menu-tabs alg-tabs';grid-template-columns:min-content}#menu-icon.svelte-1r3ouor{display:block;transition:0.3s;margin:auto;background-color:#f1f1f1}#menu.svelte-1r3ouor{text-align:center;min-width:250px;padding:0 35px}#footer.svelte-1cfq9wc{background-color:#e7e7e7;margin-top:20px}div.svelte-1sneyte{cursor:pointer;margin:0;padding:1px 0}.hovered.svelte-1sneyte{background-color:#c1c1c2}.menu_tab.svelte-1k4w6yn{color:white;background-color:#19a8d3;width:100%;padding:15px;margin:10px 10px 10px 0;transition:font-size 0.2s;min-width:200px;box-shadow:5px 5px 3px rgba(0,0,0,0.2);cursor:pointer}.menu_tab.svelte-1k4w6yn:hover{font-size:110%}.menu_tab.svelte-1k4w6yn:active{box-shadow:2px 2px 3px rgba(0,0,0,0.2);transform:translateY(3px) translateX(3px)}a.svelte-17xl9z8{color:blue}a.svelte-17xl9z8{color:blue}#algorithm-wrapper.svelte-11ddwr5{background-color:#f8f8f8;padding:15px;border-radius:20px;border:1px solid black}#list-references.svelte-11ddwr5{padding-left:20px}a.svelte-17xl9z8{color:blue}#menu.svelte-iudhsp{text-align:center;padding:0 15px 15px 15px;max-height:785px;overflow-y:scroll}#menu.svelte-a1qz3u{text-align:center;padding:0 15px}p.svelte-y6159r{margin:0}div.svelte-y6159r{padding:0 0 30px 0}a.svelte-y6159r{color:blue}.alg_menu_tab.svelte-rhui3l{font-size:80%;color:white;background-color:#0f8061;width:100%;padding:15px;margin:10px 0;transition:font-size 0.2s;box-shadow:5px 5px 3px rgba(0,0,0,0.2);cursor:pointer}.alg_menu_tab.svelte-rhui3l:hover{font-size:90%}.alg_menu_tab.svelte-rhui3l:active{box-shadow:2px 2px 3px rgba(0,0,0,0.2);transform:translateY(3px) translateX(3px)}.alg_menu_tab.svelte-jts6o0{font-size:80%;color:white;background-color:#95d202;width:100%;padding:15px;margin:10px 0;transition:font-size 0.2s;box-shadow:5px 5px 3px rgba(0,0,0,0.2);cursor:pointer}.alg_menu_tab.svelte-jts6o0:hover{font-size:90%}.alg_menu_tab.svelte-jts6o0:active{box-shadow:2px 2px 3px rgba(0,0,0,0.2);transform:translateY(3px) translateX(3px)}.cat_menu_tab.svelte-1ezed7d{font-size:80%;color:white;background-color:#15bd90;width:100%;padding:15px;margin:10px;transition:font-size 0.2s;min-width:200px;box-shadow:5px 5px 3px rgba(0,0,0,0.2);cursor:pointer}.cat_menu_tab.svelte-1ezed7d:hover{font-size:90%}.cat_menu_tab.svelte-1ezed7d:active{box-shadow:2px 2px 3px rgba(0,0,0,0.2);transform:translateY(3px) translateX(3px)}.all-algs.svelte-1ezed7d{background-color:darkkhaki} \ No newline at end of file diff --git a/public/build/bundle.js b/public/build/bundle.js new file mode 100644 index 0000000..ee1b77a --- /dev/null +++ b/public/build/bundle.js @@ -0,0 +1,2 @@ +var app=function(){"use strict";function e(){}const a=e=>e;function t(e){return e()}function i(){return Object.create(null)}function n(e){e.forEach(t)}function r(e){return"function"==typeof e}function o(e,a){return e!=e?a==a:e!==a||e&&"object"==typeof e||"function"==typeof e}function s(a,t,i){a.$$.on_destroy.push(function(a,...t){if(null==a)return e;const i=a.subscribe(...t);return i.unsubscribe?()=>i.unsubscribe():i}(t,i))}function l(e){return null==e?"":e}function h(e,a,t){return e.set(t),a}const m="undefined"!=typeof window;let u=m?()=>window.performance.now():()=>Date.now(),p=m?e=>requestAnimationFrame(e):e;const d=new Set;function c(e){d.forEach((a=>{a.c(e)||(d.delete(a),a.f())})),0!==d.size&&p(c)}function f(e,a){e.appendChild(a)}function g(e){if(!e)return document;const a=e.getRootNode?e.getRootNode():e.ownerDocument;return a.host?a:document}function b(e){const a=w("style");return function(e,a){f(e.head||e,a)}(g(e),a),a}function v(e,a,t){e.insertBefore(a,t||null)}function y(e){e.parentNode.removeChild(e)}function x(e,a){for(let t=0;te.removeEventListener(a,t,i)}function A(e,a,t){null==t?e.removeAttribute(a):e.getAttribute(a)!==t&&e.setAttribute(a,t)}function S(e,a){a=""+a,e.wholeText!==a&&(e.data=a)}function M(e,a){e.value=null==a?"":a}function C(e,a,t){e.classList[t?"add":"remove"](a)}class P{constructor(){this.e=this.n=null}c(e){this.h(e)}m(e,a,t=null){this.e||(this.e=w(a.nodeName),this.t=a,this.c(e)),this.i(t)}h(e){this.e.innerHTML=e,this.n=Array.from(this.e.childNodes)}i(e){for(let a=0;a>>0}(m)}_${s}`,p=g(e);T.add(p);const d=p.__svelte_stylesheet||(p.__svelte_stylesheet=b(e).sheet),c=p.__svelte_rules||(p.__svelte_rules={});c[u]||(c[u]=!0,d.insertRule(`@keyframes ${u} ${m}`,d.cssRules.length));const f=e.style.animation||"";return e.style.animation=`${f?`${f}, `:""}${u} ${i}ms linear ${n}ms 1 both`,L+=1,u}function G(e,a){const t=(e.style.animation||"").split(", "),i=t.filter(a?e=>e.indexOf(a)<0:e=>-1===e.indexOf("__svelte")),n=t.length-i.length;n&&(e.style.animation=i.join(", "),L-=n,L||p((()=>{L||(T.forEach((e=>{const a=e.__svelte_stylesheet;let t=a.cssRules.length;for(;t--;)a.deleteRule(t);e.__svelte_rules={}})),T.clear())})))}function J(e){I=e}function B(e){(function(){if(!I)throw new Error("Function called outside component initialization");return I})().$$.after_update.push(e)}const z=[],O=[],R=[],H=[],Q=Promise.resolve();let $=!1;function D(e){R.push(e)}let N=!1;const F=new Set;function W(){if(!N){N=!0;do{for(let e=0;e{V.delete(e),i&&(t&&e.d(1),i())})),e.o(a)}}const te={duration:0};function ie(t,i,o,s){let l=i(t,o),h=s?0:1,m=null,f=null,g=null;function b(){g&&G(t,g)}function v(e,a){const t=e.b-h;return a*=Math.abs(t),{a:h,b:e.b,d:t,duration:a,start:e.start,end:e.start+a,group:e.group}}function y(i){const{delay:r=0,duration:o=300,easing:s=a,tick:y=e,css:x}=l||te,w={start:u()+r,b:i};i||(w.group=Z,Z.r+=1),m||f?f=w:(x&&(b(),g=X(t,h,i,o,r,s,x)),i&&y(0,1),m=v(w,o),D((()=>j(t,i,"start"))),function(e){let a;0===d.size&&p(c),new Promise((t=>{d.add(a={c:e,f:t})}))}((e=>{if(f&&e>f.start&&(m=v(f,o),f=null,j(t,m.b,"start"),x&&(b(),g=X(t,h,m.b,m.duration,0,s,l.css))),m)if(e>=m.end)y(h=m.b,1-h),j(t,m.b,"end"),f||(m.b?b():--m.group.r||n(m.group.c)),m=null;else if(e>=m.start){const a=e-m.start;h=m.a+m.d*s(a/m.duration),y(h,1-h)}return!(!m&&!f)})))}return{run(e){r(l)?(K||(K=Promise.resolve(),K.then((()=>{K=null}))),K).then((()=>{l=l(),y(e)})):y(e)},end(){b(),m=f=null}}}function ne(e){e&&e.c()}function re(e,a,i,o){const{fragment:s,on_mount:l,on_destroy:h,after_update:m}=e.$$;s&&s.m(a,i),o||D((()=>{const a=l.map(t).filter(r);h?h.push(...a):n(a),e.$$.on_mount=[]})),m.forEach(D)}function oe(e,a){const t=e.$$;null!==t.fragment&&(n(t.on_destroy),t.fragment&&t.fragment.d(a),t.on_destroy=t.fragment=null,t.ctx=[])}function se(e,a){-1===e.$$.dirty[0]&&(z.push(e),$||($=!0,Q.then(W)),e.$$.dirty.fill(0)),e.$$.dirty[a/31|0]|=1<{const n=i.length?i[0]:t;return p.ctx&&s(p.ctx[e],p.ctx[e]=n)&&(!p.skip_bound&&p.bound[e]&&p.bound[e](n),d&&se(a,e)),t})):[],p.update(),d=!0,n(p.before_update),p.fragment=!!o&&o(p.ctx),t.target){if(t.hydrate){const e=function(e){return Array.from(e.childNodes)}(t.target);p.fragment&&p.fragment.l(e),e.forEach(y)}else p.fragment&&p.fragment.c();t.intro&&ee(a.$$.fragment),re(a,t.target,t.anchor,t.customElement),W()}J(u)}class he{$destroy(){oe(this,1),this.$destroy=e}$on(e,a){const t=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return t.push(a),()=>{const e=t.indexOf(a);-1!==e&&t.splice(e,1)}}$set(e){var a;this.$$set&&(a=e,0!==Object.keys(a).length)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}function me(a){let t;return{c(){t=w("header"),t.innerHTML='

Quantum Algorithm Zoo

',A(t,"class","w3-round-xlarge svelte-szjetr")},m(e,a){v(e,t,a)},p:e,i:e,o:e,d(e){e&&y(t)}}}class ue extends he{constructor(e){super(),le(this,e,null,me,o,{})}}const pe=[];function de(a,t=e){let i;const n=new Set;function r(e){if(o(a,e)&&(a=e,i)){const e=!pe.length;for(const e of n)e[1](),pe.push(e,a);if(e){for(let e=0;e{n.delete(l),0===n.size&&(i(),i=null)}}}}const ce=Object.freeze({__proto__:null,default:{"Algebraic and Number Theoretic Algorithms":{0:{alg_id:0,name:"Factoring",speedup:"Superpolynomial",description:' Given an n -bit integer, find the prime factorization. The quantum algorithm of Peter Shor solves this in \\( \\widetilde{O} (n^3) \\) time [ 82 , 125 ]. The fastest known classical algorithm for integer factorization is the general number field sieve, which is believed to run in time \\( 2^{\\widetilde{O}(n^{1/3})} \\). The best rigorously proven upper bound on the classical complexity of factoring is \\( O(2^{n/4+o(1)}) \\) via the Pollard-Strassen algorithm [ 252 , 362 ]. Shor\'s factoring algorithm breaks RSA public-key encryption and the closely related quantum algorithms for discrete logarithms break the DSA and ECDSA digital signature schemes and the Diffie-Hellman key-exchange protocol. A quantum algorithm even faster than Shor\'s for the special case of factoring “semiprimes”, which are widely used in cryptography, is given in [ 271 ]. If small factors exist, Shor\'s algorithm can be beaten by a quantum algorithm using Grover search to speed up the elliptic curve factorization method [ 366 ]. Additional optimized versions of Shor\'s algorithm are given in [ 384 , 386 ]. There are proposed classical public-key cryptosystems not believed to be broken by quantum algorithms, cf. [ 248 ]. At the core of Shor\'s factoring algorithm is order finding, which can be reduced to the Abelian hidden subgroup problem , which is solved using the quantum Fourier transform. A number of other problems are known to reduce to integer factorization including the membership problem for matrix groups over fields of odd order [ 253 ], and certain diophantine problems relevant to the synthesis of quantum circuits [ 254 ]. ',references:[82,125,252,362,271,366,384,386,248,253,254],category:"Algebraic and Number Theoretic Algorithms"},1:{alg_id:1,name:"Discrete-log",speedup:"Superpolynomial",description:' We are given three n -bit numbers a , b , and N , with the promise that \\( b = a^s \\mod N \\) for some s . The task is to find s . As shown by Shor [ 82 ], this can be achieved on a quantum computer in poly( n ) time. The fastest known classical algorithm requires time superpolynomial in n . By similar techniques to those in [ 82 ], quantum computers can solve the discrete logarithm problem on elliptic curves, thereby breaking elliptic curve cryptography [ 109 , 14 ]. A further optimization to Shor\'s algorithm is given in [ 385 ]. The superpolynomial quantum speedup has also been extended to the discrete logarithm problem on semigroups [ 203 , 204 ]. See also Abelian hidden subgroup . ',references:[82,82,109,14,385,203,204],category:"Algebraic and Number Theoretic Algorithms"},2:{alg_id:2,name:"Pell's Equation",speedup:"Superpolynomial",description:' Given a positive nonsquare integer d , Pell\'s equation is \\( x^2 - d y^2 = 1 \\). For any such d there are infinitely many pairs of integers ( x,y ) solving this equation. Let \\( (x_1,y_1) \\) be the pair that minimizes \\( x+y\\sqrt{d} \\). If d is an n -bit integer ( i.e. \\( 0 \\leq d \\lt 2^n \\) ), \\( (x_1,y_1) \\) may in general require exponentially many bits to write down. Thus it is in general impossible to find \\( (x_1,y_1) \\) in polynomial time. Let \\( R = \\log(x_1+y_1 \\sqrt{d}) \\). \\( \\lfloor R \\rceil \\) uniquely identifies \\( (x_1,y_1) \\). As shown by Hallgren [ 49 ], given a n -bit number d , a quantum computer can find \\( \\lfloor R \\rceil \\) in poly( n ) time. No polynomial time classical algorithm for this problem is known. Factoring reduces to this problem. This algorithm breaks the Buchman-Williams cryptosystem. See also Abelian hidden subgroup . ',references:[49],category:"Algebraic and Number Theoretic Algorithms"},3:{alg_id:3,name:"Principal Ideal",speedup:"Superpolynomial",description:' We are given an n -bit integer d and an invertible ideal I of the ring \\( \\mathbb{Z}[\\sqrt{d}] \\). I is a principal ideal if there exists \\( \\alpha \\in \\mathbb{Q}(\\sqrt{d}) \\) such that \\( I = \\alpha \\mathbb{Z}[\\sqrt{d}] \\). \\( \\alpha \\) may be exponentially large in d . Therefore \\( \\alpha \\) cannot in general even be written down in polynomial time. However, \\( \\lfloor \\log \\alpha \\rceil \\) uniquely identifies \\( \\alpha \\). The task is to determine whether I is principal and if so find \\( \\lfloor \\log \\alpha \\rceil \\). As shown by Hallgren, this can be done in polynomial time on a quantum computer [ 49 ]. A modified quantum algorithm for this problem using fewer qubits was given in [ 131 ]. A quantum algorithm solving the principal ideal problem in number fields of arbitrary degree ( i.e. scaling polynomially in the degree) was subsequently given in [ 329 ]. Factoring reduces to solving Pell\'s equation, which reduces to the principal ideal problem. Thus the principal ideal problem is at least as hard as factoring and therefore is probably not in P. See also Abelian hidden subgroup . ',references:[49,131,329],category:"Algebraic and Number Theoretic Algorithms"},4:{alg_id:4,name:"Unit Group",speedup:"Superpolynomial",description:' The number field \\( \\mathbb{Q}(\\theta) \\) is said to be of degree d if the lowest degree polynomial of which \\( \\theta \\) is a root has degree d . The set \\( \\mathcal{O} \\) of elements of \\( \\mathbb{Q}(\\theta) \\) which are roots of monic polynomials in \\( \\mathbb{Z}[x] \\) forms a ring, called the ring of integers of \\( \\mathbb{Q}(\\theta) \\). The set of units (invertible elements) of the ring \\( \\mathcal{O} \\) form a group denoted \\( \\mathcal{O}^* \\). As shown by Hallgren [ 50 ], and independently by Schmidt and Vollmer [ 116 ], for any \\( \\mathbb{Q}(\\theta) \\) of fixed degree, a quantum computer can find in polynomial time a set of generators for \\( \\mathcal{O}^* \\) given a description of \\( \\theta \\). No polynomial time classical algorithm for this problem is known. Hallgren and collaborators subsequently discovered how to achieve polynomial scaling in the degree [ 213 ]. See also [ 329 ]. The algorithms rely on solving Abelian hidden subgroup problems over the additive group of real numbers. ',references:[50,116,213,329],category:"Algebraic and Number Theoretic Algorithms"},5:{alg_id:5,name:"Class Group",speedup:"Superpolynomial",description:' The number field \\( \\mathbb{Q}(\\theta) \\) is said to be of degree d if the lowest degree polynomial of which \\( \\theta \\) is a root has degree d . The set \\( \\mathcal{O} \\) of elements of \\( \\mathbb{Q}(\\theta) \\) which are roots of monic polynomials in \\( \\mathbb{Z}[x] \\) forms a ring, called the ring of integers of \\( \\mathbb{Q}(\\theta) \\), which is a Dedekind domain. For a Dedekind domain, the nonzero fractional ideals modulo the nonzero principal ideals form a group called the class group. As shown by Hallgren [ 50 ], a quantum computer can find a set of generators for the class group of the ring of integers of any constant degree number field, given a description of \\( \\theta \\), in time poly(log(\\( | \\mathcal{O} | \\))). An improved quantum algorithm, whose runtime is also polynomial in d was subsequently given in [ 329 ]. No polynomial time classical algorithm for these problems are known. See also Abelian hidden subgroup . ',references:[50,329],category:"Algebraic and Number Theoretic Algorithms"},6:{alg_id:6,name:"Gauss Sums",speedup:"Superpolynomial",description:' Let \\( \\mathbb{F}_q \\) be a finite field. The elements other than zero of \\( \\mathbb{F}_q \\) form a group \\( \\mathbb{F}_q^\\times \\) under multiplication, and the elements of \\( \\mathbb{F}_q \\) form an (Abelian but not necessarily cyclic) group \\( \\mathbb{F}_q^+ \\) under addition. We can choose some character \\( \\chi^\\times \\) of \\( \\mathbb{F}_q^\\times \\) and some character \\( \\chi^+ \\) of \\( \\mathbb{F}_q^+ \\). The corresponding Gauss sum is the inner product of these characters: \\( \\sum_{x \\neq 0 \\in \\mathbb{F}_q} \\chi^+(x) \\chi^\\times(x) \\) As shown by van Dam and Seroussi [ 90 ], Gauss sums can be estimated to polynomial precision on a quantum computer in polynomial time. Although a finite ring does not form a group under multiplication, its set of units does. Choosing a representation for the additive group of the ring, and choosing a representation for the multiplicative group of its units, one can obtain a Gauss sum over the units of a finite ring. These can also be estimated to polynomial precision on a quantum computer in polynomial time [ 90 ]. No polynomial time classical algorithm for estimating Gauss sums is known. Discrete log reduces to Gauss sum estimation [ 90 ]. Certain partition functions of the Potts model can be computed by a polynomial-time quantum algorithm related to Gauss sum estimation [ 47 ]. ',references:[90,90,90,47],category:"Algebraic and Number Theoretic Algorithms"},7:{alg_id:7,name:"Primality Proving",speedup:"Polynomial",description:' Given an n -bit number, return a proof of its primality. The fastest classical algorithms are AKS, the best versions of which [ 393 , 394 ] have essentially-quartic complexity, and ECPP, where the heuristic complexity of the fastest version [ 395 ] is also essentially quartic. The fastest known quantum algorithm for this problem is the method of Donis-Vela and Garcia-Escartin [ 396 ], with complexity \\( O(n^2 (\\log \\ n)^3 \\log \\ \\log \\ n) \\). This improves upon a prior factoring-based quantum algorithm for primality proving [ 397 ] that has complexity \\( O(n^3 \\log \\ n \\ \\log \\ \\log \\ n) \\). A recent result of Harvey and Van Der Hoeven [ 398 ] can be used to improve the complexity of the factoring-based quantum algorithm for primality proving to \\( O(n^3 \\log n) \\) and it may be possible to similarly reduce the complexity of the Donis-Vela-Garcia-Escartin algorithm to \\( O(n^2 (\\log \\ n)^3) \\) [ 399 ]. ',references:[393,394,395,396,397,398,399],category:"Algebraic and Number Theoretic Algorithms"},8:{alg_id:8,name:"Solving Exponential Congruences",speedup:"Polynomial",description:' We are given \\( a,b,c,f,g \\in \\mathbb{F}_q \\). We must find integers \\(x,y\\) such that \\( a f^x + b g^y = c \\). As shown in [ 111 ], quantum computers can solve this problem in \\( \\widetilde{O}(q^{3/8}) \\) time whereas the best classical algorithm requires \\( \\widetilde{O}(q^{9/8}) \\) time. The quantum algorithm of [ 111 ] is based on the quantum algorithms for discrete logarithms and searching. ',references:[111,111],category:"Algebraic and Number Theoretic Algorithms"},9:{alg_id:9,name:"Matrix Elements of Group Representations",speedup:"Superpolynomial",description:' All representations of finite groups and compact linear groups can be expressed as unitary matrices given an appropriate choice of basis. Conjugating the regular representation of a group by the quantum Fourier transform circuit over that group yields a direct sum of the group\'s irreducible representations. Thus, the efficient quantum Fourier transform over the symmetric group [ 196 ], together with the Hadamard test, yields a fast quantum algorithm for additively approximating individual matrix elements of the arbitrary irreducible representations of \\( S_n \\). Similarly, using the quantum Schur transform [ 197 ], one can efficiently approximate matrix elements of the irreducible representations of SU(n) that have polynomial weight. Direct implementations of individual irreducible representations for the groups U(n), SU(n), SO(n), and \\( A_n \\) by efficient quantum circuits are given in [ 106 ]. Instances that appear to be exponentially hard for known classical algorithms are also identified in [ 106 ]. ',references:[196,197,106,106],category:"Algebraic and Number Theoretic Algorithms"},10:{alg_id:10,name:"Verifying Matrix Products",speedup:"Polynomial",description:' Given three \\( n \\times n \\) matrices, A,B , and C , the matrix product verification problem is to decide whether AB=C . Classically, the best known algorithm achieves this in time \\( O(n^2) \\), whereas the best known classical algorithm for matrix multiplication runs in time \\( O(n^{2.373}) \\). Ambainis et al. discovered a quantum algorithm for this problem with runtime \\( O(n^{7/4}) \\) [ 6 ]. Subsequently, Buhrman and Špalek improved upon this, obtaining a quantum algorithm for this problem with runtime \\( O(n^{5/3}) \\) [ 19 ]. This latter algorithm is based on results regarding quantum walks that were proven in [ 85 ]. ',references:[6,19,85],category:"Algebraic and Number Theoretic Algorithms"},11:{alg_id:11,name:"Subset-sum",speedup:"Polynomial",description:' Given a list of integers \\( x_1,\\ldots,x_n \\), and a target integer s , the subset-sum problem is to determine whether the sum of any subset of the given integers adds up to s . This problem is NP-complete, and therefore is unlikely to be solvable by classical or quantum algorithms with polynomial worst-case complexity. In the hard instances the given integers are of order \\( 2^n \\) and much research on subset sum focuses on average case instances in this regime. In [ 178 ], a quantum algorithm is given that solves such instances in time \\( 2^{0.241n} \\), up to polynomial factors. This quantum algorithm works by applying a variant of Ambainis\'s quantum walk algorithm for element-distinctness [ 7 ] to speed up a sophisticated classical algorithm for this problem due to Howgrave-Graham and Joux. The fastest known classical algorithm for such instances of subset-sum runs in time \\( 2^{0.291n} \\), up to polynomial factors [ 404 ]. ',references:[178,7,404],category:"Algebraic and Number Theoretic Algorithms"},12:{alg_id:12,name:"Decoding",speedup:"Varies",description:' Classical error correcting codes allow the detection and correction of bit-flips by storing data reduntantly. Maximum-likelihood decoding for arbitrary linear codes is NP-complete in the worst case, but for structured codes or bounded error efficient decoding algorithms are known. Quantum algorithms have been formulated to speed up the decoding of convolutional codes [ 238 ] and simplex codes [ 239 ]. ',references:[238,239],category:"Algebraic and Number Theoretic Algorithms"},13:{alg_id:13,name:"Quantum Cryptanalysis",speedup:"Various",description:' It is well-known that Shor\'s algorithms for factoring and discrete logarithms [ 82 , 125 ] completely break the RSA and Diffie-Hellman cryptosystems, as well as their elliptic-curve-based variants [ 109 , 14 ]. (A number of "post-quantum" public-key cryptosystems have been proposed to replace these primitives, which are not known to be broken by quantum attacks.) Beyond Shor\'s algorithm, there is a growing body of work on quantum algorithms specifically designed to attack cryptosystems. These generally fall into three categories. The first is quantum algorithms providing polynomial or sub-exponential time attacks on cryptosystems under standard assumptions. In particular, the algorithm of Childs, Jao, and Soukharev for finding isogenies of elliptic curves breaks certain elliptic curve based cryptosystems in subexponential time that were not already broken by Shor\'s algorithm [ 283 ]. The second category is quantum algorithms achieving polynomial improvement over known classical cryptanalytic attacks by speeding up parts of these classical algorithms using Grover search, quantum collision finding, etc. Such attacks on private-key [ 284 , 285 , 288 , 315 , 316 ] and public-key [ 262 , 287 ] primitives, do not preclude the use of the associated cryptosystems but may influence choice of key size. The third category is attacks that make use of quantum superposition queries to block ciphers. These attacks in many cases completely break the cryptographic primitives [ 286 , 289 , 290 , 291 , 292 ]. However, in most practical situations such superposition queries are unlikely to be feasible.
',references:[82,125,109,14,283,284,285,288,315,316,262,287,286,289,290,291,292],category:"Algebraic and Number Theoretic Algorithms"}},"Oracular Algorithms":{0:{alg_id:14,name:"Searching",speedup:"Polynomial",description:' We are given an oracle with N allowed inputs. For one input w ("the winner") the corresponding output is 1, and for all other inputs the corresponding output is 0. The task is to find w . On a classical computer this requires \\( \\Omega(N) \\) queries. The quantum algorithm of Lov Grover achieves this using \\( O(\\sqrt{N}) \\) queries [ 48 ], which is optimal [ 216 ]. This has algorithm has subsequently been generalized to search in the presence of multiple "winners" [ 15 ], evaluate the sum of an arbitrary function [ 15 , 16 , 73 ], find the global minimum of an arbitrary function [ 35 , 75 , 255 ], take advantage of alternative initial states [ 100 ] or nonuniform probabilistic priors [ 123 ], work with oracles whose runtime varies between inputs [ 138 ], approximate definite integrals [ 77 ], and converge to a fixed-point [ 208 , 209 ]. Considerations on optimizing the depth of quantum search circuits are given in [ 405 ]. The generalization of Grover\'s algorithm known as amplitude estimation [ 17 ] is now an important primitive in quantum algorithms. Amplitude estimation forms the core of most known quantum algorithms related to collision finding and graph properties. One of the natural applications for Grover search is speeding up the solution to NP-complete problems such as 3-SAT. Doing so is nontrivial, because the best classical algorithm for 3-SAT is not quite a brute force search. Nevertheless, amplitude amplification enables a quadratic quantum speedup over the best classical 3-SAT algorithm, as shown in [ 133 ]. Quadratic speedups for other constraint satisfaction problems are obtained in [ 134 ]. For further examples of application of Grover search and amplitude amplification see [ 261 , 262 ]. A problem closely related to, but harder than, Grover search, is spatial search, in which database queries are limited by some graph structure. On sufficiently well-connected graphs, \\(O(\\sqrt{n})\\) quantum query complexity is still achievable [ 274 , 275 , 303 , 304 , 305 , 306 , 330 ]. ',references:[48,216,15,15,16,73,35,75,255,100,123,138,77,208,209,405,17,133,134,261,262,274,275,303,304,305,306,330],category:"Oracular Algorithms"},1:{alg_id:15,name:"Abelian Hidden Subgroup",speedup:"Superpolynomial",description:' Let G be a finitely generated Abelian group, and let H be some subgroup of G such that G/H is finite. Let f be a function on G such that for any \\( g_1,g_2 \\in G \\), \\( f(g_1) = f(g_2) \\) if and only if \\( g_1 \\) and \\( g_2 \\) are in the same coset of H . The task is to find H ( i.e. find a set of generators for H ) by making queries to f . This is solvable on a quantum computer using \\( O(\\log \\vert G\\vert) \\) queries, whereas classically \\( \\Omega(|G|) \\) are required. This algorithm was first formulated in full generality by Boneh and Lipton in [ 14 ]. However, proper attribution of this algorithm is difficult because, as described in chapter 5 of [ 76 ], it subsumes many historically important quantum algorithms as special cases, including Simon\'s algorithm [ 108 ], which was the inspiration for Shor\'s period finding algorithm, which forms the core of his factoring and discrete-log algorithms. The Abelian hidden subgroup algorithm is also at the core of the Pell\'s equation, principal ideal, unit group, and class group algorithms. In certain instances, the Abelian hidden subgroup problem can be solved using a single query rather than order \\( \\log(\\vert G\\vert) \\), as shown in [ 30 ]. It is normally assumed in period finding that the function \\(f(x) \\neq f(y) \\) unless \\( x-y = s \\), where \\( s \\) is the period. A quantum algorithm which applies even when this restiction is relaxed is given in [ 388 ]. Period finding has been generalized to apply to oracles which provide only the few most significant bits about the underlying function in [ 389 ]. ',references:[14,76,108,30,388,389],category:"Oracular Algorithms"},2:{alg_id:16,name:"Non-Abelian Hidden Subgroup",speedup:"Superpolynomial",description:' Let G be a finitely generated group, and let H be some subgroup of G that has finitely many left cosets. Let f be a function on G such that for any \\( g_1, g_2 \\), \\( f(g_1) = f(g_2) \\) if and only if \\( g_1 \\) and \\( g_2 \\) are in the same left coset of H . The task is to find H ( i.e. find a set of generators for H ) by making queries to f . This is solvable on a quantum computer using \\( O(\\log(|G|) \\) queries, whereas classically \\( \\Omega(|G|) \\) are required [ 37 , 51 ]. However, this does not qualify as an efficient quantum algorithm because in general, it may take exponential time to process the quantum states obtained from these queries. Efficient quantum algorithms for the hidden subgroup problem are known for certain specific non-Abelian groups [ 81 , 55 , 72 , 53 , 9 , 22 , 56 , 71 , 57 , 43 , 44 , 28 , 126 , 207 , 273 ]. A slightly outdated survey is given in [ 69 ]. Of particular interest are the symmetric group and the dihedral group. A solution for the symmetric group would solve graph isomorphism. A solution for the dihedral group would solve certain lattice problems [ 78 ]. Despite much effort, no polynomial-time solution for these groups is known, except in special cases [ 312 ]. However, Kuperberg [ 66 ] found a time \\( 2^{O( \\sqrt{\\log N})}) \\) algorithm for finding a hidden subgroup of the dihedral group \\( D_N \\). Regev subsequently improved this algorithm so that it uses not only subexponential time but also polynomial space [ 79 ]. A further improvement in the asymptotic scaling of the required number of qubits is obtained in [ 218 ]. Quantum query speedups (though not necessarily efficient quantum algorithms in terms of gate count) for somewhat more general problems of testing for isomorphisms of functions under sets of permutations are given in [ 311 ] ',references:[37,51,81,55,72,53,9,22,56,71,57,43,44,28,126,207,273,69,78,312,66,79,218,311],category:"Oracular Algorithms"},3:{alg_id:17,name:"Bernstein-Vazirani",speedup:"Polynomial Directly, Superpolynomial Recursively",description:' We are given an oracle whose input is n bits and whose output is one bit. Given input \\( x \\in \\{0,1\\}^n \\), the output is \\( x \\odot h \\), where h is the "hidden" string of n bits, and \\( \\odot \\) denotes the bitwise inner product modulo 2. The task is to find h . On a classical computer this requires n queries. As shown by Bernstein and Vazirani [ 11 ], this can be achieved on a quantum computer using a single query. Furthermore, one can construct recursive versions of this problem, called recursive Fourier sampling, such that quantum computers require exponentially fewer queries than classical computers [ 11 ]. See [ 256 , 257 ] for related work on the ubiquity of quantum speedups from generic quantum circuits and [ 258 , 270 ] for related work on a quantum query speedup for detecting correlations between the an oracle function and the Fourier transform of another. ',references:[11,11,256,257,258,270],category:"Oracular Algorithms"},4:{alg_id:18,name:"Deutsch-Jozsa",speedup:"Exponential over P, none over BPP",description:' We are given an oracle whose input is n bits and whose output is one bit. We are promised that out of the \\( 2^n \\) possible inputs, either all of them, none of them, or half of them yield output 1. The task is to distinguish the balanced case (half of all inputs yield output 1) from the constant case (all or none of the inputs yield output 1). It was shown by Deutsch [ 32 ] that for n=1 , this can be solved on a quantum computer using one query, whereas any deterministic classical algorithm requires two. This was historically the first well-defined quantum algorithm achieving a speedup over classical computation. (A related, more recent, pedagogical example is given in [ 259 ].) A single-query quantum algorithm for arbitrary n was developed by Deutsch and Jozsa in [ 33 ]. Although probabilistically easy to solve with O(1) queries, the Deutsch-Jozsa problem has exponential worst case deterministic query complexity classically. ',references:[32,259,33],category:"Oracular Algorithms"},5:{alg_id:19,name:"Formula Evaluation",speedup:"Polynomial",description:' A Boolean expression is called a formula if each variable is used only once. A formula corresponds to a circuit with no fanout, which consequently has the topology of a tree. By Reichardt\'s span-program formalism, it is now known [ 158 ] that the quantum query complexity of any formula of O (1) fanin on N variables is \\( \\Theta(\\sqrt{N}) \\). This result culminates from a long line of work [ 27 , 8 , 80 , 159 , 160 ], which started with the discovery by Farhi et al. [ 38 ] that NAND trees on \\( 2^n \\) variables can be evaluated on quantum computers in time \\( O(2^{0.5n}) \\) using a continuous-time quantum walk, whereas classical computers require \\( \\Omega(2^{0.753n}) \\) queries. In many cases, the quantum formula-evaluation algorithms are efficient not only in query complexity but also in time-complexity. The span-program formalism also yields quantum query complexity lower bounds [ 149 ]. Although originally discovered from a different point of view, Grover\'s algorithm can be regarded as a special case of formula evaluation in which every gate is OR. The quantum complexity of evaluating non-boolean formulas has also been studied [ 29 ], but is not as fully understood. Childs et al. have generalized to the case in which input variables may be repeated ( i.e. the first layer of the circuit may include fanout) [ 101 ]. They obtained a quantum algorithm using \\( O(\\min \\{N,\\sqrt{S},N^{1/2} G^{1/4} \\}) \\) queries, where N is the number of input variables not including multiplicities, S is the number of inputs counting multiplicities, and G is the number of gates in the formula. References [ 164 ], [ 165 ], and [ 269 ] consider special cases of the NAND tree problem in which the number of NAND gates taking unequal inputs is limited. Some of these cases yield superpolynomial separation between quantum and classical query complexity. ',references:[158,27,8,80,159,160,38,149,29,101,164,165,269],category:"Oracular Algorithms"},6:{alg_id:20,name:"Hidden Shift",speedup:"Superpolynomial",description:' We are given oracle access to some function f on \\( \\mathbb{Z}_N \\). We know that f(x) = g(x+s) where g is a known function and s is an unknown shift. The hidden shift problem is to find s . By reduction from Grover\'s problem it is clear that at least \\( \\sqrt{N} \\) queries are necessary to solve hidden shift in general. However, certain special cases of the hidden shift problem are solvable on quantum computers using O(1) queries. In particular, van Dam et al. showed that this can be done if f is a multiplicative character of a finite ring or field [ 89 ]. The previously discovered shifted Legendre symbol algorithm [ 88 , 86 ] is subsumed as a special case of this, because the Legendre symbol \\( \\left(\\frac{x}{p} \\right) \\) is a multiplicative character of \\( \\mathbb{F}_p \\). No classical algorithm running in time O (polylog( N )) is known for these problems. Furthermore, the quantum algorithm for the shifted Legendre symbol problem would break a certain cryptographic pseudorandom generator given the ability to make quantum queries to the generator [ 89 ]. A quantum speedup for hidden shift problems of difference sets is given in [ 312 ], and this also subsumes the Legendre symbol problem as a special case. Roetteler has found exponential quantum speedups for finding hidden shifts of certain nonlinear Boolean functions [ 105 , 130 ]. Building on this work, Gavinsky, Roetteler, and Roland have shown [ 142 ] that the hidden shift problem on random boolean functions \\( f:\\mathbb{Z}_2^n \\to \\mathbb{Z}_2 \\) has O(n) average case quantum complexity, whereas the classical query complexity is \\( \\Omega(2^{n/2}) \\). The results in [ 143 ], though they are phrased in terms of the hidden subgroup problem for the dihedral group, imply that the quantum query complexity of the hidden shift problem for an injective function on \\( \\mathbb{Z}_N \\) is O (log n ), whereas the classical query complexity is \\( \\Theta(\\sqrt{N}) \\). However, the best known quantum circuit complexity for injective hidden shift on \\( \\mathbb{Z}_N \\) is \\( O(2^{C \\sqrt{\\log N}}) \\), achieved by Kuperberg\'s sieve algorithm [ 66 ]. A recent result, building upon [ 408 , 43 ], achieves exponential quantum speedups for some generalizations of the Hidden shift problem including the hidden multiple shift problem , in which one has query access to \\(f_s(x) = f(x-hs) \\) over some allowed range of s and one wishes to infer h [ 407 ]. ',references:[89,88,86,89,312,105,130,142,143,66,408,43,407],category:"Oracular Algorithms"},7:{alg_id:21,name:"Polynomial interpolation",speedup:"Varies",description:' Let \\( p(x) = a_d x^d + \\ldots + a_1 x + a_0 \\) be a polynomial over the finite field \\( \\mathrm{GF}(q) \\). One is given access to an oracle that, given \\( x \\in \\mathrm{GF}(q) \\), returns \\( p(x) \\). The polynomial reconstruction problem is, by making queries to the oracle, to determine the coefficients \\( a_d,\\ldots,a_0 \\). Classically, \\( d + 1 \\) queries are necessary and sufficient. (In some sources use the term reconstruction instead of interpolation for this problem.) Quantumly, \\( d/2 + 1/2 \\) queries are necessary and \\( d/2 + 1 \\) queries are sufficient [ 360 , 361 ]. For multivariate polynomials of degree d in n variables the interpolation problem has classical query complexity \\( \\binom{n+d}{d} \\). As shown in [ 387 ], the quantum query complexity is \\( O \\left( \\frac{1}{n+1} \\binom{n+d}{d} \\right) \\) over \\( \\mathbb{R} \\) and \\( \\mathbb{C} \\) and it is \\( O \\left( \\frac{d}{n+d} \\binom{n+d}{d} \\right) \\) over \\( \\mathbb{F}_q \\) for sufficiently large q . Quantum algorithms have also been discovered for the case that the oracle returns \\( \\chi(f(x)) \\) where \\( \\chi \\) is a quadratic character of \\( \\mathrm{GF}(q) \\) [ 390 ], and the case where the oracle returns \\( f(x)^e \\) [ 392 ]. These generalize the hidden shift algorithm of [ 89 ] and achieve an exponential speedup over classical computation. A quantum algorithm for reconstructing rational functions over finite fields given noisy and incomplete oracle access to the function values is given in [ 391 ]. ',references:[360,361,387,390,392,89,391],category:"Oracular Algorithms"},8:{alg_id:22,name:"Pattern matching",speedup:"Superpolynomial",description:' Given strings T of length n and P of length m < n , both from some finite alphabet, the pattern matching problem is to find an occurrence of P as a substring of T or to report that P is not a substring of T . More generally, T and P could be d -dimensional arrays rather than one-dimensional arrays (strings). Then, the pattern matching problem is to return the location of P as a \\(m \\times m \\times \\ldots \\times m\\) block within the \\(n \\times n \\times \\ldots \\times n\\) array T or report that no such location exists. The \\( \\Omega(\\sqrt{N}) \\) query lower bound for unstructured search [ 216 ] implies that the worst-case quantum query complexity of this problem is \\( \\Omega ( \\sqrt{n} + \\sqrt{m} ) \\). A quantum algorithm achieving this, up to logarithmic factors, was obtained in [ 217 ]. This quantum algorithm works through the use of Grover\'s algorithm together with a classical method called deterministic sampling. More recently, Montanaro showed that superpolynomial quantum speedup can be achieved on average case instances of pattern matching, provided that m is greater than logarithmic in n . Specifically, the quantum algorithm given in [ 215 ] solves average case pattern matching in \\( \\widetilde{O}((n/m)^{d/2} 2^{O(d^{3/2} \\sqrt{\\log m})})\\) time. This quantum algorithm is constructed by generalizing Kuperberg\'s quantum sieve algorithm [ 66 ] for dihedral hidden subgroup and hidden shift problems so that it can operate in d dimensions and accomodate small amounts of noise, and then classically reducing the pattern matching problem to this noisy d -dimensional version of hidden shift. ',references:[216,217,215,66],category:"Oracular Algorithms"},9:{alg_id:23,name:"Ordered Search",speedup:"Constant factor",description:' We are given oracle access to a list of N numbers in order from least to greatest. Given a number x , the task is to find out where in the list it would fit. Classically, the best possible algorithm is binary search which takes \\( \\log_2 N \\) queries. Farhi et al. showed that a quantum computer can achieve this using 0.53 \\( \\log_2 N \\) queries [ 39 ]. Currently, the best known deterministic quantum algorithm for this problem uses 0.433 \\( \\log_2 N \\) queries [ 103 ]. A lower bound of \\( \\frac{\\ln 2}{\\pi} \\log_2 N \\) quantum queries has been proven for this problem [ 219 , 24 ]. In [ 10 ], a randomized quantum algorithm is given whose expected query complexity is less than \\( \\frac{1}{3} \\log_2 N \\). ',references:[39,103,219,24,10],category:"Oracular Algorithms"},10:{alg_id:24,name:"Graph Properties in the Adjacency Matrix Model",speedup:"Polynomial",description:' Let G be a graph of n vertices. We are given access to an oracle, which given a pair of integers in {1,2,..., n } tells us whether the corresponding vertices are connected by an edge. Building on previous work [ 35 , 52 , 36 ], Dürr et al. [ 34 ] show that the quantum query complexity of finding a minimum spanning tree of weighted graphs, and deciding connectivity for directed and undirected graphs have \\( \\Theta(n^{3/2}) \\) quantum query complexity, and that finding lowest weight paths has \\( O(n^{3/2}\\log^2 n) \\) quantum query complexity. Deciding whether a graph is bipartite, detecting cycles, and deciding whether a given vertex can be reached from another (st-connectivity) can all be achieved using a number of queries and quantum gates that both scale as \\( \\widetilde{O}(n^{3/2}) \\), and only logarithmically many qubits, as shown in [ 317 ], building upon [ 13 , 272 , 318 ]. A span-program-based quantum algorithm for detecting trees of a given size as minors in \\( \\widetilde{O}(n) \\) time is given in [ 240 ]. A graph property is sparse if there exists a constant c such that every graph with the property has a ratio of edges to vertices at most c . Childs and Kothari have shown that all sparse graph properties have query complexity \\( \\Theta(n^{2/3}) \\) if they cannot be characterized by a list of forbidden subgraphs and \\( o(n^{2/3}) \\) ( little-o ) if they can [ 140 ]. The former algorithm is based on Grover search, the latter on the quantum walk formalism of [ 141 ]. By Mader\'s theorem, sparse graph properties include all nontrivial minor-closed properties. These include planarity, being a forest, and not containing a path of given length. According to the widely-believed Aanderaa-Karp-Rosenberg conjecture, all of the above problems have \\( \\Omega(n^2) \\) classical query complexity. Another interesting computational problem is finding a subgraph H in a given graph G . The simplest case of this finding the triangle, that is, the clique of size three. The fastest known quantum algorithm for this finds a triangle in \\( O(n^{5/4}) \\) quantum queries [ 319 ], improving upon [ 276 , 175 , 171 , 70 , 152 , 21 ]. Stronger quantum query complexity upper bounds are known when the graphs are sufficiently sparse [ 319 , 320 ]. Classically, triangle finding requires \\( \\Omega(n^2) \\) queries [ 21 ]. More generally, a quantum computer can find an arbitrary subgraph of k vertices using \\( O(n^{2-2/k-t}) \\) queries where \\( t=(2k-d-3)/(k(d+1)(m+2)) \\) and d and m are such that H has a vertex of degree d and m + d edges [ 153 ]. This improves on the previous algorithm of [ 70 ]. In some cases, this query complexity is beaten by the quantum algorithm of [ 140 ], which finds H using \\( \\widetilde{O}\\left( n^{\\frac{3}{2}-\\frac{1}{\\mathrm{vc}(H)+1}} \\right) \\) queries, provided G is sparse, where vc( H ) is the size of the minimal vertex cover of H . A quantum algorithm for finding constant-sized sub-hypergraphs over 3-uniform hypergraphs in \\( O(n^{1.883}) \\) queries is given in [ 241 ]. ',references:[35,52,36,34,317,13,272,318,240,140,141,319,276,175,171,70,152,21,319,320,21,153,70,140,241],category:"Oracular Algorithms"},11:{alg_id:25,name:"Graph Properties in the Adjacency List Model",speedup:"Polynomial",description:' Let G be a graph of N vertices, M edges, and degree d . We are given access to an oracle which, when queried with the label of a vertex and \\( j \\in \\{1,2,\\ldots,d\\} \\) outputs the j th neighbor of the vertex or null if the vertex has degree less than d . Suppose we are given the promise that G is either bipartite or is far from bipartite in the sense that a constant fraction of the edges would need to be removed to achieve bipartiteness. Then, as shown in [ 144 ], the quantum complexity of deciding bipartiteness is \\( \\widetilde{O}(N^{1/3}) \\). Also in [ 144 ], it is shown that distinguishing expander graphs from graphs that are far from being expanders has quantum complexity \\( \\widetilde{O}(N^{1/3}) \\) and \\( \\widetilde{\\Omega}(N^{1/4}) \\), whereas the classical complexity is \\( \\widetilde{\\Theta}(\\sqrt{N}) \\). The key quantum algorithmic tool is Ambainis\' algorithm for element distinctness. In [ 34 ], it is shown that finding a minimal spanning tree has quantum query complexity \\( \\Theta(\\sqrt{NM}) \\), deciding graph connectivity has quantum query complexity \\( \\Theta(N) \\) in the undirected case, and \\( \\widetilde{\\Theta}(\\sqrt{NM}) \\) in the directed case, and computing the lowest weight path from a given source to all other vertices on a weighted graph has quantum query complexity \\( \\widetilde{\\Theta}(\\sqrt{NM}) \\). In [ 317 ] quantum algorithms are given for st-connectivity, deciding bipartiteness, and deciding whether a graph is a forest, which run in \\( \\widetilde{O}(N \\sqrt{d}) \\) time and use only logarithmically many qubits. ',references:[144,144,34,317],category:"Oracular Algorithms"},12:{alg_id:26,name:"Welded Tree",speedup:"Superpolynomial",description:' Some computational problems can be phrased in terms of the query complexity of finding one\'s way through a maze. That is, there is some graph G to which one is given oracle access. When queried with the label of a given node, the oracle returns a list of the labels of all adjacent nodes. The task is, starting from some source node ( i.e. its label), to find the label of a certain marked destination node. As shown by Childs et al. [ 26 ], quantum computers can exponentially outperform classical computers at this task for at least some graphs. Specifically, consider the graph obtained by joining together two depth- n binary trees by a random "weld" such that all nodes but the two roots have degree three. Starting from one root, a quantum computer can find the other root using poly( n ) queries, whereas this is provably impossible using classical queries. ',references:[26],category:"Oracular Algorithms"},13:{alg_id:27,name:"Collision Finding and Element Distinctness",speedup:"Polynomial",description:' Suppose we are given oracle access to a two to one function f on a domain of size N . The collision problem is to find a pair \\( x,y \\in \\{1,2,\\ldots,N\\} \\) such that f(x) = f(y) . The classical randomized query complexity of this problem is \\( \\Theta(\\sqrt{N}) \\), whereas, as shown by Brassard et al. , a quantum computer can achieve this using \\(O(N^{1/3}) \\) queries [ 18 ]. (See also [ 315 ].) Removing the promise that f is two-to-one yields a problem called element distinctness, which has \\( \\Theta(N) \\) classical query complexity. Improving upon [ 21 ], Ambainis gives a quantum algorithm with query complexity of \\( O(N^{2/3}) \\) for element distinctness, which is optimal [ 7 , 374 ]. The problem of deciding whether any k -fold collisions exist is called k -distinctness. Improving upon [ 7 , 154 ], the best quantum query complexity for k -distinctness is \\( O(n^{3/4 - 1/(4(2^k-1))}) \\) [ 172 , 173 ]. For k =2,3 this is also the time-complexity, up to logarithmic factors, by [ 7 ]. For \\( k > 3\\) the fastest known quantum algorithm has time complexity \\( O(n^{(k-1)/k}) \\) [ 363 ]. Given two functions f and g , on domains of size N and M , respectively a claw is a pair x,y such that f(x) = g(y) . In the case that N = M , the algorithm of [ 7 ] solves claw-finding in \\( O(N^{2/3}) \\) queries, improving on the previous \\( O(N^{3/4} \\log N) \\) quantum algorithm of [ 21 ]. Further work gives improved query complexity for various parameter regimes in which \\(N \\neq M\\) [ 364 , 365 ]. More generally, a related problem to element distinctness, is, given oracle access to a sequence, to estimate the \\(k^{\\mathrm{th}}\\) frequency moment \\(F_k = \\sum_j n_j^k \\), where \\(n_j\\) is the number of times that j occurs in the sequence. An approximately quadratic speedup for this problem is obtained in [ 277 ]. See also graph collision . ',references:[18,315,21,7,374,7,154,172,173,7,363,7,21,364,365,277],category:"Oracular Algorithms"},14:{alg_id:28,name:"Graph Collision",speedup:"Polynomial",description:' We are given an undirected graph of n vertices and oracle access to a labelling of the vertices by 1 and 0. The graph collision problem is, by querying this oracle, to decide whether there exist a pair of vertices, connected by an edge, both of which are labelled 1. One can embed Grover\'s unstructured search problem as an instance of graph collision by choosing the star graph, labelling the center 1, and labelling the remaining vertices by the database entries. Hence, this problem has quantum query complexity \\( \\Omega(\\sqrt{n}) \\) and classical query complexity \\( \\Theta (n) \\). In [ 70 ], Magniez, Nayak, and Szegedy gave a \\( O(N^{2/3}) \\)-query quantum algorithm for graph collision on general graphs. This remains the best upper bound on quantum query complexity for this problem on general graphs. However, stronger upper bounds have been obtained for several special classes of graphs. Specifically, the quantum query complexity on a graph G is \\( \\widetilde{O}(\\sqrt{n} + \\sqrt{l}) \\) where l is the number of non-edges in G [ 161 ], \\(O(\\sqrt{n} \\alpha^{1/6}) \\) where \\(\\alpha\\) is the size of the largest independent set of G [ 172 ], \\(O(\\sqrt{n} + \\sqrt{\\alpha^*})\\) where \\( \\alpha^* \\) is the maximum total degree of any independent set of G [ 200 ], and \\(O(\\sqrt{n} t^{1/6}) \\) where t is the treewidth of G [ 201 ]. Furthermore, the quantum query complexity is \\( \\widetilde{O}(\\sqrt{n}) \\) with high probability for random graphs in which the presence or absence of an edge between each pair of vertices is chosen independently with fixed probability, ( i.e. Erdős-Rényi graphs) [ 200 ]. See [ 201 ] for a summary of these results as well as new upper bounds for two additional classes of graph that are too complicated to describe here. ',references:[70,161,172,200,201,200,201],category:"Oracular Algorithms"},15:{alg_id:29,name:"Matrix Commutativity",speedup:"Polynomial",description:' We are given oracle access to k matrices, each of which are \\( n \\times n \\). Given integers \\( i,j \\in \\{1,2,\\ldots,n\\} \\), and \\( x \\in \\{1,2,\\ldots,k\\} \\) the oracle returns the ij matrix element of the \\( x^{\\mathrm{th}} \\) matrix. The task is to decide whether all of these k matrices commute. As shown by Itakura [ 54 ], this can be achieved on a quantum computer using \\( O(k^{4/5}n^{9/5}) \\) queries, whereas classically this requires \\( \\Omega( k n^2 ) \\) queries. ',references:[54],category:"Oracular Algorithms"},16:{alg_id:30,name:"Group Commutativity",speedup:"Polynomial",description:' We are given a list of k generators for a group G and access to a blackbox implementing group multiplication. By querying this blackbox we wish to determine whether the group is commutative. The best known classical algorithm is due to Pak and requires O(k) queries. Magniez and Nayak have shown that the quantum query complexity of this task is \\( \\widetilde{\\Theta}(k^{2/3}) \\) [ 139 ]. ',references:[139],category:"Oracular Algorithms"},17:{alg_id:31,name:"Hidden Nonlinear Structures",speedup:"Superpolynomial",description:' Any Abelian group G can be visualized as a lattice. A subgroup H of G is a sublattice, and the cosets of H are all the shifts of that sublattice. The Abelian hidden subgroup problem is normally solved by obtaining superposition over a random coset of the Hidden subgroup, and then taking the Fourier transform so as to sample from the dual lattice. Rather than generalizing to non-Abelian groups (see non-Abelian hidden subgroup ), one can instead generalize to the problem of identifying hidden subsets other than lattices. As shown by Childs et al. [ 23 ] this problem is efficiently solvable on quantum computers for certain subsets defined by polynomials, such as spheres. Decker et al. showed how to efficiently solve some related problems in [ 31 , 212 ]. ',references:[23,31,212],category:"Oracular Algorithms"},18:{alg_id:32,name:"Center of Radial Function",speedup:"Polynomial",description:' We are given an oracle that evaluates a function f from \\( \\mathbb{R}^d \\) to some arbitrary set S , where f is spherically symmetric. We wish to locate the center of symmetry, up to some precision. (For simplicity, let the precision be fixed.) In [ 110 ], Liu gives a quantum algorithm, based on a curvelet transform, that solves this problem using a constant number of quantum queries independent of d . This constitutes a polynomial speedup over the classical lower bound, which is \\( \\Omega(d) \\) queries. The algorithm works when the function f fluctuates on sufficiently small scales, e.g. , when the level sets of f are sufficiently thin spherical shells. The quantum algorithm is shown to work in an idealized continuous model, and nonrigorous arguments suggest that discretization effects should be small. ',references:[110],category:"Oracular Algorithms"},19:{alg_id:33,name:"Group Order and Membership",speedup:"Superpolynomial",description:' Suppose a finite group G is given oracularly in the following way. To every element in G , one assigns a corresponding label. Given an ordered pair of labels of group elements, the oracle returns the label of their product. There are several classically hard problems regarding such groups. One is to find the group\'s order, given the labels of a set of generators. Another task is, given a bitstring, to decide whether it corresponds to a group element. The constructive version of this membership problem requires, in the yes case, a decomposition of the given element as a product of group generators. Classically, these problems cannot be solved using polylog(| G |) queries even if G is Abelian. For Abelian groups, quantum computers can solve these problems using polylog(| G |) queries by reduction to the Abelian hidden subgroup problem, as shown by Mosca [ 74 ]. Furthermore, as shown by Watrous [ 91 ], quantum computers can solve these problems using polylog(| G |) queries for any solvable group. For groups given as matrices over a finite field rather than oracularly, the order finding and constructive membership problems can be solved in polynomial time by using the quantum algorithms for discrete log and factoring [ 124 ]. See also group isomorphism . ',references:[74,91,124],category:"Oracular Algorithms"},20:{alg_id:34,name:"Group Isomorphism",speedup:"Superpolynomial",description:' Let G be a finite group. To every element of G is assigned an arbitrary label (bit string). Given an ordered pair of labels of group elements, the group oracle returns the label of their product. Given access to the group oracles for two groups G and G\' , and a list of generators for each group, we must decide whether G and G\' are isomorphic. For Abelian groups, we can solve this problem using poly(log | G |, log | G\' |) queries to the oracle by applying the quantum algorithm of [ 127 ], which decomposes any Abelian group into a canonical direct product of cyclic groups. The quantum algorithm of [ 128 ] solves the group isomorphism problem using poly(log | G |, log | G\' |) queries for a certain class of non-Abelian groups. Specifically, a group G is in this class if G has a normal Abelian subgroup A and an element y of order coprime to | A | such that G = A , y . Zatloukal has recently given an exponential quantum speedup for some instances of a problem closely related to group isomorphism, namely testing equivalence of group extensions [ 202 ]. ',references:[127,128,202],category:"Oracular Algorithms"},21:{alg_id:35,name:"Statistical Difference",speedup:"Polynomial",description:' Suppose we are given two black boxes A and B whose domain is the integers 1 through T and whose range is the integers 1 through N . By choosing uniformly at random among allowed inputs we obtain a probability distribution over the possible outputs. We wish to approximate to constant precision the L1 distance between the probability distributions determined by A and B . Classically the number of necessary queries scales essentially linearly with N. As shown in [ 117 ], a quantum computer can achieve this using \\( O(\\sqrt{N}) \\) queries. Approximate uniformity and orthogonality of probability distributions can also be decided on a quantum computer using \\( O(N^{1/3}) \\) queries. The main tool is the quantum counting algorithm of [ 16 ]. A further improved quantum algorithm for this task is obtained in [ 265 ]. ',references:[117,16,265],category:"Oracular Algorithms"},22:{alg_id:36,name:"Finite Rings and Ideals",speedup:"Superpolynomial",description:' Suppose we are given black boxes implementing the addition and multiplication operations on a finite ring R , not necessarily commutative, along with a set of generators for R . With respect to addition, R forms a finite Abelian group ( R ,+). As shown in [ 119 ], on a quantum computer one can find in poly(log | R |) time a set of additive generators \\( \\{h_1,\\ldots,h_m\\} \\subset R \\) such that \\( (R,+) \\simeq \\langle h_1 \\rangle \\times \\ldots \\times \\langle h_M \\rangle\\) and m is polylogarithmic in | R |. This allows efficient computation of a multiplication tensor for R . As shown in [ 118 ], one can similarly find an additive generating set for any ideal in R . This allows one to find the intersection of two ideals, find their quotient, prove whether a given ring element belongs to a given ideal, prove whether a given element is a unit and if so find its inverse, find the additive and multiplicative identities, compute the order of an ideal, solve linear equations over rings, decide whether an ideal is maximal, find annihilators, and test the injectivity and surjectivity of ring homomorphisms. As shown in [ 120 ], one can also use a quantum computer to efficiently decide whether a given polynomial is identically zero on a given finite black box ring. Known classical algorithms for these problems scale as poly(| R |). ',references:[119,118,120],category:"Oracular Algorithms"},23:{alg_id:37,name:"Counterfeit Coins",speedup:"Polynomial",description:' Suppose we are given N coins, k of which are counterfeit. The real coins are all of equal weight, and the counterfeit coins are all of some other equal weight. We have a pan balance and can compare the weight of any pair of subsets of the coins. Classically, we need \\( \\Omega(k \\log(N/k)) \\) weighings to identify all of the counterfeit coins. We can introduce an oracle such that given a pair of subsets of the coins of equal cardinality, it outputs one bit indicating balanced or unbalanced. Building on previous work by Terhal and Smolin [ 137 ], Iwama et al. have shown [ 136 ] that on a quantum computer, one can identify all of the counterfeit coins using \\( O(k^{1/4}) \\) queries. The core techniques behind the quantum speedup are amplitude amplification and the Bernstein-Vazirani algorithm. ',references:[137,136],category:"Oracular Algorithms"},24:{alg_id:38,name:"Matrix Rank",speedup:"Polynomial",description:' Suppose we are given oracle access to the (integer) entries of an \\( n \\times m \\) matrix A . We wish to determine the rank of the matrix. Classically this requires order nm queries. Building on [ 149 ], Belovs [ 150 ] gives a quantum algorithm that can use fewer queries given a promise that the rank of the matrix is at least r . Specifically, Belovs\' algorithm uses \\( O(\\sqrt{r(n-r+1)}LT) \\) queries, where L is the root-mean-square of the reciprocals of the r largest singular values of A and T is a factor that depends on the sparsity of the matrix. For general A , \\( T = O(\\sqrt{nm}) \\). If A has at most k nonzero entries in any row or column then \\( T = O(k \\log(n+m)) \\). (To achieve the corresponding query complexity in the k -sparse case, the oracle must take a column index as input, and provide a list of the nonzero matrix elements from that column as output.) As an important special case, one can use these quantum algorithms for the problem of determining whether a square matrix is singular, which is sometimes referred to as the determinant problem. For general A the quantum query complexity of the determinant problem is no lower than the classical query complexity [ 151 ]. However, [ 151 ] does not rule out a quantum speedup given a promise on A , such as sparseness or lack of small singular values. ',references:[149,150,151,151],category:"Oracular Algorithms"},25:{alg_id:39,name:"Matrix Multiplication over Semirings",speedup:"Polynomial",description:' A semiring is a set endowed with addition and multiplication operations that obey all the axioms of a ring except the existence additive inverses. Matrix multiplication over various semirings has many applications to graph problems. Matrix multiplication over semirings can be sped up by straightforward Grover improvements upon schoolbook multiplication, yielding a quantum algorithm that multiplies a pair of \\(n \\times n\\) matrices in \\( \\widetilde{O}(n^{5/2}) \\) time. For some semirings this algorithm outperforms the fastest known classical algorithms and for some semirings it does not [ 206 ]. A case of particular interest is the Boolean semiring, in which OR serves as addition and AND serves as multiplication. No quantum algorithm is known for Boolean semiring matrix multiplication in the general case that beats the best classical algorithm, which has complexity \\( n^{2.373} \\). However, for sparse input our output, quantum speedups are known. Specifically, let A,B be n by n Boolean matrices. Let C = AB , and let l be the number of entries of C that are equal to 1 ( i.e. TRUE). Improving upon [ 19 , 155 , 157 ], the best known upper bound on quantum query complexity is \\(\\widetilde{O}(n \\sqrt{l}) \\), as shown in [ 161 ]. If instead the input matrices are sparse, a quantum speedup over the fastest known classical algorithm also has been found in a certain regime [ 206 ]. For detailed comparison to classical algorithms, see [ 155 , 206 ]. Quantum algorithms have been found to perform matrix multiplication over the (max,min) semiring in \\(\\widetilde{O}(n^{2.473})\\) time and over the distance dominance semiring in \\(\\widetilde{O}(n^{2.458})\\) time [ 206 ]. The fastest known classical algorithm for both of these problems has \\(\\widetilde{O}(n^{2.687})\\) complexity. ',references:[206,19,155,157,161,206,155,206,206],category:"Oracular Algorithms"},26:{alg_id:40,name:"Subset finding",speedup:"Polynomial",description:' We are oracle access to a function \\( f:D \\to R \\) where D and R are finite sets. Some property \\( P \\subset (D \\times R)^k \\) is specified, for example as an explicit list. Our task is to find a size- k subset of D satisfying P , i.e. \\( ((x_1,f(x_1)),\\ldots,(x_k,f(x_k))) \\in P \\), or reject if none exists. As usual, we wish to do this with the minimum number of queries to f . Generalizing the result of [ 7 ], it was shown in [ 162 ] that this can be achieved using \\(O(|D|^{k/(k+1)}) \\) quantum queries. As an noteworthy special case, this algorithm solves the k -subset-sum problem of finding k numbers from a list with some desired sum. A matching lower bound for the quantum query complexity is proven in [ 163 ]. ',references:[7,162,163],category:"Oracular Algorithms"},27:{alg_id:41,name:"Search with Wildcards",speedup:"Polynomial",description:' The search with wildcards problem is to identify a hidden n -bit string x by making queries to an oracle f . Given \\( S \\subseteq \\{1,2,\\ldots,n\\} \\) and \\( y \\in \\{0,1\\}^{|S|} \\), f returns one if the substring of x specified by S is equal to y , and returns zero otherwise. Classically, this problem has query complexity \\(\\Theta(n)\\). As shown in [ 167 ], the quantum query complexity of this problem is \\( \\Theta(\\sqrt{n}) \\). Interestingly, this quadratic speedup is achieved not through amplitude amplification or quantum walks, but rather through use of the so-called Pretty Good Measurement. The paper [ 167 ] also gives a quantum speedup for the related problem of combinatorial group testing. This result and subsequent faster quantum algorithms for group testing are discussed in the entry on Junta Testing and Group Testing.',references:[167],category:"Oracular Algorithms"},28:{alg_id:42,name:"Network flows",speedup:"Polynomial",description:"A network is a directed graph whose edges are labeled with numbers indicating their carrying capacities, and two of whose vertices are designated as the source and the sink. A flow on a network is an assignment of flows to the edges such that no flow exceeds that edge's capacity, and for each vertex other than the source and sink, the total inflow is equal to the total outflow. The network flow problem is, given a network, to find the flow that maximizes the total flow going from source to sink. For a network with n vertices, m edges, and integer capacities of maximum magnitude U , [ 168 ] gives a quantum algorithm to find the maximal flow in time \\( O(\\min \\{n^{7/6} \\sqrt{m} \\ U^{1/3}, \\sqrt{nU}m\\} \\times \\log n) \\). The network flow problem is closely related to the problem of finding a maximal matching of a graph, that is, a maximal-size subset of edges that connects each vertex to at most one other vertex. The paper [ 168 ] gives algorithms for finding maximal matchings that run in time \\( O(n \\sqrt{m+n} \\log n) \\) if the graph is bipartite, and \\( O(n^2 ( \\sqrt{m/n} + \\log n) \\log n) \\) in the general case. The core of these algorithms is Grover search. The known upper bounds on classical complexity of the network flow and matching problems are complicated to state because different classical algorithms are preferable in different parameter regimes. However, in certain regimes, the above quantum algorithms beat all known classical algorithms. (See [ 168 ] for details.)",references:[168],category:"Oracular Algorithms"},29:{alg_id:43,name:"Electrical resistance",speedup:"Exponential",description:"We are given oracle access to a weighted graph of n vertices and maximum degree d whose edge weights are to be interpreted as electrical resistances. Our task is to compute the resistance between a chosen pair of vertices. Wang gave two quantum algorithms in [ 210 ] for this task that run in time \\(\\mathrm{poly}( \\log n, d, 1/\\phi, 1/\\epsilon) \\), where \\( \\phi \\) is the expansion of the graph, and the answer is to be given to within a factor of \\( 1+\\epsilon \\). Known classical algorithms for this problem are polynomial in n rather than \\( \\log n \\). One of Wang's algorithms is based on a novel use of quantum walks. The other is based on the quantum algorithm of [ 104 ] for solving linear systems of equations. The first quantum query complexity upper bounds for the electrical resistance problem in the adjacency query model are given in [ 280 ] using approximate span programs.",references:[210,104,280],category:"Oracular Algorithms"},30:{alg_id:44,name:"Junta Testing and Group Testing",speedup:"Polynomial",description:"A function \\(f:\\{0,1\\}^n \\to \\{0,1\\}\\) is a k -junta if it depends on at most k of its input bits. The k -junta testing problem is to decide whether a given function is a k -junta or is \\( \\epsilon \\)-far from any k -junta. Althoug it is not obvious, this problem is closely related to group testing. A group testing problem is defined by a function \\(f:\\{1,2,\\ldots,n\\} \\to \\{0,1\\}\\). One is given oracle access to F , which takes as input subsets of \\( \\{1,2,\\ldots,n\\} \\). F ( S ) = 1 if there exists \\(x \\in S \\) such that f ( x ) = 1 and F ( S ) = 0 otherwise. In [ 266 ] a quantum algorithm is given solving the k -junta problem using \\( \\widetilde{O}(\\sqrt{k/\\epsilon}) \\) queries and \\( \\widetilde{O}(n \\sqrt{k/\\epsilon}) \\) time. This is a quadratic speedup over the classical complexity, and improves upon a previous quantum algorithm for k -junta testing given in [ 267 ]. A polynomial speedup for a gapped ( i.e. approximation) version of group testing is also given in [ 266 ], improving upon the earlier results of [ 167 , 268 ].",references:[266,267,167,268],category:"Oracular Algorithms"}},"Approximation and Simulation Algorithms":{0:{alg_id:45,name:"Quantum Simulation",speedup:"Superpolynomial",description:' It is believed that for any physically realistic Hamiltonian H on n degrees of freedom, the corresponding time evolution operator \\( e^{-i H t} \\) can be implemented using poly( n,t ) gates. Unless BPP=BQP, this problem is not solvable in general on a classical computer in polynomial time. Many techniques for quantum simulation have been developed for general classes of Hamiltonians [ 25 , 95 , 92 , 5 , 12 , 170 , 205 , 211 , 244 , 245 , 278 , 293 , 294 , 295 , 372 , 382 ], chemical dynamics [ 63 , 68 , 227 , 310 , 375 ], condensed matter physics [ 1 , 99 , 145 ], relativistic quantum mechanics (the Dirac and Klein-Gordon equations) [ 367 , 369 , 370 , 371 ], open quantum systems [ 376 , 377 , 378 , 379 ], and quantum field theory [ 107 , 166 , 228 , 229 , 230 , 368 ]. The exponential complexity of classically simulating quantum systems led Feynman to first propose that quantum computers might outperform classical computers on certain tasks [ 40 ]. Although the problem of finding ground energies of local Hamiltonians is QMA-complete and therefore probably requires exponential time on a quantum computer in the worst case, quantum algorithms have been developed to approximate ground [ 102 , 231 , 232 , 233 , 234 , 235 , 308 , 321 , 322 , 380 , 381 ] as well as thermal states [ 132 , 121 , 281 , 282 , 307 ] for some classes of Hamiltonians and equilibrium states for some classes of master equations [ 429 ]. Efficient quantum algorithms have been also obtained for preparing certain classes of tensor network states [ 323 , 324 , 325 , 326 , 327 , 328 ]. ',references:[25,95,92,5,12,170,205,211,244,245,278,293,294,295,372,382,63,68,227,310,375,1,99,145,367,369,370,371,376,377,378,379,107,166,228,229,230,368,40,102,231,232,233,234,235,308,321,322,380,381,132,121,281,282,307,429,323,324,325,326,327,328],category:"Approximation and Simulation Algorithms"},1:{alg_id:46,name:"Knot Invariants",speedup:"Superpolynomial",description:' As shown by Freedman [ 42 , 41 ], et al. , finding a certain additive approximation to the Jones polynomial of the plat closure of a braid at \\( e^{i 2 \\pi/5} \\) is a BQP-complete problem. This result was reformulated and extended to \\( e^{i 2 \\pi/k} \\) for arbitrary k by Aharonov et al. [ 4 , 2 ]. Wocjan and Yard further generalized this, obtaining a quantum algorithm to estimate the HOMFLY polynomial [ 93 ], of which the Jones polynomial is a special case. Aharonov et al. subsequently showed that quantum computers can in polynomial time estimate a certain additive approximation to the even more general Tutte polynomial for planar graphs [ 3 ]. It is not fully understood for what range of parameters the approximation obtained in [ 3 ] is BQP-hard. (See also partition functions .) Polynomial-time quantum algorithms have also been discovered for additively approximating link invariants arising from quantum doubles of finite groups [ 174 ]. (This problem is not known to be BQP-hard.) As shown in [ 83 ], the problem of finding a certain additive approximation to the Jones polynomial of the trace closure of a braid at \\( e^{i 2 \\pi/5} \\) is DQC1-complete. ',references:[42,41,4,2,93,3,3,174,83],category:"Approximation and Simulation Algorithms"},2:{alg_id:47,name:"Three-manifold Invariants",speedup:"Superpolynomial",description:' The Turaev-Viro invariant is a function that takes three-dimensional manifolds as input and produces a real number as output. Homeomorphic manifolds yield the same number. Given a three-manifold specified by a Heegaard splitting, a quantum computer can efficiently find a certain additive approximation to its Turaev-Viro invariant, and this approximation is BQP-complete [ 129 ]. Earlier, in [ 114 ], a polynomial-time quantum algorithm was given to additively approximate the Witten-Reshitikhin-Turaev (WRT) invariant of a manifold given by a surgery presentation. Squaring the WRT invariant yields the Turaev-Viro invariant. However, it is unknown whether the approximation achieved in [ 114 ] is BQP-complete. A suggestion of a possible link between quantum computation and three-manifold invariants was also given in [ 115 ]. ',references:[129,114,114,115],category:"Approximation and Simulation Algorithms"},3:{alg_id:48,name:"Partition Functions",speedup:"Superpolynomial",description:' For a classical system with a finite set of states S the partition function is \\( Z = \\sum_{s \\in S} e^{-E(s)/kT} \\), where T is the temperature and k is Boltzmann\'s constant. Essentially every thermodynamic quantity can be calculated by taking an appropriate partial derivative of the partition function. The partition function of the Potts model is a special case of the Tutte polynomial. A quantum algorithm for approximating the Tutte polynomial is given in [ 3 ]. Some connections between these approaches are discussed in [ 67 ]. Additional algorithms for estimating partition functions on quantum computers are given in [ 112 , 113 , 45 , 47 ]. A BQP-completeness result (where the "energies" are allowed to be complex) is also given in [ 113 ]. A method for approximating partition functions by simulating thermalization processes is given in [ 121 ]. A quadratic speedup for the approximation of general partition functions is given in [ 122 ]. A method based on quantum walks, achieving polynomial speedup for evaluating partition functions is given in [ 265 ]. ',references:[3,67,112,113,45,47,113,121,122,265],category:"Approximation and Simulation Algorithms"},4:{alg_id:49,name:"Quantum Approximate Optimization",description:' For many combinatorial optimization problems, finding the exact optimal solution is NP-complete. There are also hardness-of-approximation results proving that finding an approximation with sufficiently small error bound is NP-complete. For certain problems there is a gap between the best error bound achieved by a polynomial-time classical approximation algorithm and the error bound proven to be NP-hard. In this regime there is potential for exponential speedup by quantum computation. In [ 242 ] a new quantum algorithmic technique called the Quantum Approximate Optimization Algorithm (QAOA) was proposed for finding approximate solutions to combinatorial optimization problems. In [ 243 ] it was subsequently shown that QAOA solves a combinatorial optimization problem called Max E3LIN2 with a better approximation ratio than any polynomial-time classical algorithm known at the time. However, an efficient classical algorithm achieving an even better approximation ratio (in fact, the approximation ratio saturating the limit set by hardness-of-approximation) was subsequently discovered [ 260 ]. Presently, the power of QAOA relative to classical computing is an active area of research [ 300 , 301 , 302 , 314 ]. ',references:[242,243,260,300,301,302,314],category:"Approximation and Simulation Algorithms"},5:{alg_id:50,name:"Semidefinite Programming",speedup:"Polynomial (with some exceptions)",description:' Given a list of m + 1 Hermitian \\(n \\times n \\) matrices \\(C, A_1, A_2, \\ldots, A_m\\) and m numbers \\(b_1, \\ldots, b_m \\), the problem of semidefinite programming is to find the positive semidefinite \\( n \\times n \\) matrix X that maximizes tr( CX ) subject to the constraints \\( \\mathrm{tr} (A_j X) \\leq b_j \\) for \\( j = 1,2,\\ldots, m \\). Semidefinite programming has many applications in operations research, combinatorial optimization, and quantum information, and it includes linear programming as a special case. Introduced in [ 313 ], and subsequently improved in [ 383 , 425 ], quantum algorithms are now known that can approximately solve semidefinite programs to within \\( \\pm \\epsilon \\) in time \\( O (\\sqrt{m} \\log m \\cdot \\mathrm{poly}(\\log n, r, \\epsilon^{-1})) \\), where r is the rank of the semidefinite program. This constitutes a quadratic speedup over the fastest classical algorithms when r is small compared to n . The quantum algorithm is based on amplitude amplification and quantum Gibbs sampling [ 121 , 307 ]. In a model in which input is provided in the form of quantum states the quantum algorithm for semidefinite programming can achieve superpolynomial speedup, as discussed in [ 383 ], although recent dequantization results [ 421 ] delineate limitations on the context in which superpolynomial quantum speedup for semidefinite programs is possible. ',references:[313,383,425,121,307,383,421],category:"Approximation and Simulation Algorithms"},6:{alg_id:51,name:"Zeta Functions",speedup:"Superpolynomial",description:' Let f ( x , y ) be a degree- d polynomial over a finite field \\( \\mathbb{F}_p \\). Let \\( N_r \\) be the number of projective solutions to f ( x , y = 0 over the extension field \\( \\mathbb{F}_{p^r} \\). The zeta function for f is defined to be \\( Z_f(T) = \\exp \\left( \\sum_{r=1}^\\infty \\frac{N_r}{r} T^r \\right) \\). Remarkably, \\( Z_f(T) \\) always has the form \\( Z_f(T) = \\frac{Q_f(T)}{(1-pT)(1-T)} \\) where \\( Q_f(T) \\) is a polynomial of degree 2 g and \\(g = \\frac{1}{2} (d-1)(d-2) \\) is called the genus of f . Given \\( Z_f(T) \\) one can easily compute the number of zeros of f over any extension field \\( \\mathbb{F}_{p^r} \\). One can similarly define the zeta function when the original field over which f is defined does not have prime order. As shown by Kedlaya [ 64 ], quantum computers can determine the zeta function of a genus g curve over a finite field \\( \\mathbb{F}_{p^r} \\) in \\( \\mathrm{poly}(\\log p, r, g) \\) time. The fastest known classical algorithms are all exponential in either log( p ) or g . In a diffent, but somewhat related contex, van Dam has conjectured that due to a connection between the zeros of Riemann zeta functions and the eigenvalues of certain quantum operators, quantum computers might be able to efficiently approximate the number of solutions to equations over finite fields [ 87 ]. ',references:[64,87],category:"Approximation and Simulation Algorithms"},7:{alg_id:52,name:"Weight Enumerators",speedup:"Superpolynomial",description:' Let C be a code on n bits, i.e. a subset of \\( \\mathbb{Z}_2^n \\). The weight enumerator of C is \\( S_C(x,y) = \\sum_{c \\in C} x^{|c|} y^{n-|c|} \\) where | c | denotes the Hamming weight of c . Weight enumerators have many uses in the study of classical codes. If C is a linear code, it can be defined by \\( C = \\{c: Ac = 0\\} \\) where A is a matrix over \\( \\mathbb{Z}_2 \\) In this case \\( S_C(x,y) = \\sum_{c:Ac=0} x^{|c|} y^{n-|c|} \\). Quadratically signed weight enumerators (QWGTs) are a generalization of this: \\( S(A,B,x,y) = \\sum_{c:Ac=0} (-1)^{c^T B c} x^{|c|} y^{n-|c|} \\). Now consider the following special case. Let A be an \\( n \\times n \\) matrix over \\( \\mathbb{Z}_2 \\) such that diag( A )=I. Let lwtr( A ) be the lower triangular matrix resulting from setting all entries above the diagonal in A to zero. Let l,k be positive integers. Given the promise that \\( |S(A,\\mathrm{lwtr}(A),k,l)| \\geq \\frac{1}{2} (k^2+l^2)^{n/2} \\) the problem of determining the sign of \\( S(A,\\mathrm{lwtr}(A),k,l) \\) is BQP-complete, as shown by Knill and Laflamme in [ 65 ]. The evaluation of QWGTs is also closely related to the evaluation of Ising and Potts model partition functions [ 67 , 45 , 46 ]. ',references:[65,67,45,46],category:"Approximation and Simulation Algorithms"},8:{alg_id:53,name:"Simulated Annealing",speedup:"Polynomial",description:' In simulated annealing, one has a series of Markov chains defined by stochastic matrices \\( M_1, M_2,\\ldots,M_n \\). These are slowly varying in the sense that their limiting distributions \\( pi_1, \\pi_2, \\ldots, \\pi_n \\) satisfy \\( |\\pi_{t+1} -\\pi_t| \\lt \\epsilon \\) for some small \\( \\epsilon \\). These distributions can often be thought of as thermal distributions at successively lower temperatures. If \\( \\pi_1 \\) can be easily prepared, then by applying this series of Markov chains one can sample from \\( \\pi_n \\). Typically, one wishes for \\( \\pi_n \\) to be a distribution over good solutions to some optimization problem. Let \\( \\delta_i \\) be the gap between the largest and second largest eigenvalues of \\( M_i \\). Let \\( \\delta = \\min_i \\delta_i \\). The run time of this classical algorithm is proportional to \\( 1/\\delta \\). Building upon results of Szegedy [ 135 , 85 ], Somma et al. have shown [ 84 , 177 ] that quantum computers can sample from \\( \\pi_n \\) with a runtime proportional to \\( 1/\\sqrt{\\delta} \\). Additional methods by which classical Markov chain Monte Carlo algorithms can be sped up using quantum walks are given in [ 265 ]. ',references:[135,85,84,177,265],category:"Approximation and Simulation Algorithms"},9:{alg_id:54,name:"String Rewriting",speedup:"Superpolynomial",description:' String rewriting is a fairly general model of computation. String rewriting systems (sometimes called grammars) are specified by a list of rules by which certain substrings are allowed to be replaced by certain other substrings. For example, context free grammars, are equivalent to the pushdown automata. In [ 59 ], Janzing and Wocjan showed that a certain string rewriting problem is PromiseBQP-complete. Thus quantum computers can solve it in polynomial time, but classical computers probably cannot. Given three strings s,t,t\' , and a set of string rewriting rules satisfying certain promises, the problem is to find a certain approximation to the difference between the number of ways of obtaining t from s and the number of ways of obtaining t\' from s . Similarly, certain problems of approximating the difference in number of paths between pairs of vertices in a graph, and difference in transition probabilities between pairs of states in a random walk are also BQP-complete [ 58 ]. ',references:[59,58],category:"Approximation and Simulation Algorithms"},10:{alg_id:55,name:"Matrix Powers",speedup:"Superpolynomial",description:' Quantum computers have an exponential advantage in approximating matrix elements of powers of exponentially large sparse matrices. Suppose we are have an \\( N \\times N \\) symmetric matrix A such that there are at most polylog( N ) nonzero entries in each row, and given a row index, the set of nonzero entries can be efficiently computed. The task is, for any 1 < i < N , and any m polylogarithmic in N , to approximate \\( (A^m)_{ii} \\) the \\( i^{\\mathrm{th}} \\) diagonal matrix element of \\( A^m \\). The approximation is additive to within \\( b^m \\epsilon \\) where b is a given upper bound on | A | and \\( \\epsilon \\) is of order 1/polylog( N ). As shown by Janzing and Wocjan, this problem is PromiseBQP-complete, as is the corresponding problem for off-diagonal matrix elements [ 60 ]. Thus, quantum computers can solve it in polynomial time, but classical computers probably cannot.
',references:[60],category:"Approximation and Simulation Algorithms"}},"Optimization, Numerics, and Machine Learning":{0:{alg_id:56,name:"Constraint Satisfaction",speedup:"Polynomial",description:' Constraint satisfaction problems, many of which are NP-hard, are ubiquitous in computer science, a canonical example being 3-SAT. If one wishes to satisfy as many constraints as possible rather than all of them, these become combinatorial optimization problems. (See also adiabatic algorithms .) The brute force solution to constraint satisfaction problems can be quadratically sped up using Grover\'s algorithm. However, most constraint satisfaction problems are solvable by classical algorithms that (although still exponential-time) run more than quadratically faster than brute force checking of all possible solutions. Nevertheless, a polynomial quantum speedup over the fastest known classical algorithm for 3-SAT is given in [ 133 ], and polynomial quantum speedups for some other constraint satisfaction problems are given in [ 134 , 298 ]. In [ 423 ] a quadratic quantum speedup for approximate solutions to homogeneous QUBO/Ising problems is obtained by building upon the quantum algorithm for semidefinite programming. A commonly used classical algorithm for constraint satisfaction is backtracking, and for some problems this algorithm is the fastest known. A general quantum speedup for backtracking algorithms is given in [ 264 ] and further improved in [ 422 ]. ',references:[133,134,298,423,264,422],category:"Optimization, Numerics, and Machine Learning"},1:{alg_id:57,name:"Adiabatic Algorithms",speedup:"Unknown",description:' In adiabatic quantum computation one starts with an initial Hamiltonian whose ground state is easy to prepare, and slowly varies the Hamiltonian to one whose ground state encodes the solution to some computational problem. By the adiabatic theorem, the system will track the instantaneous ground state provided the variation of the Hamiltonian is sufficiently slow. The runtime of an adiabatic algorithm scales at worst as \\(1/ \\gamma^3 \\) where \\( \\gamma \\) is the minimum eigenvalue gap between the ground state and the first excited state [ 185 ]. If the Hamiltonian is varied sufficiently smoothly, one can improve this to \\( \\widetilde{O}(1/\\gamma^2) \\) [ 247 ]. Adiabatic quantum computation was first proposed by Farhi et al. as a method for solving NP-complete combinatorial optimization problems [ 96 , 186 ]. Adiabatic quantum algorithms for optimization problems typically use "stoquastic" Hamiltonians, which do not suffer from the sign problem. Such algorithms are sometimes referred to as quantum annealing. Adiabatic quantum computation with non-stoquastic Hamiltonians is as powerful as the quantum circuit model [ 97 ]. Adiabatic algorithms using stoquastic Hamiltonians are probably less powerful [ 183 ], but are likely more powerful than classical computation [ 429 ]. The asymptotic runtime of adiabatic optimization algorithms is notoriously difficult to analyze, but some progress has been achieved [ 179 , 180 , 181 , 182 , 187 , 188 , 189 , 190 , 191 , 226 ]. (Also relevant is an earlier literature on quantum annealing, which originally referred to a classical optimization algorithm that works by simulating a quantum process, much as simulated annealing is a classical optimization algorithm that works by simulating a thermal process. See e.g. [ 199 , 198 ].) Adiabatic quantum computers can perform a process somewhat analogous to Grover search in \\( O(\\sqrt{N}) \\) time [ 98 ]. Adiabatic quantum algorithms achieving quadratic speedup for a more general class of problems are constructed in [ 184 ] by adapting techniques from [ 85 ]. Adiabatic quantum algorithms have been proposed for several specific problems, including PageRank [ 176 ], machine learning [ 192 , 195 ], finding Hadamard matrices [ 406 ], and graph problems [ 193 , 194 ]. Some quantum simulation algorithms also use adiabatic state preparation. ',references:[185,247,96,186,97,183,429,179,180,181,182,187,188,189,190,191,226,199,198,98,184,85,176,192,195,406,193,194],category:"Optimization, Numerics, and Machine Learning"},2:{alg_id:58,name:"Gradients, Structured Search, and Learning Polynomials",speedup:"Polynomial",description:' Suppose we are given a oracle for computing some smooth function \\( f:\\mathbb{R}^d \\to \\mathbb{R} \\). The inputs and outputs to f are given to the oracle with finitely many bits of precision. The task is to estimate \\( \\nabla f \\) at some specified point \\( \\mathbf{x}_0 \\in \\mathbb{R}^d \\). As shown in [ 61 ], a quantum computer can achieve this using one query, whereas a classical computer needs at least d+1 queries. In [ 20 ], Bulger suggested potential applications for optimization problems. As shown in appendix D of [ 62 ], a quantum computer can use the gradient algorithm to find the minimum of a quadratic form in d dimensions using O(d) queries, whereas, as shown in [ 94 ], a classical computer needs at least \\( \\Omega(d^2) \\) queries. Single query quantum algorithms for finding the minima of basins based on Hamming distance were given in [ 147 , 148 , 223 ]. The quantum algorithm of [ 62 ] can also extract all \\( d^2 \\) matrix elements of the quadratic form using O(d) queries, and more generally, all \\( d^n \\) n th derivatives of a smooth function of d variables in \\( O(d^{n-1}) \\) queries. Remarkably general results in [ 418 , 419 , 420 ] give quantum speedups for convex optimization and volume estimation of convex bodies, as well as query complexity lower bounds. Roughly speaking these results show that for convex optimization and volume estimation in d dimensions one gets a quadratic speedup in d just as was found earlier for the special case of minimizing quadratic forms. As shown in [ 130 , 146 ], quadratic forms and multilinear polynomials in d variables over a finite field may be extracted with a factor of d fewer quantum queries than are required classically. ',references:[61,20,62,94,147,148,223,62,418,419,420,130,146],category:"Optimization, Numerics, and Machine Learning"},3:{alg_id:59,name:"Linear Systems",speedup:"Superpolynomial",description:' We are given oracle access to an \\( n \\times n \\) matrix A and some description of a vector b . We wish to find some property of f(A)b for some efficiently computable function f . Suppose A is a Hermitian matrix with O (polylog n ) nonzero entries in each row and condition number k . As shown in [ 104 ], a quantum computer can in \\( O(k^2 \\log n) \\) time compute to polynomial precision various expectation values of operators with respect to the vector f(A)b (provided that a quantum state proportional to b is efficiently constructable). For certain functions, such as f(x)=1/x , this procedure can be extended to non-Hermitian and even non-square A . The runtime of this algorithm was subsequently improved to \\( O(k \\log^3 k \\log n) \\) in [ 138 ]. Exponentially improved scaling of runtime with precision was obtained in [ 263 ]. Some methods to extend this algorithm to apply to non-sparse matrices have been proposed [ 309 , 402 ], although these require certain partial sums of the matrix elements to be pre-computed. Extensions of this quantum algorithm have been applied to problems of estimating electromagnetic scattering crossections [ 249 ] (see also [ 369 ] for a different approach), solving linear differential equations [ 156 , 296 ], estimating electrical resistance of networks [ 210 ], least-squares curve-fitting [ 169 ], solving Toeplitz systems [ 297 ], and machine learning [ 214 , 222 , 250 , 251 , 309 ]. However, the linear-systems-based quantum algorithms for recommendation systems [ 309 ] and principal component analysis [ 250 ] were subsequently "dequantized" by Tang [ 400 , 401 ]. That is, Tang obtained polynomial time classical randomized algorithms for these problems, thus proving that the proposed quantum algorithms for these tasks do not achieve exponential speedup. Some limitations of the quantum machine learning algorithms based on linear systems are nicely summarized in [ 246 ]. In [ 220 ] it was shown that quantum computers can invert well-conditioned \\( n \\times n \\) matrices using only \\( O( \\log n ) \\) qubits, whereas the best classical algorithm uses order \\( \\log^2 n \\) bits. Subsequent improvements to this quantum algorithm are given in [ 279 ].',references:[104,138,263,309,402,249,369,156,296,210,169,297,214,222,250,251,309,309,250,400,401,309,246,220,279],category:"Optimization, Numerics, and Machine Learning"},4:{alg_id:60,name:"Machine Learning",speedup:"Varies",description:"Maching learning encompasses a wide variety of computational problems and can be attacked by a wide variety of algorithmic techniques. This entry summarizes quantum algorithmic techniques for improved machine learning. Many of the quantum algorithms here are cross-listed under other headings. In [ 214 , 222 , 250 , 251 , 309 , 338 , 339 , 359 , 403 ], quantum algorithms for solving linear systems [ 104 ] are applied to speed up cluster-finding, principal component analysis, binary classification, training of neural networks, and various forms of regression, provided the data satisfies certain conditions. However, a number of quantum machine learning algorithms based on linear systems have subsequently been 'dequantized'. Specifically, Tang showed in [ 400 , 401 ] that the problems of recommendation systems and principal component analysis solved by the quantum algorithms of [ 251 , 309 ] can in fact also be solved in polynomial time randomized classical algorithms. A cluster-finding method not based on the linear systems algorithm of [ 104 ] is given in [ 336 ]. The papers [ 192 , 195 , 344 , 345 , 346 , 348 ] explore the use of adiabatic optimization techniques to speed up the training of classifiers. In [ 221 ], a method is proposed for training Boltzmann machines by manipulating coherent quantum states with amplitudes proportional to the Boltzmann weights. Polynomial speedups can be obtained by applying Grover search and related techniques such as amplitude amplification to amenable subroutines of state of the art classical machine learning algorithms. See, for example [ 358 , 340 , 341 , 342 , 343 ]. Other quantum machine learning algorithms not falling into one of the above categories include [ 337 , 349 ]. Some limitations of quantum machine learning algorithms are nicely summarized in [ 246 ]. Many other quantum query algorithms that extract hidden structure of the black-box function could be cast as machine learning algorithms. See for example [ 146 , 23 , 11 , 31 , 212 ]. Query algorithms for learning the majority and 'battleship' functions are given in [ 224 ]. Large quantum advantages for learning from noisy oracles are given in [ 236 , 237 ]. In [ 428 ] quantum kernel estimation is used to implement a support-vector classifier solving a learning problem that is provably as hard as discrete logarithm. Several recent review articles [ 299 , 332 , 333 ] and a book [ 331 ] are available which summarize the state of the field. There is a related body of work, not strictly within the standard setting of quantum algorithms, regarding quantum learning in the case that the data itself is quantum coherent. See e.g. [ 350 , 334 , 335 , 351 , 352 , 353 , 354 , 355 , 356 , 357 ].",references:[214,222,250,251,309,338,339,359,403,104,400,401,251,309,104,336,192,195,344,345,346,348,221,358,340,341,342,343,337,349,246,146,23,11,31,212,224,236,237,428,299,332,333,331,350,334,335,351,352,353,354,355,356,357],category:"Optimization, Numerics, and Machine Learning"},5:{alg_id:61,name:"Tensor Principal Component Analysis",speedup:"Polynomial (quartic)",description:'In [ 424 ] a quantum algorithm is given for an idealized problem motivated by machine learning applications on high-dimensional data sets. Consider \\(T = \\lambda v_{\\mathrm{sig}}^{\\otimes p} + G \\) where G is a p -index tensor of Gaussian random variables, symmetrized over all permutations of indices, and \\(v_{\\mathrm{sig}}\\) is an N -dimensional vector of magnitude \\(\\sqrt{N}\\). The task is to recover \\(v_{\\mathrm{sig}}\\). Consider \\( \\lambda = \\alpha N^{-p/4}\\). The best classical algorithms succeed when \\( \\alpha \\gg 1\\) and have time and space complexity that scale exponentially in \\( \\alpha^{-1}\\). The quantum algorithm of [ 424 ] solves this problem in polynomial space and with runtime scaling quartically better in \\( \\alpha^{-1} \\) than the classical spectral algorithm. The quantum algorithm works by encoding the problem into the eigenspectrum of a many-body Hamiltonian and applying phase estimation together with amplitude amplification.',references:[424],category:"Optimization, Numerics, and Machine Learning"},6:{alg_id:62,name:"Solving Differential Equations",speedup:"Superpolynomial",description:' Consider linear first order differential equation \\( \\frac{d}{dt} \\mathbf{x} = A(t) \\mathbf{x} + \\mathbf{b}(t) \\), where \\( \\mathbf{x} \\) and \\( \\mathbf{b} \\) are N -dimensional vectors and A is an \\(N \\times N\\) matrix. Given an initial condition \\( \\mathbf{x}(0) \\) one wishes to compute the solution \\( \\mathbf{x}(t) \\) at some later time t to some precision \\( \\epsilon \\) in the sense that the normalized vector \\( x(t)/\\|x(t)\\| \\) produced has distance at most \\( \\epsilon \\) from the exact solution. In [ 156 ], Berry gives a quantum algorithm for this problem that runs in time \\( O(t^2 \\mathrm{poly}(1/\\epsilon) \\mathrm{poly log} N) \\), whereas the fastest classical algorithms run in time \\( O ( t \\mathrm{poly} N ) \\). The final result is produced in the form of a quantum superposition state on \\( O(log N) \\) qubits whose amplitudes contain the components of \\( \\mathbf{x}(t) \\). The algorithm works by reducing the problem to linear algebra via a high-order finite difference method and applying the quantum linear algebra primitive of [ 104 ]. In [ 410 ] an improved quantum algorithm for this problem was given which brings the epsilon dependence down to \\( \\mathrm{poly log}(1/\\epsilon) \\). A quantum algorithm for solving nonlinear differential equations (again in the sense of obtaining a solution encoded in the amplitudes) is described in [ 411 ], which has exponential scaling in t . In [ 426 , 427 ] quantum algorithms are given for solving nonlinear differential equations that scale as \\( O(t^2) \\). These are applicable to a restricted class of nonlinear differential equations. In particular, their solutions must not grow or shrink in magnitude too rapidly. Partial differential equations can be reduced to ordinary differential equations through discretization, and higher order differential equations can be reduced to first order through additiona of auxiliary variables. Consequently, these more general problems can be solved through the methods of [ 156 , 104 ]. However, quantum algorithms designed to solve these problems directly may be more efficient (and for specific problems one may analyze the complexity of tasks that are unspecified in a more general formulation such as preparation of relevant initial states). In [ 249 ] a quantum algorithm is given which solves the wave equation by applying finite-element methods to reduce it to linear algebra and then applying the quantum linear algebra algorithm of [ 104 ] with preconditioning. In [ 369 ] a quantum algorithm is given for solving the wave equation by discretizing it with finite differences and massaging it into the form of a Schrodinger equation which is then simulated using the method of [ 245 ]. The problem solved by [ 369 ] is not equivalent to that solved by [ 249 ] because in [ 249 ] the problem is reduced to a time-indepent one through assuming sinusoidal time dependence and applying separation of variables, whereas [ 369 ] solves the time-dependent problem. The quantum speedup achieved over classical methods for solving the wave equation in d -dimensiona is polynomial for fixed d but expontial in d . Concrete resource estimates for quantum algorithms to solve differential equations are given in [ 412 , 413 , 414 ]. A quantum algorithm for solving linear partial differential equations using continuous-variable quantum computing is given in [ 415 ]. In [ 296 ] quantum finite element methods are analyzed in a general setting. A quantum spectral method for solving differential equations is given in [ 416 ]. A quantum algorithm for solving the Vlasov equation is given in [ 417 ]. ',references:[156,104,410,411,426,427,156,104,249,104,369,245,369,249,249,369,412,413,414,415,296,416,417],category:"Optimization, Numerics, and Machine Learning"},7:{alg_id:63,name:"Quantum Dynamic Programming",speedup:"Polynomial",description:' In [ 409 ] the authors introduce a problem called path-in-the-hypercube. In this problem, one given a subgraph of the hypercube and asked whether there is a path along this subgraph that starts from the all zeros vertex, ends at the all ones vertex, and makes only Hamming weight increasing moves. (The vertices of the hypercube graph correspond to bit strings of length n and the hypercube graph joins vertices of Hamming distance one.) Many NP-complete problems for which the best classical algorithm is dynamic programming can be modeled as instances of path-in-the-hypercube. By combining Grover search with dynamic programming methods, a quantum algorithm can solve path-in-the-hypercube in time \\( O^*(1.817^n) \\), where the notation \\( O^* \\) indicates that polynomial factors are being omitted. The fastest known classical algorithm for this problem runs in time \\( O^*(2^n) \\). Using this primitive quantum algorithms can be constructed that solve vertex ordering problems in \\( O^*(1.817^n) \\) vs. \\( O^* (2^n) \\) classically, graph bandwidth in \\( O^*(2.946^n) \\) vs. \\( O^*(4.383^n) \\) classically, travelling salesman and feedback arc set in \\( O^*(1.729^n) \\) vs. \\( O^*(2^n) \\) classically, and minimum set cover in \\( O( \\mathrm{poly}(m,n) 1.728^n ) \\) vs. \\( O(nm2^n) \\) classically.
',references:[409],category:"Optimization, Numerics, and Machine Learning"}}}}),fe=Object.freeze({__proto__:null,default:{1:{ref_id:1,authors:"Daniel S. Abrams and Seth Lloyd",title:"Simulation of many-body Fermi systems on a universal quantum computer.",links:{"arXiv:quant-ph/9703054":"http://arxiv.org/abs/quant-ph/9703054"},extra:"Physical Review Letters, 79(13):2586-2589, 1997."},2:{ref_id:2,authors:"Dorit Aharonov and Itai Arad",title:"The BQP-hardness of approximating the Jones polynomial.",links:{"arXiv:quant-ph/0605181":"http://arxiv.org/abs/quant-ph/0605181"},extra:"New Journal of Physics 13:035019, 2011."},3:{ref_id:3,authors:"Dorit Aharonov, Itai Arad, Elad Eban, and Zeph Landau",title:"Polynomial quantum algorithms for additive approximations of the Potts model and other points of the Tutte plane.",links:{"arXiv:quant-ph/0702008":"http://arxiv.org/abs/quant-ph/0702008"},extra:""},4:{ref_id:4,authors:"Dorit Aharonov, Vaughan Jones, and Zeph Landau",title:"A polynomial quantum algorithm for approximating the Jones polynomial.",links:{"arXiv:quant-ph/0511096":"http://arxiv.org/abs/quant-ph/0511096"},extra:"In Proceedings of the 38th ACM Symposium on Theory of Computing, 2006."},5:{ref_id:5,authors:"Dorit Aharonov and Amnon Ta-Shma",title:"Adiabatic quantum state generation and statistical zero knowledge.",links:{"arXiv:quant-ph/0301023":"http://arxiv.org/abs/quant-ph/0301023"},extra:"In Proceedings of the 35th ACM Symposium on Theory of Computing, 2003."},6:{ref_id:6,authors:"A. Ambainis, H. Buhrman, P. Høyer, M. Karpinizki, and P. Kurur",title:"Quantum matrix verification.",links:{},extra:"Unpublished Manuscript, 2002."},7:{ref_id:7,authors:"Andris Ambainis",title:"Quantum walk algorithm for element distinctness.",links:{"arXiv:quant-ph/0311001":"http://arxiv.org/abs/quant-ph/0311001"},extra:"SIAM Journal on Computing, 37:210-239, 2007."},8:{ref_id:8,authors:"Andris Ambainis, Andrew M. Childs, Ben W.Reichardt, Robert Špalek, and Shengyu Zheng",title:"Every AND-OR formula of size N can be evaluated in time \\( n^{1/2+o(1)} \\) on a quantum computer.",links:{"arXiv:quant-ph/0703015":"http://arxiv.org/abs/quant-ph/0703015","arXiv:0704.3628":"http://arxiv.org/abs/0704.3628"},extra:"In Proceedings of the 48th IEEE Symposium on the Foundations of Computer Science, pages 363-372, 2007."},9:{ref_id:9,authors:"Dave Bacon, Andrew M. Childs, and Wim van Dam",title:"From optimal measurement to efficient quantum algorithms for the hidden subgroup problem over semidirect product groups.",links:{"arXiv:quant-ph/0504083":"http://arxiv.org/abs/quant-ph/0504083"},extra:"In Proceedings of the 46th IEEE Symposium on Foundations of Computer Science, pages 469-478, 2005."},10:{ref_id:10,authors:"Michael Ben-Or and Avinatan Hassidim",title:"Quantum search in an ordered list via adaptive learning.",links:{"arXiv:quant-ph/0703231":"http://arxiv.org/abs/quant-ph/0703231"},extra:""},11:{ref_id:11,authors:"Ethan Bernstein and Umesh Vazirani",title:"Quantum complexity theory.",links:{},extra:"In Proceedings of the 25th ACM Symposium on the Theory of Computing, pages 11-20, 1993."},12:{ref_id:12,authors:"D.W. Berry, G. Ahokas, R. Cleve, and B. C. Sanders",title:"Efficient quantum algorithms for simulating sparse Hamiltonians.",links:{"arXiv:quant-ph/0508139":"http://arxiv.org/abs/quant-ph/0508139"},extra:"Communications in Mathematical Physics, 270(2):359-371, 2007."},13:{ref_id:13,authors:"A. Berzina, A. Dubrovsky, R. Frivalds, L. Lace, and O. Scegulnaja",title:"Quantum query complexity for some graph problems.",links:{},extra:"In Proceedings of the 30th Conference on Current Trends in Theory and Practive of Computer Science, pages 140-150, 2004."},14:{ref_id:14,authors:"D. Boneh and R. J. Lipton",title:"Quantum cryptanalysis of hidden linear functions.",links:{},extra:"In Don Coppersmith, editor, CRYPTO '95, Lecture Notes in Computer Science, pages 424-437. Springer-Verlag, 1995."},15:{ref_id:15,authors:"M. Boyer, G. Brassard, P. Høyer, and A. Tapp",title:"Tight bounds on quantum searching.",links:{},extra:"Fortschritte der Physik, 46:493-505, 1998."},16:{ref_id:16,authors:"G. Brassard, P. Høyer, and A. Tapp",title:"Quantum counting.",links:{"arXiv:quant-ph/9805082":"http://arxiv.org/abs/quant-ph/9805082"},extra:""},17:{ref_id:17,authors:"Gilles Brassard, Peter Høyer, Michele Mosca, and Alain Tapp",title:"Quantum amplitude amplification and estimation.",links:{"arXiv:quant-ph/0005055":"http://arxiv.org/abs/quant-ph/0005055"},extra:"In Samuel J. Lomonaco Jr. and Howard E. Brandt, editors, Quantum Computation and Quantum Information: A Millennium Volume, volume 305 of AMS Contemporary Mathematics Series . American Mathematical Society, 2002."},18:{ref_id:18,authors:"Gilles Brassard, Peter Høyer, and Alain Tapp",title:"Quantum algorithm for the collision problem.",links:{"arXiv:quant-ph/9705002":"http://arxiv.org/abs/quant-ph/9705002"},extra:"ACM SIGACT News, 28:14-19, 1997."},19:{ref_id:19,authors:"Harry Buhrman and Robert Špalek",title:"Quantum verification of matrix products.",links:{"arXiv:quant-ph/0409035":"http://arxiv.org/abs/quant-ph/0409035"},extra:"In Proceedings of the 17th ACM-SIAM Symposium on Discrete Algorithms, pages 880-889, 2006."},20:{ref_id:20,authors:"David Bulger",title:"Quantum basin hopping with gradient-based local optimisation.",links:{"arXiv:quant-ph/0507193":"http://arxiv.org/abs/quant-ph/0507193"},extra:""},21:{ref_id:21,authors:"Harry Burhrman, Christoph Dürr, Mark Heiligman, Peter Høyer, Frédéric Magniez, Miklos Santha, and Ronald de Wolf",title:"Quantum algorithms for element distinctness.",links:{"arXiv:quant-ph/0007016":"http://arxiv.org/abs/quant-ph/0007016"},extra:"In Proceedings of the 16th IEEE Annual Conference on Computational Complexity, pages 131-137, 2001."},22:{ref_id:22,authors:"Dong Pyo Chi, Jeong San Kim, and Soojoon Lee",title:"Notes on the hidden subgroup problem on some semi-direct product groups.",links:{"arXiv:quant-ph/0604172":"http://arxiv.org/abs/quant-ph/0604172"},extra:" Phys. Lett. A 359(2):114-116, 2006."},23:{ref_id:23,authors:"A. M. Childs, L. J. Schulman, and U. V. Vazirani",title:"Quantum algorithms for hidden nonlinear structures.",links:{"arXiv:0705.2784":"http://arxiv.org/abs/0705.2784"},extra:"In Proceedings of the 48th IEEE Symposium on Foundations of Computer Science, pages 395-404, 2007."},24:{ref_id:24,authors:"Andrew Childs and Troy Lee",title:"Optimal quantum adversary lower bounds for ordered search.",links:{"arXiv:0708.3396":"http://arxiv.org/abs/0708.3396"},extra:"Proceedings of ICALP 2008"},25:{ref_id:25,authors:"Andrew M. Childs",title:"Quantum information processing in continuous time",links:{},extra:""},26:{ref_id:26,authors:"Andrew M. Childs, Richard Cleve, Enrico Deotto, Edward Farhi, Sam Gutmann, and Daniel A. Spielman",title:"Exponential algorithmic speedup by quantum walk.",links:{"arXiv:quant-ph/0209131":"http://arxiv.org/abs/quant-ph/0209131"},extra:"In Proceedings of the 35th ACM Symposium on Theory of Computing, pages 59-68, 2003."},27:{ref_id:27,authors:"Andrew M. Childs, Richard Cleve, Stephen P. Jordan, and David Yonge-Mallo",title:"Discrete-query quantum algorithm for NAND trees.",links:{"arXiv:quant-ph/0702160":"http://arxiv.org/abs/quant-ph/0702160"},extra:"Theory of Computing, 5:119-123, 2009."},28:{ref_id:28,authors:"Andrew M. Childs and Wim van Dam",title:"Quantum algorithm for a generalized hidden shift problem.",links:{"arXiv:quant-ph/0507190":"http://arxiv.org/abs/quant-ph/0507190"},extra:"In Proceedings of the 18th ACM-SIAM Symposium on Discrete Algorithms, pages 1225-1232, 2007."},29:{ref_id:29,authors:"Richard Cleve, Dmitry Gavinsky, and David L. Yonge-Mallo",title:"Quantum algorithms for evaluating MIN-MAX trees.",links:{"arXiv:0710.5794":"http://arxiv.org/abs/0710.5794"},extra:"In Theory of Quantum Computation, Communication, andCryptography, pages 11-15, Springer, 2008. (LNCS Vol. 5106)"},30:{ref_id:30,authors:"J. Niel de Beaudrap, Richard Cleve, and John Watrous",title:"Sharp quantum versus classical query complexity separations.",links:{"arXiv:quant-ph/0011065v2":"http://arxiv.org/abs/quant-ph/0011065"},extra:"Algorithmica, 34(4):449-461, 2002."},31:{ref_id:31,authors:"Thomas Decker, Jan Draisma, and Pawel Wocjan",title:"Quantum algorithm for identifying hidden polynomials.",links:{"arXiv:0706.1219":"http://arxiv.org/abs/0706.1219"},extra:"Quantum Information and Computation, 9(3):215-230, 2009."},32:{ref_id:32,authors:"David Deutsch",title:"Quantum theory, the Church-Turing principle, and the universal quantum computer.",links:{},extra:"Proceedings of the Royal Society of London Series A, 400:97-117, 1985."},33:{ref_id:33,authors:"David Deutsch and Richard Jozsa",title:"Rapid solution of problems by quantum computation.",links:{},extra:"Proceedings of the Royal Society of London Series A, 493:553-558, 1992."},34:{ref_id:34,authors:"Christoph Dürr, Mark Heiligman, Peter Høyer, and Mehdi Mhalla",title:"Quantum query complexity of some graph problems.",links:{"arXiv:quant-ph/0401091":"http://arxiv.org/abs/quant-ph/0401091"},extra:"SIAM Journal on Computing, 35(6):1310-1328, 2006."},35:{ref_id:35,authors:"Christoph Dürr and Peter Høyer",title:"A quantum algorithm for finding the minimum.",links:{"arXiv:quant-ph/9607014":"http://arxiv.org/abs/quant-ph/9607014"},extra:""},36:{ref_id:36,authors:"Christoph Dürr, Mehdi Mhalla, and Yaohui Lei",title:"Quantum query complexity of graph connectivity.",links:{"arXiv:quant-ph/0303169":"http://arxiv.org/abs/quant-ph/0303169"},extra:""},37:{ref_id:37,authors:"Mark Ettinger, Peter Høyer, and Emanuel Knill",title:"The quantum query complexity of the hidden subgroup problem is polynomial.",links:{"arXiv:quant-ph/0401083":"http://arxiv.org/abs/quant-ph/0401083"},extra:"Information Processing Letters, 91(1):43-48, 2004."},38:{ref_id:38,authors:"Edward Farhi, Jeffrey Goldstone, and Sam Gutmann",title:"A quantum algorithm for the Hamiltonian NAND tree.",links:{"arXiv:quant-ph/0702144":"http://arxiv.org/abs/quant-ph/0702144"},extra:"Theory of Computing 4:169-190, 2008."},39:{ref_id:39,authors:"Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser",title:"Invariant quantum algorithms for insertion into an ordered list.",links:{"arXiv:quant-ph/9901059":"http://arxiv.org/abs/quant-ph/9901059"},extra:""},40:{ref_id:40,authors:"Richard P. Feynman",title:"Simulating physics with computers.",links:{},extra:"International Journal of Theoretical Physics, 21(6/7):467-488, 1982."},41:{ref_id:41,authors:"Michael Freedman, Alexei Kitaev, and Zhenghan Wang",title:"Simulation of topological field theories by quantum computers.",links:{},extra:"Communications in Mathematical Physics, 227:587-603, 2002."},42:{ref_id:42,authors:"Michael Freedman, Michael Larsen, and Zhenghan Wang",title:"A modular functor which is universal for quantum computation.",links:{"arXiv:quant-ph/0001108":"http://arxiv.org/abs/quant-ph/0001108"},extra:"Comm. Math. Phys. 227(3):605-622, 2002."},43:{ref_id:43,authors:"K. Friedl, G. Ivanyos, F. Magniez, M. Santha, and P. Sen",title:"Hidden translation and translating coset in quantum computing.",links:{"arXiv:quant-ph/0211091":"http://arxiv.org/abs/quant-ph/0211091"},extra:"SIAM Journal on Computing Vol. 43, pp. 1-24, 2014. Appeared earlier in Proceedings of the 35th ACM Symposium on Theory of Computing, pages 1-9, 2003."},44:{ref_id:44,authors:"D. Gavinsky",title:"Quantum solution to the hidden subgroup problem for poly-near-Hamiltonian-groups.",links:{},extra:"Quantum Information and Computation, 4:229-235, 2004."},45:{ref_id:45,authors:"Joseph Geraci",title:"A new connection between quantum circuits, graphs and the Isingpartition function",links:{"arXiv:0801.4833":"http://arxiv.org/abs/0801.4833"},extra:"Quantum Information Processing, 7(5):227-242, 2008."},46:{ref_id:46,authors:"Joseph Geraci and Frank Van Bussel",title:"A theorem on the quantum evaluation of weight enumerators for a certain class of cyclic Codes with a note on cyclotomic cosets.",links:{"arXiv:cs/0703129":"http://arxiv.org/abs/cs/0703129"},extra:""},47:{ref_id:47,authors:"Joseph Geraci and Daniel A. Lidar",title:"On the exact evaluation of certain instances of the Potts partition function by quantum computers.",links:{"arXiv:quant-ph/0703023":"http://arxiv.org/abs/quant-ph/0703023"},extra:"Comm. Math. Phys. Vol. 279, pg. 735, 2008."},48:{ref_id:48,authors:"Lov K. Grover",title:"Quantum mechanics helps in searching for a needle in a haystack.",links:{"arXiv:quant-ph/9605043":"http://arxiv.org/abs/quant-ph/9605043"},extra:"Physical Review Letters, 79(2):325-328, 1997."},49:{ref_id:49,authors:"Sean Hallgren",title:"Polynomial-time quantum algorithms for Pell's equation and the principal ideal problem.",links:{},extra:"In Proceedings of the 34th ACM Symposium on Theory of Computing, 2002."},50:{ref_id:50,authors:"Sean Hallgren",title:"Fast quantum algorithms for computing the unit group and class group of a number field.",links:{},extra:"In Proceedings of the 37th ACM Symposium on Theory of Computing, 2005."},51:{ref_id:51,authors:"Sean Hallgren, Alexander Russell, and Amnon Ta-Shma",title:"Normal subgroup reconstruction and quantum computation using group representations.",links:{},extra:"SIAM Journal on Computing, 32(4):916-934, 2003."},52:{ref_id:52,authors:"Mark Heiligman",title:"Quantum algorithms for lowest weight paths and spanning trees in complete graphs.",links:{"arXiv:quant-ph/0303131":"http://arxiv.org/abs/quant-ph/0303131"},extra:""},53:{ref_id:53,authors:"Yoshifumi Inui and François Le Gall",title:"Efficient quantum algorithms for the hidden subgroup problem over a class of semi-direct product groups.",links:{"arXiv:quant-ph/0412033":"http://arxiv.org/abs/quant-ph/0412033"},extra:"Quantum Information and Computation, 7(5/6):559-570, 2007."},54:{ref_id:54,authors:"Yuki Kelly Itakura",title:"Quantum algorithm for commutativity testing of a matrix set.",links:{"arXiv:quant-ph/0509206":"http://arxiv.org/abs/quant-ph/0509206"},extra:"Master's thesis, University of Waterloo, 2005."},55:{ref_id:55,authors:"Gábor Ivanyos, Frédéric Magniez, and Miklos Santha",title:"Efficient quantum algorithms for some instances of the non-abelian hidden subgroup problem.",links:{"arXiv:quant-ph/0102014":"http://arxiv.org/abs/quant-ph/0102014"},extra:"In Proceedings of the 13th ACM Symposium on Parallel Algorithms and Architectures, pages 263-270, 2001."},56:{ref_id:56,authors:"Gábor Ivanyos, Luc Sanselme, and Miklos Santha",title:"An efficient quantum algorithm for the hidden subgroup problem in extraspecial groups.",links:{"arXiv:quant-ph/0701235":"http://arxiv.org/abs/quant-ph/0701235"},extra:"In Proceedings of the 24th Symposium on Theoretical Aspects of Computer Science, 2007."},57:{ref_id:57,authors:"Gábor Ivanyos, Luc Sanselme, and Miklos Santha",title:"An efficient quantum algorithm for the hidden subgroup problem in nil-2 groups.",links:{"arXiv:0707.1260":"http://arxiv.org/abs/0707.1260"},extra:"In LATIN 2008: Theoretical Informatics, pg. 759-771,Springer (LNCS 4957)."},58:{ref_id:58,authors:"Dominik Janzing and Pawel Wocjan",title:"BQP-complete problems concerning mixing properties of classical random walks on sparse graphs.",links:{"arXiv:quant-ph/0610235":"http://arxiv.org/abs/quant-ph/0610235"},extra:""},59:{ref_id:59,authors:"Dominik Janzing and Pawel Wocjan",title:"A promiseBQP-complete string rewriting problem.",links:{"arXiv:0705.1180":"http://arxiv.org/abs/0705.1180"},extra:"Quantum Information and Computation, 10(3/4):234-257, 2010."},60:{ref_id:60,authors:"Dominik Janzing and Pawel Wocjan",title:"A simple promiseBQP-complete matrix problem.",links:{"arXiv:quant-ph/0606229":"http://arxiv.org/abs/quant-ph/0606229"},extra:"Theory of Computing, 3:61-79, 2007."},61:{ref_id:61,authors:"Stephen P. Jordan",title:"Fast quantum algorithm for numerical gradient estimation.",links:{"arXiv:quant-ph/0405146":"http://arxiv.org/abs/quant-ph/0405146"},extra:"Physical Review Letters, 95:050501, 2005."},62:{ref_id:62,authors:"Stephen P. Jordan",title:"Quantum Computation Beyond the Circuit Model",links:{"arXiv:0809.2307":"http://arxiv.org/abs/0809.2307"},extra:"PhD thesis, Massachusetts Institute of Technology, 2008."},63:{ref_id:63,authors:"Ivan Kassal, Stephen P. Jordan, Peter J. Love, Masoud Mohseni, and Alán Aspuru-Guzik",title:"Quantum algorithms for the simulation of chemical dynamics.",links:{"arXiv:0801.2986":"http://arxiv.org/abs/0801.2986"},extra:"Proc. Natl. Acad. Sci. Vol. 105, pg. 18681, 2008."},64:{ref_id:64,authors:"Kiran S. Kedlaya",title:"Quantum computation of zeta functions of curves.",links:{"arXiv:math/0411623":"http://arxiv.org/abs/math/0411623"},extra:"Computational Complexity, 15:1-19, 2006."},65:{ref_id:65,authors:"E. Knill and R. Laflamme",title:"Quantum computation and quadratically signed weight enumerators.",links:{"arXiv:quant-ph/9909094":"http://arxiv.org/abs/quant-ph/9909094"},extra:"Information Processing Letters, 79(4):173-179, 2001."},66:{ref_id:66,authors:"Greg Kuperberg",title:"A subexponential-time quantum algorithm for the dihedral hidden subgroup problem.",links:{"arXiv:quant-ph/0302112":"http://arxiv.org/abs/quant-ph/0302112"},extra:"SIAM Journal on Computing, 35(1):170-188, 2005."},67:{ref_id:67,authors:"Daniel A. Lidar",title:"On the quantum computational complexity of the Ising spin glass partition function and of knot invariants.",links:{"arXiv:quant-ph/0309064":"http://arxiv.org/abs/quant-ph/0309064"},extra:"New Journal of Physics Vol. 6, pg. 167, 2004."},68:{ref_id:68,authors:"Daniel A. Lidar and Haobin Wang",title:"Calculating the thermal rate constant with exponential speedup on a quantum computer.",links:{"arXiv:quant-ph/9807009":"http://arxiv.org/abs/quant-ph/9807009"},extra:"Physical Review E, 59(2):2429-2438, 1999."},69:{ref_id:69,authors:"Chris Lomont",title:"The hidden subgroup problem - review and open problems.",links:{"arXiv:quant-ph/0411037":"http://arxiv.org/abs/quant-ph/0411037"},extra:""},70:{ref_id:70,authors:"Frédéric Magniez, Miklos Santha, and Mario Szegedy",title:"Quantum algorithms for the triangle problem.",links:{"arXiv:quant-ph/0310134":"http://arxiv.org/abs/quant-ph/0310134"},extra:"SIAM Journal on Computing, 37(2):413-424, 2007."},71:{ref_id:71,authors:"Carlos Magno, M. Cosme, and Renato Portugal",title:"Quantum algorithm for the hidden subgroup problem on a class of semidirect product groups.",links:{"arXiv:quant-ph/0703223":"http://arxiv.org/abs/quant-ph/0703223"},extra:""},72:{ref_id:72,authors:"Cristopher Moore, Daniel Rockmore, Alexander Russell, and Leonard Schulman",title:"The power of basis selection in Fourier sampling: the hidden subgroup problem in affine groups.",links:{"arXiv:quant-ph/0211124":"http://arxiv.org/abs/quant-ph/0211124"},extra:"In Proceedings of the 15th ACM-SIAM Symposium on Discrete Algorithms, pages 1113-1122, 2004."},73:{ref_id:73,authors:"M. Mosca",title:"Quantum searching, counting, and amplitude amplification by eigenvector analysis.",links:{},extra:"In R. Freivalds, editor, Proceedings of International Workshop on Randomized Algorithms, pages 90-100, 1998."},74:{ref_id:74,authors:"Michele Mosca",title:'Quantum Computer Algorithms',links:{},extra:""},75:{ref_id:75,authors:"Ashwin Nayak and Felix Wu",title:"The quantum query complexity of approximating the median and related statistics.",links:{"arXiv:quant-ph/9804066":"http://arxiv.org/abs/quant-ph/9804066"},extra:"In Proceedings of 31st ACM Symposium on the Theory of Computing, 1999."},76:{ref_id:76,authors:"Michael A. Nielsen and Isaac L. Chuang.",title:"Quantum Computation and Quantum Information",links:{},extra:"Cambridge University Press, Cambridge, UK, 2000."},77:{ref_id:77,authors:"Erich Novak",title:"Quantum complexity of integration.",links:{"arXiv:quant-ph/0008124":"http://arxiv.org/abs/quant-ph/0008124"},extra:"Journal of Complexity, 17:2-16, 2001."},78:{ref_id:78,authors:"Oded Regev",title:"Quantum computation and lattice problems.",links:{"arXiv:cs/0304005":"http://arxiv.org/abs/cs/0304005"},extra:"In Proceedings of the 43rd Symposium on Foundations of Computer Science, 2002."},79:{ref_id:79,authors:"Oded Regev",title:"A subexponential time algorithm for the dihedral hidden subgroup problem with polynomial space.",links:{"arXiv:quant-ph/0406151":"http://arxiv.org/abs/quant-ph/0406151"},extra:""},80:{ref_id:80,authors:"Ben Reichardt and Robert Špalek",title:"Span-program-based quantum algorithm for evaluating formulas.",links:{"arXiv:0710.2630":"http://arxiv.org/abs/0710.2630"},extra:"Proceedings of STOC 2008"},81:{ref_id:81,authors:"Martin Roetteler and Thomas Beth",title:"Polynomial-time solution to the hidden subgroup problem for a class of non-abelian groups.",links:{"arXiv:quant-ph/9812070":"http://arxiv.org/abs/quant-ph/9812070"},extra:""},82:{ref_id:82,authors:"Peter W. Shor",title:"Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer.",links:{"arXiv:quant-ph/9508027":"http://arxiv.org/abs/quant-ph/9508027"},extra:"SIAM Journal on Computing, 26(5):1484-1509, 1997."},83:{ref_id:83,authors:"Peter W. Shor and Stephen P. Jordan",title:"Estimating Jones polynomials is a complete problem for one clean qubit.",links:{"arXiv:0707.2831":"http://arxiv.org/abs/0707.2831"},extra:"Quantum Information and Computation, 8(8/9):681-714, 2008."},84:{ref_id:84,authors:"R. D. Somma, S. Boixo, and H. Barnum",title:"Quantum simulated annealing.",links:{"arXiv:0712.1008":"http://arxiv.org/abs/0712.1008"},extra:""},85:{ref_id:85,authors:"M. Szegedy",title:"Quantum speed-up of Markov chain based algorithms.",links:{},extra:"In Proceedings of the 45th IEEE Symposium on Foundations of Computer Science, pg. 32, 2004."},86:{ref_id:86,authors:"Wim van Dam",title:"Quantum algorithms for weighing matrices and quadratic residues.",links:{"arXiv:quant-ph/0008059":"http://arxiv.org/abs/quant-ph/0008059"},extra:"Algorithmica, 34(4):413-428, 2002."},87:{ref_id:87,authors:"Wim van Dam",title:"Quantum computing and zeros of zeta functions.",links:{"arXiv:quant-ph/0405081":"http://arxiv.org/abs/quant-ph/0405081"},extra:""},88:{ref_id:88,authors:"Wim van Dam and Sean Hallgren",title:"Efficient quantum algorithms for shifted quadratic character problems.",links:{"arXiv:quant-ph/0011067":"http://arxiv.org/abs/quant-ph/0011067"},extra:""},89:{ref_id:89,authors:"Wim van Dam, Sean Hallgren, and Lawrence Ip",title:"Quantum algorithms for some hidden shift problems.",links:{"arXiv:quant-h/0211140":"http://arxiv.org/abs/quant-ph/0211140"},extra:"SIAM Journal on Computing, 36(3):763-778, 2006."},90:{ref_id:90,authors:"Wim van Dam and Gadiel Seroussi",title:"Efficient quantum algorithms for estimating Gauss sums.",links:{"arXiv:quant-ph/0207131":"http://arxiv.org/abs/quant-ph/0207131"},extra:""},91:{ref_id:91,authors:"John Watrous",title:"Quantum algorithms for solvable groups.",links:{"arXiv:quant-ph/0011023":"http://arxiv.org/abs/quant-ph/0011023"},extra:"In Proceedings of the 33rd ACM Symposium on Theory of Computing, pages 60-67, 2001."},92:{ref_id:92,authors:"Stephen Wiesner",title:"Simulations of many-body quantum systems by a quantum computer.",links:{"arXiv:quant-ph/9603028":"http://arxiv.org/abs/quant-ph/9603028"},extra:""},93:{ref_id:93,authors:"Pawel Wocjan and Jon Yard",title:"The Jones polynomial: quantum algorithms and applications in quantum complexity theory.",links:{"arXiv:quant-ph/0603069":"http://arxiv.org/abs/quant-ph/0603069"},extra:"Quantum Information and Computation 8(1/2):147-180, 2008."},94:{ref_id:94,authors:"Andrew Yao",title:"On computing the minima of quadratic forms.",links:{},extra:"In Proceedings of the 7th ACM Symposium on Theory of Computing, pages 23-26, 1975."},95:{ref_id:95,authors:"Christof Zalka",title:"Efficient simulation of quantum systems by quantum computers.",links:{"arXiv:quant-ph/9603026":"http://arxiv.org/abs/quant-ph/9603026"},extra:"Proceedings of the Royal Society of London Series A, 454:313, 1996."},96:{ref_id:96,authors:"Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser",title:"Quantum computation by adiabatic evolution.",links:{"arXiv:quant-ph/0001106":"http://arxiv.org/abs/quant-ph/0001106"},extra:""},97:{ref_id:97,authors:"Dorit Aharonov, Wim van Dam, Julia Kempe, Zeph Landau, Seth Lloyd, andOded Regev",title:"Adiabatic Quantum Computation is Equivalent to Standard QuantumComputation.",links:{"arXiv:quant-ph/0405098":"http://arxiv.org/abs/quant-ph/0405098"},extra:"SIAM Journal on Computing, 37(1):166-194, 2007."},98:{ref_id:98,authors:"Jérémie Roland and Nicolas J. Cerf",title:"Quantum search by local adiabatic evolution.",links:{"arXiv:quant-ph/0107015":"http://arxiv.org/abs/quant-ph/0107015"},extra:"Physical Review A, 65(4):042308, 2002."},99:{ref_id:99,authors:"L.-A. Wu, M.S. Byrd, and D. A. Lidar",title:"Polynomial-Time Simulation of Pairing Models on a Quantum Computer.",links:{"arXiv:quant-ph/0108110":"http://arxiv.org/abs/quant-ph/0108110"},extra:"Physical Review Letters, 89(6):057904, 2002."},100:{ref_id:100,authors:"Eli Biham, Ofer Biham, David Biron, Markus Grassl, and Daniel Lidar",title:"Grover's quantum search algorithm for an arbitrary initialamplitude distribution.",links:{"arXiv:quant-ph/9807027":"http://arxiv.org/abs/quant-ph/9807027","arXiv:quant-ph/0010077":"http://arxiv.org/abs/quant-ph/0010077"},extra:"Physical Review A, 60(4):2742, 1999."},101:{ref_id:101,authors:"Andrew Childs, Shelby Kimmel, and Robin Kothari",title:"The quantum query complexity of read-many formulas",links:{"arXiv:1112.0548":"http://arxiv.org/abs/1112.0548"},extra:"In Proceedings of ESA 2012, pg. 337-348, Springer. (LNCS 7501)"},102:{ref_id:102,authors:"Alán Aspuru-Guzik, Anthony D. Dutoi, Peter J. Love, and Martin Head-Gordon",title:"Simulated quantum computation of molecular energies.",links:{"arXiv:quant-ph/0604193":"http://arxiv.org/abs/quant-ph/0604193"},extra:"Science, 309(5741):1704-1707, 2005."},103:{ref_id:103,authors:"A. M. Childs, A. J. Landahl, and P. A. Parrilo",title:"Quantum algorithms for the ordered search problem via semidefinite programming.",links:{"arXiv:quant-ph/0608161":"http://arxiv.org/abs/quant-ph/0608161"},extra:"Physical Review A, 75 032335, 2007."},104:{ref_id:104,authors:"Aram W. Harrow, Avinatan Hassidim, and Seth Lloyd",title:"Quantum algorithm for solving linear systems of equations.",links:{"arXiv:0811.3171":"http://arxiv.org/abs/0811.3171"},extra:"Physical Review Letters 15(103):150502, 2009."},105:{ref_id:105,authors:"Martin Roetteler",title:"Quantum algorithms for highly non-linear Boolean functions.",links:{"arXiv:0811.3208":"http://arxiv.org/abs/0811.3208"},extra:"Proceedings of SODA 2010"},106:{ref_id:106,authors:"Stephen P. Jordan",title:"Fast quantum algorithms for approximating the irreducible representations of groups.",links:{"arXiv:0811.0562":"http://arxiv.org/abs/0811.0562"},extra:""},107:{ref_id:107,authors:"Tim Byrnes and Yoshihisa Yamamoto",title:"Simulating lattice gauge theories on a quantum computer.",links:{"arXiv:quant-ph/0510027":"http://arxiv.org/abs/quant-ph/0510027"},extra:"Physical Review A, 73, 022328, 2006."},108:{ref_id:108,authors:"D. Simon",title:"On the Power of Quantum Computation.",links:{},extra:"In Proceedings of the 35th Symposium on Foundations of Computer Science, pg. 116-123, 1994."},109:{ref_id:109,authors:"John Proos and Christof Zalka",title:"Shor's discrete logarithm quantum algorithm for elliptic curves.",links:{"arXiv:quant-ph/0301141":"http://arxiv.org/abs/quant-ph/0301141"},extra:"Quantum Information and Computation, Vol. 3, No. 4,pg.317-344, 2003."},110:{ref_id:110,authors:"Yi-Kai Liu",title:"Quantum algorithms using the curvelet transform.",links:{"arXiv:0810.4968":"http://arxiv.org/abs/0810.4968"},extra:"Proceedings of STOC 2009, pg. 391-400."},111:{ref_id:111,authors:"Wim van Dam and Igor Shparlinski",title:"Classical and quantum algorithms for exponential congruences.",links:{"arXiv:0804.1109":"http://arxiv.org/abs/0804.1109"},extra:"Proceedings of TQC 2008, pg. 1-10."},112:{ref_id:112,authors:"Itai Arad and Zeph Landau",title:"Quantum computation and the evaluation of tensor networks.",links:{"arXiv:0805.0040":"http://arxiv.org/abs/0805.0040"},extra:"SIAM Journal on Computing, 39(7):3089-3121, 2010."},113:{ref_id:113,authors:"M. Van den Nest, W. Dür, R. Raussendorf, and H. J. Briegel",title:"Quantum algorithms for spin models and simulable gate sets for quantum computation.",links:{"arXiv:0805.1214":"http://arxiv.org/abs/0805.1214"},extra:"Physical Review A, 80:052334, 2009."},114:{ref_id:114,authors:"Silvano Garnerone, Annalisa Marzuoli, and Mario Rasetti",title:"Efficient quantum processing of 3-manifold topologicalinvariants.",links:{"arXiv:quant-ph/0703037":"http://arxiv.org/abs/quant-ph/0703037"},extra:"Advances in Theoretical and Mathematical Physics,13(6):1601-1652, 2009."},115:{ref_id:115,authors:"Louis H. Kauffman and Samuel J. Lomonaco Jr.",title:"q-deformed spin networks, knot polynomials and anyonic topological quantum computation.",links:{"arXiv:quant-ph/0606114":"http://arxiv.org/abs/quant-ph/0606114"},extra:"Journal of Knot Theory, Vol. 16, No. 3, pg. 267-332, 2007."},116:{ref_id:116,authors:"Arthur Schmidt and Ulrich Vollmer",title:"Polynomial time quantum algorithm for the computation of the unit group of a number field.",links:{},extra:"In Proceedings of the 37th Symposium on the Theory of Computing, pg. 475-480, 2005."},117:{ref_id:117,authors:"Sergey Bravyi, Aram Harrow, and Avinatan Hassidim",title:"Quantum algorithms for testing properties of distributions.",links:{"arXiv:0907.3920":"http://arxiv.org/abs/0907.3920"},extra:"IEEE Transactions on Information Theory 57(6):3971-3981, 2011."},118:{ref_id:118,authors:"Pawel M. Wocjan, Stephen P. Jordan, Hamed Ahmadi, and Joseph P. Brennan",title:"Efficient quantum processing of ideals in finite rings.",links:{"arXiv:0908.0022":"http://arxiv.org/abs/0908.0022"},extra:""},119:{ref_id:119,authors:"V. Arvind, Bireswar Das, and Partha Mukhopadhyay",title:"The complexity of black-box ring problems.",links:{},extra:"In Proceedings of COCCOON 2006, pg 126-145."},120:{ref_id:120,authors:"V. Arvind and Partha Mukhopadhyay",title:"Quantum query complexity of multilinear identity testing.",links:{},extra:"In Proceedings of STACS 2009, pg. 87-98."},121:{ref_id:121,authors:"David Poulin and Pawel Wocjan",title:"Sampling from the thermal quantum Gibbs state and evaluating partition functions with a quantum computer.",links:{"arXiv:0905.2199":"http://arxiv.org/abs/0905.2199"},extra:"Physical Review Letters 103:220502, 2009."},122:{ref_id:122,authors:"Pawel Wocjan, Chen-Fu Chiang, Anura Abeyesinghe, and Daniel Nagaj",title:"Quantum speed-up for approximating partition functions.",links:{"arXiv:0811.0596":"http://arxiv.org/abs/0811.0596"},extra:"Physical Review A 80:022340, 2009."},123:{ref_id:123,authors:"Ashley Montanaro",title:"Quantum search with advice.",links:{"arXiv:0908.3066":"http://arxiv.org/abs/0908.3066"},extra:"In Proceedings of the 5th conference on Theory of quantumcomputation, communication, and cryptography (TQC 2010)"},124:{ref_id:124,authors:"Laszlo Babai, Robert Beals, and Akos Seress",title:"Polynomial-time theory of matrix groups.",links:{},extra:"In Proceedings of STOC 2009, pg. 55-64."},125:{ref_id:125,authors:"Peter Shor",title:"Algorithms for Quantum Computation: Discrete Logarithms and Factoring.",links:{},extra:"In Proceedings of FOCS 1994, pg. 124-134."},126:{ref_id:126,authors:"Aaron Denney, Cristopher Moore, and Alex Russell",title:"Finding conjugate stabilizer subgroups in PSL(2;q) and related groups.",links:{"arXiv:0809.2445":"http://arxiv.org/abs/0809.2445"},extra:"Quantum Information and Computation 10(3):282-291, 2010."},127:{ref_id:127,authors:"Kevin K. H. Cheung and Michele Mosca",title:"Decomposing finite Abelian groups.",links:{"arXiv:cs/0101004":"http://arxiv.org/abs/cs/0101004"},extra:"Quantum Information and Computation 1(2):26-32, 2001."},128:{ref_id:128,authors:"François Le Gall",title:"An efficient quantum algorithm for some instances of the group isomorphism problem.",links:{"arXiv:1001.0608":"http://arxiv.org/abs/1001.0608"},extra:"In Proceedings of STACS 2010 ."},129:{ref_id:129,authors:"Gorjan Alagic, Stephen Jordan, Robert Koenig, and Ben Reichardt",title:"Approximating Turaev-Viro 3-manifold invariants is universal for quantum computation.",links:{"arXiv:1003.0923":"http://arxiv.org/abs/1003.0923"},extra:"Physical Review A 82, 040302(R), 2010."},130:{ref_id:130,authors:"Martin Rötteler",title:"Quantum algorithms to solve the hidden shift problem for quadratics and for functions of large Gowers norm.",links:{"arXiv:0911.4724":"http://arxiv.org/abs/0911.4724"},extra:"In Proceedings of MFCS 2009, pg 663-674."},131:{ref_id:131,authors:"Arthur Schmidt",title:"Quantum Algorithms for many-to-one Functions to Solve the Regulator and the Principal Ideal Problem.",links:{"arXiv:0912.4807":"http://arxiv.org/abs/0912.4807"},extra:""},132:{ref_id:132,authors:"K. Temme, T.J. Osborne, K.G. Vollbrecht, D. Poulin, and F. Verstraete",title:"Quantum Metropolis Sampling.",links:{"arXiv:0911.3635":"http://arxiv.org/abs/0911.3635"},extra:"Nature, Vol. 471, pg. 87-90, 2011."},133:{ref_id:133,authors:"Andris Ambainis",title:"Quantum Search Algorithms.",links:{"arXiv:quant-ph/0504012":"http://arxiv.org/abs/quant-ph/0504012"},extra:"SIGACT News, 35 (2):22-35, 2004."},134:{ref_id:134,authors:"Nicolas J. Cerf, Lov K. Grover, and Colin P. Williams",title:"Nested quantum search and NP-hard problems.",links:{},extra:"Applicable Algebra in Engineering, Communication and Computing, 10 (4-5):311-338, 2000."},135:{ref_id:135,authors:"Mario Szegedy",title:"Spectra of Quantized Walks and a \\( \\sqrt{\\delta \\epsilon} \\) rule.",links:{"arXiv:quant-ph/0401053":"http://arxiv.org/abs/quant-ph/0401053"},extra:""},136:{ref_id:136,authors:"Kazuo Iwama, Harumichi Nishimura, Rudy Raymond, and Junichi Teruyama",title:"Quantum Counterfeit Coin Problems.",links:{"arXiv:1009.0416":"http://arxiv.org/abs/1009.0416"},extra:"In Proceedings of 21st International Symposium on Algorithms and Computation (ISAAC2010), LNCS 6506, pp.73-84, 2010."},137:{ref_id:137,authors:"Barbara Terhal and John Smolin",title:"Single quantum querying of a database.",links:{"arXiv:quant-ph/9705041":"http://arxiv.org/abs/quant-ph/9705041"},extra:"Physical Review A 58:1822, 1998."},138:{ref_id:138,authors:"Andris Ambainis",title:"Variable time amplitude amplification and a faster quantum algorithm for solving systems of linear equations.",links:{"arXiv:1010.4458":"http://arxiv.org/abs/1010.4458"},extra:""},139:{ref_id:139,authors:"Frédéric Magniez and Ashwin Nayak",title:"Quantum complexity of testing group commutativity.",links:{"arXiv:quant-ph/0506265":"http://arxiv.org/abs/quant-ph/0506265"},extra:"In Proceedings of 32nd International Colloquium on Automata, Languages and Programming. LNCS 3580, pg. 1312-1324, 2005."},140:{ref_id:140,authors:"Andrew Childs and Robin Kothari",title:"Quantum query complexity of minor-closed graph properties.",links:{"arXiv:1011.1443":"http://arxiv.org/abs/1011.1443"},extra:"In Proceedings of the 28th Symposium on Theoretical Aspects of Computer Science (STACS 2011), pg. 661-672"},141:{ref_id:141,authors:"Frédéric Magniez, Ashwin Nayak, Jérémie Roland, and Miklos Santha",title:"Search via quantum walk.",links:{"arXiv:quant-ph/0608026":"http://arxiv.org/abs/quant-ph/0608026"},extra:"In Proceedings STOC 2007, pg. 575-584."},142:{ref_id:142,authors:"Dmitry Gavinsky, Martin Roetteler, and Jérémy Roland",title:"Quantum algorithm for the Boolean hidden shift problem.",links:{"arXiv:1103.3017":"http://arxiv.org/abs/1103.3017"},extra:"In Proceedings of the 17th annual international conferenceon Computing and combinatorics (COCOON '11), 2011."},143:{ref_id:143,authors:"Mark Ettinger and Peter Høyer",title:"On quantum algorithms for noncommutative hidden subgroups.",links:{"arXiv:quant-ph/9807029":"http://arxiv.org/abs/quant-ph/9807029"},extra:"Advances in Applied Mathematics, Vol. 25, No. 3, pg. 239-251, 2000."},144:{ref_id:144,authors:"Andris Ambainis, Andrew Childs, and Yi-Kai Liu",title:"Quantum property testing for bounded-degree graphs.",links:{"arXiv:1012.3174":"http://arxiv.org/abs/1012.3174"},extra:"In Proceedings of RANDOM '11 : Lecture Notes in Computer Science 6845, pp. 365-376, 2011."},145:{ref_id:145,authors:"G. Ortiz, J.E. Gubernatis, E. Knill, and R. Laflamme",title:"Quantum algorithms for Fermionic simulations.",links:{"arXiv:cond-mat/0012334":"http://arxiv.org/abs/cond-mat/0012334"},extra:"Physical Review A 64: 022319, 2001."},146:{ref_id:146,authors:"Ashley Montanaro",title:"The quantum query complexity of learning multilinearpolynomials.",links:{"arXiv:1105.3310":"http://arxiv.org/abs/1105.3310"},extra:"Information Processing Letters, 112(11):438-442, 2012."},147:{ref_id:147,authors:"Tad Hogg",title:"Highly structured searches with quantum computers.",links:{},extra:"Physical Review Letters 80: 2473, 1998."},148:{ref_id:148,authors:"Markus Hunziker and David A. Meyer",title:"Quantum algorithms for highly structured search problems.",links:{},extra:"Quantum Information Processing, Vol. 1, No. 3, pg. 321-341, 2002."},149:{ref_id:149,authors:"Ben Reichardt",title:"Span programs and quantum query complexity: The general adversary bound is nearly tight for every Boolean function.",links:{"arXiv:0904.2759":"http://arxiv.org/abs/0904.2759"},extra:"In Proceedings of the 50th IEEE Symposium on Foundations ofComputer Science (FOCS '09), pg. 544-551, 2009."},150:{ref_id:150,authors:"Aleksandrs Belovs",title:"Span-program-based quantum algorithm for the rank problem.",links:{"arXiv:1103.0842":"http://arxiv.org/abs/1103.0842"},extra:""},151:{ref_id:151,authors:"Sebastian Dörn and Thomas Thierauf",title:"The quantum query complexity of the determinant.",links:{},extra:"Information Processing Letters Vol. 109, No. 6, pg. 305-328, 2009."},152:{ref_id:152,authors:"Aleksandrs Belovs",title:"Span programs for functions with constant-sized 1-certificates.",links:{"arXiv:1105.4024":"http://arxiv.org/abs/1105.4024"},extra:"In Proceedings of STOC 2012, pg. 77-84."},153:{ref_id:153,authors:"Troy Lee, Frédéric Magniez, and Mikos Santha",title:"A learning graph based quantum query algorithm for findingconstant-size subgraphs.",links:{"arXiv:1109.5135":"http://arxiv.org/abs/1109.5135"},extra:"Chicago Journal of Theoretical Computer Science,Vol. 2012, Article 10, 2012."},154:{ref_id:154,authors:"Aleksandrs Belovs and Troy Lee",title:"Quantum algorithm for k-distinctness with prior knowledge on the input.",links:{"arXiv:1108.3022":"http://arxiv.org/abs/1108.3022"},extra:""},155:{ref_id:155,authors:"François Le Gall",title:"Improved output-sensitive quantum algorithms for Boolean matrix multiplication.",links:{},extra:"In Proceedings of the 23rd Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA '12), 2012."},156:{ref_id:156,authors:"Dominic Berry",title:"Quantum algorithms for solving linear differential equations.",links:{"arXiv:1010.2745":"http://arxiv.org/abs/1010.2745"},extra:"J. Phys. A: Math. Theor. 47, 105301, 2014."},157:{ref_id:157,authors:"Virginia Vassilevska Williams and Ryan Williams",title:"Subcubic equivalences between path, matrix, and triangle problems.",links:{},extra:"In 51st IEEE Symposium on Foundations of Computer Science (FOCS '10) pg. 645 - 654, 2010."},158:{ref_id:158,authors:"Ben W. Reichardt",title:"Reflections for quantum query algorithms.",links:{"arXiv:1005.1601":"http://arxiv.org/abs/1005.1601"},extra:"In Proceedings of the 22nd ACM-SIAM Symposium on Discrete Algorithms (SODA), pg. 560-569, 2011."},159:{ref_id:159,authors:"Ben W. Reichardt",title:"Span-program-based quantum algorithm for evaluating unbalanced formulas.",links:{"arXiv:0907.1622":"http://arxiv.org/abs/0907.1622"},extra:""},160:{ref_id:160,authors:"Ben W. Reichardt",title:"Faster quantum algorithm for evaluating game trees.",links:{"arXiv:0907.1623":"http://arxiv.org/abs/0907.1623"},extra:"In Proceedings of the 22nd ACM-SIAM Symposium on Discrete Algorithms (SODA), pg. 546-559, 2011."},161:{ref_id:161,authors:"Stacey Jeffery, Robin Kothari, and Frédéric Magniez",title:"Improving quantum query complexity of Boolean matrix multiplication using graph collision.",links:{"arXiv:1112.5855":"http://arxiv.org/abs/1112.5855"},extra:"In Proceedings of ICALP 2012, pg. 522-532."},162:{ref_id:162,authors:"Andrew M. Childs and Jason M. Eisenberg",title:"Quantum algorithms for subset finding.",links:{"arXiv:quant-ph/0311038":"http://arxiv.org/abs/quant-ph/0311038"},extra:"Quantum Information and Computation 5(7):593-604, 2005."},163:{ref_id:163,authors:"Aleksandrs Belovs and Robert Špalek",title:"Adversary lower bound for the k-sum problem.",links:{"arXiv:1206.6528":"http://arxiv.org/abs/1206.6528"},extra:"In Proceedings of ITCS 2013, pg. 323-328."},164:{ref_id:164,authors:"Bohua Zhan, Shelby Kimmel, and Avinatan Hassidim",title:"Super-polynomial quantum speed-ups for Boolean evaluation treeswith hidden structure.",links:{"arXiv:1101.0796":"http://arxiv.org/abs/1101.0796"},extra:"ITCS 2012: Proceedings of the 3rd Innovations in Theoretical Computer Science, ACM, pg. 249-265."},165:{ref_id:165,authors:"Shelby Kimmel",title:"Quantum adversary (upper) bound.",links:{"arXiv:1101.0797":"http://arxiv.org/abs/1101.0797"},extra:"39th International Colloquium on Automata, Languages and Programming - ICALP 2012 Volume 7391, p. 557-568."},166:{ref_id:166,authors:"Stephen Jordan, Keith Lee, and John Preskill",title:"Quantum algorithms for quantum field theories.",links:{"arXiv:1111.3633":"http://arxiv.org/abs/1111.3633"},extra:"Science, Vol. 336, pg. 1130-1133, 2012."},167:{ref_id:167,authors:"Andris Ambainis and Ashley Montanaro",title:"Quantum algorithms for search with wildcards and combinatorial group testing.",links:{"arXiv:1210.1148":"http://arxiv.org/abs/1210.1148"},extra:""},168:{ref_id:168,authors:"Andris Ambainis and Robert Špalek",title:"Quantum algorithms for matching and network flows.",links:{"arXiv:quant-ph/0508205":"http://arxiv.org/abs/quant-ph/0508205"},extra:"Proceedings of STACS 2007, pg. 172-183."},169:{ref_id:169,authors:"Nathan Wiebe, Daniel Braun, and Seth Lloyd",title:"Quantum data-fitting.",links:{"arXiv:1204.5242":"http://arxiv.org/abs/1204.5242"},extra:"Physical Review Letters 109, 050505, 2012."},170:{ref_id:170,authors:"Andrew Childs and Nathan Wiebe",title:"Hamiltonian simulation using linear combinations of unitaryoperations.",links:{"arXiv:1202.5822":"http://arxiv.org/abs/1202.5822"},extra:"Quantum Information and Computation 12, 901-924, 2012."},171:{ref_id:171,authors:"Stacey Jeffery, Robin Kothari, and Frédéric Magniez",title:"Nested quantum walks with quantum data structures.",links:{"arXiv:1210.1199":"http://arxiv.org/abs/1210.1199"},extra:"In Proceedings of the 24th ACM-SIAM Symposium on Discrete Algorithms (SODA'13), pg. 1474-1485, 2013."},172:{ref_id:172,authors:"Aleksandrs Belovs",title:"Learning-graph-based quantum algorithm for k-distinctness.",links:{"arXiv:1205.1534":"http://arxiv.org/abs/1205.1534"},extra:"Proceedings of STOC 2012, pg. 77-84."},173:{ref_id:173,authors:"Andrew Childs, Stacey Jeffery, Robin Kothari, and Frédéric Magniez",title:"A time-efficient quantum walk for 3-distinctness using nested updates.",links:{"arXiv:1302.7316":"http://arxiv.org/abs/1302.7316"},extra:""},174:{ref_id:174,authors:"Hari Krovi and Alexander Russell",title:"Quantum Fourier transforms and the complexity of link invariantsfor quantum doubles of finite groups.",links:{"arXiv:1210.1550":"http://arxiv.org/abs/1210.1550"},extra:"Commun. Math. Phys. 334, 743-777, 2015"},175:{ref_id:175,authors:"Troy Lee, Frédéric Magniez, and Miklos Santha",title:"Improved quantum query algorithms for triangle finding and associativity testing.",links:{"arXiv:1210.1014":"http://arxiv.org/abs/1210.1014"},extra:""},176:{ref_id:176,authors:"Silvano Garnerone, Paolo Zanardi, and Daniel A. Lidar",title:"Adiabatic quantum algorithm for search engine ranking.",links:{},extra:"Physical Review Letters 108:230506, 2012."},177:{ref_id:177,authors:"R. D. Somma, S. Boixo, H. Barnum, and E. Knill",title:"Quantum simulations of classical annealing.",links:{"arXiv:0804.1571":"http://arxiv.org/abs/0804.1571"},extra:"Physical Review Letters 101:130504, 2008."},178:{ref_id:178,authors:"Daniel J. Bernstein, Stacey Jeffery, Tanja Lange, and Alexander Meurer",title:"Quantum algorithms for the subset-sum problem.",links:{"from cr.yp.to":"http://cr.yp.to/qsubsetsum/qsubsetsum-20130407.pdf"},extra:""},179:{ref_id:179,authors:"Boris Altshuler, Hari Krovi, and Jérémie Roland",title:"Anderson localization casts clouds over adiabatic quantum optimization.",links:{"arXiv:0912.0746":"http://arxiv.org/abs/0912.0746"},extra:"Proceedings of the National Academy of Sciences 107(28):12446-12450, 2010."},180:{ref_id:180,authors:"Ben Reichardt",title:"The quantum adiabatic optimization algorithm and local minima.",links:{Erratum:"http://www-bcf.usc.edu/~breichar/Correction.txt"},extra:"In Proceedings of STOC 2004, pg. 502-510."},181:{ref_id:181,authors:"Edward Farhi, Jeffrey Goldstone, and Sam Gutmann",title:"Quantum adiabatic evolution algorithms versus simulated annealing.",links:{"arXiv:quant-ph/0201031":"http://arxiv.org/abs/quant-ph/0201031"},extra:""},182:{ref_id:182,authors:"E. Farhi, J. Goldstone, D. Gosset, S. Gutmann, H. B. Meyer, and P. Shor",title:"Quantum adiabatic algorithms, small gaps, and different paths.",links:{"arXiv:0909.4766":"http://arxiv.org/abs/0909.4766"},extra:"Quantum Information and Computation, 11(3/4):181-214, 2011."},183:{ref_id:183,authors:"Sergey Bravyi, David P. DiVincenzo, Roberto I. Oliveira, and Barbara M. Terhal",title:"The Complexity of Stoquastic Local Hamiltonian Problems.",links:{"arXiv:quant-ph/0606140":"http://arxiv.org/abs/quant-ph/0606140"},extra:"Quantum Information and Computation, 8(5):361-385, 2008."},184:{ref_id:184,authors:"Rolando D. Somma and Sergio Boixo",title:"Spectral gap amplification.",links:{"arXiv:1110.2494":"http://arxiv.org/abs/1110.2494"},extra:"SIAM Journal on Computing, 42:593-610, 2013."},185:{ref_id:185,authors:"Sabine Jansen, Mary-Beth Ruskai, Ruedi Seiler",title:"Bounds for the adiabatic approximation with applications to quantum computation.",links:{"arXiv:quant-ph/0603175":"http://arxiv.org/abs/quant-ph/0603175"},extra:"Journal of Mathematical Physics, 48:102111, 2007."},186:{ref_id:186,authors:"E. Farhi, J. Goldstone, S. Gutmann, J. Lapan, A. Lundgren, and D. Preda",title:"A Quantum Adiabatic Evolution Algorithm Applied to Random Instances of an NP-Complete Problem.",links:{"arXiv:quant-ph/0104129":"http://arxiv.org/abs/quant-ph/0104129"},extra:"Science, 292(5516):472-475, 2001."},187:{ref_id:187,authors:"Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj",title:"How to make the quantum adiabatic algorithm fail.",links:{"arXiv:quant-ph/0512159":"http://arxiv.org/abs/quant-ph/0512159"},extra:"International Journal of Quantum Information, 6(3):503-516, 2008."},188:{ref_id:188,authors:"Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj",title:"Unstructured randomness, small gaps, and localization.",links:{"arXiv:1010.0009":"http://arxiv.org/abs/1010.0009"},extra:"Quantum Information and Computation, 11(9/10):840-854, 2011."},189:{ref_id:189,authors:"Edward Farhi, Jeffrey Goldstone, Sam Gutmann",title:"Quantum adiabatic evolution algorithms with different paths.",links:{"arXiv:quant-ph/0208135":"http://arxiv.org/abs/quant-ph/0208135"},extra:""},190:{ref_id:190,authors:"Wim van Dam, Michele Mosca, and Umesh Vazirani",title:"How powerful is adiabatic quantum computation?",links:{"arXiv:quant-ph/0206003":"http://arxiv.org/abs/quant-ph/0206003",this:"http://www.cs.berkeley.edu/~vazirani/pubs/qao.ps"},extra:"In Proceedings of FOCS 2001, pg. 279-287."},191:{ref_id:191,authors:"E. Farhi, D. Gosset, I. Hen, A. W. Sandvik, P. Shor, A. P. Young, and F. Zamponi",title:"The performance of the quantum adiabatic algorithm on random instances of two optimization problems on regular hypergraphs.",links:{"arXiv:1208.3757":"http://arxiv.org/abs/1208.3757"},extra:"Physical Review A, 86:052334, 2012."},192:{ref_id:192,authors:"Kristen L. Pudenz and Daniel A. Lidar",title:"Quantum adiabatic machine learning.",links:{"arXiv:1109.0325":"http://arxiv.org/abs/1109.0325"},extra:"Quantum Information Processing, 12:2027, 2013."},193:{ref_id:193,authors:"Frank Gaitan and Lane Clark",title:"Ramsey numbers and adiabatic quantum computing.",links:{"arXiv:1103.1345":"http://arxiv.org/abs/1103.1345"},extra:"Physical Review Letters, 108:010501, 2012."},194:{ref_id:194,authors:"Frank Gaitan and Lane Clark",title:"Graph isomorphism and adiabatic quantum computing.",links:{"arXiv:1304.5773":"http://arxiv.org/abs/1304.5773"},extra:"Physical Review A, 89(2):022342, 2014."},195:{ref_id:195,authors:"Hartmut Neven, Vasil S. Denchev, Geordie Rose, and William G. Macready",title:"Training a binary classifier with the quantum adiabatic algorithm.",links:{"arXiv:0811.0416":"http://arxiv.org/abs/0811.0416"},extra:""},196:{ref_id:196,authors:"Robert Beals",title:"Quantum computation of Fourier transforms over symmetric groups.",links:{},extra:"In Proceedings of STOC 1997, pg. 48-53."},197:{ref_id:197,authors:"Dave Bacon, Isaac L. Chuang, and Aram W. Harrow",title:"The quantum Schur transform: I. efficient qudit circuits.",links:{"arXiv:quant-ph/0601001":"http://arxiv.org/abs/quant-ph/0601001"},extra:"In Proceedings of SODA 2007, pg. 1235-1244."},198:{ref_id:198,authors:"S. Morita, H. Nishimori",title:"Mathematical foundation of quantum annealing.",links:{},extra:"Journal of Methematical Physics, 49(12):125210, 2008."},199:{ref_id:199,authors:"A. B. Finnila, M. A. Gomez, C. Sebenik, C. Stenson, J. D. Doll",title:"Quantum annealing: a new method for minimizing multidimensional functions.",links:{},extra:"Chemical Physics Letters, 219:343-348, 1994."},200:{ref_id:200,authors:"D. Gavinsky and T. Ito",title:"A quantum query algorithm for the graph collision problem.",links:{"arXiv:1204.1527":"http://arxiv.org/abs/1204.1527"},extra:""},201:{ref_id:201,authors:"Andris Ambainis, Kaspars Balodis, Jānis Iraids, Raitis Ozols, and Juris Smotrovs",title:"Parameterized quantum query complexity of graph collision.",links:{"arXiv:1305.1021":"http://arxiv.org/abs/1305.1021"},extra:""},202:{ref_id:202,authors:"Kevin C. Zatloukal",title:"Classical and quantum algorithms for testing equivalence of group extensions.",links:{"arXiv:1305.1327":"http://arxiv.org/abs/1305.1327"},extra:""},203:{ref_id:203,authors:"Andrew Childs and Gábor Ivanyos",title:"Quantum computation of discrete logarithms in semigroups.",links:{"arXiv:1310.6238":"http://arxiv.org/abs/1310.6238"},extra:""},204:{ref_id:204,authors:"Matan Banin and Boaz Tsaban",title:"A reduction of semigroup DLP to classic DLP.",links:{"arXiv:1310.7903":"http://arxiv.org/abs/1310.7903"},extra:""},205:{ref_id:205,authors:"D. W. Berry, R. Cleve, and R. D. Somma",title:"Exponential improvement in precision for Hamiltonian-evolution simulation.",links:{"arXiv:1308.5424":"http://arxiv.org/abs/1308.5424"},extra:""},206:{ref_id:206,authors:"François Le Gall and Harumichi Nishimura",title:"Quantum algorithms for matrix products over semirings.",links:{"arXiv:1310.3898":"http://arxiv.org/abs/1310.3898"},extra:""},207:{ref_id:207,authors:"Nolan Wallach",title:"A quantum polylog algorithm for non-normal maximal cyclic hidden subgroups in the affine group of a finite field.",links:{"arXiv:1308.1415":"http://arxiv.org/abs/1308.1415"},extra:""},208:{ref_id:208,authors:"Lov Grover",title:"Fixed-point quantum search.",links:{"arXiv:quant-ph/0503205":"http://arxiv.org/abs/quant-ph/0503205"},extra:"Phys. Rev. Lett. 95(15):150501, 2005."},209:{ref_id:209,authors:"Tathagat Tulsi, Lov Grover, and Apoorva Patel",title:"A new algorithm for fixed point quantum search.",links:{"arXiv:quant-ph/0505007":"http://arxiv.org/abs/quant-ph/0505007"},extra:"Quantum Information and Computation 6(6):483-494, 2005."},210:{ref_id:210,authors:"Guoming Wang",title:"Quantum algorithms for approximating the effective resistances of electrical networks.",links:{"arXiv:1311.1851":"http://arxiv.org/abs/1311.1851"},extra:""},211:{ref_id:211,authors:"Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and Rolando D. Somma",title:"Exponential improvement in precision for simulating sparse Hamiltonians",links:{"arXiv:1312.1414":"http://arxiv.org/abs/1312.1414"},extra:""},212:{ref_id:212,authors:"Thomas Decker, Peter Høyer, Gabor Ivanyos, and Miklos Santha",title:"Polynomial time quantum algorithms for certain bivariate hidden polynomial problems",links:{"arXiv:1305.1543":"http://arxiv.org/abs/1305.1543"},extra:""},213:{ref_id:213,authors:"Kirsten Eisenträger, Sean Hallgren, Alexei Kitaev, and Fang Song",title:"A quantum algorithm for computing the unit group of an arbitrary degree number field",links:{},extra:"In Proceedings of STOC 2014 pg. 293-302."},214:{ref_id:214,authors:"Seth Lloyd, Masoud Mohseni, and Patrick Robentrost",title:"Quantum algorithms for supervised and unsupervised machine learning",links:{"arXiv:1307.0411":"http://arxiv.org/abs/1307.0411"},extra:""},215:{ref_id:215,authors:"Ashley Montanaro",title:"Quantum pattern matching fast on average",links:{"arXiv:1408.1816":"http://arxiv.org/abs/1408.1816"},extra:""},216:{ref_id:216,authors:"Charles H. Bennett, Ethan Bernstein, Gilles Brassard, and Umesh Vazirani",title:"Strengths and weaknesses of quantum computing",links:{"arXiv:quant-ph/9701001":"http://arxiv.org/abs/quant-ph/9701001"},extra:"SIAM J. Comput. 26(5):1524-1540, 1997"},217:{ref_id:217,authors:"H. Ramesh and V. Vinay",title:"String matching in \\( \\widetilde{O}(\\sqrt{n} + \\sqrt{m}) \\)quantum time",links:{"arXiv:quant-ph/0011049":"http://arxiv.org/abs/quant-ph/0011049"},extra:"Journal of Discrete Algorithms 1:103-110, 2003"},218:{ref_id:218,authors:"Greg Kuperberg",title:"Another subexponential-time quantum algorithm for the dihedral hidden subgroup problem",links:{"arXiv:1112.3333":"http://arxiv.org/abs/1112.3333"},extra:"In Proceedings of TQC pg. 20-34, 2013"},219:{ref_id:219,authors:"Peter Høyer, Jan Neerbek, and Yaoyun Shi",title:"Quantum complexities of ordered searching, sorting, and elementdistinctness",links:{"arXiv:quant-ph/0102078":"http://arxiv.org/abs/quant-ph/0102078"},extra:"In Proceedings of ICALP pg. 346-357, 2001"},220:{ref_id:220,authors:"Amnon Ta-Shma",title:"Inverting well conditioned matrices in quantum logspace",links:{},extra:"In Proceedings of STOC 2013 pg. 881-890."},221:{ref_id:221,authors:"Nathan Wiebe, Ashish Kapoor, and Krysta Svore",title:"Quantum deep learning",links:{"arXiv:1412.3489":"http://arxiv.org/abs/1412.3489"},extra:""},222:{ref_id:222,authors:"Seth Lloyd, Silvano Garnerone, and Paolo Zanardi",title:"Quantum algorithms for topological and geometric analysis of big data",links:{"arXiv:1408.3106":"http://arxiv.org/abs/1408.3106"},extra:""},223:{ref_id:223,authors:"David A. Meyer and James Pommersheim",title:"Single-query learning from abelian and non-abelian Hammingdistance oracles",links:{"arXiv:0912.0583":"http://arxiv.org/abs/0912.0583"},extra:""},224:{ref_id:224,authors:"Markus Hunziker, David A. Meyer, Jihun Park, James Pommersheim, and Mitch Rothstein",title:"The geometry of quantum learning",links:{"arXiv:quant-ph/0309059":"http://arxiv.org/abs/quant-ph/0309059"},extra:"Quantum Information Processing 9:321-341, 2010."},225:{ref_id:225,authors:"Lawrence M. Ioannou and Michele Mosca",title:"Limitations on some simple adiabatic quantum algorithms",links:{"arXiv:quant-ph/0702241":"http://arxiv.org/abs/quant-ph/0702241"},extra:"International Journal of Quantum Information, 6(3):419-426, 2008."},226:{ref_id:226,authors:"Michael Jarret and Stephen P. Jordan",title:"Adiabatic optimization without local minima",links:{"arXiv:1405.7552":"http://arxiv.org/abs/1405.7552"},extra:"Quantum Information and Computation, 15(3/4):0181-0199, 2015."},227:{ref_id:227,authors:"Matthew B. Hastings, Dave Wecker, Bela Bauer, and Matthias Troyer",title:"Improving quantum algorithms for quantum chemistry",links:{"arXiv:1403.1539":"http://arxiv.org/abs/1403.1539"},extra:"Quantum Information and Computation, 15(1/2):0001-0021, 2015."},228:{ref_id:228,authors:"Stephen P. Jordan, Keith S. M. Lee, and John Preskill",title:"Quantum simulation of scattering in scalar quantum field theories",links:{"arXiv:1112.4833":"http://arxiv.org/abs/1112.4833"},extra:"Quantum Information and Computation, 14(11/12):1014-1080, 2014."},229:{ref_id:229,authors:"Stephen P. Jordan, Keith S. M. Lee, and John Preskill",title:"Quantum algorithms for fermionic quantum field theories",links:{"arXiv:1404.7115":"http://arxiv.org/abs/1404.7115"},extra:""},230:{ref_id:230,authors:"Gavin K. Brennen, Peter Rohde, Barry C. Sanders, and Sukhi Singh",title:"Multi-scale quantum simulation of quantum field theory using wavelets",links:{"arXiv:1412.0750":"http://arxiv.org/abs/1412.0750"},extra:""},231:{ref_id:231,authors:"Hefeng Wang, Sabre Kais, Alán Aspuru-Guzik, and Mark R. Hoffmann.",title:"Quantum algorithm for obtaining the energy spectrum of molecular systems",links:{"arXiv:0907.0854":"http://arxiv.org/abs/0907.0854"},extra:"Physical Chemistry Chemical Physics, 10(35):5388-5393, 2008."},232:{ref_id:232,authors:"Ivan Kassal and Alán Aspuru-Guzik",title:"Quantum algorithm for molecular properties and geometry optimization",links:{"arXiv:0908.1921":"http://arxiv.org/abs/0908.1921"},extra:"Journal of Chemical Physics, 131(22), 2009."},233:{ref_id:233,authors:"James D. Whitfield, Jacob Biamonte, and Alán Aspuru-Guzik",title:"Simulation of electronic structure Hamiltonians using quantum computers",links:{"arXiv:1001.3855":"http://arxiv.org/abs/1001.3855"},extra:"Molecular Physics, 109(5):735-750, 2011."},234:{ref_id:234,authors:"Borzu Toloui and Peter J. Love",title:"Quantum algorithms for quantum chemistry based on the sparsityof the CI-matrix",links:{"arXiv:1312.2529":"http://arxiv.org/abs/1312.2579"},extra:""},235:{ref_id:235,authors:"James D. Whitfield",title:"Spin-free quantum computational simulations and symmetry adapted states",links:{"arXiv:1306.1147":"http://arxiv.org/abs/1306.1147"},extra:"Journal of Chemical Physics, 139(2):021105, 2013."},236:{ref_id:236,authors:"Andrew W. Cross, Graeme Smith, and John A. Smolin",title:"Quantum learning robust to noise",links:{"arXiv:1407.5088":"http://arxiv.org/abs/1407.5088"},extra:""},237:{ref_id:237,authors:"Aram W. Harrow and David J. Rosenbaum",title:"Uselessness for an oracle model with internal randomness",links:{"arXiv:1111.1462":"http://arxiv.org/abs/1111.1462"},extra:"Quantum Information and Computation 14(7/8):608-624, 2014"},238:{ref_id:238,authors:"Jon R. Grice and David A. Meyer",title:"A quantum algorithm for Viterbi decoding of classical convolutional codes",links:{"arXiv:1405.7479":"http://arxiv.org/abs/1405.7479"},extra:""},239:{ref_id:239,authors:"Alexander Barg and Shiyu Zhou",title:"A quantum decoding algorithm of the simplex code",links:{"author's homepage":"http://www.ece.umd.edu/~abarg/reprints/rm1dq.pdf"},extra:"Proceedings of the 36th Annual Allerton Conference, 1998"},240:{ref_id:240,authors:"Guoming Wang",title:"Span-program-based quantum algorithm for tree detection",links:{"arXiv:1309.7713":"http://arxiv.org/abs/1309.7713"},extra:""},241:{ref_id:241,authors:"François Le Gall, Harumichi Nishimura, and Seiichiro Tani",title:"Quantum algorithm for finding constant-sized sub-hypergraphsover 3-uniform hypergraphs",links:{"arXiv:1310.4127":"http://arxiv.org/abs/1310.4127"},extra:"In Proceedings of COCOON, 2014. pg. 429-440"},242:{ref_id:242,authors:"Edward Farhi, Jeffrey Goldstone, and Sam Gutmann",title:"A quantum approximate optimization algorithm",links:{"arXiv:1411.4028":"http://arxiv.org/abs/1411.4028"},extra:""},243:{ref_id:243,authors:"Edward Farhi, Jeffrey Goldstone, and Sam Gutmann",title:"A quantum approximate optimization algorithm applied to abounded occurrence constraint problem",links:{"arXiv:1412.6062":"http://arxiv.org/abs/1412.6062"},extra:""},244:{ref_id:244,authors:"Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and Rolando D. Somma",title:"Simulating Hamiltonian dynamics with a truncated Taylor series",links:{"arXiv:1412.4687":"http://arxiv.org/abs/1412.4687"},extra:""},245:{ref_id:245,authors:"Dominic W. Berry, Andrew M. Childs, and Robin Kothari",title:"Hamiltonian simulation with nearly optimal dependence on all parameters",links:{"arXiv:1501.01715":"http://arxiv.org/abs/1501.01715"},extra:""},246:{ref_id:246,authors:"Scott Aaronson",title:"Read the fine print",links:{fulltext:"http://www.scottaaronson.com/papers/qml.pdf"},extra:"Nature Physics 11:291-293, 2015."},247:{ref_id:247,authors:"Alexander Elgart and George A. Hagedorn",title:"A note on the switching adiabatic theorem",links:{"arXiv:1204.2318":"http://arxiv.org/abs/1204.2318"},extra:"Journal of Mathematical Physics 53(10):102202, 2012."},248:{ref_id:248,authors:"Daniel J. Bernstein, Johannes Buchmann, and Erik Dahmen,",title:"Eds.",links:{Springer:"http://www.springer.com/mathematics/numbers/book/978-3-540-88701-0"},extra:"Post-Quantum Cryptography"},249:{ref_id:249,authors:"B. D. Clader, B. C. Jacobs, and C. R. Sprouse",title:"Preconditioned quantum linear system algorithm",links:{"arXiv:1301.2340":"http://arxiv.org/abs/1301.2340"},extra:"Phys. Rev. Lett. 110:250504, 2013."},250:{ref_id:250,authors:"S. Lloyd, M. Mohseni, and P. Rebentrost",title:"Quantum principal component analysis",links:{"arXiv:1307.0401":"http://arxiv.org/abs/1307.0401"},extra:"Nature Physics. 10(9):631, 2014."},251:{ref_id:251,authors:"Patrick Rebentrost, Masoud Mohseni, and Seth Lloyd",title:"Quantum support vector machine for big data classification",links:{"arXiv:1307.0471":"http://arxiv.org/abs/1307.0471"},extra:"Phys. Rev. Lett. 113, 130503, 2014."},252:{ref_id:252,authors:"J. M. Pollard",title:"Theorems on factorization and primality testing",links:{},extra:"Proceedings of the Cambridge Philosophical Society. 76:521-228, 1974."},253:{ref_id:253,authors:"L. Babai, R. Beals, and A. Seress",title:"Polynomial-time theory of matrix groups",links:{},extra:"In Proceedings of STOC 2009, pg. 55-64."},254:{ref_id:254,authors:"Neil J. Ross and Peter Selinger",title:"Optimal ancilla-free Clifford+T approximations of z-rotations",links:{"arXiv:1403.2975":"http://arxiv.org/abs/1403.2975"},extra:""},255:{ref_id:255,authors:"L. A. B. Kowada, C. Lavor, R. Portugal, and C. M. H. de Figueiredo",title:"A new quantum algorithm for solving the minimum searching problem",links:{},extra:"International Journal of Quantum Information, Vol. 6, No. 3, pg. 427-436, 2008."},256:{ref_id:256,authors:"Sean Hallgren and Aram Harrow",title:"Superpolynomial speedups based on almost any quantum circuit",links:{"arXiv:0805.0007":"http://arxiv.org/abs/0805.0007"},extra:"Proceedings of ICALP 2008, pg. 782-795."},257:{ref_id:257,authors:"Fernando G.S.L. Brandao and Michal Horodecki",title:"Exponential quantum speed-ups are generic",links:{"arXiv:1010.3654":"http://arxiv.org/abs/1010.3654"},extra:"Quantum Information and Computation, Vol. 13, Pg. 0901, 2013"},258:{ref_id:258,authors:"Scott Aaronson and Andris Ambainis",title:"Forrelation: A problem that optimally separates quantum from classical computing.",links:{"arXiv:1411.5729":"http://arxiv.org/abs/1411.5729"},extra:""},259:{ref_id:259,authors:"Z. Gedik",title:"Computational speedup with a single qutrit",links:{"arXiv:1403.5861":"http://arxiv.org/abs/1403.5861"},extra:""},260:{ref_id:260,authors:"Boaz Barak, Ankur Moitra, Ryan O'Donnell, Prasad Raghavendra, OdedRegev, David Steurer, Luca Trevisan, Aravindan Vijayaraghavan, DavidWitmer, and John Wright",title:"Beating the random assignment on constraint satisfaction problems of bounded degree",links:{"arXiv:1505.03424":"http://arxiv.org/abs/1505.03424"},extra:""},261:{ref_id:261,authors:"David Cornwell",title:"Amplified Quantum Transforms",links:{"arXiv:1406.0190":"http://arxiv.org/abs/1406.0190"},extra:""},262:{ref_id:262,authors:"T. Laarhoven, M. Mosca, and J. van de Pol",title:"Solving the shortest vector problem in lattices faster using quantum search",links:{"arXiv:1301.6176":"http://arxiv.org/abs/1301.6176"},extra:"Proceedings of PQCrypto13, pp. 83-101, 2013."},263:{ref_id:263,authors:"Andrew M. Childs, Robin Kothari, and Rolando D. Somma",title:"Quantum linear systems algorithm with exponentially improveddependence on precision",links:{"arXiv:1511.02306":"http://arxiv.org/abs/1511.02306"},extra:""},264:{ref_id:264,authors:"Ashley Montanaro",title:"Quantum walk speedup of backtracking algorithms",links:{"arXiv:1509.02374":"http://arxiv.org/abs/1509.02374"},extra:""},265:{ref_id:265,authors:"Ashley Montanaro",title:"Quantum speedup of Monte Carlo methods",links:{"arXiv:1504.06987":"http://arxiv.org/abs/1504.06987"},extra:""},266:{ref_id:266,authors:"Andris Ambainis, Aleksandrs Belovs, Oded Regev, and Ronald de Wolf",title:"Efficient quantum algorithms for (gapped) group testing andjunta testing",links:{"arXiv:1507.03126":"http://arxiv.org/abs/1507.03126"},extra:""},267:{ref_id:267,authors:"A. Atici and R. A. Servedio",title:"Quantum algorithms for learning and testing juntas",links:{"arXiv:0707.3479":"http://arxiv.org/abs/0707.3479"},extra:"Quantum Information Processing, 6(5):323-348, 2007."},268:{ref_id:268,authors:"Aleksandrs Belovs",title:"Quantum algorithms for learning symmetric juntas via theadversary bound",links:{"arXiv:1311.6777":"http://arxiv.org/abs/1311.6777"},extra:"Computational Complexity, 24(2):255-293, 2015. (Also appears in proceedings of CCC'14)."},269:{ref_id:269,authors:"Stacey Jeffery and Shelby Kimmel",title:"NAND-trees, average choice complexity, and effective resistance",links:{"arXiv:1511.02235":"http://arxiv.org/abs/1511.02235"},extra:""},270:{ref_id:270,authors:"Scott Aaronson, Shalev Ben-David, and Robin Kothari",title:"Separations in query complexity using cheat sheets",links:{"arXiv:1511.01937":"http://arxiv.org/abs/1511.01937"},extra:""},271:{ref_id:271,authors:"Frédéric Grosshans, Thomas Lawson, FrançoisMorain, and Benjamin Smith",title:"Factoring safe semiprimes with a single quantum query",links:{"arXiv:1511.04385":"http://arxiv.org/abs/1511.04385"},extra:""},272:{ref_id:272,authors:"Agnis Āriņš",title:"Span-program-based quantum algorithms for graph bipartiteness and connectivity",links:{"arXiv:1510.07825":"http://arxiv.org/abs/1510.07825"},extra:""},273:{ref_id:273,authors:"Juan Bermejo-Vega and Kevin C. Zatloukal",title:"Abelian hypergroups and quantum computation",links:{"arXiv:1509.05806":"http://arxiv.org/abs/1509.05806"},extra:""},274:{ref_id:274,authors:"Andrew Childs and Jeffrey Goldstone",title:"Spatial search by quantum walk",links:{"arXiv:quant-ph/0306054":"http://arxiv.org/abs/quant-ph/0306054"},extra:"Physical Review A, 70:022314, 2004."},275:{ref_id:275,authors:"Shantanav Chakraborty, Leonardo Novo, Andris Ambainis, and Yasser Omar",title:"Spatial search by quantum walk is optimal for almost all graphs",links:{"arXiv:1508.01327":"http://arxiv.org/abs/1508.01327"},extra:""},276:{ref_id:276,authors:"François Le Gall",title:"Improved quantum algorithm for triangle finding viacombinatorial arguments",links:{"arXiv:1407.0085":"http://arxiv.org/abs/1407.0085"},extra:"In Proceedings of the 55th IEEE Annual Symposium on Foundations of Computer Science (FOCS), pg. 216-225, 2014."},277:{ref_id:277,authors:"Ashley Montanaro",title:"The quantum complexity of approximating the frequency moments",links:{"arXiv:1505.00113":"http://arxiv.org/abs/1505.00113"},extra:""},278:{ref_id:278,authors:"Rolando D. Somma",title:"Quantum simulations of one dimensional quantum systems",links:{"arXiv:1503.06319":"http://arxiv.org/abs/1503.06319"},extra:""},279:{ref_id:279,authors:"Bill Fefferman and Cedric Yen-Yu Lin",title:"A complete characterization of unitary quantum space",links:{"arXiv:1604.01384":"http://arxiv.org/abs/1604.01384"},extra:""},280:{ref_id:280,authors:"Tsuyoshi Ito and Stacey Jeffery",title:"Approximate span programs",links:{"arXiv:1507.00432":"http://arxiv.org/abs/1507.00432"},extra:""},281:{ref_id:281,authors:"Arnau Riera, Christian Gogolin, and Jens Eisert",title:"Thermalization in nature and on a quantum computer",links:{"arXiv:1102.2389":"http://arxiv.org/abs/1102.2389"},extra:"Physical Review Letters, 108:080402 (2012)"},282:{ref_id:282,authors:"Michael J. Kastoryano and Fernando G. S. L. Brandao",title:"Quantum Gibbs Samplers: the commuting case",links:{"arXiv:1409.3435":"http://arxiv.org/abs/1409.3435"},extra:"Communications in Mathematical Physics, 344(3):915-957 (2016)"},283:{ref_id:283,authors:"Andrew M. Childs, David Jao, and Vladimir Soukharev",title:"Constructing elliptic curve isogenies in quantum subexponential time",links:{"arXiv:1012.4019":"http://arxiv.org/abs/1012.4019"},extra:"Journal of Mathematical Cryptology, 8(1):1-29 (2014)"},284:{ref_id:284,authors:"Markus Grassl, Brandon Langenberg, Martin Roetteler, and Rainer Steinwandt",title:"Applying Grover's algorithm to AES: quantum resource estimates",links:{"arXiv:1512.04965":"http://arxiv.org/abs/1512.04965"},extra:""},285:{ref_id:285,authors:"M. Ami, O. Di Matteo, V. Gheorghiu, M. Mosca, A. Parent, and J. Schanck",title:"Estimating the cost of generic quantum pre-image attacks onSHA-2 and SHA-3",links:{"arXiv:1603.09383":"http://arxiv.org/abs/1603.09383"},extra:""},286:{ref_id:286,authors:"Marc Kaplan, Gaetan Leurent, Anthony Leverrier, and Maria Naya-Plasencia",title:"Quantum differential and linear cryptanalysis",links:{"arXiv:1510.05836":"http://arxiv.org/abs/1510.05836"},extra:""},287:{ref_id:287,authors:"Scott Fluhrer",title:"Quantum Cryptanalysis of NTRU",links:{"Cryptology ePrint Archive: Report 2015/676":"https://eprint.iacr.org/2015/676"},extra:""},288:{ref_id:288,authors:"Marc Kaplan",title:"Quantum attacks against iterated block ciphers",links:{"arXiv:1410.1434":"http://arxiv.org/abs/1410.1434"},extra:""},289:{ref_id:289,authors:"H. Kuwakado and M. Morii",title:"Quantum distinguisher between the 3-round Feistel cipher and the random permutation",links:{},extra:"In Proceedings of IEEE International Symposium on Information Theory (ISIT), pg. 2682-2685, 2010."},290:{ref_id:290,authors:"H. Kuwakado and M. Morii",title:"Security on the quantum-type Even-Mansour cipher",links:{},extra:"In Proceedings of International Symposium on Information Theory and its Applications (ISITA), pg. 312-316, 2012."},291:{ref_id:291,authors:"Martin Roetteler and Rainer Steinwandt",title:"A note on quantum related-key attacks",links:{"arXiv:1306.2301":"http://arxiv.org/abs/1306.2301"},extra:""},292:{ref_id:292,authors:"Thomas Santoli and Christian Schaffner",title:"Using Simon's algorithm to attack symmetric-key cryptographic primitives",links:{"arXiv:1603.07856":"http://arxiv.org/abs/1603.07856"},extra:""},293:{ref_id:293,authors:"Rolando D. Somma",title:"A Trotter-Suzuki approximation for Lie groups with applications to Hamiltonian simulation",links:{"arXiv:1512.03416":"http://arxiv.org/abs/1512.03416"},extra:""},294:{ref_id:294,authors:"Guang Hao Low and Isaac Chuang",title:"Optimal Hamiltonian simulation by quantum signal processing",links:{"arXiv:1606.02685":"http://arxiv.org/abs/1606.02685"},extra:""},295:{ref_id:295,authors:"Dominic W. Berry and Leonardo Novo",title:"Corrected quantum walk for optimal Hamiltonian simulation",links:{"arXiv:1606.03443":"http://arxiv.org/abs/1606.03443"},extra:""},296:{ref_id:296,authors:"Ashley Montanaro and Sam Pallister",title:"Quantum algorithms and the finite element method",links:{"arXiv:1512.05903":"http://arxiv.org/abs/1512.05903"},extra:""},297:{ref_id:297,authors:"Lin-Chun Wan, Chao-Hua Yu, Shi-Jie Pan, Fei Gao, and Qiao-Yan Wen",title:"Quantum algorithm for the Toeplitz systems",links:{"arXiv:1608.02184":"http://arxiv.org/abs/1608.02184"},extra:""},298:{ref_id:298,authors:"Salvatore Mandra, Gian Giacomo Guerreschi, and Alan Aspuru-Guzik",title:"Faster than classical quantum algorithm for dense formulas of exact satisfiability and occupation problems",links:{"arXiv:1512.00859":"http://arxiv.org/abs/1512.00859"},extra:""},299:{ref_id:299,authors:"J. Adcock, E. Allen, M. Day, S. Frick, J. Hinchliff, M. Johnson, S. Morley-Short, S. Pallister, A. Price, and S. Stanisic",title:"Advances in quantum machine learning",links:{"arXiv:1512.02900":"http://arxiv.org/abs/1512.02900"},extra:""},300:{ref_id:300,authors:"Cedric Yen-Yu Lin and Yechao Zhu",title:"Performance of QAOA on typical instances of constraint satisfaction problems with bounded degree",links:{"arXiv:1601.01744":"http://arxiv.org/abs/1601.01744"},extra:""},301:{ref_id:301,authors:"Dave Wecker, Matthew B. Hastings, and Matthias Troyer",title:"Training a quantum optimizer",links:{"arXiv:1605.05370":"http://arxiv.org/abs/1605.05370"},extra:""},302:{ref_id:302,authors:"Edward Farhi and Aram W. Harrow",title:"Quantum supremacy through the quantum approximate optimization algorithm",links:{"arXiv:1602.07674":"http://arxiv.org/abs/1602.07674"},extra:""},303:{ref_id:303,authors:"Thomas G. Wong",title:"Quantum walk search on Johnson graphs",links:{"arXiv:1601.04212":"http://arxiv.org/abs/1601.04212"},extra:""},304:{ref_id:304,authors:"Jonatan Janmark, David A. Meyer, and Thomas G. Wong",title:"Global symmetry is unnecessary for fast quantum search",links:{"arXiv:1403.2228":"http://arxiv.org/abs/1403.2228"},extra:"Physical Review Letters 112:210502, 2014."},305:{ref_id:305,authors:"David A. Meyer and Thomas G. Wong",title:"Connectivity is a poor indicator of fast quantum search",links:{"arXiv:1409.5876":"http://arxiv.org/abs/1409.5876"},extra:"Physical Review Letters 114:110503, 2014."},306:{ref_id:306,authors:"Thomas G. Wong",title:"Spatial search by continuous-time quantum walk with multiple marked vertices",links:{"arXiv:1501.07071":"http://arxiv.org/abs/1409.5876"},extra:"Quantum Information Processing 15(4):1411-1443, 2016."},307:{ref_id:307,authors:"Anirban Naryan Chowdhury and Rolando D. Somma",title:"Quantum algorithms for Gibbs sampling and hitting-time estimation",links:{"arXiv:1603.02940":"http://arxiv.org/abs/1603.02940"},extra:""},308:{ref_id:308,authors:"Edward Farhi, Shelby Kimmel, and Kristan Temme",title:"A quantum version of Schoning's algorithm applied to quantum 2-SAT",links:{"arXiv:1603.06985":"http://arxiv.org/abs/1603.06985"},extra:""},309:{ref_id:309,authors:"Iordanis Kerenidis and Anupam Prakash",title:"Quantum recommendation systems",links:{"arXiv:1603.08675":"http://arxiv.org/abs/1603.08675"},extra:"Innovations in Theoretical Computer Science (ITCS 2017), LIPIcs, vol. 67, pg. 1868-8969."},310:{ref_id:310,authors:"Markus Reiher, Nathan Wiebe, Krysta M. Svore, Dave Wecker, and Matthias Troyer",title:"Elucidating reaction mechanisms on quantum computers",links:{"arXiv:1605.03590":"http://arxiv.org/abs/1605.03590"},extra:""},311:{ref_id:311,authors:"Aram W. Harrow and Ashley Montanaro",title:"Sequential measurements, disturbance, and property testing",links:{"arXiv:1607.03236":"http://arxiv.org/abs/1607.03236"},extra:""},312:{ref_id:312,authors:"Martin Roetteler",title:"Quantum algorithms for abelian difference sets and applications to dihedral hidden subgroups",links:{"arXiv:1608.02005":"http://arxiv.org/abs/1608.02005"},extra:""},313:{ref_id:313,authors:"Fernando G.S.L. Brandao and Krysta Svore",title:"Quantum speed-ups for semidefinite programming",links:{"arXiv:1609.05537":"http://arxiv.org/abs/1609.05537"},extra:""},314:{ref_id:314,authors:"Z-C Yang, A. Rahmani, A. Shabani, H. Neven, and C. Chamon",title:"Optimizing variational quantum algorithms using Pontryagins's minimum principle",links:{"arXiv:1607.06473":"http://arxiv.org/abs/1607.06473"},extra:""},315:{ref_id:315,authors:"Gilles Brassard, Peter Høyer, and Alain Tapp",title:"Quantum cryptanalysis of hash and claw-free functions",links:{},extra:"In Proceedings of the 3rd Latin American symposium on Theoretical Informatics (LATIN'98), pg. 163-169, 1998."},316:{ref_id:316,authors:"Daniel J. Bernstein",title:"Cost analysis of hash collisions: Will quantum computers make SHARCS obsolete?",links:{here:"https://cr.yp.to/hash/collisioncost-20090517.pdf"},extra:"In Proceedings of the 4th Workshop on Special-purpose Hardware for Attacking Cryptographic Systems (SHARCS'09), pg. 105-116, 2009."},317:{ref_id:317,authors:"Chris Cade, Ashley Montanaro, and Aleksandrs Belovs",title:"Time and space efficient quantum algorithms for detecting cycles and testing bipartiteness",links:{"arXiv:1610.00581":"http://arxiv.org/abs/1610.00581"},extra:""},318:{ref_id:318,authors:"A. Belovs and B. Reichardt",title:"Span programs and quantum algorithms for st-connectivity and claw detection",links:{"arXiv:1203.2603":"http://arxiv.org/abs/1203.2603"},extra:"In European Symposium on Algorithms (ESA'12), pg. 193-204, 2012."},319:{ref_id:319,authors:"Titouan Carette, Mathieu Laurière, and Frédéric Magniez",title:"Extended learning graphs for triangle finding",links:{"arXiv:1609.07786":"http://arxiv.org/abs/1609.07786"},extra:""},320:{ref_id:320,authors:"F. Le Gall and N. Shogo",title:"Quantum algorithm for triangle finding in sparse graphs",links:{},extra:"In Proceedings of the 26th International Symposium on Algorithms and Computation (ISAAC'15), pg. 590-600, 2015."},321:{ref_id:321,authors:"Or Sattath and Itai Arad",title:"A constructive quantum Lovász local lemma for commuting projectors",links:{"arXiv:1310.7766":"http://arxiv.org/abs/1310.7766"},extra:"Quantum Information and Computation, 15(11/12)987-996pg, 2015."},322:{ref_id:322,authors:"Martin Schwarz, Toby S. Cubitt, and Frank Verstraete",title:"An information-theoretic proof of the constructive commutative quantum Lovász local lemma",links:{"arXiv:1311.6474":"http://arxiv.org/abs/1311.6474"},extra:""},323:{ref_id:323,authors:"C. Shoen, E. Solano, F. Verstraete, J. I. Cirac, and M. M. Wolf",title:"Sequential generation of entangled multi-qubit states",links:{"arXiv:quant-ph/0501096":"http://arxiv.org/abs/quant-ph/0501096"},extra:"Physical Review Letters, 95:110503, 2005."},324:{ref_id:324,authors:"C. Shoen, K. Hammerer, M. M. Wolf, J. I. Cirac, and E. Solano",title:"Sequential generation of matrix-product states in cavity QED",links:{"arXiv:quant-ph/0612101":"http://arxiv.org/abs/quant-ph/0612101"},extra:"Physical Review A, 75:032311, 2007."},325:{ref_id:325,authors:"Yimin Ge, András Molnár, and J. Ignacio Cirac",title:"Rapid adiabatic preparation of injective PEPS and Gibbs states",links:{"arXiv:1508.00570":"http://arxiv.org/abs/1508.00570"},extra:"Physical Review Letters, 116:080503, 2016."},326:{ref_id:326,authors:"Martin Schwarz, Kristan Temme, and Frank Verstraete",title:"Preparing projected entangled pair states on a quantum computer",links:{"arXiv:1104.1410":"http://arxiv.org/abs/1104.1410"},extra:"Physical Review Letters, 108:110502, 2012."},327:{ref_id:327,authors:"Martin Schwarz, Toby S. Cubitt, Kristan Temme, Frank Verstraete, and David Perez-Garcia",title:"Preparing topological PEPS on a quantum computer",links:{"arXiv:1211.4050":"http://arxiv.org/abs/1211.4050"},extra:"Physical Review A, 88:032321, 2013."},328:{ref_id:328,authors:"M. Schwarz, O. Buerschaper, and J. Eisert",title:"Approximating local observables on projected entangled pair states",links:{"arXiv:1606.06301":"http://arxiv.org/abs/1606.06301"},extra:""},329:{ref_id:329,authors:"Jean-François Biasse and Fang Song",title:"Efficient quantum algorithms for computing class groups and solving the principal ideal problem in arbitrary degree number fields",links:{},extra:"Proceedings of the 27th Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA '16), pg. 893-902, 2016."},330:{ref_id:330,authors:"Peter Høyer and Mojtaba Komeili",title:"Efficient quantum walk on the grid with multiple marked elements",links:{"arXiv:1612.08958":"https://arxiv.org/abs/1612.08958"},extra:"Proceedings of the 34th Symposium on Theoretical Aspects of Computer Science (STACS 2017), 42, 2016."},331:{ref_id:331,authors:"Peter Wittek",title:"Quantum Machine Learning: what quantum computing means to data mining",links:{},extra:"Academic Press, 2014."},332:{ref_id:332,authors:"Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione",title:"An introduction to quantum machine learning",links:{"arXiv:1409.3097":"https://arxiv.org/abs/1409.3097"},extra:"Contemporary Physics, 56(2):172, 2014."},333:{ref_id:333,authors:"J. Biamonte, P. Wittek, N. Pancotti, P. Rebentrost, N. Wiebe, and S. Lloyd",title:"Quantum machine learning",links:{"arXiv:1611.09347":"https://arxiv.org/abs/1611.09347"},extra:""},334:{ref_id:334,authors:"Esma Aïmeur, Gilles Brassard, and Sébastien Gambs",title:"Machine learning in a quantum world",links:{},extra:"In Advances in Artificial Intelligence: 19th Conference of the Canadian Society for Computational Studies of Intelligence pg. 431-442, Springer, 2006."},335:{ref_id:335,authors:"Vedran Dunjko, Jacob Taylor, and Hans Briegel",title:"Quantum-enhanced machine learning",links:{},extra:"Phys. Rev. Lett 117:130501, 2016."},336:{ref_id:336,authors:"Nathan Wiebe, Ashish Kapoor, and Krysta Svore",title:"Quantum algorithms for nearest-neighbor methods for supervised and unsupervised learning",links:{"arXiv:1401.2142":"https://arxiv.org/abs/1401.2142"},extra:"Quantum Information and Computation 15(3/4): 0318-0358, 2015."},337:{ref_id:337,authors:"Seokwon Yoo, Jeongho Bang, Changhyoup Lee, and Junhyoug Lee",title:"A quantum speedup in machine learning: finding a N-bit Boolean function for a classification",links:{"arXiv:1303.6055":"https://arxiv.org/abs/1303.6055"},extra:"New Journal of Physics 6(10):103014, 2014."},338:{ref_id:338,authors:"Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione",title:"Prediction by linear regression on a quantum computer",links:{"arXiv:1601.07823":"https://arxiv.org/abs/1601.07823"},extra:"Physical Review A 94:022342, 2016."},339:{ref_id:339,authors:"Zhikuan Zhao, Jack K. Fitzsimons, and Joseph F. Fitzsimons",title:"Quantum assisted Gaussian process regression",links:{"arXiv:1512.03929":"https://arxiv.org/abs/1512.03929"},extra:""},340:{ref_id:340,authors:"Esma Aïmeur, Gilles Brassard, and Sébastien Gambs",title:"Quantum speed-up for unsupervised learning",links:{},extra:"Machine Learning, 90(2):261-287, 2013."},341:{ref_id:341,authors:"Nathan Wiebe, Ashish Kapoor, and Krysta Svore",title:"Quantum perceptron models",links:{"arXiv:1602.04799":"https://arxiv.org/abs/1602.04799"},extra:"Advances in Neural Information Processing Systems 29 (NIPS 2016), pg. 3999–4007, 2016."},342:{ref_id:342,authors:"G. Paparo, V. Dunjko, A. Makmal, M. Martin-Delgado, and H. Briegel",title:"Quantum speedup for active learning agents",links:{"arXiv:1401.4997":"https://arxiv.org/abs/1401.4997"},extra:"Physical Review X 4(3):031002, 2014."},343:{ref_id:343,authors:"Daoyi Dong, Chunlin Chen, Hanxiong Li, and Tzyh-Jong Tarn",title:"Quantum reinforcement learning",links:{},extra:"IEEE Transactions on Systems, Man, and Cybernetics- Part B (Cybernetics) 38(5):1207, 2008."},344:{ref_id:344,authors:"Daniel Crawford, Anna Levit, Navid Ghadermarzy, Jaspreet S. Oberoi, and Pooya Ronagh",title:"Reinforcement learning using quantum Boltzmann machines",links:{"arXiv:1612.05695":"https://arxiv.org/abs/1612.05695"},extra:""},345:{ref_id:345,authors:"Steven H. Adachi and Maxwell P. Henderson",title:"Application of Quantum Annealing to Training of Deep Neural Networks",links:{"arXiv:1510.06356":"https://arxiv.org/abs/1510.06356"},extra:""},346:{ref_id:346,authors:"M. Benedetti, J. Realpe-Gómez, R. Biswas, and A. Perdomo-Ortiz",title:"Quantum-assisted learning of graphical models with arbitrary pairwise connectivity",links:{"arXiv:1609.02542":"https://arxiv.org/abs/1609.02542"},extra:""},347:{ref_id:347,authors:"M. H. Amin, E. Andriyash, J. Rolfe, B. Kulchytskyy, and R. Melko",title:"Quantum Boltzmann machine",links:{"arXiv:1601.02036":"https://arxiv.org/abs/1601.02036"},extra:""},348:{ref_id:348,authors:"Peter Wittek and Christian Gogolin",title:"Quantum enhanced inference in Markov logic networks",links:{"arXiv:1611.08104":"https://arxiv.org/abs/1611.08104"},extra:"Scientific Reports 7:45672, 2017."},349:{ref_id:349,authors:"N. H. Bshouty and J. C. Jackson",title:"Learning DNF over the uniform distribution using a quantum example oracle",links:{},extra:"SIAM Journal on Computing 28(3):1136-1153, 1999."},350:{ref_id:350,authors:"Srinivasan Arunachalam and Ronald de Wolf",title:"A survey of quantum learning theory",links:{"arXiv:1701.06806":"https://arxiv.org/abs/1701.06806"},extra:""},351:{ref_id:351,authors:"Rocco A. Servedio and Steven J. Gortler",title:"Equivalences and separations between quantum and classical learnability",links:{},extra:"SIAM Journal on Computing, 33(5):1067-1092, 2017."},352:{ref_id:352,authors:"Srinivasan Arunachalam and Ronald de Wolf",title:"Optimal quantum sample complexity of learning algorithms",links:{"arXiv:1607.00932":"https://arxiv.org/abs/1607.00932"},extra:""},353:{ref_id:353,authors:"Alex Monràs, Gael Sentís, and Peter Wittek",title:"Inductive quantum learning: why you are doing it almost right",links:{"arXiv:1605.07541":"https://arxiv.org/abs/1605.07541"},extra:""},354:{ref_id:354,authors:"A. Bisio, G. Chiribella, G. M. D'Ariano, S. Facchini, and P. Perinotti",title:"Optimal quantum learning of a unitary transformation",links:{"arXiv:0903.0543":"https://arxiv.org/abs/0903.0543"},extra:"Physical Review A 81:032324, 2010."},355:{ref_id:355,authors:"M. Sasaki, A. Carlini, and R. Jozsa",title:"Quantum template matching",links:{"arXiv:quant-ph/0102020":"https://arxiv.org/abs/quant-ph/0102020"},extra:"Physical Review A 64:022317, 2001."},356:{ref_id:356,authors:"Masahide Sasaki and Alberto Carlini",title:"Quantum learning and universal quantum matching machine",links:{"arXiv:quant-ph/0202173":"https://arxiv.org/abs/quant-ph/0202173"},extra:"Physical Review A 66:022303, 2002."},357:{ref_id:357,authors:"Esma Aïmeur, Gilles Brassard, and Sébastien Gambs",title:"Quantum clustering algorithms",links:{},extra:"In Proceedings of the 24th International Conference on Machine Learning (ICML), pg. 1-8, 2007."},358:{ref_id:358,authors:"Iordanis Kerenidis and Anupam Prakash",title:"Quantum gradient descent for linear systems and least squares",links:{"arXiv:1704.04992":"https://arxiv.org/abs/1704.04992"},extra:""},359:{ref_id:359,authors:"Dan Boneh and Mark Zhandry",title:"Quantum-secure message authentication codes",links:{},extra:"In Proceedings of Eurocrypt, pg. 592-608, 2013."},360:{ref_id:360,authors:"A. M. Childs, W. van Dam, S-H Hung, and I. E. Shparlinski",title:"Optimal quantum algorithm for polynomial interpolation",links:{"arXiv:1509.09271":"https://arxiv.org/abs/1509.09271"},extra:"In Proceedings of the 43rd International Colloquium on Automata, Languages, and Programming (ICALP), pg. 16:1-16:13, 2016."},361:{ref_id:361,authors:"Volker Strassen",title:"Einige Resultate über Berechnungskomplexität",links:{},extra:"In Jahresbericht der Deutschen Mathematiker-Vereinigung, 78(1):1-8, 1976/1977."},362:{ref_id:362,authors:"Stacey Jeffery",title:"Frameworks for Quantum Algorithms",links:{},extra:""},363:{ref_id:363,authors:"Seiichiro Tani",title:"An improved claw finding algorithm using quantum walk",links:{"arXiv:0708.2584":"https://arxiv.org/abs/0708.2584"},extra:"In Mathematical Foundations of Computer Science (MFCS), pg. 536-547, 2007."},364:{ref_id:364,authors:"K. Iwama and A. Kawachi",title:"A new quantum claw-finding algorithm for three functions",links:{},extra:"New Generation Computing, 21(4):319-327, 2003."},365:{ref_id:365,authors:"D. J. Bernstein, N. Heninger, P. Lou, and L. Valenta",title:"Post-quantum RSA",links:{"2017/351":"https://eprint.iacr.org/2017/351"},extra:""},366:{ref_id:366,authors:"Francois Fillion-Gourdeau, Steve MacLean, and Raymond Laflamme",title:"Quantum algorithm for the dsolution of the Dirac equation",links:{"arXiv:1611.05484":"https://arxiv.org/abs/1611.05484"},extra:""},367:{ref_id:367,authors:"Ali Hamed Moosavian and Stephen Jordan",title:"Faster quantum algorithm to simulate Fermionic quantum field theory",links:{"arXiv:1711.04006":"https://arxiv.org/abs/1711.04006"},extra:""},368:{ref_id:368,authors:"Pedro C.S. Costa, Stephen Jordan, and Aaron Ostrander",title:"Quantum algorithm for simulating the wave equation",links:{"arXiv:1711.05394":"https://arxiv.org/abs/1711.05394"},extra:""},369:{ref_id:369,authors:"Jeffrey Yepez",title:"Highly covariant quantum lattice gas model of the Dirac equation",links:{"arXiv:1106.0739":"https://arxiv.org/abs/1711.05394"},extra:""},370:{ref_id:370,authors:"Jeffrey Yepez",title:"Quantum lattice gas model of Dirac particles in 1+1 dimensions",links:{"arXiv:1307.3595":"https://arxiv.org/abs/1307.3595"},extra:""},371:{ref_id:371,authors:"Bruce M. Boghosian and Washington Taylor",title:"Simulating quantum mechanics on a quantum computer",links:{"arXiv:quant-ph/9701019":"https://arxiv.org/abs/quant-ph/9701019"},extra:"Physica D 120:30-42, 1998."},372:{ref_id:372,authors:"Yimin Ge, Jordi Tura, and J. Ignacio Cirac",title:"Faster ground state preparation and high-precision ground energy estimation on a quantum computer",links:{"arXiv:1712.03193":"https://arxiv.org/abs/1712.03193"},extra:""},373:{ref_id:373,authors:"Renato Portugal",title:"Element distinctness revisited",links:{"arXiv:1711.11336":"https://arxiv.org/abs/1711.11336"},extra:""},374:{ref_id:374,authors:"Kanav Setia and James D. Whitfield",title:"Bravyi-Kitaev superfast simulation of fermions on a quantum computer",links:{"arXiv:1712.00446":"https://arxiv.org/abs/1712.00446"},extra:""},375:{ref_id:375,authors:"Richard Cleve and Chunhao Wang",title:"Efficient quantum algorithms for simulating Lindblad evolution",links:{"arXiv:1612.09512":"https://arxiv.org/abs/1612.09512"},extra:""},376:{ref_id:376,authors:"M. Kliesch, T. Barthel, C. Gogolin, M. Kastoryano, and J. Eisert",title:"Dissipative quantum Church-Turing theorem",links:{"arXiv:1105.3986":"https://arxiv.org/abs/1105.3986"},extra:"Physical Review Letters 107(12):120501, 2011."},377:{ref_id:377,authors:"A. M. Childs and T. Li",title:"Efficient simulation of sparse Markovian quantum dynamics",links:{"arXiv:1611.05543":"https://arxiv.org/abs/1611.05543"},extra:""},378:{ref_id:378,authors:"R. Di Candia, J. S. Pedernales, A. del Campo, E. Solano, and J. Casanova",title:"Quantum simulation of dissipative processes without reservoir engineering",links:{},extra:"Scientific Reports 5:9981, 2015."},379:{ref_id:379,authors:"R. Babbush, D. Berry, M. Kieferová, G. H. Low, Y. Sanders, A. Sherer, and N. Wiebe",title:"Improved techniques for preparing eigenstates of Fermionic Hamiltonians",links:{"arXiv:1711.10460":"https://arxiv.org/abs/1711.10460"},extra:""},380:{ref_id:380,authors:"D. Poulin, A. Kitaev, D. S. Steiger, M. B. Hasting, and M. Troyer",title:"Fast quantum algorithm for spectral properties",links:{"arXiv:1711.11025":"https://arxiv.org/abs/1711.11025"},extra:""},381:{ref_id:381,authors:"Guang Hao Low and Isaac Chuang",title:"Hamiltonian simulation bt qubitization",links:{"arXiv:1610.06546":"https://arxiv.org/abs/1610.06546"},extra:""},382:{ref_id:382,authors:"F.G.S.L. Brandão, A. Kalev, T. Li, C. Y.-Y. Lin, K. M. Svore, and X. Wu",title:"Quantum SDP Solvers: Large Speed-ups, Optimality, and Applications to Quantum Learning",links:{"arXiv:1710.02581":"https://arxiv.org/abs/1710.02581"},extra:"Proceedings of ICALP 2019"},383:{ref_id:383,authors:"M. Ekerå and J. Håstad",title:"Quantum Algorithms for Computing Short Discrete Logarithms and Factoring RSA Integers",links:{"Proceedings of PQCrypto 2017":"https://link.springer.com/chapter/10.1007/978-3-319-59879-6_20"},extra:""},384:{ref_id:384,authors:"M. Ekerå",title:"On post-processing in the quantum algorithm for computing short discrete logarithms",links:{"IACR ePrint Archive Report 2017/1122":"https://eprint.iacr.org/2017/1122"},extra:""},385:{ref_id:385,authors:"D. J. Bernstein, J.-F. Biasse, and M. Mosca",title:"A low-resource quantum factoring algorithm",links:{"Proceedings of PQCrypto 2017":"https://link.springer.com/chapter/10.1007/978-3-319-59879-6_19"},extra:""},386:{ref_id:386,authors:"Jianxin Chen, Andrew M. Childs, and Shih-Han Hung",title:"Quantum algorithm for multivariate polynomial interpolation",links:{"arXiv:1701.03990":"http://arxiv.org/abs/1701.03990"},extra:"Proceedings of the Royal Society A, 474:20170480, 2017."},387:{ref_id:387,authors:"Lisa Hales and Sean Hallgren",title:"An improved quantum Fourier transform algorithm and applications.",links:{},extra:"In Proceedings of FOCS 2000, pg. 515-525."},388:{ref_id:388,authors:"Igor Shparlinski and Arne Winterhof",title:"Quantum period reconstruction of approximate sequences",links:{},extra:"Information Processing Letters, 103:211-215, 2007."},389:{ref_id:389,authors:"Alexander Russell and Igor E. Shparlinski",title:"Classical and quantum function reconstruction via character evaluation",links:{},extra:"Journal of Complexity, 20:404-422, 2004."},390:{ref_id:390,authors:"Sean Hallgren, Alexander Russell, and Igor Shparlinski",title:"Quantum noisy rational function reconstruction",links:{},extra:"Proceedings of COCOON 2005, pg. 420-429."},391:{ref_id:391,authors:"G. Ivanyos, M. Karpinski, M. Santha, N. Saxena, and I. Shparlinski",title:"Polynomial interpolation and identity testing from high powers over finite fields",links:{},extra:"Algorithmica, 80:560-575, 2017."},392:{ref_id:392,authors:"Qi Cheng",title:"Primality Proving via One Round in ECPP and One Iteration in AKS",links:{},extra:"Journal of Cryptology, Volume 20, Issue 3, pg. 375-387, July 2007."},393:{ref_id:393,authors:"Daniel J. Bernstein",title:"Proving primality in essentially quartic random time",links:{},extra:"Mathematics of Computation, Vol. 76, pg. 389-403, 2007."},394:{ref_id:394,authors:"F. Morain",title:"Implementing the asymptotically fast version of the elliptic curve primality proving algorithm",links:{},extra:"Mathematics of Computation, Vol. 76, pg. 493-505, 2007."},395:{ref_id:395,authors:"Alvaro Donis-Vela and Juan Carlos Garcia-Escartin",title:"A quantum primality test with order finding",links:{"arXiv:1711.02616":"https://arxiv.org/abs/1711.02616"},extra:""},396:{ref_id:396,authors:"H. F. Chau and H.-K. Lo",title:"Primality test via quantum factorization",links:{"arXiv:quant-ph/9508005":"https://arxiv.org/abs/quant-ph/9508005"},extra:"International Journal of Modern Physics C, Vol. 8, No. 2, pg. 131-138, 1997."},397:{ref_id:397,authors:"David Harvey and Joris Van Der Hoeven",title:"Integer multiplication in time \\( O(n \\log \\ n) \\)",links:{"hal-02070778":"https://hal.archives-ouvertes.fr/hal-02070778"},extra:""},398:{ref_id:398,authors:"Charles Greathouse",title:"personal communication",links:{},extra:", 2019."},399:{ref_id:399,authors:"Ewin Tang",title:"A quantum-inspired classical algorithm for recommendation systems",links:{"arXiv:1807.04271":"https://arxiv.org/abs/1807.04271"},extra:"In Proceedings of STOC 2019, pg. 217-228."},400:{ref_id:400,authors:"Ewin Tang",title:"Quantum-inspired classical algorithms for principal component analysis and supervised clustering",links:{"arXiv:1811.00414":"https://arxiv.org/abs/1811.00414"},extra:""},401:{ref_id:401,authors:"L. Wossnig, Z. Zhao, and A. Prakash",title:"A quantum linear system algorithm for dense matrices",links:{"arXiv:1704.06174":"https://arxiv.org/abs/1704.06174"},extra:"Physical Review Letters vol. 120, no. 5, pg. 050502, 2018."},402:{ref_id:402,authors:"Zhikuan Zhao, Alejandro Pozas-Kerstjens, Patrick Rebentrost, and Peter Wittek",title:"Bayesian Deep Learning on a Quantum Computer",links:{"arXiv:1806.11463":"https://arxiv.org/abs/1806.11463"},extra:"Quantum Machine Intelligence vol. 1, pg. 41-51, 2019."},403:{ref_id:403,authors:"Anja Becker, Jean-Sebastien Coron, and Antoine Joux",title:"Improved generic algorithms for hard knapsacks",links:{"IACR eprint 2011/474":"http://eprint.iacr.org/2011/474"},extra:"Proceedings of Eurocrypt 2011 pg. 364-385"},404:{ref_id:404,authors:"Kun Zhang and Vladimir E. Korepin",title:"Low depth quantum search algorithm",links:{"arXiv:1908.04171":"https://arxiv.org/abs/1908.04171"},extra:""},405:{ref_id:405,authors:"Andriyan Bayo Suksmono and Yuichiro Minato",title:"Finding Hadamard matrices by a quantum annealing machine",links:{"arXiv:1902.07890":"https://arxiv.org/abs/1902.07890"},extra:"Scientific Reports 9:14380, 2019."},406:{ref_id:406,authors:"Gábor Ivanyos, Anupam Prakash, and Miklos Santha",title:"On learning linear functions from subset and its applications in quantum computing",links:{"":"https://drops.dagstuhl.de/opus/portals/lipics/index.php?semnr=16083","arXiv:1806.09660":"https://arxiv.org/abs/1806.09660"},extra:"26th Annual European Symposium on Algorithms (ESA 2018), LIPIcs volume 112, 2018."},407:{ref_id:407,authors:"Gábor Ivanyos",title:"On solving systems of random linear disequations",links:{"arXiv:0704.2988":"https://arxiv.org/abs/0704.2988"},extra:"Quantum Information and Computation, 8(6):579-594, 2008."},408:{ref_id:408,authors:"A. Ambainis, K. Balodis, J. Iraids, M. Kokainis, K. Prusis, and J. Vihrovs",title:"Quantum speedups for exponential-time dynamic programming algorithms",links:{"arXiv:1807.05209":"https://arxiv.org/abs/1807.05209"},extra:"Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 19), pg. 1783-1793, 2019."},409:{ref_id:409,authors:"Dominic W. Berry, Andrew M. Childs, Aaron Ostrander, and Guoming Wang",title:"Quantum algorithm for linear differential equations with exponentially improved dependence on precision",links:{"arXiv:1701.03684":"https://arxiv.org/abs/1701.03684"},extra:"Communications in Mathematical Physics, 356(3):1057-1081, 2017."},410:{ref_id:410,authors:"Sarah K. Leyton and Tobias J. Osborne",title:"Quantum algorithm to solve nonlinear differential equations",links:{"arXiv:0812.4423":"https://arxiv.org/abs/0812.4423"},extra:""},411:{ref_id:411,authors:"Y. Cao, A. Papageorgiou, I. Petras, J. Traub, and S. Kais",title:"Quantum algorithm and circuit design solving the Poisson equation",links:{"arXiv:1207.2485":"https://arxiv.org/abs/1207.2485"},extra:"New Journal of Physics 15(1):013021, 2013."},412:{ref_id:412,authors:"S. Wang, Z. Wang, W. Li, L. Fan, Z. Wei, and Y. Gu",title:"Quantum fast Poisson solver: the algorithm and modular circuit design",links:{"arXiv:1910.09756":"https://arxiv.org/abs/1910.09756"},extra:""},413:{ref_id:413,authors:"A. Scherer, B. Valiron, S.-C. Mau, S. Alexander, E. van den Berg, and T. Chapuran",title:"Concrete resource analysis of the quantum linear system algorithm used to compute the electromagnetic scattering crossection of a 2D target",links:{"arXiv:1505.06552":"https://arxiv.org/abs/1505.06552"},extra:"Quantum Information Processing 16:60, 2017."},414:{ref_id:414,authors:"Juan Miguel Arrazola, Timjan Kalajdziavski, Christian Weedbrook, and Seth Lloyd",title:"Quantum algorithm for nonhomogeneous linear partial differential equations",links:{"arXiv:1809.02622":"https://arxiv.org/abs/1809.02622"},extra:"Physical Review A 100:032306, 2019."},415:{ref_id:415,authors:"Andrew Childs and Jin-Peng Liu",title:"Quantum spectral methods for differential equations",links:{"arXiv:1901.00961":"https://arxiv.org/abs/1901.00961"},extra:""},416:{ref_id:416,authors:"Alexander Engle, Graeme Smith, and Scott E. Parker",title:"A quantum algorithm for the Vlasov equation",links:{"arXiv:1907.09418":"https://arxiv.org/abs/1907.09418"},extra:""},417:{ref_id:417,authors:"Shouvanik Chakrabarti, Andrew M. Childs, Tongyang Li, and Xiaodi Wu",title:"Quantum algorithms and lower bounds for convex optimization",links:{"arXiv:1809.01731":"https://arxiv.org/abs/1809.01731"},extra:""},418:{ref_id:418,authors:"S. Chakrabarti, A. M. Childs, S.-H. Hung, T. Li, C. Wang, and X. Wu",title:"Quantum algorithm for estimating volumes of convex bodies",links:{"arXiv:1908.03903":"https://arxiv.org/abs/1908.03903"},extra:""},419:{ref_id:419,authors:"Joran van Apeldoorn, András Gilyén, Sander Gribling, and Ronald de Wolf",title:"Convex optimization using quantum oracles",links:{"arXiv:1809.00643":"https://arxiv.org/abs/1809.00643"},extra:""},420:{ref_id:420,authors:"Nai-Hui Chia, Andráas Gilyén, Tongyang Li, Han-Hsuan Lin, Ewin Tang, and Chunhao Wang",title:"Sampling-based sublinear low-rank matrix arithmetic framework for dequantizing quantum machine learning",links:{"arXiv:1910.06151":"https://arxiv.org/abs/1910.06151"},extra:"Proceedings of STOC 2020, pg. 387-400"},421:{ref_id:421,authors:"Andris Ambainis and Martins Kokainis",title:"Quantum algorithm for tree size estimation, with applications to backtracking and 2-player games",links:{"arXiv:1704.06774":"https://arxiv.org/abs/1704.06774"},extra:"Proceedings of STOC 2017, pg. 989-1002"},422:{ref_id:422,authors:"Fernando G.S L. Brandão, Richard Kueng, Daniel Stilck França",title:"Faster quantum and classical SDP approximations for quadratic binary optimization",links:{"arXiv:1909.04613":"https://arxiv.org/abs/1909.04613"},extra:""},423:{ref_id:423,authors:"Matthew B. Hastings",title:"Classical and Quantum Algorithms for Tensor Principal Component Analysis",links:{"arXiv:1907.12724":"https://arxiv.org/abs/1907.12724"},extra:"Quantum 4:237, 2020."},424:{ref_id:424,authors:"Joran van Apeldoorn, András Gilyén, Sander Gribling, and Ronald de Wolf",title:"Quantum SDP-Solvers: Better upper and lower bounds",links:{"arXiv:1705.01843":"https://arxiv.org/abs/1705.01843"},extra:"Quantum 4:230, 2020."},425:{ref_id:425,authors:"J-P Liu, H. Kolden, H. Krovi, N. Loureiro, K. Trivisa, and A. M. Childs",title:"Efficient quantum algorithm for dissipative nonlinear differential equations",links:{"arXiv:2011.03185":"https://arxiv.org/abs/2011.03185"},extra:""},426:{ref_id:426,authors:"S. Lloyd, G. De Palma, C. Gokler, B. Kiani, Z-W Liu, M. Marvian, F. Tennie, and T. Palmer",title:"Quantum algorithm for nonlinear differential equations",links:{"arXiv:2011.06571":"https://arxiv.org/abs/2011.06571"},extra:""},427:{ref_id:427,authors:"Yunchao Liu, Srinivasan Arunachalam, and Kristan Temme",title:"A rigorous and robust quantum speed-up in supervised machine learning",links:{"arXiv:2010.02174":"https://arxiv.org/abs/2010.02174"},extra:""},428:{ref_id:428,authors:"Matthew B. Hastings",title:"The power of adiabatic quantum computation with no sign problem",links:{"arXiv:2005.03791":"https://arxiv.org/abs/2005.03791"},extra:""},429:{ref_id:429,authors:"Nathan Ramusat and Vincenzo Savona",title:"A quantum algorithm for the direct estimation of the steady state of open quantum systems",links:{"arXiv:2008.07133":"https://arxiv.org/abs/2008.07133"},extra:""}}});let ge=de("all_algs"),be=de(Object.keys(ce.default)[0]),ve=de(!1),ye=de(!1),xe=de(!1),we=de({}),qe=de({}),ke=de(!1),_e=de(0);const Ae=768;function Se(a){let t,i,r,o,s=Me(a[0].name,a[1])+"";return{c(){t=w("div"),i=w("p"),A(t,"class","svelte-1sneyte"),C(t,"hovered",a[2])},m(e,n){v(e,t,n),f(t,i),i.innerHTML=s,r||(o=[_(t,"mouseenter",a[6]),_(t,"mouseleave",a[7]),_(t,"click",a[8])],r=!0)},p(e,[a]){3&a&&s!==(s=Me(e[0].name,e[1])+"")&&(i.innerHTML=s),4&a&&C(t,"hovered",e[2])},i:e,o:e,d(e){e&&y(t),r=!1,n(o)}}}function Me(e,a){const t=e.toUpperCase(),i=a.toUpperCase(),n=t.indexOf(i);if(!i||-1===n)return e;const r=i.length;return e.substr(0,n)+""+e.substr(n,r)+""+e.substr(n+r)}function Ce(e,a,t){let i,n,r;s(e,ge,(e=>t(3,i=e))),s(e,we,(e=>t(4,n=e))),s(e,ke,(e=>t(5,r=e)));let{result_data:o}=a,{matching_text:l}=a,m=!1;return e.$$set=e=>{"result_data"in e&&t(0,o=e.result_data),"matching_text"in e&&t(1,l=e.matching_text)},[o,l,m,i,n,r,function(){t(2,m=!0)},function(){t(2,m=!1)},()=>{h(ge,i="algorithm",i),h(we,n=o,n),h(ke,r=!1,r)}]}class Pe extends he{constructor(e){super(),le(this,e,Ce,Se,o,{result_data:0,matching_text:1})}}function Te(e,a,t){const i=e.slice();return i[5]=a[t],i}function Ie(e){let a,t,i=e[2](e[0]),n=[];for(let a=0;aae(n[e],1,1,(()=>{n[e]=null}));return{c(){a=w("div");for(let e=0;e{h=null})),U())},i(e){o||(ee(h),o=!0)},o(e){ae(h),o=!1},d(e){e&&y(a),h&&h.d(),s=!1,n(l)}}}function Ge(e,a,t){let i;s(e,ke,(e=>t(1,i=e)));let n="";return[n,i,function(e){if(""===e)return[];let a=[],t=Object.values(ce.default);for(let i=0;i-1&&a.push(n[t])}return a},function(){n=this.value,t(0,n)},()=>{h(ke,i=!0,i),t(0,n="")}]}class Je extends he{constructor(e){super(),le(this,e,Ge,Xe,o,{})}}function Be(e){const a=e-1;return a*a*a+1}function ze(e,{delay:a=0,duration:t=400,easing:i=Be}={}){const n=getComputedStyle(e),r=+n.opacity,o=parseFloat(n.height),s=parseFloat(n.paddingTop),l=parseFloat(n.paddingBottom),h=parseFloat(n.marginTop),m=parseFloat(n.marginBottom),u=parseFloat(n.borderTopWidth),p=parseFloat(n.borderBottomWidth);return{delay:a,duration:t,easing:i,css:e=>`overflow: hidden;opacity: ${Math.min(20*e,1)*r};height: ${e*o}px;padding-top: ${e*s}px;padding-bottom: ${e*l}px;margin-top: ${e*h}px;margin-bottom: ${e*m}px;border-top-width: ${e*u}px;border-bottom-width: ${e*p}px;`}}function Oe(e,a,t){const i=e.slice();return i[1]=a[t][0],i[2]=a[t][1],i}function Re(e){let a,t,i,n,r=e[1]+"";return{c(){a=w("p"),t=w("a"),i=q(r),A(t,"href",n=e[2]),A(t,"target","_blank"),A(t,"class","svelte-y6159r"),A(a,"class","svelte-y6159r")},m(e,n){v(e,a,n),f(a,t),f(t,i)},p(e,a){1&a&&r!==(r=e[1]+"")&&S(i,r),1&a&&n!==(n=e[2])&&A(t,"href",n)},d(e){e&&y(a)}}}function He(a){let t,i,n,r,o,s,l,h,m,u,p,d,c,g,b,_,M,C,P,T=a[0].ref_id+"",I=a[0].authors+"",L=a[0].title+"",X=a[0].extra+"",G=Object.entries(a[0].links),J=[];for(let e=0;e{"data"in e&&t(0,i=e.data)},[i]}class $e extends he{constructor(e){super(),le(this,e,Qe,He,o,{data:0})}}function De(e,a,t){const i=e.slice();return i[5]=a[t],i}function Ne(a){let t,i,n;return{c(){t=w("button"),t.textContent="Show references"},m(e,r){v(e,t,r),i||(n=_(t,"click",a[4]),i=!0)},p:e,d(e){e&&y(t),i=!1,n()}}}function Fe(e){let a,t,i,n,r,o,s=e[3](Object.values(e[0].references)),l=[];for(let a=0;aae(l[e],1,1,(()=>{l[e]=null}));return{c(){a=w("div"),t=w("p"),t.innerHTML="References:",i=k(),n=w("div");for(let e=0;e{r||(r=ie(a,ze,{},!0)),r.run(1)})),o=!0}},o(e){l=l.filter(Boolean);for(let e=0;e{F=null})),U())},i(e){z||(ee(F),D((()=>{B||(B=ie(a,ze,{},!0)),B.run(1)})),z=!0)},o(e){ae(F),B||(B=ie(a,ze,{},!1)),B.run(0),z=!1},d(e){e&&y(a),N&&N.d(),F&&F.d(),e&&B&&B.end()}}}function Ke(e,a,t){let{alg_data:i}=a,{alone:n}=a;B((()=>{n&&MathJax.typeset()}));let r=!1;return e.$$set=e=>{"alg_data"in e&&t(0,i=e.alg_data),"alone"in e&&t(1,n=e.alone)},[i,n,r,function(e){let a=[],t=[];for(let i=0;iAcknowledgments \n

I thank the following people for contributing their expertise (in\n chronological order).

\n\n '},m(e,a){v(e,t,a),n=!0},p:e,i(e){n||(D((()=>{i||(i=ie(t,ze,{},!0)),i.run(1)})),n=!0)},o(e){i||(i=ie(t,ze,{},!1)),i.run(0),n=!1},d(e){e&&y(t),e&&i&&i.end()}}}class Ze extends he{constructor(e){super(),le(this,e,null,Ve,o,{})}}function Ye(e,a,t){const i=e.slice();return i[0]=a[t][0],i[1]=a[t][1],i}function Ue(a){let t,i;return t=new $e({props:{data:a[1]}}),{c(){ne(t.$$.fragment)},m(e,a){re(t,e,a),i=!0},p:e,i(e){i||(ee(t.$$.fragment,e),i=!0)},o(e){ae(t.$$.fragment,e),i=!1},d(e){oe(t,e)}}}function ea(e){let a,t,i,n,r,o=Object.entries(fe.default),s=[];for(let a=0;aae(s[e],1,1,(()=>{s[e]=null}));return{c(){a=w("div"),t=w("h2"),t.textContent="References",i=k();for(let e=0;e{n||(n=ie(a,ze,{},!0)),n.run(1)})),r=!0}},o(e){s=s.filter(Boolean);for(let e=0;e{MathJax.typeset()})),[]}class ta extends he{constructor(e){super(),le(this,e,aa,ea,o,{})}}function ia(e,a,t){const i=e.slice();return i[1]=a[t][0],i[2]=a[t][1],i}function na(e){let a,t,i,n;return a=new je({props:{alg_data:e[2],alone:!1}}),{c(){ne(a.$$.fragment),t=k(),i=w("hr")},m(e,r){re(a,e,r),v(e,t,r),v(e,i,r),n=!0},p(e,t){const i={};1&t&&(i.alg_data=e[2]),a.$set(i)},i(e){n||(ee(a.$$.fragment,e),n=!0)},o(e){ae(a.$$.fragment,e),n=!1},d(e){oe(a,e),e&&y(t),e&&y(i)}}}function ra(e){let a,t,i,n,r,o,s=e[0].name+"",l=Object.entries(e[0].algs),h=[];for(let a=0;aae(h[e],1,1,(()=>{h[e]=null}));return{c(){a=w("div"),t=w("h3"),i=q(s),n=k();for(let e=0;e{r||(r=ie(a,ze,{},!0)),r.run(1)})),o=!0}},o(e){h=h.filter(Boolean);for(let e=0;e{MathJax.typeset()}));let{category_data:i}=a;return e.$$set=e=>{"category_data"in e&&t(0,i=e.category_data)},[i]}class sa extends he{constructor(e){super(),le(this,e,oa,ra,o,{category_data:0})}}function la(e,a,t){const i=e.slice();return i[0]=a[t][0],i[1]=a[t][1],i}function ha(a){let t,i;return t=new sa({props:{category_data:{name:a[0],algs:a[1]}}}),{c(){ne(t.$$.fragment)},m(e,a){re(t,e,a),i=!0},p:e,i(e){i||(ee(t.$$.fragment,e),i=!0)},o(e){ae(t.$$.fragment,e),i=!1},d(e){oe(t,e)}}}function ma(e){let a,t,i,n,r,o=Object.entries(ce.default),s=[];for(let a=0;aae(s[e],1,1,(()=>{s[e]=null}));return{c(){a=w("div"),t=w("h2"),t.textContent="All algorithms",i=k();for(let e=0;e{n||(n=ie(a,ze,{},!0)),n.run(1)})),r=!0}},o(e){s=s.filter(Boolean);for(let e=0;e{MathJax.typeset()})),[]}class pa extends he{constructor(e){super(),le(this,e,ua,ma,o,{})}}function da(a){let t,i,n;return{c(){t=w("div"),t.innerHTML='

Translations

\n

This page has been translated into:

\n '},m(e,a){v(e,t,a),n=!0},p:e,i(e){n||(D((()=>{i||(i=ie(t,ze,{},!0)),i.run(1)})),n=!0)},o(e){i||(i=ie(t,ze,{},!1)),i.run(0),n=!1},d(e){e&&y(t),e&&i&&i.end()}}}class ca extends he{constructor(e){super(),le(this,e,null,da,o,{})}}function fa(a){let t,i,n;return{c(){t=w("div"),t.innerHTML='

Other Surveys

\n

For overviews of quantum algorithms I recommend:

\n '},m(e,a){v(e,t,a),n=!0},p:e,i(e){n||(D((()=>{i||(i=ie(t,ze,{},!0)),i.run(1)})),n=!0)},o(e){i||(i=ie(t,ze,{},!1)),i.run(0),n=!1},d(e){e&&y(t),e&&i&&i.end()}}}class ga extends he{constructor(e){super(),le(this,e,null,fa,o,{})}}function ba(a){let t,i,n;return{c(){t=w("div"),t.innerHTML='

Terminology

\n

If there exists a positive constant α\";\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n if (crossorigin) {\n unsubscribe();\n }\n else if (unsubscribe && iframe.contentWindow) {\n unsubscribe();\n }\n detach(iframe);\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail, bubbles = false) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, bubbles, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor() {\n this.e = this.n = null;\n }\n c(html) {\n this.h(html);\n }\n m(html, target, anchor = null) {\n if (!this.e) {\n this.e = element(target.nodeName);\n this.t = target;\n this.c(html);\n }\n this.i(anchor);\n }\n h(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(this.t, this.n[i], anchor);\n }\n }\n p(html) {\n this.d();\n this.h(html);\n this.i(this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\nclass HtmlTagHydration extends HtmlTag {\n constructor(claimed_nodes) {\n super();\n this.e = this.n = null;\n this.l = claimed_nodes;\n }\n c(html) {\n if (this.l) {\n this.n = this.l;\n }\n else {\n super.c(html);\n }\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert_hydration(this.t, this.n[i], anchor);\n }\n }\n}\nfunction attribute_to_object(attributes) {\n const result = {};\n for (const attribute of attributes) {\n result[attribute.name] = attribute.value;\n }\n return result;\n}\nfunction get_custom_elements_slots(element) {\n const result = {};\n element.childNodes.forEach((node) => {\n result[node.slot || 'default'] = true;\n });\n return result;\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = get_root_for_style(node);\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = append_empty_stylesheet(node).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error('Function called outside component initialization');\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\nfunction getAllContexts() {\n return get_current_component().$$.context;\n}\nfunction hasContext(key) {\n return get_current_component().$$.context.has(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n // @ts-ignore\n callbacks.slice().forEach(fn => fn.call(this, event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n set_current_component(null);\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n started = true;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = (program.b - t);\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program || pending_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n if (info.blocks[i] === block) {\n info.blocks[i] = null;\n }\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n if (!info.hasCatch) {\n throw error;\n }\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\nfunction update_await_block_branch(info, ctx, dirty) {\n const child_ctx = ctx.slice();\n const { resolved } = info;\n if (info.current === info.then) {\n child_ctx[info.value] = resolved;\n }\n if (info.current === info.catch) {\n child_ctx[info.error] = resolved;\n }\n info.block.p(child_ctx, dirty);\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next);\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error('Cannot have duplicate keys in a keyed each');\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += ' ' + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += ' ' + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${value}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction escape_attribute_value(value) {\n return typeof value === 'string' ? escape(value) : value;\n}\nfunction escape_object(obj) {\n const result = {};\n for (const key in obj) {\n result[key] = escape_attribute_value(obj[key]);\n }\n return result;\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots, context) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : context || []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, { $$slots = {}, context = new Map() } = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, $$slots, context);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : '';\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor, customElement) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n if (!customElement) {\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n }\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n on_disconnect: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : options.context || []),\n // everything else\n callbacks: blank_object(),\n dirty,\n skip_bound: false,\n root: options.target || parent_component.$$.root\n };\n append_styles && append_styles($$.root);\n let ready = false;\n $$.ctx = instance\n ? instance(component, options.props || {}, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if (!$$.skip_bound && $$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n start_hydrating();\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor, options.customElement);\n end_hydrating();\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n const { on_mount } = this.$$;\n this.$$.on_disconnect = on_mount.map(run).filter(is_function);\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n disconnectedCallback() {\n run_all(this.$$.on_disconnect);\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n };\n}\n/**\n * Base class for Svelte components. Used when dev=false.\n */\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.41.0' }, detail), true));\n}\nfunction append_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append(target, node);\n}\nfunction append_hydration_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append_hydration(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction insert_hydration_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert_hydration(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev('SvelteDOMRemove', { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });\n else\n dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev('SvelteDOMSetProperty', { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev('SvelteDOMSetDataset', { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.wholeText === data)\n return;\n dispatch_dev('SvelteDOMSetData', { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\n/**\n * Base class for Svelte components with some minor dev-enhancements. Used when dev=true.\n */\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(\"'target' is a required option\");\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn('Component was already destroyed'); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\n/**\n * Base class to create strongly typed Svelte components.\n * This only exists for typing purposes and should be used in `.d.ts` files.\n *\n * ### Example:\n *\n * You have component library on npm called `component-library`, from which\n * you export a component called `MyComponent`. For Svelte+TypeScript users,\n * you want to provide typings. Therefore you create a `index.d.ts`:\n * ```ts\n * import { SvelteComponentTyped } from \"svelte\";\n * export class MyComponent extends SvelteComponentTyped<{foo: string}> {}\n * ```\n * Typing this makes it possible for IDEs like VS Code with the Svelte extension\n * to provide intellisense and to use the component like this in a Svelte file\n * with TypeScript:\n * ```svelte\n * \n * \n * ```\n *\n * #### Why not make this part of `SvelteComponent(Dev)`?\n * Because\n * ```ts\n * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {}\n * const component: typeof SvelteComponent = ASubclassOfSvelteComponent;\n * ```\n * will throw a type error, so we need to separate the more strictly typed class.\n */\nclass SvelteComponentTyped extends SvelteComponentDev {\n constructor(options) {\n super(options);\n }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error('Infinite loop detected');\n }\n };\n}\n\nexport { HtmlTag, HtmlTagHydration, SvelteComponent, SvelteComponentDev, SvelteComponentTyped, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, append_empty_stylesheet, append_hydration, append_hydration_dev, append_styles, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_html_tag, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, end_hydrating, escape, escape_attribute_value, escape_object, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getAllContexts, getContext, get_all_dirty_from_scope, get_binding_group_value, get_current_component, get_custom_elements_slots, get_root_for_style, get_slot_changes, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, insert_hydration, insert_hydration_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, src_url_equal, start_hydrating, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, trusted, update_await_block_branch, update_keyed_each, update_slot, update_slot_base, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","

\r\n

Quantum Algorithm Zoo

\r\n
\r\n\r\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';\nexport { get_store_value as get } from '../internal/index.mjs';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = new Set();\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (const subscriber of subscribers) {\n subscriber[1]();\n subscriber_queue.push(subscriber, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.add(subscriber);\n if (subscribers.size === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n subscribers.delete(subscriber);\n if (subscribers.size === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","import * as algorithms_ from './algorithms.json';\r\nimport * as references_ from './references.json'\r\nimport {writable} from \"svelte/store\";\r\n\r\n// Algorithms\r\nconst algorithms = algorithms_;\r\n\r\n// References\r\nconst references = references_;\r\n\r\n\r\n// Control display_info\r\nlet to_display = writable(\"all_algs\");\r\nlet algs_of_cat_menu = writable(Object.keys(algorithms.default)[0]); // Just to have something\r\nlet display_menu = writable(false);\r\nlet display_categories = writable(false);\r\nlet display_algorithms = writable(false);\r\n\r\n// Algorithm to display\r\nlet alg_to_display = writable({});\r\n\r\n// Category to display\r\nlet cat_to_display = writable({});\r\n\r\n// Search results\r\nlet show_search_results = writable(false);\r\n\r\n// Screen width, placed here for global access\r\nlet screen_width = writable(0);\r\nconst screen_width_breakpoint = 768;\r\n\r\nexport {\r\n algorithms,\r\n references,\r\n to_display,\r\n algs_of_cat_menu,\r\n display_menu,\r\n display_categories,\r\n display_algorithms,\r\n alg_to_display,\r\n cat_to_display,\r\n show_search_results,\r\n screen_width,\r\n screen_width_breakpoint\r\n};\r\n","\r\n\r\n\r\n
{$to_display = \"algorithm\"; $alg_to_display = result_data; $show_search_results = false;}}>\r\n

{@html boldQuery(result_data.name, matching_text)}

\r\n
\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n
\r\n {$show_search_results = true; text_search = \"\";}}>\r\n {#if $show_search_results}\r\n
\r\n {#each getResults(text_search) as res}\r\n \r\n {/each}\r\n
\r\n {/if}\r\n
\r\n
\r\n\r\n","export { identity as linear } from '../internal/index.mjs';\n\n/*\nAdapted from https://github.com/mattdesl\nDistributed under MIT License https://github.com/mattdesl/eases/blob/master/LICENSE.md\n*/\nfunction backInOut(t) {\n const s = 1.70158 * 1.525;\n if ((t *= 2) < 1)\n return 0.5 * (t * t * ((s + 1) * t - s));\n return 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2);\n}\nfunction backIn(t) {\n const s = 1.70158;\n return t * t * ((s + 1) * t - s);\n}\nfunction backOut(t) {\n const s = 1.70158;\n return --t * t * ((s + 1) * t + s) + 1;\n}\nfunction bounceOut(t) {\n const a = 4.0 / 11.0;\n const b = 8.0 / 11.0;\n const c = 9.0 / 10.0;\n const ca = 4356.0 / 361.0;\n const cb = 35442.0 / 1805.0;\n const cc = 16061.0 / 1805.0;\n const t2 = t * t;\n return t < a\n ? 7.5625 * t2\n : t < b\n ? 9.075 * t2 - 9.9 * t + 3.4\n : t < c\n ? ca * t2 - cb * t + cc\n : 10.8 * t * t - 20.52 * t + 10.72;\n}\nfunction bounceInOut(t) {\n return t < 0.5\n ? 0.5 * (1.0 - bounceOut(1.0 - t * 2.0))\n : 0.5 * bounceOut(t * 2.0 - 1.0) + 0.5;\n}\nfunction bounceIn(t) {\n return 1.0 - bounceOut(1.0 - t);\n}\nfunction circInOut(t) {\n if ((t *= 2) < 1)\n return -0.5 * (Math.sqrt(1 - t * t) - 1);\n return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);\n}\nfunction circIn(t) {\n return 1.0 - Math.sqrt(1.0 - t * t);\n}\nfunction circOut(t) {\n return Math.sqrt(1 - --t * t);\n}\nfunction cubicInOut(t) {\n return t < 0.5 ? 4.0 * t * t * t : 0.5 * Math.pow(2.0 * t - 2.0, 3.0) + 1.0;\n}\nfunction cubicIn(t) {\n return t * t * t;\n}\nfunction cubicOut(t) {\n const f = t - 1.0;\n return f * f * f + 1.0;\n}\nfunction elasticInOut(t) {\n return t < 0.5\n ? 0.5 *\n Math.sin(((+13.0 * Math.PI) / 2) * 2.0 * t) *\n Math.pow(2.0, 10.0 * (2.0 * t - 1.0))\n : 0.5 *\n Math.sin(((-13.0 * Math.PI) / 2) * (2.0 * t - 1.0 + 1.0)) *\n Math.pow(2.0, -10.0 * (2.0 * t - 1.0)) +\n 1.0;\n}\nfunction elasticIn(t) {\n return Math.sin((13.0 * t * Math.PI) / 2) * Math.pow(2.0, 10.0 * (t - 1.0));\n}\nfunction elasticOut(t) {\n return (Math.sin((-13.0 * (t + 1.0) * Math.PI) / 2) * Math.pow(2.0, -10.0 * t) + 1.0);\n}\nfunction expoInOut(t) {\n return t === 0.0 || t === 1.0\n ? t\n : t < 0.5\n ? +0.5 * Math.pow(2.0, 20.0 * t - 10.0)\n : -0.5 * Math.pow(2.0, 10.0 - t * 20.0) + 1.0;\n}\nfunction expoIn(t) {\n return t === 0.0 ? t : Math.pow(2.0, 10.0 * (t - 1.0));\n}\nfunction expoOut(t) {\n return t === 1.0 ? t : 1.0 - Math.pow(2.0, -10.0 * t);\n}\nfunction quadInOut(t) {\n t /= 0.5;\n if (t < 1)\n return 0.5 * t * t;\n t--;\n return -0.5 * (t * (t - 2) - 1);\n}\nfunction quadIn(t) {\n return t * t;\n}\nfunction quadOut(t) {\n return -t * (t - 2.0);\n}\nfunction quartInOut(t) {\n return t < 0.5\n ? +8.0 * Math.pow(t, 4.0)\n : -8.0 * Math.pow(t - 1.0, 4.0) + 1.0;\n}\nfunction quartIn(t) {\n return Math.pow(t, 4.0);\n}\nfunction quartOut(t) {\n return Math.pow(t - 1.0, 3.0) * (1.0 - t) + 1.0;\n}\nfunction quintInOut(t) {\n if ((t *= 2) < 1)\n return 0.5 * t * t * t * t * t;\n return 0.5 * ((t -= 2) * t * t * t * t + 2);\n}\nfunction quintIn(t) {\n return t * t * t * t * t;\n}\nfunction quintOut(t) {\n return --t * t * t * t * t + 1;\n}\nfunction sineInOut(t) {\n return -0.5 * (Math.cos(Math.PI * t) - 1);\n}\nfunction sineIn(t) {\n const v = Math.cos(t * Math.PI * 0.5);\n if (Math.abs(v) < 1e-14)\n return 1;\n else\n return 1 - v;\n}\nfunction sineOut(t) {\n return Math.sin((t * Math.PI) / 2);\n}\n\nexport { backIn, backInOut, backOut, bounceIn, bounceInOut, bounceOut, circIn, circInOut, circOut, cubicIn, cubicInOut, cubicOut, elasticIn, elasticInOut, elasticOut, expoIn, expoInOut, expoOut, quadIn, quadInOut, quadOut, quartIn, quartInOut, quartOut, quintIn, quintInOut, quintOut, sineIn, sineInOut, sineOut };\n","import { cubicInOut, linear, cubicOut } from '../easing/index.mjs';\nimport { is_function, assign } from '../internal/index.mjs';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\n\nfunction blur(node, { delay = 0, duration = 400, easing = cubicInOut, amount = 5, opacity = 0 } = {}) {\n const style = getComputedStyle(node);\n const target_opacity = +style.opacity;\n const f = style.filter === 'none' ? '' : style.filter;\n const od = target_opacity * (1 - opacity);\n return {\n delay,\n duration,\n easing,\n css: (_t, u) => `opacity: ${target_opacity - (od * u)}; filter: ${f} blur(${u * amount}px);`\n };\n}\nfunction fade(node, { delay = 0, duration = 400, easing = linear } = {}) {\n const o = +getComputedStyle(node).opacity;\n return {\n delay,\n duration,\n easing,\n css: t => `opacity: ${t * o}`\n };\n}\nfunction fly(node, { delay = 0, duration = 400, easing = cubicOut, x = 0, y = 0, opacity = 0 } = {}) {\n const style = getComputedStyle(node);\n const target_opacity = +style.opacity;\n const transform = style.transform === 'none' ? '' : style.transform;\n const od = target_opacity * (1 - opacity);\n return {\n delay,\n duration,\n easing,\n css: (t, u) => `\n\t\t\ttransform: ${transform} translate(${(1 - t) * x}px, ${(1 - t) * y}px);\n\t\t\topacity: ${target_opacity - (od * u)}`\n };\n}\nfunction slide(node, { delay = 0, duration = 400, easing = cubicOut } = {}) {\n const style = getComputedStyle(node);\n const opacity = +style.opacity;\n const height = parseFloat(style.height);\n const padding_top = parseFloat(style.paddingTop);\n const padding_bottom = parseFloat(style.paddingBottom);\n const margin_top = parseFloat(style.marginTop);\n const margin_bottom = parseFloat(style.marginBottom);\n const border_top_width = parseFloat(style.borderTopWidth);\n const border_bottom_width = parseFloat(style.borderBottomWidth);\n return {\n delay,\n duration,\n easing,\n css: t => 'overflow: hidden;' +\n `opacity: ${Math.min(t * 20, 1) * opacity};` +\n `height: ${t * height}px;` +\n `padding-top: ${t * padding_top}px;` +\n `padding-bottom: ${t * padding_bottom}px;` +\n `margin-top: ${t * margin_top}px;` +\n `margin-bottom: ${t * margin_bottom}px;` +\n `border-top-width: ${t * border_top_width}px;` +\n `border-bottom-width: ${t * border_bottom_width}px;`\n };\n}\nfunction scale(node, { delay = 0, duration = 400, easing = cubicOut, start = 0, opacity = 0 } = {}) {\n const style = getComputedStyle(node);\n const target_opacity = +style.opacity;\n const transform = style.transform === 'none' ? '' : style.transform;\n const sd = 1 - start;\n const od = target_opacity * (1 - opacity);\n return {\n delay,\n duration,\n easing,\n css: (_t, u) => `\n\t\t\ttransform: ${transform} scale(${1 - (sd * u)});\n\t\t\topacity: ${target_opacity - (od * u)}\n\t\t`\n };\n}\nfunction draw(node, { delay = 0, speed, duration, easing = cubicInOut } = {}) {\n const len = node.getTotalLength();\n if (duration === undefined) {\n if (speed === undefined) {\n duration = 800;\n }\n else {\n duration = len / speed;\n }\n }\n else if (typeof duration === 'function') {\n duration = duration(len);\n }\n return {\n delay,\n duration,\n easing,\n css: (t, u) => `stroke-dasharray: ${t * len} ${u * len}`\n };\n}\nfunction crossfade(_a) {\n var { fallback } = _a, defaults = __rest(_a, [\"fallback\"]);\n const to_receive = new Map();\n const to_send = new Map();\n function crossfade(from, node, params) {\n const { delay = 0, duration = d => Math.sqrt(d) * 30, easing = cubicOut } = assign(assign({}, defaults), params);\n const to = node.getBoundingClientRect();\n const dx = from.left - to.left;\n const dy = from.top - to.top;\n const dw = from.width / to.width;\n const dh = from.height / to.height;\n const d = Math.sqrt(dx * dx + dy * dy);\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n const opacity = +style.opacity;\n return {\n delay,\n duration: is_function(duration) ? duration(d) : duration,\n easing,\n css: (t, u) => `\n\t\t\t\topacity: ${t * opacity};\n\t\t\t\ttransform-origin: top left;\n\t\t\t\ttransform: ${transform} translate(${u * dx}px,${u * dy}px) scale(${t + (1 - t) * dw}, ${t + (1 - t) * dh});\n\t\t\t`\n };\n }\n function transition(items, counterparts, intro) {\n return (node, params) => {\n items.set(params.key, {\n rect: node.getBoundingClientRect()\n });\n return () => {\n if (counterparts.has(params.key)) {\n const { rect } = counterparts.get(params.key);\n counterparts.delete(params.key);\n return crossfade(rect, node, params);\n }\n // if the node is disappearing altogether\n // (i.e. wasn't claimed by the other list)\n // then we need to supply an outro\n items.delete(params.key);\n return fallback && fallback(node, params, intro);\n };\n };\n }\n return [\n transition(to_send, to_receive, false),\n transition(to_receive, to_send, true)\n ];\n}\n\nexport { blur, crossfade, draw, fade, fly, scale, slide };\n","\r\n\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

{data.ref_id}

\r\n
\r\n\r\n
\r\n\r\n \r\n

{@html data.authors}

\r\n

{@html data.title}

\r\n {#each Object.entries(data.links) as [link_name, url]}\r\n

{link_name}

\r\n {/each}\r\n

{@html data.extra}

\r\n
\r\n
\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n

Algorithm id: {@html alg_data.alg_id}

\r\n

Name: {@html alg_data.name}

\r\n

Category: {@html alg_data.category}

\r\n

Speedup: {@html alg_data.speedup}

\r\n

Description: {@html alg_data.description}

\r\n {#if !alone}\r\n \r\n {/if}\r\n {#if alone || show_references}\r\n
\r\n

References:

\r\n
\r\n {#each getRelevantReferences(Object.values(alg_data.references)) as reference}\r\n \r\n {/each}\r\n
\r\n
\r\n {/if}\r\n\r\n
\r\n\r\n\r\n","\r\n\r\n
\r\n

Acknowledgments

\r\n

\r\n I thank the following people for contributing their expertise (in\r\n chronological order).\r\n

\r\n\r\n \r\n
\r\n\r\n\r\n","\r\n\r\n
\r\n

References

\r\n {#each Object.entries(references.default) as [ref_id, reference]}\r\n \r\n {/each}\r\n\r\n
\r\n","\r\n\r\n
\r\n

{category_data.name}

\r\n {#each Object.entries(category_data.algs) as [alg_id, alg]}\r\n \r\n
\r\n {/each}\r\n
\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n

All algorithms

\r\n {#each Object.entries(algorithms.default) as [category, algs]}\r\n \r\n {/each}\r\n
\r\n","\r\n\r\n
\r\n

Translations

\r\n

This page has been translated into:

\r\n
\r\n Japanese
\r\n Chinese

\r\n
\r\n
\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n

Other Surveys

\r\n

For overviews of quantum algorithms I recommend:

\r\n \r\n
\r\n\r\n\r\n\r\n","\r\n\r\n
\r\n

Terminology

\r\n

If there exists a positive constant &#x03B1;\" role=\"presentation\" style=\"position: relative;\">αα\r\n such that the runtime C(n)\" role=\"presentation\" style=\"position: relative;\">C(n)C(n) of the best known classical algorithm and the runtime\r\n Q(n)\" role=\"presentation\" style=\"position: relative;\">Q(n)Q(n) of the quantum algorithm satisfy C=2&#x03A9;(Q&#x03B1;)\" role=\"presentation\" style=\"position: relative;\">C=2Ω(Qα)C=2Ω(Qα)\r\n then I call the speedup superpolynomial. Otherwise I call it polynomial.\r\n For a review of the O,&#x03A9;,&#x0398;,O&#x007E;,...\" role=\"presentation\" style=\"position: relative;\">O,Ω,Θ,O˜,...O,Ω,Θ,O~,... notations see the\r\n Wikipedia article.

\r\n
\r\n","\r\n\r\n
\r\n

About

\r\n

Author:

\r\n

\r\n \"author\r\n

\r\n

Stephen Jordan

\r\n

Microsoft Quantum

\r\n
\r\n

Last updated: February 1st, 2021

\r\n

Date created: April 22nd, 2011

\r\n
\r\n

This is a comprehensive catalog of quantum algorithms. If you notice any errors or\r\n omissions, please email me at stephen.jordan@microsoft.com. (Alternatively, you may\r\n submit a pull request to the repository on github.)\r\n Your help is appreciated and will be acknowledged.

\r\n
","\r\n
\r\n

Algorithm information

\r\n {#key unique}\r\n \r\n {/key}\r\n
\r\n","\r\n\r\n
\r\n {#if $to_display === \"all_algs\"}\r\n \r\n {:else if $to_display === \"category\"}\r\n \r\n {:else if $to_display === \"algorithm\"}\r\n \r\n {:else if $to_display === \"acknowledgments\"}\r\n \r\n {:else if $to_display === \"references\"}\r\n \r\n {:else if $to_display === \"translations\"}\r\n \r\n {:else if $to_display === \"other_surveys\"}\r\n \r\n {:else if $to_display === \"terminology\"}\r\n \r\n {:else if $to_display === \"about\"}\r\n \r\n {/if}\r\n
\r\n\r\n\r\n","\r\n\r\n
\r\n {data.name}\r\n
\r\n\r\n","\r\n\r\n
\r\n
\r\n \r\n {#each Object.entries(algorithms.default) as [cat, algs]}\r\n \r\n {/each}\r\n
\r\n
\r\n\r\n\r\n","\r\n\r\n
\r\n
\r\n {data.name}\r\n
\r\n {#if local_display_categories && $display_categories}\r\n \r\n {/if}\r\n
\r\n\r\n","\r\n\r\n
\r\n {data.name}\r\n
\r\n\r\n","\r\n\r\n
\r\n All in category\r\n
\r\n\r\n","\r\n\r\n
\r\n \r\n {#each Object.entries(algorithms.default[$algs_of_cat_menu]) as [cat, algs]}\r\n \r\n {/each}\r\n
\r\n\r\n\r\n","\r\n\r\n
\r\n screen_width_breakpoint ? 'w3-large' : 'w3-xxlarge'}\" on:click={() => {$display_menu = !$display_menu; $display_categories = false; $display_algorithms = false;}}>\r\n {#if $display_menu}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {#if $display_categories && $display_algorithms}\r\n
\r\n \r\n
\r\n {/if}\r\n
\r\n {/if}\r\n
\r\n\r\n\r\n","
\r\n Portions of this document were written by Stephen Jordan while he was\r\n an employee of the National Institute of Standards and Technology
\r\n (NIST), an agency of the U.S. Commerce Department.
\r\n\r\n Privacy policy / security notice\r\n / accessibility statement /\r\n Disclaimer /\r\n Freedom of Information Act (FOIA) /\r\n
\r\n\r\n No Fear Act Policy /\r\n NIST Information Quality\r\n Standards /\r\n Environmental Policy\r\n Statement\r\n
\r\n
\r\n
\r\n\r\n","\n\n\n\n
screen_width_breakpoint ? \"grid-container\" : \"grid-container-mobile\"}>\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n\n","import App from './App.svelte';\n\nvar app = new App({\n\ttarget: document.body\n});\n\nexport default app;"],"names":["noop","identity","x","run","fn","blank_object","Object","create","run_all","fns","forEach","is_function","thing","safe_not_equal","a","b","component_subscribe","component","store","callback","$$","on_destroy","push","callbacks","unsub","subscribe","unsubscribe","null_to_empty","value","set_store_value","ret","set","is_client","window","now","performance","Date","raf","cb","requestAnimationFrame","tasks","Set","run_tasks","task","c","delete","f","size","append","target","node","appendChild","get_root_for_style","document","root","getRootNode","ownerDocument","host","append_empty_stylesheet","style_element","element","style","head","append_stylesheet","insert","anchor","insertBefore","detach","parentNode","removeChild","destroy_each","iterations","detaching","i","length","d","name","createElement","text","data","createTextNode","space","listen","event","handler","options","addEventListener","removeEventListener","attr","attribute","removeAttribute","getAttribute","setAttribute","set_data","wholeText","set_input_value","input","toggle_class","toggle","classList","HtmlTag","constructor","this","e","n","html","h","m","nodeName","t","innerHTML","Array","from","childNodes","p","active_docs","current_component","active","create_rule","duration","delay","ease","uid","step","keyframes","rule","str","hash","charCodeAt","doc","add","stylesheet","__svelte_stylesheet","sheet","current_rules","__svelte_rules","insertRule","cssRules","animation","delete_rule","previous","split","next","filter","anim","indexOf","deleted","join","deleteRule","clear","set_current_component","afterUpdate","Error","get_current_component","after_update","dirty_components","binding_callbacks","render_callbacks","flush_callbacks","resolved_promise","Promise","resolve","update_scheduled","add_render_callback","flushing","seen_callbacks","flush","update","pop","has","fragment","before_update","dirty","ctx","promise","dispatch","direction","kind","dispatchEvent","type","detail","bubbles","createEvent","initCustomEvent","custom_event","outroing","outros","group_outros","r","check_outros","transition_in","block","local","transition_out","o","null_transition","create_bidirectional_transition","params","intro","config","running_program","pending_program","animation_name","clear_animation","init","program","Math","abs","start","end","group","go","easing","tick","css","fulfill","loop","then","create_component","mount_component","customElement","on_mount","new_on_destroy","map","destroy_component","make_dirty","fill","instance","create_fragment","not_equal","props","append_styles","parent_component","bound","on_disconnect","context","Map","skip_bound","ready","rest","hydrate","nodes","children","l","SvelteComponent","$destroy","$on","index","splice","$set","$$props","obj","$$set","keys","subscriber_queue","writable","stop","subscribers","new_value","run_queue","subscriber","invalidate","algorithms","references","to_display","algs_of_cat_menu","default","display_menu","display_categories","display_algorithms","alg_to_display","cat_to_display","show_search_results","screen_width","screen_width_breakpoint","boldQuery","query","toUpperCase","q","substr","result_data","matching_text","hovered","$to_display","$alg_to_display","$show_search_results","text_search","to_return","cats","values","cat_algs","j","toLowerCase","cubicOut","slide","getComputedStyle","opacity","height","parseFloat","padding_top","paddingTop","padding_bottom","paddingBottom","margin_top","marginTop","margin_bottom","marginBottom","border_top_width","borderTopWidth","border_bottom_width","borderBottomWidth","min","ref_id","authors","title","extra","entries","links","alg_id","category","speedup","description","alg_data","alone","MathJax","typeset","show_references","ref_ids","added","includes","sort","algs","category_data","unique","$algs_of_cat_menu","$display_algorithms","local_display_categories","$display_categories","$cat_to_display","$display_menu","evt","flyoutElement","getElementById","targetElement","body"],"mappings":"gCAAA,SAASA,KACT,MAAMC,EAAWC,GAAKA,EAetB,SAASC,EAAIC,GACT,OAAOA,IAEX,SAASC,IACL,OAAOC,OAAOC,OAAO,MAEzB,SAASC,EAAQC,GACbA,EAAIC,QAAQP,GAEhB,SAASQ,EAAYC,GACjB,MAAwB,mBAAVA,EAElB,SAASC,EAAeC,EAAGC,GACvB,OAAOD,GAAKA,EAAIC,GAAKA,EAAID,IAAMC,GAAOD,GAAkB,iBAANA,GAAgC,mBAANA,EAiChF,SAASE,EAAoBC,EAAWC,EAAOC,GAC3CF,EAAUG,GAAGC,WAAWC,KAb5B,SAAmBJ,KAAUK,GACzB,GAAa,MAATL,EACA,OAAOlB,EAEX,MAAMwB,EAAQN,EAAMO,aAAaF,GACjC,OAAOC,EAAME,YAAc,IAAMF,EAAME,cAAgBF,EAQ1BC,CAAUP,EAAOC,IAmFlD,SAASQ,EAAcC,GACnB,OAAgB,MAATA,EAAgB,GAAKA,EAEhC,SAASC,EAAgBX,EAAOY,EAAKF,GAEjC,OADAV,EAAMa,IAAIH,GACHE,EAOX,MAAME,EAA8B,oBAAXC,OACzB,IAAIC,EAAMF,EACJ,IAAMC,OAAOE,YAAYD,MACzB,IAAME,KAAKF,MACbG,EAAML,EAAYM,GAAMC,sBAAsBD,GAAMtC,EASxD,MAAMwC,EAAQ,IAAIC,IAClB,SAASC,EAAUR,GACfM,EAAM9B,SAAQiC,IACLA,EAAKC,EAAEV,KACRM,EAAMK,OAAOF,GACbA,EAAKG,QAGM,IAAfN,EAAMO,MACNV,EAAIK,GA+HZ,SAASM,EAAOC,EAAQC,GACpBD,EAAOE,YAAYD,GAWvB,SAASE,EAAmBF,GACxB,IAAKA,EACD,OAAOG,SACX,MAAMC,EAAOJ,EAAKK,YAAcL,EAAKK,cAAgBL,EAAKM,cAC1D,OAAIF,EAAKG,KACEH,EAEJD,SAEX,SAASK,EAAwBR,GAC7B,MAAMS,EAAgBC,EAAQ,SAE9B,OAEJ,SAA2BV,EAAMW,GAC7Bb,EAAOE,EAAKY,MAAQZ,EAAMW,GAJ1BE,CAAkBX,EAAmBF,GAAOS,GACrCA,EA6BX,SAASK,EAAOf,EAAQC,EAAMe,GAC1BhB,EAAOiB,aAAahB,EAAMe,GAAU,MAUxC,SAASE,EAAOjB,GACZA,EAAKkB,WAAWC,YAAYnB,GAEhC,SAASoB,EAAaC,EAAYC,GAC9B,IAAK,IAAIC,EAAI,EAAGA,EAAIF,EAAWG,OAAQD,GAAK,EACpCF,EAAWE,IACXF,EAAWE,GAAGE,EAAEH,GAG5B,SAASZ,EAAQgB,GACb,OAAOvB,SAASwB,cAAcD,GAoBlC,SAASE,EAAKC,GACV,OAAO1B,SAAS2B,eAAeD,GAEnC,SAASE,IACL,OAAOH,EAAK,KAKhB,SAASI,EAAOhC,EAAMiC,EAAOC,EAASC,GAElC,OADAnC,EAAKoC,iBAAiBH,EAAOC,EAASC,GAC/B,IAAMnC,EAAKqC,oBAAoBJ,EAAOC,EAASC,GA8B1D,SAASG,EAAKtC,EAAMuC,EAAW7D,GACd,MAATA,EACAsB,EAAKwC,gBAAgBD,GAChBvC,EAAKyC,aAAaF,KAAe7D,GACtCsB,EAAK0C,aAAaH,EAAW7D,GA+KrC,SAASiE,EAASf,EAAMC,GACpBA,EAAO,GAAKA,EACRD,EAAKgB,YAAcf,IACnBD,EAAKC,KAAOA,GAEpB,SAASgB,EAAgBC,EAAOpE,GAC5BoE,EAAMpE,MAAiB,MAATA,EAAgB,GAAKA,EAwFvC,SAASqE,EAAarC,EAASgB,EAAMsB,GACjCtC,EAAQuC,UAAUD,EAAS,MAAQ,UAAUtB,GAUjD,MAAMwB,EACFC,cACIC,KAAKC,EAAID,KAAKE,EAAI,KAEtB5D,EAAE6D,GACEH,KAAKI,EAAED,GAEXE,EAAEF,EAAMxD,EAAQgB,EAAS,MAChBqC,KAAKC,IACND,KAAKC,EAAI3C,EAAQX,EAAO2D,UACxBN,KAAKO,EAAI5D,EACTqD,KAAK1D,EAAE6D,IAEXH,KAAK7B,EAAER,GAEXyC,EAAED,GACEH,KAAKC,EAAEO,UAAYL,EACnBH,KAAKE,EAAIO,MAAMC,KAAKV,KAAKC,EAAEU,YAE/BxC,EAAER,GACE,IAAK,IAAIQ,EAAI,EAAGA,EAAI6B,KAAKE,EAAE9B,OAAQD,GAAK,EACpCT,EAAOsC,KAAKO,EAAGP,KAAKE,EAAE/B,GAAIR,GAGlCiD,EAAET,GACEH,KAAK3B,IACL2B,KAAKI,EAAED,GACPH,KAAK7B,EAAE6B,KAAKxF,GAEhB6D,IACI2B,KAAKE,EAAE9F,QAAQyD,IAsCvB,MAAMgD,EAAc,IAAI1E,IACxB,IAiII2E,EAjIAC,EAAS,EASb,SAASC,EAAYpE,EAAMpC,EAAGC,EAAGwG,EAAUC,EAAOC,EAAMrH,EAAIsH,EAAM,GAC9D,MAAMC,EAAO,OAASJ,EACtB,IAAIK,EAAY,MAChB,IAAK,IAAIV,EAAI,EAAGA,GAAK,EAAGA,GAAKS,EAAM,CAC/B,MAAMd,EAAI/F,GAAKC,EAAID,GAAK2G,EAAKP,GAC7BU,GAAiB,IAAJV,EAAU,KAAK9G,EAAGyG,EAAG,EAAIA,QAE1C,MAAMgB,EAAOD,EAAY,SAASxH,EAAGW,EAAG,EAAIA,SACtC6D,EAAO,YAfjB,SAAckD,GACV,IAAIC,EAAO,KACPtD,EAAIqD,EAAIpD,OACZ,KAAOD,KACHsD,GAASA,GAAQ,GAAKA,EAAQD,EAAIE,WAAWvD,GACjD,OAAOsD,IAAS,EAUSA,CAAKF,MAASH,IACjCO,EAAM7E,EAAmBF,GAC/BiE,EAAYe,IAAID,GAChB,MAAME,EAAaF,EAAIG,sBAAwBH,EAAIG,oBAAsB1E,EAAwBR,GAAMmF,OACjGC,EAAgBL,EAAIM,iBAAmBN,EAAIM,eAAiB,IAC7DD,EAAc1D,KACf0D,EAAc1D,IAAQ,EACtBuD,EAAWK,WAAW,cAAc5D,KAAQiD,IAAQM,EAAWM,SAAS/D,SAE5E,MAAMgE,EAAYxF,EAAKW,MAAM6E,WAAa,GAG1C,OAFAxF,EAAKW,MAAM6E,UAAY,GAAGA,EAAY,GAAGA,MAAgB,KAAK9D,KAAQ2C,cAAqBC,aAC3FH,GAAU,EACHzC,EAEX,SAAS+D,EAAYzF,EAAM0B,GACvB,MAAMgE,GAAY1F,EAAKW,MAAM6E,WAAa,IAAIG,MAAM,MAC9CC,EAAOF,EAASG,OAAOnE,EACvBoE,GAAQA,EAAKC,QAAQrE,GAAQ,EAC7BoE,IAAsC,IAA9BA,EAAKC,QAAQ,aAErBC,EAAUN,EAASlE,OAASoE,EAAKpE,OACnCwE,IACAhG,EAAKW,MAAM6E,UAAYI,EAAKK,KAAK,MACjC9B,GAAU6B,EACL7B,GAKThF,GAAI,KACIgF,IAEJF,EAAYzG,SAAQuH,IAChB,MAAME,EAAaF,EAAIG,oBACvB,IAAI3D,EAAI0D,EAAWM,SAAS/D,OAC5B,KAAOD,KACH0D,EAAWiB,WAAW3E,GAC1BwD,EAAIM,eAAiB,MAEzBpB,EAAYkC,aA0EpB,SAASC,EAAsBrI,GAC3BmG,EAAoBnG,EAaxB,SAASsI,EAAYnJ,IAXrB,WACI,IAAKgH,EACD,MAAM,IAAIoC,MAAM,oDACpB,OAAOpC,GASPqC,GAAwBrI,GAAGsI,aAAapI,KAAKlB,GA0CjD,MAAMuJ,EAAmB,GAEnBC,EAAoB,GACpBC,EAAmB,GACnBC,EAAkB,GAClBC,EAAmBC,QAAQC,UACjC,IAAIC,GAAmB,EAWvB,SAASC,EAAoB/J,GACzByJ,EAAiBvI,KAAKlB,GAK1B,IAAIgK,GAAW,EACf,MAAMC,EAAiB,IAAI5H,IAC3B,SAAS6H,IACL,IAAIF,EAAJ,CAEAA,GAAW,EACX,EAAG,CAGC,IAAK,IAAI3F,EAAI,EAAGA,EAAIkF,EAAiBjF,OAAQD,GAAK,EAAG,CACjD,MAAMxD,EAAY0I,EAAiBlF,GACnC6E,EAAsBrI,GACtBsJ,EAAOtJ,EAAUG,IAIrB,IAFAkI,EAAsB,MACtBK,EAAiBjF,OAAS,EACnBkF,EAAkBlF,QACrBkF,EAAkBY,KAAlBZ,GAIJ,IAAK,IAAInF,EAAI,EAAGA,EAAIoF,EAAiBnF,OAAQD,GAAK,EAAG,CACjD,MAAMtD,EAAW0I,EAAiBpF,GAC7B4F,EAAeI,IAAItJ,KAEpBkJ,EAAenC,IAAI/G,GACnBA,KAGR0I,EAAiBnF,OAAS,QACrBiF,EAAiBjF,QAC1B,KAAOoF,EAAgBpF,QACnBoF,EAAgBU,KAAhBV,GAEJI,GAAmB,EACnBE,GAAW,EACXC,EAAehB,SAEnB,SAASkB,EAAOnJ,GACZ,GAAoB,OAAhBA,EAAGsJ,SAAmB,CACtBtJ,EAAGmJ,SACH/J,EAAQY,EAAGuJ,eACX,MAAMC,EAAQxJ,EAAGwJ,MACjBxJ,EAAGwJ,MAAQ,EAAE,GACbxJ,EAAGsJ,UAAYtJ,EAAGsJ,SAASxD,EAAE9F,EAAGyJ,IAAKD,GACrCxJ,EAAGsI,aAAahJ,QAAQyJ,IAIhC,IAAIW,EAUJ,SAASC,EAAS7H,EAAM8H,EAAWC,GAC/B/H,EAAKgI,cA3VT,SAAsBC,EAAMC,EAAQC,GAAU,GAC1C,MAAM9E,EAAIlD,SAASiI,YAAY,eAE/B,OADA/E,EAAEgF,gBAAgBJ,EAAME,GAAS,EAAOD,GACjC7E,EAwVYiF,CAAa,GAAGR,EAAY,QAAU,UAAUC,MAEvE,MAAMQ,EAAW,IAAIhJ,IACrB,IAAIiJ,EACJ,SAASC,IACLD,EAAS,CACLE,EAAG,EACHhJ,EAAG,GACHsE,EAAGwE,GAGX,SAASG,IACAH,EAAOE,GACRpL,EAAQkL,EAAO9I,GAEnB8I,EAASA,EAAOxE,EAEpB,SAAS4E,GAAcC,EAAOC,GACtBD,GAASA,EAAMtH,IACfgH,EAAS5I,OAAOkJ,GAChBA,EAAMtH,EAAEuH,IAGhB,SAASC,GAAeF,EAAOC,EAAO7H,EAAQhD,GAC1C,GAAI4K,GAASA,EAAMG,EAAG,CAClB,GAAIT,EAAShB,IAAIsB,GACb,OACJN,EAASvD,IAAI6D,GACbL,EAAO9I,EAAEtB,MAAK,KACVmK,EAAS5I,OAAOkJ,GACZ5K,IACIgD,GACA4H,EAAMpH,EAAE,GACZxD,QAGR4K,EAAMG,EAAEF,IAGhB,MAAMG,GAAkB,CAAE5E,SAAU,GAwHpC,SAAS6E,GAAgClJ,EAAM9C,EAAIiM,EAAQC,GACvD,IAAIC,EAASnM,EAAG8C,EAAMmJ,GAClBxF,EAAIyF,EAAQ,EAAI,EAChBE,EAAkB,KAClBC,EAAkB,KAClBC,EAAiB,KACrB,SAASC,IACDD,GACA/D,EAAYzF,EAAMwJ,GAE1B,SAASE,EAAKC,EAAStF,GACnB,MAAM5C,EAAKkI,EAAQ9L,EAAI8F,EAEvB,OADAU,GAAYuF,KAAKC,IAAIpI,GACd,CACH7D,EAAG+F,EACH9F,EAAG8L,EAAQ9L,EACX4D,EAAAA,EACA4C,SAAAA,EACAyF,MAAOH,EAAQG,MACfC,IAAKJ,EAAQG,MAAQzF,EACrB2F,MAAOL,EAAQK,OAGvB,SAASC,EAAGpM,GACR,MAAMyG,MAAEA,EAAQ,EAACD,SAAEA,EAAW,IAAG6F,OAAEA,EAASnN,EAAQoN,KAAEA,EAAOrN,EAAIsN,IAAEA,GAAQf,GAAUJ,GAC/EU,EAAU,CACZG,MAAO9K,IAAQsF,EACfzG,EAAAA,GAECA,IAED8L,EAAQK,MAAQxB,EAChBA,EAAOE,GAAK,GAEZY,GAAmBC,EACnBA,EAAkBI,GAKdS,IACAX,IACAD,EAAiBpF,EAAYpE,EAAM2D,EAAG9F,EAAGwG,EAAUC,EAAO4F,EAAQE,IAElEvM,GACAsM,EAAK,EAAG,GACZb,EAAkBI,EAAKC,EAAStF,GAChC4C,GAAoB,IAAMY,EAAS7H,EAAMnC,EAAG,WAvjCxD,SAAcI,GACV,IAAIwB,EACe,IAAfH,EAAMO,MACNV,EAAIK,GAEK,IAAIsH,SAAQuD,IACjB/K,EAAM0F,IAAIvF,EAAO,CAAEC,EAAGzB,EAAU2B,EAAGyK,OAkjCnCC,EAAKtL,IAUD,GATIuK,GAAmBvK,EAAMuK,EAAgBO,QACzCR,EAAkBI,EAAKH,EAAiBlF,GACxCkF,EAAkB,KAClB1B,EAAS7H,EAAMsJ,EAAgBzL,EAAG,SAC9BuM,IACAX,IACAD,EAAiBpF,EAAYpE,EAAM2D,EAAG2F,EAAgBzL,EAAGyL,EAAgBjF,SAAU,EAAG6F,EAAQb,EAAOe,OAGzGd,EACA,GAAItK,GAAOsK,EAAgBS,IACvBI,EAAKxG,EAAI2F,EAAgBzL,EAAG,EAAI8F,GAChCkE,EAAS7H,EAAMsJ,EAAgBzL,EAAG,OAC7B0L,IAEGD,EAAgBzL,EAEhB4L,MAIOH,EAAgBU,MAAMtB,GACzBpL,EAAQgM,EAAgBU,MAAMtK,IAG1C4J,EAAkB,UAEjB,GAAItK,GAAOsK,EAAgBQ,MAAO,CACnC,MAAM9F,EAAIhF,EAAMsK,EAAgBQ,MAChCnG,EAAI2F,EAAgB1L,EAAI0L,EAAgB7H,EAAIyI,EAAOlG,EAAIsF,EAAgBjF,UACvE8F,EAAKxG,EAAG,EAAIA,GAGpB,SAAU2F,IAAmBC,OAIzC,MAAO,CACHtM,IAAIY,GACIJ,EAAY4L,IAhQnBzB,IACDA,EAAUd,QAAQC,UAClBa,EAAQ2C,MAAK,KACT3C,EAAU,SAGXA,GA2PY2C,MAAK,KAERlB,EAASA,IACTY,EAAGpM,MAIPoM,EAAGpM,IAGXkM,MACIN,IACAH,EAAkBC,EAAkB,OAkYhD,SAASiB,GAAiB3B,GACtBA,GAASA,EAAMnJ,IAKnB,SAAS+K,GAAgB1M,EAAWgC,EAAQgB,EAAQ2J,GAChD,MAAMlD,SAAEA,EAAQmD,SAAEA,EAAQxM,WAAEA,EAAUqI,aAAEA,GAAiBzI,EAAUG,GACnEsJ,GAAYA,EAAS/D,EAAE1D,EAAQgB,GAC1B2J,GAEDzD,GAAoB,KAChB,MAAM2D,EAAiBD,EAASE,IAAI5N,GAAK4I,OAAOpI,GAC5CU,EACAA,EAAWC,QAAQwM,GAKnBtN,EAAQsN,GAEZ7M,EAAUG,GAAGyM,SAAW,MAGhCnE,EAAahJ,QAAQyJ,GAEzB,SAAS6D,GAAkB/M,EAAWuD,GAClC,MAAMpD,EAAKH,EAAUG,GACD,OAAhBA,EAAGsJ,WACHlK,EAAQY,EAAGC,YACXD,EAAGsJ,UAAYtJ,EAAGsJ,SAAS/F,EAAEH,GAG7BpD,EAAGC,WAAaD,EAAGsJ,SAAW,KAC9BtJ,EAAGyJ,IAAM,IAGjB,SAASoD,GAAWhN,EAAWwD,IACI,IAA3BxD,EAAUG,GAAGwJ,MAAM,KACnBjB,EAAiBrI,KAAKL,GAxvBrBiJ,IACDA,GAAmB,EACnBH,EAAiB0D,KAAKnD,IAwvBtBrJ,EAAUG,GAAGwJ,MAAMsD,KAAK,IAE5BjN,EAAUG,GAAGwJ,MAAOnG,EAAI,GAAM,IAAO,GAAMA,EAAI,GAEnD,SAASmI,GAAK3L,EAAWoE,EAAS8I,EAAUC,EAAiBC,EAAWC,EAAOC,EAAe3D,EAAQ,EAAE,IACpG,MAAM4D,EAAmBpH,EACzBkC,EAAsBrI,GACtB,MAAMG,EAAKH,EAAUG,GAAK,CACtBsJ,SAAU,KACVG,IAAK,KAELyD,MAAAA,EACA/D,OAAQvK,EACRqO,UAAAA,EACAI,MAAOpO,IAEPwN,SAAU,GACVxM,WAAY,GACZqN,cAAe,GACf/D,cAAe,GACfjB,aAAc,GACdiF,QAAS,IAAIC,IAAIJ,EAAmBA,EAAiBpN,GAAGuN,QAAUtJ,EAAQsJ,SAAW,IAErFpN,UAAWlB,IACXuK,MAAAA,EACAiE,YAAY,EACZvL,KAAM+B,EAAQpC,QAAUuL,EAAiBpN,GAAGkC,MAEhDiL,GAAiBA,EAAcnN,EAAGkC,MAClC,IAAIwL,GAAQ,EAkBZ,GAjBA1N,EAAGyJ,IAAMsD,EACHA,EAASlN,EAAWoE,EAAQiJ,OAAS,IAAI,CAAC7J,EAAG3C,KAAQiN,KACnD,MAAMnN,EAAQmN,EAAKrK,OAASqK,EAAK,GAAKjN,EAOtC,OANIV,EAAGyJ,KAAOwD,EAAUjN,EAAGyJ,IAAIpG,GAAIrD,EAAGyJ,IAAIpG,GAAK7C,MACtCR,EAAGyN,YAAczN,EAAGqN,MAAMhK,IAC3BrD,EAAGqN,MAAMhK,GAAG7C,GACZkN,GACAb,GAAWhN,EAAWwD,IAEvB3C,KAET,GACNV,EAAGmJ,SACHuE,GAAQ,EACRtO,EAAQY,EAAGuJ,eAEXvJ,EAAGsJ,WAAW0D,GAAkBA,EAAgBhN,EAAGyJ,KAC/CxF,EAAQpC,OAAQ,CAChB,GAAIoC,EAAQ2J,QAAS,CAEjB,MAAMC,EAhxClB,SAAkBrL,GACd,OAAOmD,MAAMC,KAAKpD,EAAQqD,YA+wCJiI,CAAS7J,EAAQpC,QAE/B7B,EAAGsJ,UAAYtJ,EAAGsJ,SAASyE,EAAEF,GAC7BA,EAAMvO,QAAQyD,QAId/C,EAAGsJ,UAAYtJ,EAAGsJ,SAAS9H,IAE3ByC,EAAQiH,OACRR,GAAc7K,EAAUG,GAAGsJ,UAC/BiD,GAAgB1M,EAAWoE,EAAQpC,OAAQoC,EAAQpB,OAAQoB,EAAQuI,eAEnEtD,IAEJhB,EAAsBkF,GAkD1B,MAAMY,GACFC,WACIrB,GAAkB1H,KAAM,GACxBA,KAAK+I,SAAWrP,EAEpBsP,IAAInE,EAAMhK,GACN,MAAMI,EAAa+E,KAAKlF,GAAGG,UAAU4J,KAAU7E,KAAKlF,GAAGG,UAAU4J,GAAQ,IAEzE,OADA5J,EAAUD,KAAKH,GACR,KACH,MAAMoO,EAAQhO,EAAU0H,QAAQ9H,IACjB,IAAXoO,GACAhO,EAAUiO,OAAOD,EAAO,IAGpCE,KAAKC,GA/yDT,IAAkBC,EAgzDNrJ,KAAKsJ,QAhzDCD,EAgzDkBD,EA/yDG,IAA5BpP,OAAOuP,KAAKF,GAAKjL,UAgzDhB4B,KAAKlF,GAAGyN,YAAa,EACrBvI,KAAKsJ,MAAMF,GACXpJ,KAAKlF,GAAGyN,YAAa,0KC71DjC7K,yGCGA,MAAM8L,GAAmB,GAgBzB,SAASC,GAASnO,EAAOoL,EAAQhN,GAC7B,IAAIgQ,EACJ,MAAMC,EAAc,IAAIxN,IACxB,SAASV,EAAImO,GACT,GAAIrP,EAAee,EAAOsO,KACtBtO,EAAQsO,EACJF,GAAM,CACN,MAAMG,GAAaL,GAAiBpL,OACpC,IAAK,MAAM0L,KAAcH,EACrBG,EAAW,KACXN,GAAiBxO,KAAK8O,EAAYxO,GAEtC,GAAIuO,EAAW,CACX,IAAK,IAAI1L,EAAI,EAAGA,EAAIqL,GAAiBpL,OAAQD,GAAK,EAC9CqL,GAAiBrL,GAAG,GAAGqL,GAAiBrL,EAAI,IAEhDqL,GAAiBpL,OAAS,IAuB1C,MAAO,CAAE3C,IAAAA,EAAKwI,OAlBd,SAAgBnK,GACZ2B,EAAI3B,EAAGwB,KAiBWH,UAftB,SAAmBtB,EAAKkQ,EAAarQ,GACjC,MAAMoQ,EAAa,CAACjQ,EAAKkQ,GAMzB,OALAJ,EAAY/H,IAAIkI,GACS,IAArBH,EAAYlN,OACZiN,EAAOhD,EAAMjL,IAAQ/B,GAEzBG,EAAIyB,GACG,KACHqO,EAAYpN,OAAOuN,GACM,IAArBH,EAAYlN,OACZiN,IACAA,EAAO,SCjDvB,MAAMM,u1iHAGAC,+nuGAIN,IAAIC,GAAaT,GAAS,YACtBU,GAAmBV,GAASzP,OAAOuP,KAAKS,GAAWI,SAAS,IAC5DC,GAAeZ,IAAS,GACxBa,GAAqBb,IAAS,GAC9Bc,GAAqBd,IAAS,GAG9Be,GAAiBf,GAAS,IAG1BgB,GAAiBhB,GAAS,IAG1BiB,GAAsBjB,IAAS,GAG/BkB,GAAelB,GAAS,GAC5B,MAAMmB,GAA0B,iCCGlBC,GAAUtG,KAAYjG,KAAMiG,oFADtBA,cAApB7G,SACIhB,6CADwC6H,uBAA2BA,qDACzDsG,GAAUtG,KAAYjG,KAAMiG,8CADtBA,iDAdPsG,GAAWrJ,EAAKsJ,SACf5K,EAAIsB,EAAIuJ,cACRC,EAAIF,EAAMC,cACVnR,EAAIsG,EAAEyC,QAAQqI,OACfA,IAAY,IAAPpR,SACC4H,QAELqH,EAAImC,EAAE5M,cACLoD,EAAIyJ,OAAO,EAAGrR,GAAK,MAAQ4H,EAAIyJ,OAAOrR,EAAGiP,GAAK,OAASrH,EAAIyJ,OAAOrR,EAAIiP,kHAtBtEqC,oBACAC,KAEPC,GAAU,sIAGVA,GAAU,mBAIVA,GAAU,cAkBkFC,EAAc,oBAAaC,EAAkBJ,UAAaK,GAAuB,uLCF9JhH,KAAWA,2BAAhBnG,2LADNV,qFACW6G,KAAWA,cAAhBnG,yHAAAA,8DAAAA,iLAC8BmG,mBAAoBA,6FAApBA,4BAAoBA,sIAHvDA,qSAHb7G,SACIhB,OACIA,WAAmB6H,4GAAAA,UAAAA,MACdA,sOAvBLiH,EAAc,uBAEEhN,MACJ,KAATA,eAGCiN,KACAC,EAAO1R,OAAO2R,OAAO3B,GAAWI,iBAC5BjM,EAAI,EAAGA,EAAIuN,EAAKtN,OAAQD,SACxByN,EAAW5R,OAAO2R,OAAOD,EAAKvN,YAC1B0N,EAAI,EAAGA,EAAID,EAASxN,OAAQyN,IAC5BD,EAASC,GAAS,KAAEC,cAAcnJ,QAAQnE,IAAS,GACnDiN,EAAUzQ,KAAK4Q,EAASC,WAI7BJ,cAMYD,+BAAmGD,GAAuB,SAAMC,EAAc,wECmCzK,SAASO,GAASxL,GACd,MAAM/D,EAAI+D,EAAI,EACd,OAAO/D,EAAIA,EAAIA,EAAI,ECEvB,SAASwP,GAAMpP,GAAMsE,MAAEA,EAAQ,EAACD,SAAEA,EAAW,IAAG6F,OAAEA,EAASiF,IAAa,IACpE,MAAMxO,EAAQ0O,iBAAiBrP,GACzBsP,GAAW3O,EAAM2O,QACjBC,EAASC,WAAW7O,EAAM4O,QAC1BE,EAAcD,WAAW7O,EAAM+O,YAC/BC,EAAiBH,WAAW7O,EAAMiP,eAClCC,EAAaL,WAAW7O,EAAMmP,WAC9BC,EAAgBP,WAAW7O,EAAMqP,cACjCC,EAAmBT,WAAW7O,EAAMuP,gBACpCC,EAAsBX,WAAW7O,EAAMyP,mBAC7C,MAAO,CACH9L,MAAAA,EACAD,SAAAA,EACA6F,OAAAA,EACAE,IAAKzG,GACD,6BAAYiG,KAAKyG,IAAQ,GAAJ1M,EAAQ,GAAK2L,aACvB3L,EAAI4L,oBACC5L,EAAI8L,uBACD9L,EAAIgM,mBACRhM,EAAIkM,sBACDlM,EAAIoM,yBACDpM,EAAIsM,4BACDtM,EAAIwM,6GChEcxI,yDAAtBA,+FAAZ7G,SAAGhB,kCAA+B6H,6BAAtBA,gGAdZA,KAAK2I,YAWC3I,KAAK4I,aACL5I,KAAK6I,WAIL7I,KAAK8I,WAHRrT,OAAOsT,QAAQ/I,KAAKgJ,4BAAzBnP,2YAjBlBV,SACIhB,OACIA,OACIA,OACIA,qBAEJA,cAIJA,OACIA,cAGAA,OACIA,4BACAA,8EAIAA,8CAhBI6H,KAAK2I,+BAWC3I,KAAK4I,yCACL5I,KAAK6I,4CACRpT,OAAOsT,QAAQ/I,KAAKgJ,eAAzBnP,4HAAAA,mBAGQmG,KAAK8I,sFAxBhB5O,iRCgDPf,2BAAkB6G,0EAMHA,KAAsBvK,OAAO2R,OAAOpH,KAAS0F,kCAAlD7L,wRAHVV,SACIhB,cACAA,mFACW6H,KAAsBvK,OAAO2R,OAAOpH,KAAS0F,qBAAlD7L,yHAAAA,8DAAAA,iQACmBmG,sFAAAA,kLAbFA,KAASiJ,YACjBjJ,KAASjG,UACLiG,KAASkJ,cACVlJ,KAASmJ,aACLnJ,KAASoJ,kBACjCpJ,eAGDA,MAASA,sFARQ,+DACR,mEACI,kEACD,sEACI,6JALzB7G,SACIhB,OAAGA,8BACHA,OAAGA,8BACHA,OAAGA,8BACHA,OAAGA,8BACHA,OAAGA,oGAJ4B6H,KAASiJ,qCACjBjJ,KAASjG,mCACLiG,KAASkJ,uCACVlJ,KAASmJ,sCACLnJ,KAASoJ,wBACjCpJ,4DAGDA,MAASA,ySA7CHqJ,YACAC,KAEX5K,QACQ4K,GACAC,QAAQC,iBAuBZC,GAAkB,oGAnBSC,OACvBC,KACAzC,aAEItN,EAAI,EAAGA,EAAI8P,EAAQ7P,OAAQD,IAC1B+P,EAAMC,SAASF,EAAQ9P,MACxB+P,EAAMlT,KAAKiT,EAAQ9P,IACnBsN,EAAUzQ,KAAKiP,GAAWG,QAAQ6D,EAAQ9P,aAKlDsN,EAAU2C,eAAc5T,EAAGC,UAChBD,EAAE0S,OAASzS,EAAEyS,UAGjBzB,kBAMPuC,GAAmBA,inKCjC3BtQ,oVCSyB6G,4KADdvK,OAAOsT,QAAQrD,GAAWG,8BAA/BhM,uLAFNV,SACIhB,4FACO1C,OAAOsT,QAAQrD,GAAWG,iBAA/BhM,yHAAAA,8DAAAA,mOAPF6E,QACI6K,QAAQC,sNCUaxJ,YAAY,uEACjC7G,kDADqB6G,oJAFpBA,KAAcjG,UACZtE,OAAOsT,QAAQ/I,KAAc8J,2BAAlCjQ,mKAFNV,SACIhB,oGAAK6H,KAAcjG,kCACZtE,OAAOsT,QAAQ/I,KAAc8J,cAAlCjQ,yHAAAA,8DAAAA,gOAVF6E,QACI6K,QAAQC,+BAGDO,gSCMuBhQ,KAAQiG,KAAU8J,KAAQ9J,6KADrDvK,OAAOsT,QAAQtD,GAAWI,8BAA/BhM,2LAFNV,SACIhB,4FACO1C,OAAOsT,QAAQtD,GAAWI,iBAA/BhM,yHAAAA,8DAAAA,mOARF6E,QACI6K,QAAQC,scCHhBrQ,66CCAAA,01YCAAA,0uCCAAA,gRCa6B6G,YAAwB,uFAAxBA,gIADnBA,uGAFV7G,SACIhB,oDACM6H,sLAXFgK,+CAGAA,41CCW6BhK,+FAAAA,8WAHZ,aAAhBA,OAEqB,aAAhBA,OAEgB,cAAhBA,OAEgB,oBAAhBA,OAEgB,eAAhBA,OAEgB,iBAAhBA,OAEgB,kBAAhBA,OAEgB,gBAAhBA,OAEgB,UAAhBA,mIAjBd7G,8bCEK6G,KAAKjG,+GAD8D,mBAAdiG,KAAKjG,cAA/DZ,kCAAoG6G,kCAC/FA,KAAKjG,qCAD8D,mBAAdiG,KAAKjG,+IAbhDG,iEAGW,mBAAdA,EAAKH,UACL+M,EAAc,oBAEdmD,EAAoB/P,EAAKH,aACzBmQ,GAAsB,6MCCMnQ,KAAQiG,oMAFZjG,KAAQ,2BAC7BtE,OAAOsT,QAAQtD,GAAWI,8BAA/BhM,6NAHVV,SACIhB,yGAEW1C,OAAOsT,QAAQtD,GAAWI,iBAA/BhM,yHAAAA,kFAAAA,0fCgBDmG,KAAKjG,UAELiG,MAA4BA,iIAJrC7G,SACIhB,2DAAgD6H,wCAC3CA,KAAKjG,iBAELiG,MAA4BA,sPAxBtB9F,KAKPiQ,GAA2B,kEAIT,yBAAdjQ,EAAKH,UACLoQ,GAA2B,QAE3BC,GAAuBA,WAEvBtD,EAAc5M,EAAKyL,qHCF1B3F,KAAKjG,uGADVZ,kCAAoD6G,kCAC/CA,KAAKjG,kIAbKG,sEAMP6M,EAAkB7M,UAClB4M,EAAc,0OCEtB3N,2BAAoD6G,0IATrC+J,sFAGPjD,EAAc,mBACduD,EAAkBN,sNCIS/J,sFAAAA,gKAFUjG,KAAQiG,KAAmB8J,KAAQrE,GAAWI,QAAQ7F,gBACxFvK,OAAOsT,QAAQtD,GAAWI,QAAQ7F,4BAAvCnG,kNAFNV,4HAC6CY,KAAQiG,KAAmB8J,KAAQrE,GAAWI,QAAQ7F,mCACxFvK,OAAOsT,QAAQtD,GAAWI,QAAQ7F,eAAvCnG,yHAAAA,kFAAAA,4CAF4B6C,SAAY,8HAAZA,SAAY,6QCWb3C,KAAQ,uBAAwB4L,WAAc,+BAC9C5L,KAAQ,kBAAmB4L,WAAc,6CACzC5L,KAAQ,aAAc4L,WAAc,wCACpC5L,KAAQ,eAAgB4L,WAAc,0CACtC5L,KAAQ,gBAAiB4L,WAAc,2CACvC5L,KAAQ,cAAe4L,WAAc,yCACrC5L,KAAQ,QAAS4L,WAAc,kBAE/C3F,MAAuBA,2UAVhC7G,SACIhB,+KASK6H,MAAuBA,qrBACxB7G,uJAZP6G,8JADiFA,KAAgBqG,GAA0B,WAAa,qEADjJlN,SACIhB,2JAAsF6H,KAAgBqG,GAA0B,WAAa,kDACxIrG,kUADwKsK,GAAiBA,UAAeF,GAAsB,UAAOF,GAAsB,0rCCfpQ/Q,gqBCqDa6G,KAAgBqG,GAA0B,iBAAmB,oDAA1ElN,SACIhB,2BAGAA,2BAGAA,2BAGAA,2BAGAA,0FAbS6H,KAAgBqG,GAA0B,iBAAmB,6bAvCtE7N,SAASiC,iBAAiB,SAAU8P,UAC1BC,EAAgBhS,SAASiS,eAAe,WAC1CC,EAAgBH,EAAInS,aAGhBsS,IAAkBF,SAKtBE,EAAgBA,EAAcnR,iBACzBmR,QAGTR,GAAsB,QAI1B1R,SAASiC,iBAAiB,SAAU8P,UAC1BC,EAAgBhS,SAASiS,eAAe,cAC1CC,EAAgBH,EAAInS,aAGhBsS,IAAkBF,SAKtBE,EAAgBA,EAAcnR,iBACzBmR,QAGT1D,GAAuB,2DC5CrB,oEAAQ,CACjB5O,OAAQI,SAASmS"} \ No newline at end of file diff --git a/public/favicon.png b/public/favicon.png new file mode 100644 index 0000000..7e6f5eb Binary files /dev/null and b/public/favicon.png differ diff --git a/public/global.css b/public/global.css new file mode 100644 index 0000000..03a869f --- /dev/null +++ b/public/global.css @@ -0,0 +1,63 @@ +html, body { + position: relative; + width: 100%; + height: 100%; +} + +body { + color: #333; + margin: 0; + padding: 8px; + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; +} + +a { + color: rgb(0,100,200) !important; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +a:visited { + color: rgb(0,80,160); +} + +label { + display: block; +} + +input, button, select, textarea { + font-family: inherit; + font-size: inherit; + -webkit-padding: 0.4em 0; + padding: 0.4em; + margin: 0 0 0.5em 0; + box-sizing: border-box; + border: 1px solid #ccc; + border-radius: 2px; +} + +input:disabled { + color: #ccc; +} + +button { + color: #333; + background-color: #f4f4f4; + outline: none; +} + +button:disabled { + color: #999; +} + +button:not(:disabled):active { + background-color: #ddd; +} + +button:focus { + border-color: #666; +} diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..d3697b3 --- /dev/null +++ b/public/index.html @@ -0,0 +1,31 @@ + + + + + + + Svelte app + + + + + + + + + + + + + + + diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 0000000..d31e65f --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,82 @@ +import svelte from 'rollup-plugin-svelte'; +import commonjs from '@rollup/plugin-commonjs'; +import resolve from '@rollup/plugin-node-resolve'; +import livereload from 'rollup-plugin-livereload'; +import { terser } from 'rollup-plugin-terser'; +import css from 'rollup-plugin-css-only'; +import json from "@rollup/plugin-json"; + +const production = !process.env.ROLLUP_WATCH; + +function serve() { + let server; + + function toExit() { + if (server) server.kill(0); + } + + return { + writeBundle() { + if (server) return; + server = require('child_process').spawn('npm', ['run', 'start', '--', '--dev'], { + stdio: ['ignore', 'inherit', 'inherit'], + shell: true + }); + + process.on('SIGTERM', toExit); + process.on('exit', toExit); + } + }; +} + +export default { + input: 'src/main.js', + output: { + sourcemap: true, + format: 'iife', + name: 'app', + file: 'public/build/bundle.js' + }, + plugins: [ + svelte({ + compilerOptions: { + // enable run-time checks when not in production + dev: !production + } + }), + // we'll extract any component CSS out into + // a separate file - better for performance + css({ output: 'bundle.css' }), + + // If you have external dependencies installed from + // npm, you'll most likely need these plugins. In + // some cases you'll need additional configuration - + // consult the documentation for details: + // https://github.com/rollup/plugins/tree/master/packages/commonjs + resolve({ + browser: true, + dedupe: ['svelte'] + }), + commonjs(), + + // In dev mode, call `npm run start` once + // the bundle has been generated + !production && serve(), + + // Watch the `public` directory and refresh the + // browser on changes when not in production + !production && livereload('public'), + + // If we're building for production (npm run build + // instead of npm run dev), minify + production && terser(), + + //JSON + json({ + compact: true + }), + ], + watch: { + clearScreen: false + } +}; diff --git a/scripts/setupTypeScript.js b/scripts/setupTypeScript.js new file mode 100644 index 0000000..133658a --- /dev/null +++ b/scripts/setupTypeScript.js @@ -0,0 +1,121 @@ +// @ts-check + +/** This script modifies the project to support TS code in .svelte files like: + + + + As well as validating the code for CI. + */ + +/** To work on this script: + rm -rf test-template template && git clone sveltejs/template test-template && node scripts/setupTypeScript.js test-template +*/ + +const fs = require("fs") +const path = require("path") +const { argv } = require("process") + +const projectRoot = argv[2] || path.join(__dirname, "..") + +// Add deps to pkg.json +const packageJSON = JSON.parse(fs.readFileSync(path.join(projectRoot, "package.json"), "utf8")) +packageJSON.devDependencies = Object.assign(packageJSON.devDependencies, { + "svelte-check": "^2.0.0", + "svelte-preprocess": "^4.0.0", + "@rollup/plugin-typescript": "^8.0.0", + "typescript": "^4.0.0", + "tslib": "^2.0.0", + "@tsconfig/svelte": "^2.0.0" +}) + +// Add script for checking +packageJSON.scripts = Object.assign(packageJSON.scripts, { + "check": "svelte-check --tsconfig ./tsconfig.json" +}) + +// Write the package JSON +fs.writeFileSync(path.join(projectRoot, "package.json"), JSON.stringify(packageJSON, null, " ")) + +// mv src/main.js to main.ts - note, we need to edit rollup.config.js for this too +const beforeMainJSPath = path.join(projectRoot, "src", "main.js") +const afterMainTSPath = path.join(projectRoot, "src", "main.ts") +fs.renameSync(beforeMainJSPath, afterMainTSPath) + +// Switch the app.svelte file to use TS +const appSveltePath = path.join(projectRoot, "src", "App.svelte") +let appFile = fs.readFileSync(appSveltePath, "utf8") +appFile = appFile.replace(" + + + +
screen_width_breakpoint ? "grid-container" : "grid-container-mobile"}> +
+
+
+ + +
+ +
+ +
+ + \ No newline at end of file diff --git a/src/components/display_info/Display_info.svelte b/src/components/display_info/Display_info.svelte new file mode 100644 index 0000000..1c36513 --- /dev/null +++ b/src/components/display_info/Display_info.svelte @@ -0,0 +1,42 @@ + + +
+ {#if $to_display === "all_algs"} + + {:else if $to_display === "category"} + + {:else if $to_display === "algorithm"} + + {:else if $to_display === "acknowledgments"} + + {:else if $to_display === "references"} + + {:else if $to_display === "translations"} + + {:else if $to_display === "other_surveys"} + + {:else if $to_display === "terminology"} + + {:else if $to_display === "about"} + + {/if} +
+ + diff --git a/src/components/display_info/about/About.svelte b/src/components/display_info/about/About.svelte new file mode 100644 index 0000000..3d73a62 --- /dev/null +++ b/src/components/display_info/about/About.svelte @@ -0,0 +1,21 @@ + + +
+

About

+

Author:

+

+ author photo +

+

Stephen Jordan

+

Microsoft Quantum

+
+

Last updated: February 1st, 2021

+

Date created: April 22nd, 2011

+
+

This is a comprehensive catalog of quantum algorithms. If you notice any errors or + omissions, please email me at stephen.jordan@microsoft.com. (Alternatively, you may + submit a pull request to the repository on github.) + Your help is appreciated and will be acknowledged.

+
\ No newline at end of file diff --git a/src/components/display_info/acknowledgments/Acknowledgments.svelte b/src/components/display_info/acknowledgments/Acknowledgments.svelte new file mode 100644 index 0000000..1186d9c --- /dev/null +++ b/src/components/display_info/acknowledgments/Acknowledgments.svelte @@ -0,0 +1,64 @@ + + +
+

Acknowledgments

+

+ I thank the following people for contributing their expertise (in + chronological order). +

+ + +
+ + diff --git a/src/components/display_info/algorithm/Algorithm.svelte b/src/components/display_info/algorithm/Algorithm.svelte new file mode 100644 index 0000000..246f12a --- /dev/null +++ b/src/components/display_info/algorithm/Algorithm.svelte @@ -0,0 +1,76 @@ + + +
+

Algorithm id: {@html alg_data.alg_id}

+

Name: {@html alg_data.name}

+

Category: {@html alg_data.category}

+

Speedup: {@html alg_data.speedup}

+

Description: {@html alg_data.description}

+ {#if !alone} + + {/if} + {#if alone || show_references} +
+

References:

+
+ {#each getRelevantReferences(Object.values(alg_data.references)) as reference} + + {/each} +
+
+ {/if} + +
+ + diff --git a/src/components/display_info/algorithm/Display_algorithm.svelte b/src/components/display_info/algorithm/Display_algorithm.svelte new file mode 100644 index 0000000..0b07a36 --- /dev/null +++ b/src/components/display_info/algorithm/Display_algorithm.svelte @@ -0,0 +1,20 @@ + +
+

Algorithm information

+ {#key unique} + + {/key} +
diff --git a/src/components/display_info/all_algs/All_algs.svelte b/src/components/display_info/all_algs/All_algs.svelte new file mode 100644 index 0000000..22cdf45 --- /dev/null +++ b/src/components/display_info/all_algs/All_algs.svelte @@ -0,0 +1,18 @@ + + +
+

All algorithms

+ {#each Object.entries(algorithms.default) as [category, algs]} + + {/each} +
diff --git a/src/components/display_info/all_algs/All_cat_algs.svelte b/src/components/display_info/all_algs/All_cat_algs.svelte new file mode 100644 index 0000000..223bed1 --- /dev/null +++ b/src/components/display_info/all_algs/All_cat_algs.svelte @@ -0,0 +1,23 @@ + + +
+

{category_data.name}

+ {#each Object.entries(category_data.algs) as [alg_id, alg]} + +
+ {/each} +
+ + + diff --git a/src/components/display_info/other_surveys/Other_surveys.svelte b/src/components/display_info/other_surveys/Other_surveys.svelte new file mode 100644 index 0000000..b90cfc9 --- /dev/null +++ b/src/components/display_info/other_surveys/Other_surveys.svelte @@ -0,0 +1,27 @@ + + +
+

Other Surveys

+

For overviews of quantum algorithms I recommend:

+ +
+ + + diff --git a/src/components/display_info/references/Reference.svelte b/src/components/display_info/references/Reference.svelte new file mode 100644 index 0000000..fdca914 --- /dev/null +++ b/src/components/display_info/references/Reference.svelte @@ -0,0 +1,43 @@ + + + +
+ + + + + + + + + +
+

{data.ref_id}

+
+ +
+ + +

{@html data.authors}

+

{@html data.title}

+ {#each Object.entries(data.links) as [link_name, url]} +

{link_name}

+ {/each} +

{@html data.extra}

+
+
+ + + diff --git a/src/components/display_info/references/References.svelte b/src/components/display_info/references/References.svelte new file mode 100644 index 0000000..392c678 --- /dev/null +++ b/src/components/display_info/references/References.svelte @@ -0,0 +1,17 @@ + + +
+

References

+ {#each Object.entries(references.default) as [ref_id, reference]} + + {/each} + +
diff --git a/src/components/display_info/terminology/Terminology.svelte b/src/components/display_info/terminology/Terminology.svelte new file mode 100644 index 0000000..d51253c --- /dev/null +++ b/src/components/display_info/terminology/Terminology.svelte @@ -0,0 +1,13 @@ + + +
+

Terminology

+

If there exists a positive constant α + such that the runtime C(n) of the best known classical algorithm and the runtime + Q(n) of the quantum algorithm satisfy C=2Ω(Qα) + then I call the speedup superpolynomial. Otherwise I call it polynomial. + For a review of the O,Ω,Θ,O~,... notations see the + Wikipedia article.

+
diff --git a/src/components/display_info/translations/Translations.svelte b/src/components/display_info/translations/Translations.svelte new file mode 100644 index 0000000..d3bd86c --- /dev/null +++ b/src/components/display_info/translations/Translations.svelte @@ -0,0 +1,19 @@ + + +
+

Translations

+

This page has been translated into:

+ +
+ + + diff --git a/src/components/footer/Footer.svelte b/src/components/footer/Footer.svelte new file mode 100644 index 0000000..991eafe --- /dev/null +++ b/src/components/footer/Footer.svelte @@ -0,0 +1,26 @@ + + + \ No newline at end of file diff --git a/src/components/header/Header.svelte b/src/components/header/Header.svelte new file mode 100644 index 0000000..032f131 --- /dev/null +++ b/src/components/header/Header.svelte @@ -0,0 +1,15 @@ +
+

Quantum Algorithm Zoo

+
+ + \ No newline at end of file diff --git a/src/components/menu/Menu.svelte b/src/components/menu/Menu.svelte new file mode 100644 index 0000000..fca71dc --- /dev/null +++ b/src/components/menu/Menu.svelte @@ -0,0 +1,60 @@ + + + + + diff --git a/src/components/menu/Menu_tab.svelte b/src/components/menu/Menu_tab.svelte new file mode 100644 index 0000000..7106614 --- /dev/null +++ b/src/components/menu/Menu_tab.svelte @@ -0,0 +1,56 @@ + + +
+ + {#if local_display_categories && $display_categories} + + {/if} +
+ + \ No newline at end of file diff --git a/src/components/menu/categories_menu/Categories_menu.svelte b/src/components/menu/categories_menu/Categories_menu.svelte new file mode 100644 index 0000000..6080a4d --- /dev/null +++ b/src/components/menu/categories_menu/Categories_menu.svelte @@ -0,0 +1,22 @@ + + +
+ +
+ + diff --git a/src/components/menu/categories_menu/Categories_menu_tab.svelte b/src/components/menu/categories_menu/Categories_menu_tab.svelte new file mode 100644 index 0000000..9feedc5 --- /dev/null +++ b/src/components/menu/categories_menu/Categories_menu_tab.svelte @@ -0,0 +1,48 @@ + + +
+ {data.name} +
+ + \ No newline at end of file diff --git a/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu.svelte b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu.svelte new file mode 100644 index 0000000..631e38b --- /dev/null +++ b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu.svelte @@ -0,0 +1,23 @@ + + + + + diff --git a/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_cat_tab.svelte b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_cat_tab.svelte new file mode 100644 index 0000000..19c78d5 --- /dev/null +++ b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_cat_tab.svelte @@ -0,0 +1,39 @@ + + +
+ All in category +
+ + \ No newline at end of file diff --git a/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_tab.svelte b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_tab.svelte new file mode 100644 index 0000000..1287934 --- /dev/null +++ b/src/components/menu/categories_menu/algorithms_menu/Algorithms_menu_tab.svelte @@ -0,0 +1,42 @@ + + +
+ {data.name} +
+ + \ No newline at end of file diff --git a/src/components/search/Search_bar.svelte b/src/components/search/Search_bar.svelte new file mode 100644 index 0000000..52e2368 --- /dev/null +++ b/src/components/search/Search_bar.svelte @@ -0,0 +1,62 @@ + + + + + \ No newline at end of file diff --git a/src/components/search/Search_result.svelte b/src/components/search/Search_result.svelte new file mode 100644 index 0000000..9896776 --- /dev/null +++ b/src/components/search/Search_result.svelte @@ -0,0 +1,48 @@ + + + +
{$to_display = "algorithm"; $alg_to_display = result_data; $show_search_results = false;}}> +

{@html boldQuery(result_data.name, matching_text)}

+
+ + + diff --git a/src/main.js b/src/main.js new file mode 100644 index 0000000..284bd8f --- /dev/null +++ b/src/main.js @@ -0,0 +1,7 @@ +import App from './App.svelte'; + +var app = new App({ + target: document.body +}); + +export default app; \ No newline at end of file diff --git a/src/storage/algorithms.json b/src/storage/algorithms.json new file mode 100644 index 0000000..1d0a835 --- /dev/null +++ b/src/storage/algorithms.json @@ -0,0 +1,1126 @@ +{ + "Algebraic and Number Theoretic Algorithms": { + "0": { + "alg_id": 0, + "name": "Factoring", + "speedup": "Superpolynomial", + "description": " Given an n -bit integer, find the prime factorization. The quantum algorithm of Peter Shor solves this in \\( \\widetilde{O} (n^3) \\) time [ 82 , 125 ]. The fastest known classical algorithm for integer factorization is the general number field sieve, which is believed to run in time \\( 2^{\\widetilde{O}(n^{1/3})} \\). The best rigorously proven upper bound on the classical complexity of factoring is \\( O(2^{n/4+o(1)}) \\) via the Pollard-Strassen algorithm [ 252 , 362 ]. Shor's factoring algorithm breaks RSA public-key encryption and the closely related quantum algorithms for discrete logarithms break the DSA and ECDSA digital signature schemes and the Diffie-Hellman key-exchange protocol. A quantum algorithm even faster than Shor's for the special case of factoring \u201csemiprimes\u201d, which are widely used in cryptography, is given in [ 271 ]. If small factors exist, Shor's algorithm can be beaten by a quantum algorithm using Grover search to speed up the elliptic curve factorization method [ 366 ]. Additional optimized versions of Shor's algorithm are given in [ 384 , 386 ]. There are proposed classical public-key cryptosystems not believed to be broken by quantum algorithms, cf. [ 248 ]. At the core of Shor's factoring algorithm is order finding, which can be reduced to the Abelian hidden subgroup problem , which is solved using the quantum Fourier transform. A number of other problems are known to reduce to integer factorization including the membership problem for matrix groups over fields of odd order [ 253 ], and certain diophantine problems relevant to the synthesis of quantum circuits [ 254 ]. ", + "references": [ + 82, + 125, + 252, + 362, + 271, + 366, + 384, + 386, + 248, + 253, + 254 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "1": { + "alg_id": 1, + "name": "Discrete-log", + "speedup": "Superpolynomial", + "description": " We are given three n -bit numbers a , b , and N , with the promise that \\( b = a^s \\mod N \\) for some s . The task is to find s . As shown by Shor [ 82 ], this can be achieved on a quantum computer in poly( n ) time. The fastest known classical algorithm requires time superpolynomial in n . By similar techniques to those in [ 82 ], quantum computers can solve the discrete logarithm problem on elliptic curves, thereby breaking elliptic curve cryptography [ 109 , 14 ]. A further optimization to Shor's algorithm is given in [ 385 ]. The superpolynomial quantum speedup has also been extended to the discrete logarithm problem on semigroups [ 203 , 204 ]. See also Abelian hidden subgroup . ", + "references": [ + 82, + 82, + 109, + 14, + 385, + 203, + 204 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "2": { + "alg_id": 2, + "name": "Pell's Equation", + "speedup": "Superpolynomial", + "description": " Given a positive nonsquare integer d , Pell's equation is \\( x^2 - d y^2 = 1 \\). For any such d there are infinitely many pairs of integers ( x,y ) solving this equation. Let \\( (x_1,y_1) \\) be the pair that minimizes \\( x+y\\sqrt{d} \\). If d is an n -bit integer ( i.e. \\( 0 \\leq d \\lt 2^n \\) ), \\( (x_1,y_1) \\) may in general require exponentially many bits to write down. Thus it is in general impossible to find \\( (x_1,y_1) \\) in polynomial time. Let \\( R = \\log(x_1+y_1 \\sqrt{d}) \\). \\( \\lfloor R \\rceil \\) uniquely identifies \\( (x_1,y_1) \\). As shown by Hallgren [ 49 ], given a n -bit number d , a quantum computer can find \\( \\lfloor R \\rceil \\) in poly( n ) time. No polynomial time classical algorithm for this problem is known. Factoring reduces to this problem. This algorithm breaks the Buchman-Williams cryptosystem. See also Abelian hidden subgroup . ", + "references": [ + 49 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "3": { + "alg_id": 3, + "name": "Principal Ideal", + "speedup": "Superpolynomial", + "description": " We are given an n -bit integer d and an invertible ideal I of the ring \\( \\mathbb{Z}[\\sqrt{d}] \\). I is a principal ideal if there exists \\( \\alpha \\in \\mathbb{Q}(\\sqrt{d}) \\) such that \\( I = \\alpha \\mathbb{Z}[\\sqrt{d}] \\). \\( \\alpha \\) may be exponentially large in d . Therefore \\( \\alpha \\) cannot in general even be written down in polynomial time. However, \\( \\lfloor \\log \\alpha \\rceil \\) uniquely identifies \\( \\alpha \\). The task is to determine whether I is principal and if so find \\( \\lfloor \\log \\alpha \\rceil \\). As shown by Hallgren, this can be done in polynomial time on a quantum computer [ 49 ]. A modified quantum algorithm for this problem using fewer qubits was given in [ 131 ]. A quantum algorithm solving the principal ideal problem in number fields of arbitrary degree ( i.e. scaling polynomially in the degree) was subsequently given in [ 329 ]. Factoring reduces to solving Pell's equation, which reduces to the principal ideal problem. Thus the principal ideal problem is at least as hard as factoring and therefore is probably not in P. See also Abelian hidden subgroup . ", + "references": [ + 49, + 131, + 329 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "4": { + "alg_id": 4, + "name": "Unit Group", + "speedup": "Superpolynomial", + "description": " The number field \\( \\mathbb{Q}(\\theta) \\) is said to be of degree d if the lowest degree polynomial of which \\( \\theta \\) is a root has degree d . The set \\( \\mathcal{O} \\) of elements of \\( \\mathbb{Q}(\\theta) \\) which are roots of monic polynomials in \\( \\mathbb{Z}[x] \\) forms a ring, called the ring of integers of \\( \\mathbb{Q}(\\theta) \\). The set of units (invertible elements) of the ring \\( \\mathcal{O} \\) form a group denoted \\( \\mathcal{O}^* \\). As shown by Hallgren [ 50 ], and independently by Schmidt and Vollmer [ 116 ], for any \\( \\mathbb{Q}(\\theta) \\) of fixed degree, a quantum computer can find in polynomial time a set of generators for \\( \\mathcal{O}^* \\) given a description of \\( \\theta \\). No polynomial time classical algorithm for this problem is known. Hallgren and collaborators subsequently discovered how to achieve polynomial scaling in the degree [ 213 ]. See also [ 329 ]. The algorithms rely on solving Abelian hidden subgroup problems over the additive group of real numbers. ", + "references": [ + 50, + 116, + 213, + 329 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "5": { + "alg_id": 5, + "name": "Class Group", + "speedup": "Superpolynomial", + "description": " The number field \\( \\mathbb{Q}(\\theta) \\) is said to be of degree d if the lowest degree polynomial of which \\( \\theta \\) is a root has degree d . The set \\( \\mathcal{O} \\) of elements of \\( \\mathbb{Q}(\\theta) \\) which are roots of monic polynomials in \\( \\mathbb{Z}[x] \\) forms a ring, called the ring of integers of \\( \\mathbb{Q}(\\theta) \\), which is a Dedekind domain. For a Dedekind domain, the nonzero fractional ideals modulo the nonzero principal ideals form a group called the class group. As shown by Hallgren [ 50 ], a quantum computer can find a set of generators for the class group of the ring of integers of any constant degree number field, given a description of \\( \\theta \\), in time poly(log(\\( | \\mathcal{O} | \\))). An improved quantum algorithm, whose runtime is also polynomial in d was subsequently given in [ 329 ]. No polynomial time classical algorithm for these problems are known. See also Abelian hidden subgroup . ", + "references": [ + 50, + 329 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "6": { + "alg_id": 6, + "name": "Gauss Sums", + "speedup": "Superpolynomial", + "description": " Let \\( \\mathbb{F}_q \\) be a finite field. The elements other than zero of \\( \\mathbb{F}_q \\) form a group \\( \\mathbb{F}_q^\\times \\) under multiplication, and the elements of \\( \\mathbb{F}_q \\) form an (Abelian but not necessarily cyclic) group \\( \\mathbb{F}_q^+ \\) under addition. We can choose some character \\( \\chi^\\times \\) of \\( \\mathbb{F}_q^\\times \\) and some character \\( \\chi^+ \\) of \\( \\mathbb{F}_q^+ \\). The corresponding Gauss sum is the inner product of these characters: \\( \\sum_{x \\neq 0 \\in \\mathbb{F}_q} \\chi^+(x) \\chi^\\times(x) \\) As shown by van Dam and Seroussi [ 90 ], Gauss sums can be estimated to polynomial precision on a quantum computer in polynomial time. Although a finite ring does not form a group under multiplication, its set of units does. Choosing a representation for the additive group of the ring, and choosing a representation for the multiplicative group of its units, one can obtain a Gauss sum over the units of a finite ring. These can also be estimated to polynomial precision on a quantum computer in polynomial time [ 90 ]. No polynomial time classical algorithm for estimating Gauss sums is known. Discrete log reduces to Gauss sum estimation [ 90 ]. Certain partition functions of the Potts model can be computed by a polynomial-time quantum algorithm related to Gauss sum estimation [ 47 ]. ", + "references": [ + 90, + 90, + 90, + 47 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "7": { + "alg_id": 7, + "name": "Primality Proving", + "speedup": "Polynomial", + "description": " Given an n -bit number, return a proof of its primality. The fastest classical algorithms are AKS, the best versions of which [ 393 , 394 ] have essentially-quartic complexity, and ECPP, where the heuristic complexity of the fastest version [ 395 ] is also essentially quartic. The fastest known quantum algorithm for this problem is the method of Donis-Vela and Garcia-Escartin [ 396 ], with complexity \\( O(n^2 (\\log \\ n)^3 \\log \\ \\log \\ n) \\). This improves upon a prior factoring-based quantum algorithm for primality proving [ 397 ] that has complexity \\( O(n^3 \\log \\ n \\ \\log \\ \\log \\ n) \\). A recent result of Harvey and Van Der Hoeven [ 398 ] can be used to improve the complexity of the factoring-based quantum algorithm for primality proving to \\( O(n^3 \\log n) \\) and it may be possible to similarly reduce the complexity of the Donis-Vela-Garcia-Escartin algorithm to \\( O(n^2 (\\log \\ n)^3) \\) [ 399 ]. ", + "references": [ + 393, + 394, + 395, + 396, + 397, + 398, + 399 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "8": { + "alg_id": 8, + "name": "Solving Exponential Congruences", + "speedup": "Polynomial", + "description": " We are given \\( a,b,c,f,g \\in \\mathbb{F}_q \\). We must find integers \\(x,y\\) such that \\( a f^x + b g^y = c \\). As shown in [ 111 ], quantum computers can solve this problem in \\( \\widetilde{O}(q^{3/8}) \\) time whereas the best classical algorithm requires \\( \\widetilde{O}(q^{9/8}) \\) time. The quantum algorithm of [ 111 ] is based on the quantum algorithms for discrete logarithms and searching. ", + "references": [ + 111, + 111 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "9": { + "alg_id": 9, + "name": "Matrix Elements of Group Representations", + "speedup": "Superpolynomial", + "description": " All representations of finite groups and compact linear groups can be expressed as unitary matrices given an appropriate choice of basis. Conjugating the regular representation of a group by the quantum Fourier transform circuit over that group yields a direct sum of the group's irreducible representations. Thus, the efficient quantum Fourier transform over the symmetric group [ 196 ], together with the Hadamard test, yields a fast quantum algorithm for additively approximating individual matrix elements of the arbitrary irreducible representations of \\( S_n \\). Similarly, using the quantum Schur transform [ 197 ], one can efficiently approximate matrix elements of the irreducible representations of SU(n) that have polynomial weight. Direct implementations of individual irreducible representations for the groups U(n), SU(n), SO(n), and \\( A_n \\) by efficient quantum circuits are given in [ 106 ]. Instances that appear to be exponentially hard for known classical algorithms are also identified in [ 106 ]. ", + "references": [ + 196, + 197, + 106, + 106 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "10": { + "alg_id": 10, + "name": "Verifying Matrix Products", + "speedup": "Polynomial", + "description": " Given three \\( n \\times n \\) matrices, A,B , and C , the matrix product verification problem is to decide whether AB=C . Classically, the best known algorithm achieves this in time \\( O(n^2) \\), whereas the best known classical algorithm for matrix multiplication runs in time \\( O(n^{2.373}) \\). Ambainis et al. discovered a quantum algorithm for this problem with runtime \\( O(n^{7/4}) \\) [ 6 ]. Subsequently, Buhrman and \u0160palek improved upon this, obtaining a quantum algorithm for this problem with runtime \\( O(n^{5/3}) \\) [ 19 ]. This latter algorithm is based on results regarding quantum walks that were proven in [ 85 ]. ", + "references": [ + 6, + 19, + 85 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "11": { + "alg_id": 11, + "name": "Subset-sum", + "speedup": "Polynomial", + "description": " Given a list of integers \\( x_1,\\ldots,x_n \\), and a target integer s , the subset-sum problem is to determine whether the sum of any subset of the given integers adds up to s . This problem is NP-complete, and therefore is unlikely to be solvable by classical or quantum algorithms with polynomial worst-case complexity. In the hard instances the given integers are of order \\( 2^n \\) and much research on subset sum focuses on average case instances in this regime. In [ 178 ], a quantum algorithm is given that solves such instances in time \\( 2^{0.241n} \\), up to polynomial factors. This quantum algorithm works by applying a variant of Ambainis's quantum walk algorithm for element-distinctness [ 7 ] to speed up a sophisticated classical algorithm for this problem due to Howgrave-Graham and Joux. The fastest known classical algorithm for such instances of subset-sum runs in time \\( 2^{0.291n} \\), up to polynomial factors [ 404 ]. ", + "references": [ + 178, + 7, + 404 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "12": { + "alg_id": 12, + "name": "Decoding", + "speedup": "Varies", + "description": " Classical error correcting codes allow the detection and correction of bit-flips by storing data reduntantly. Maximum-likelihood decoding for arbitrary linear codes is NP-complete in the worst case, but for structured codes or bounded error efficient decoding algorithms are known. Quantum algorithms have been formulated to speed up the decoding of convolutional codes [ 238 ] and simplex codes [ 239 ]. ", + "references": [ + 238, + 239 + ], + "category": "Algebraic and Number Theoretic Algorithms" + }, + "13": { + "alg_id": 13, + "name": "Quantum Cryptanalysis", + "speedup": "Various", + "description": " It is well-known that Shor's algorithms for factoring and discrete logarithms [ 82 , 125 ] completely break the RSA and Diffie-Hellman cryptosystems, as well as their elliptic-curve-based variants [ 109 , 14 ]. (A number of \"post-quantum\" public-key cryptosystems have been proposed to replace these primitives, which are not known to be broken by quantum attacks.) Beyond Shor's algorithm, there is a growing body of work on quantum algorithms specifically designed to attack cryptosystems. These generally fall into three categories. The first is quantum algorithms providing polynomial or sub-exponential time attacks on cryptosystems under standard assumptions. In particular, the algorithm of Childs, Jao, and Soukharev for finding isogenies of elliptic curves breaks certain elliptic curve based cryptosystems in subexponential time that were not already broken by Shor's algorithm [ 283 ]. The second category is quantum algorithms achieving polynomial improvement over known classical cryptanalytic attacks by speeding up parts of these classical algorithms using Grover search, quantum collision finding, etc. Such attacks on private-key [ 284 , 285 , 288 , 315 , 316 ] and public-key [ 262 , 287 ] primitives, do not preclude the use of the associated cryptosystems but may influence choice of key size. The third category is attacks that make use of quantum superposition queries to block ciphers. These attacks in many cases completely break the cryptographic primitives [ 286 , 289 , 290 , 291 , 292 ]. However, in most practical situations such superposition queries are unlikely to be feasible.
", + "references": [ + 82, + 125, + 109, + 14, + 283, + 284, + 285, + 288, + 315, + 316, + 262, + 287, + 286, + 289, + 290, + 291, + 292 + ], + "category": "Algebraic and Number Theoretic Algorithms" + } + }, + "Oracular Algorithms": { + "0": { + "alg_id": 14, + "name": "Searching", + "speedup": "Polynomial", + "description": " We are given an oracle with N allowed inputs. For one input w (\"the winner\") the corresponding output is 1, and for all other inputs the corresponding output is 0. The task is to find w . On a classical computer this requires \\( \\Omega(N) \\) queries. The quantum algorithm of Lov Grover achieves this using \\( O(\\sqrt{N}) \\) queries [ 48 ], which is optimal [ 216 ]. This has algorithm has subsequently been generalized to search in the presence of multiple \"winners\" [ 15 ], evaluate the sum of an arbitrary function [ 15 , 16 , 73 ], find the global minimum of an arbitrary function [ 35 , 75 , 255 ], take advantage of alternative initial states [ 100 ] or nonuniform probabilistic priors [ 123 ], work with oracles whose runtime varies between inputs [ 138 ], approximate definite integrals [ 77 ], and converge to a fixed-point [ 208 , 209 ]. Considerations on optimizing the depth of quantum search circuits are given in [ 405 ]. The generalization of Grover's algorithm known as amplitude estimation [ 17 ] is now an important primitive in quantum algorithms. Amplitude estimation forms the core of most known quantum algorithms related to collision finding and graph properties. One of the natural applications for Grover search is speeding up the solution to NP-complete problems such as 3-SAT. Doing so is nontrivial, because the best classical algorithm for 3-SAT is not quite a brute force search. Nevertheless, amplitude amplification enables a quadratic quantum speedup over the best classical 3-SAT algorithm, as shown in [ 133 ]. Quadratic speedups for other constraint satisfaction problems are obtained in [ 134 ]. For further examples of application of Grover search and amplitude amplification see [ 261 , 262 ]. A problem closely related to, but harder than, Grover search, is spatial search, in which database queries are limited by some graph structure. On sufficiently well-connected graphs, \\(O(\\sqrt{n})\\) quantum query complexity is still achievable [ 274 , 275 , 303 , 304 , 305 , 306 , 330 ]. ", + "references": [ + 48, + 216, + 15, + 15, + 16, + 73, + 35, + 75, + 255, + 100, + 123, + 138, + 77, + 208, + 209, + 405, + 17, + 133, + 134, + 261, + 262, + 274, + 275, + 303, + 304, + 305, + 306, + 330 + ], + "category": "Oracular Algorithms" + }, + "1": { + "alg_id": 15, + "name": "Abelian Hidden Subgroup", + "speedup": "Superpolynomial", + "description": " Let G be a finitely generated Abelian group, and let H be some subgroup of G such that G/H is finite. Let f be a function on G such that for any \\( g_1,g_2 \\in G \\), \\( f(g_1) = f(g_2) \\) if and only if \\( g_1 \\) and \\( g_2 \\) are in the same coset of H . The task is to find H ( i.e. find a set of generators for H ) by making queries to f . This is solvable on a quantum computer using \\( O(\\log \\vert G\\vert) \\) queries, whereas classically \\( \\Omega(|G|) \\) are required. This algorithm was first formulated in full generality by Boneh and Lipton in [ 14 ]. However, proper attribution of this algorithm is difficult because, as described in chapter 5 of [ 76 ], it subsumes many historically important quantum algorithms as special cases, including Simon's algorithm [ 108 ], which was the inspiration for Shor's period finding algorithm, which forms the core of his factoring and discrete-log algorithms. The Abelian hidden subgroup algorithm is also at the core of the Pell's equation, principal ideal, unit group, and class group algorithms. In certain instances, the Abelian hidden subgroup problem can be solved using a single query rather than order \\( \\log(\\vert G\\vert) \\), as shown in [ 30 ]. It is normally assumed in period finding that the function \\(f(x) \\neq f(y) \\) unless \\( x-y = s \\), where \\( s \\) is the period. A quantum algorithm which applies even when this restiction is relaxed is given in [ 388 ]. Period finding has been generalized to apply to oracles which provide only the few most significant bits about the underlying function in [ 389 ]. ", + "references": [ + 14, + 76, + 108, + 30, + 388, + 389 + ], + "category": "Oracular Algorithms" + }, + "2": { + "alg_id": 16, + "name": "Non-Abelian Hidden Subgroup", + "speedup": "Superpolynomial", + "description": " Let G be a finitely generated group, and let H be some subgroup of G that has finitely many left cosets. Let f be a function on G such that for any \\( g_1, g_2 \\), \\( f(g_1) = f(g_2) \\) if and only if \\( g_1 \\) and \\( g_2 \\) are in the same left coset of H . The task is to find H ( i.e. find a set of generators for H ) by making queries to f . This is solvable on a quantum computer using \\( O(\\log(|G|) \\) queries, whereas classically \\( \\Omega(|G|) \\) are required [ 37 , 51 ]. However, this does not qualify as an efficient quantum algorithm because in general, it may take exponential time to process the quantum states obtained from these queries. Efficient quantum algorithms for the hidden subgroup problem are known for certain specific non-Abelian groups [ 81 , 55 , 72 , 53 , 9 , 22 , 56 , 71 , 57 , 43 , 44 , 28 , 126 , 207 , 273 ]. A slightly outdated survey is given in [ 69 ]. Of particular interest are the symmetric group and the dihedral group. A solution for the symmetric group would solve graph isomorphism. A solution for the dihedral group would solve certain lattice problems [ 78 ]. Despite much effort, no polynomial-time solution for these groups is known, except in special cases [ 312 ]. However, Kuperberg [ 66 ] found a time \\( 2^{O( \\sqrt{\\log N})}) \\) algorithm for finding a hidden subgroup of the dihedral group \\( D_N \\). Regev subsequently improved this algorithm so that it uses not only subexponential time but also polynomial space [ 79 ]. A further improvement in the asymptotic scaling of the required number of qubits is obtained in [ 218 ]. Quantum query speedups (though not necessarily efficient quantum algorithms in terms of gate count) for somewhat more general problems of testing for isomorphisms of functions under sets of permutations are given in [ 311 ] ", + "references": [ + 37, + 51, + 81, + 55, + 72, + 53, + 9, + 22, + 56, + 71, + 57, + 43, + 44, + 28, + 126, + 207, + 273, + 69, + 78, + 312, + 66, + 79, + 218, + 311 + ], + "category": "Oracular Algorithms" + }, + "3": { + "alg_id": 17, + "name": "Bernstein-Vazirani", + "speedup": "Polynomial Directly, Superpolynomial Recursively", + "description": " We are given an oracle whose input is n bits and whose output is one bit. Given input \\( x \\in \\{0,1\\}^n \\), the output is \\( x \\odot h \\), where h is the \"hidden\" string of n bits, and \\( \\odot \\) denotes the bitwise inner product modulo 2. The task is to find h . On a classical computer this requires n queries. As shown by Bernstein and Vazirani [ 11 ], this can be achieved on a quantum computer using a single query. Furthermore, one can construct recursive versions of this problem, called recursive Fourier sampling, such that quantum computers require exponentially fewer queries than classical computers [ 11 ]. See [ 256 , 257 ] for related work on the ubiquity of quantum speedups from generic quantum circuits and [ 258 , 270 ] for related work on a quantum query speedup for detecting correlations between the an oracle function and the Fourier transform of another. ", + "references": [ + 11, + 11, + 256, + 257, + 258, + 270 + ], + "category": "Oracular Algorithms" + }, + "4": { + "alg_id": 18, + "name": "Deutsch-Jozsa", + "speedup": "Exponential over P, none over BPP", + "description": " We are given an oracle whose input is n bits and whose output is one bit. We are promised that out of the \\( 2^n \\) possible inputs, either all of them, none of them, or half of them yield output 1. The task is to distinguish the balanced case (half of all inputs yield output 1) from the constant case (all or none of the inputs yield output 1). It was shown by Deutsch [ 32 ] that for n=1 , this can be solved on a quantum computer using one query, whereas any deterministic classical algorithm requires two. This was historically the first well-defined quantum algorithm achieving a speedup over classical computation. (A related, more recent, pedagogical example is given in [ 259 ].) A single-query quantum algorithm for arbitrary n was developed by Deutsch and Jozsa in [ 33 ]. Although probabilistically easy to solve with O(1) queries, the Deutsch-Jozsa problem has exponential worst case deterministic query complexity classically. ", + "references": [ + 32, + 259, + 33 + ], + "category": "Oracular Algorithms" + }, + "5": { + "alg_id": 19, + "name": "Formula Evaluation", + "speedup": "Polynomial", + "description": " A Boolean expression is called a formula if each variable is used only once. A formula corresponds to a circuit with no fanout, which consequently has the topology of a tree. By Reichardt's span-program formalism, it is now known [ 158 ] that the quantum query complexity of any formula of O (1) fanin on N variables is \\( \\Theta(\\sqrt{N}) \\). This result culminates from a long line of work [ 27 , 8 , 80 , 159 , 160 ], which started with the discovery by Farhi et al. [ 38 ] that NAND trees on \\( 2^n \\) variables can be evaluated on quantum computers in time \\( O(2^{0.5n}) \\) using a continuous-time quantum walk, whereas classical computers require \\( \\Omega(2^{0.753n}) \\) queries. In many cases, the quantum formula-evaluation algorithms are efficient not only in query complexity but also in time-complexity. The span-program formalism also yields quantum query complexity lower bounds [ 149 ]. Although originally discovered from a different point of view, Grover's algorithm can be regarded as a special case of formula evaluation in which every gate is OR. The quantum complexity of evaluating non-boolean formulas has also been studied [ 29 ], but is not as fully understood. Childs et al. have generalized to the case in which input variables may be repeated ( i.e. the first layer of the circuit may include fanout) [ 101 ]. They obtained a quantum algorithm using \\( O(\\min \\{N,\\sqrt{S},N^{1/2} G^{1/4} \\}) \\) queries, where N is the number of input variables not including multiplicities, S is the number of inputs counting multiplicities, and G is the number of gates in the formula. References [ 164 ], [ 165 ], and [ 269 ] consider special cases of the NAND tree problem in which the number of NAND gates taking unequal inputs is limited. Some of these cases yield superpolynomial separation between quantum and classical query complexity. ", + "references": [ + 158, + 27, + 8, + 80, + 159, + 160, + 38, + 149, + 29, + 101, + 164, + 165, + 269 + ], + "category": "Oracular Algorithms" + }, + "6": { + "alg_id": 20, + "name": "Hidden Shift", + "speedup": "Superpolynomial", + "description": " We are given oracle access to some function f on \\( \\mathbb{Z}_N \\). We know that f(x) = g(x+s) where g is a known function and s is an unknown shift. The hidden shift problem is to find s . By reduction from Grover's problem it is clear that at least \\( \\sqrt{N} \\) queries are necessary to solve hidden shift in general. However, certain special cases of the hidden shift problem are solvable on quantum computers using O(1) queries. In particular, van Dam et al. showed that this can be done if f is a multiplicative character of a finite ring or field [ 89 ]. The previously discovered shifted Legendre symbol algorithm [ 88 , 86 ] is subsumed as a special case of this, because the Legendre symbol \\( \\left(\\frac{x}{p} \\right) \\) is a multiplicative character of \\( \\mathbb{F}_p \\). No classical algorithm running in time O (polylog( N )) is known for these problems. Furthermore, the quantum algorithm for the shifted Legendre symbol problem would break a certain cryptographic pseudorandom generator given the ability to make quantum queries to the generator [ 89 ]. A quantum speedup for hidden shift problems of difference sets is given in [ 312 ], and this also subsumes the Legendre symbol problem as a special case. Roetteler has found exponential quantum speedups for finding hidden shifts of certain nonlinear Boolean functions [ 105 , 130 ]. Building on this work, Gavinsky, Roetteler, and Roland have shown [ 142 ] that the hidden shift problem on random boolean functions \\( f:\\mathbb{Z}_2^n \\to \\mathbb{Z}_2 \\) has O(n) average case quantum complexity, whereas the classical query complexity is \\( \\Omega(2^{n/2}) \\). The results in [ 143 ], though they are phrased in terms of the hidden subgroup problem for the dihedral group, imply that the quantum query complexity of the hidden shift problem for an injective function on \\( \\mathbb{Z}_N \\) is O (log n ), whereas the classical query complexity is \\( \\Theta(\\sqrt{N}) \\). However, the best known quantum circuit complexity for injective hidden shift on \\( \\mathbb{Z}_N \\) is \\( O(2^{C \\sqrt{\\log N}}) \\), achieved by Kuperberg's sieve algorithm [ 66 ]. A recent result, building upon [ 408 , 43 ], achieves exponential quantum speedups for some generalizations of the Hidden shift problem including the hidden multiple shift problem , in which one has query access to \\(f_s(x) = f(x-hs) \\) over some allowed range of s and one wishes to infer h [ 407 ]. ", + "references": [ + 89, + 88, + 86, + 89, + 312, + 105, + 130, + 142, + 143, + 66, + 408, + 43, + 407 + ], + "category": "Oracular Algorithms" + }, + "7": { + "alg_id": 21, + "name": "Polynomial interpolation", + "speedup": "Varies", + "description": " Let \\( p(x) = a_d x^d + \\ldots + a_1 x + a_0 \\) be a polynomial over the finite field \\( \\mathrm{GF}(q) \\). One is given access to an oracle that, given \\( x \\in \\mathrm{GF}(q) \\), returns \\( p(x) \\). The polynomial reconstruction problem is, by making queries to the oracle, to determine the coefficients \\( a_d,\\ldots,a_0 \\). Classically, \\( d + 1 \\) queries are necessary and sufficient. (In some sources use the term reconstruction instead of interpolation for this problem.) Quantumly, \\( d/2 + 1/2 \\) queries are necessary and \\( d/2 + 1 \\) queries are sufficient [ 360 , 361 ]. For multivariate polynomials of degree d in n variables the interpolation problem has classical query complexity \\( \\binom{n+d}{d} \\). As shown in [ 387 ], the quantum query complexity is \\( O \\left( \\frac{1}{n+1} \\binom{n+d}{d} \\right) \\) over \\( \\mathbb{R} \\) and \\( \\mathbb{C} \\) and it is \\( O \\left( \\frac{d}{n+d} \\binom{n+d}{d} \\right) \\) over \\( \\mathbb{F}_q \\) for sufficiently large q . Quantum algorithms have also been discovered for the case that the oracle returns \\( \\chi(f(x)) \\) where \\( \\chi \\) is a quadratic character of \\( \\mathrm{GF}(q) \\) [ 390 ], and the case where the oracle returns \\( f(x)^e \\) [ 392 ]. These generalize the hidden shift algorithm of [ 89 ] and achieve an exponential speedup over classical computation. A quantum algorithm for reconstructing rational functions over finite fields given noisy and incomplete oracle access to the function values is given in [ 391 ]. ", + "references": [ + 360, + 361, + 387, + 390, + 392, + 89, + 391 + ], + "category": "Oracular Algorithms" + }, + "8": { + "alg_id": 22, + "name": "Pattern matching", + "speedup": "Superpolynomial", + "description": " Given strings T of length n and P of length m < n , both from some finite alphabet, the pattern matching problem is to find an occurrence of P as a substring of T or to report that P is not a substring of T . More generally, T and P could be d -dimensional arrays rather than one-dimensional arrays (strings). Then, the pattern matching problem is to return the location of P as a \\(m \\times m \\times \\ldots \\times m\\) block within the \\(n \\times n \\times \\ldots \\times n\\) array T or report that no such location exists. The \\( \\Omega(\\sqrt{N}) \\) query lower bound for unstructured search [ 216 ] implies that the worst-case quantum query complexity of this problem is \\( \\Omega ( \\sqrt{n} + \\sqrt{m} ) \\). A quantum algorithm achieving this, up to logarithmic factors, was obtained in [ 217 ]. This quantum algorithm works through the use of Grover's algorithm together with a classical method called deterministic sampling. More recently, Montanaro showed that superpolynomial quantum speedup can be achieved on average case instances of pattern matching, provided that m is greater than logarithmic in n . Specifically, the quantum algorithm given in [ 215 ] solves average case pattern matching in \\( \\widetilde{O}((n/m)^{d/2} 2^{O(d^{3/2} \\sqrt{\\log m})})\\) time. This quantum algorithm is constructed by generalizing Kuperberg's quantum sieve algorithm [ 66 ] for dihedral hidden subgroup and hidden shift problems so that it can operate in d dimensions and accomodate small amounts of noise, and then classically reducing the pattern matching problem to this noisy d -dimensional version of hidden shift. ", + "references": [ + 216, + 217, + 215, + 66 + ], + "category": "Oracular Algorithms" + }, + "9": { + "alg_id": 23, + "name": "Ordered Search", + "speedup": "Constant factor", + "description": " We are given oracle access to a list of N numbers in order from least to greatest. Given a number x , the task is to find out where in the list it would fit. Classically, the best possible algorithm is binary search which takes \\( \\log_2 N \\) queries. Farhi et al. showed that a quantum computer can achieve this using 0.53 \\( \\log_2 N \\) queries [ 39 ]. Currently, the best known deterministic quantum algorithm for this problem uses 0.433 \\( \\log_2 N \\) queries [ 103 ]. A lower bound of \\( \\frac{\\ln 2}{\\pi} \\log_2 N \\) quantum queries has been proven for this problem [ 219 , 24 ]. In [ 10 ], a randomized quantum algorithm is given whose expected query complexity is less than \\( \\frac{1}{3} \\log_2 N \\). ", + "references": [ + 39, + 103, + 219, + 24, + 10 + ], + "category": "Oracular Algorithms" + }, + "10": { + "alg_id": 24, + "name": "Graph Properties in the Adjacency Matrix Model", + "speedup": "Polynomial", + "description": " Let G be a graph of n vertices. We are given access to an oracle, which given a pair of integers in {1,2,..., n } tells us whether the corresponding vertices are connected by an edge. Building on previous work [ 35 , 52 , 36 ], D\u00fcrr et al. [ 34 ] show that the quantum query complexity of finding a minimum spanning tree of weighted graphs, and deciding connectivity for directed and undirected graphs have \\( \\Theta(n^{3/2}) \\) quantum query complexity, and that finding lowest weight paths has \\( O(n^{3/2}\\log^2 n) \\) quantum query complexity. Deciding whether a graph is bipartite, detecting cycles, and deciding whether a given vertex can be reached from another (st-connectivity) can all be achieved using a number of queries and quantum gates that both scale as \\( \\widetilde{O}(n^{3/2}) \\), and only logarithmically many qubits, as shown in [ 317 ], building upon [ 13 , 272 , 318 ]. A span-program-based quantum algorithm for detecting trees of a given size as minors in \\( \\widetilde{O}(n) \\) time is given in [ 240 ]. A graph property is sparse if there exists a constant c such that every graph with the property has a ratio of edges to vertices at most c . Childs and Kothari have shown that all sparse graph properties have query complexity \\( \\Theta(n^{2/3}) \\) if they cannot be characterized by a list of forbidden subgraphs and \\( o(n^{2/3}) \\) ( little-o ) if they can [ 140 ]. The former algorithm is based on Grover search, the latter on the quantum walk formalism of [ 141 ]. By Mader's theorem, sparse graph properties include all nontrivial minor-closed properties. These include planarity, being a forest, and not containing a path of given length. According to the widely-believed Aanderaa-Karp-Rosenberg conjecture, all of the above problems have \\( \\Omega(n^2) \\) classical query complexity. Another interesting computational problem is finding a subgraph H in a given graph G . The simplest case of this finding the triangle, that is, the clique of size three. The fastest known quantum algorithm for this finds a triangle in \\( O(n^{5/4}) \\) quantum queries [ 319 ], improving upon [ 276 , 175 , 171 , 70 , 152 , 21 ]. Stronger quantum query complexity upper bounds are known when the graphs are sufficiently sparse [ 319 , 320 ]. Classically, triangle finding requires \\( \\Omega(n^2) \\) queries [ 21 ]. More generally, a quantum computer can find an arbitrary subgraph of k vertices using \\( O(n^{2-2/k-t}) \\) queries where \\( t=(2k-d-3)/(k(d+1)(m+2)) \\) and d and m are such that H has a vertex of degree d and m + d edges [ 153 ]. This improves on the previous algorithm of [ 70 ]. In some cases, this query complexity is beaten by the quantum algorithm of [ 140 ], which finds H using \\( \\widetilde{O}\\left( n^{\\frac{3}{2}-\\frac{1}{\\mathrm{vc}(H)+1}} \\right) \\) queries, provided G is sparse, where vc( H ) is the size of the minimal vertex cover of H . A quantum algorithm for finding constant-sized sub-hypergraphs over 3-uniform hypergraphs in \\( O(n^{1.883}) \\) queries is given in [ 241 ]. ", + "references": [ + 35, + 52, + 36, + 34, + 317, + 13, + 272, + 318, + 240, + 140, + 141, + 319, + 276, + 175, + 171, + 70, + 152, + 21, + 319, + 320, + 21, + 153, + 70, + 140, + 241 + ], + "category": "Oracular Algorithms" + }, + "11": { + "alg_id": 25, + "name": "Graph Properties in the Adjacency List Model", + "speedup": "Polynomial", + "description": " Let G be a graph of N vertices, M edges, and degree d . We are given access to an oracle which, when queried with the label of a vertex and \\( j \\in \\{1,2,\\ldots,d\\} \\) outputs the j th neighbor of the vertex or null if the vertex has degree less than d . Suppose we are given the promise that G is either bipartite or is far from bipartite in the sense that a constant fraction of the edges would need to be removed to achieve bipartiteness. Then, as shown in [ 144 ], the quantum complexity of deciding bipartiteness is \\( \\widetilde{O}(N^{1/3}) \\). Also in [ 144 ], it is shown that distinguishing expander graphs from graphs that are far from being expanders has quantum complexity \\( \\widetilde{O}(N^{1/3}) \\) and \\( \\widetilde{\\Omega}(N^{1/4}) \\), whereas the classical complexity is \\( \\widetilde{\\Theta}(\\sqrt{N}) \\). The key quantum algorithmic tool is Ambainis' algorithm for element distinctness. In [ 34 ], it is shown that finding a minimal spanning tree has quantum query complexity \\( \\Theta(\\sqrt{NM}) \\), deciding graph connectivity has quantum query complexity \\( \\Theta(N) \\) in the undirected case, and \\( \\widetilde{\\Theta}(\\sqrt{NM}) \\) in the directed case, and computing the lowest weight path from a given source to all other vertices on a weighted graph has quantum query complexity \\( \\widetilde{\\Theta}(\\sqrt{NM}) \\). In [ 317 ] quantum algorithms are given for st-connectivity, deciding bipartiteness, and deciding whether a graph is a forest, which run in \\( \\widetilde{O}(N \\sqrt{d}) \\) time and use only logarithmically many qubits. ", + "references": [ + 144, + 144, + 34, + 317 + ], + "category": "Oracular Algorithms" + }, + "12": { + "alg_id": 26, + "name": "Welded Tree", + "speedup": "Superpolynomial", + "description": " Some computational problems can be phrased in terms of the query complexity of finding one's way through a maze. That is, there is some graph G to which one is given oracle access. When queried with the label of a given node, the oracle returns a list of the labels of all adjacent nodes. The task is, starting from some source node ( i.e. its label), to find the label of a certain marked destination node. As shown by Childs et al. [ 26 ], quantum computers can exponentially outperform classical computers at this task for at least some graphs. Specifically, consider the graph obtained by joining together two depth- n binary trees by a random \"weld\" such that all nodes but the two roots have degree three. Starting from one root, a quantum computer can find the other root using poly( n ) queries, whereas this is provably impossible using classical queries. ", + "references": [ + 26 + ], + "category": "Oracular Algorithms" + }, + "13": { + "alg_id": 27, + "name": "Collision Finding and Element Distinctness", + "speedup": "Polynomial", + "description": " Suppose we are given oracle access to a two to one function f on a domain of size N . The collision problem is to find a pair \\( x,y \\in \\{1,2,\\ldots,N\\} \\) such that f(x) = f(y) . The classical randomized query complexity of this problem is \\( \\Theta(\\sqrt{N}) \\), whereas, as shown by Brassard et al. , a quantum computer can achieve this using \\(O(N^{1/3}) \\) queries [ 18 ]. (See also [ 315 ].) Removing the promise that f is two-to-one yields a problem called element distinctness, which has \\( \\Theta(N) \\) classical query complexity. Improving upon [ 21 ], Ambainis gives a quantum algorithm with query complexity of \\( O(N^{2/3}) \\) for element distinctness, which is optimal [ 7 , 374 ]. The problem of deciding whether any k -fold collisions exist is called k -distinctness. Improving upon [ 7 , 154 ], the best quantum query complexity for k -distinctness is \\( O(n^{3/4 - 1/(4(2^k-1))}) \\) [ 172 , 173 ]. For k =2,3 this is also the time-complexity, up to logarithmic factors, by [ 7 ]. For \\( k > 3\\) the fastest known quantum algorithm has time complexity \\( O(n^{(k-1)/k}) \\) [ 363 ]. Given two functions f and g , on domains of size N and M , respectively a claw is a pair x,y such that f(x) = g(y) . In the case that N = M , the algorithm of [ 7 ] solves claw-finding in \\( O(N^{2/3}) \\) queries, improving on the previous \\( O(N^{3/4} \\log N) \\) quantum algorithm of [ 21 ]. Further work gives improved query complexity for various parameter regimes in which \\(N \\neq M\\) [ 364 , 365 ]. More generally, a related problem to element distinctness, is, given oracle access to a sequence, to estimate the \\(k^{\\mathrm{th}}\\) frequency moment \\(F_k = \\sum_j n_j^k \\), where \\(n_j\\) is the number of times that j occurs in the sequence. An approximately quadratic speedup for this problem is obtained in [ 277 ]. See also graph collision . ", + "references": [ + 18, + 315, + 21, + 7, + 374, + 7, + 154, + 172, + 173, + 7, + 363, + 7, + 21, + 364, + 365, + 277 + ], + "category": "Oracular Algorithms" + }, + "14": { + "alg_id": 28, + "name": "Graph Collision", + "speedup": "Polynomial", + "description": " We are given an undirected graph of n vertices and oracle access to a labelling of the vertices by 1 and 0. The graph collision problem is, by querying this oracle, to decide whether there exist a pair of vertices, connected by an edge, both of which are labelled 1. One can embed Grover's unstructured search problem as an instance of graph collision by choosing the star graph, labelling the center 1, and labelling the remaining vertices by the database entries. Hence, this problem has quantum query complexity \\( \\Omega(\\sqrt{n}) \\) and classical query complexity \\( \\Theta (n) \\). In [ 70 ], Magniez, Nayak, and Szegedy gave a \\( O(N^{2/3}) \\)-query quantum algorithm for graph collision on general graphs. This remains the best upper bound on quantum query complexity for this problem on general graphs. However, stronger upper bounds have been obtained for several special classes of graphs. Specifically, the quantum query complexity on a graph G is \\( \\widetilde{O}(\\sqrt{n} + \\sqrt{l}) \\) where l is the number of non-edges in G [ 161 ], \\(O(\\sqrt{n} \\alpha^{1/6}) \\) where \\(\\alpha\\) is the size of the largest independent set of G [ 172 ], \\(O(\\sqrt{n} + \\sqrt{\\alpha^*})\\) where \\( \\alpha^* \\) is the maximum total degree of any independent set of G [ 200 ], and \\(O(\\sqrt{n} t^{1/6}) \\) where t is the treewidth of G [ 201 ]. Furthermore, the quantum query complexity is \\( \\widetilde{O}(\\sqrt{n}) \\) with high probability for random graphs in which the presence or absence of an edge between each pair of vertices is chosen independently with fixed probability, ( i.e. Erd\u0151s-R\u00e9nyi graphs) [ 200 ]. See [ 201 ] for a summary of these results as well as new upper bounds for two additional classes of graph that are too complicated to describe here. ", + "references": [ + 70, + 161, + 172, + 200, + 201, + 200, + 201 + ], + "category": "Oracular Algorithms" + }, + "15": { + "alg_id": 29, + "name": "Matrix Commutativity", + "speedup": "Polynomial", + "description": " We are given oracle access to k matrices, each of which are \\( n \\times n \\). Given integers \\( i,j \\in \\{1,2,\\ldots,n\\} \\), and \\( x \\in \\{1,2,\\ldots,k\\} \\) the oracle returns the ij matrix element of the \\( x^{\\mathrm{th}} \\) matrix. The task is to decide whether all of these k matrices commute. As shown by Itakura [ 54 ], this can be achieved on a quantum computer using \\( O(k^{4/5}n^{9/5}) \\) queries, whereas classically this requires \\( \\Omega( k n^2 ) \\) queries. ", + "references": [ + 54 + ], + "category": "Oracular Algorithms" + }, + "16": { + "alg_id": 30, + "name": "Group Commutativity", + "speedup": "Polynomial", + "description": " We are given a list of k generators for a group G and access to a blackbox implementing group multiplication. By querying this blackbox we wish to determine whether the group is commutative. The best known classical algorithm is due to Pak and requires O(k) queries. Magniez and Nayak have shown that the quantum query complexity of this task is \\( \\widetilde{\\Theta}(k^{2/3}) \\) [ 139 ]. ", + "references": [ + 139 + ], + "category": "Oracular Algorithms" + }, + "17": { + "alg_id": 31, + "name": "Hidden Nonlinear Structures", + "speedup": "Superpolynomial", + "description": " Any Abelian group G can be visualized as a lattice. A subgroup H of G is a sublattice, and the cosets of H are all the shifts of that sublattice. The Abelian hidden subgroup problem is normally solved by obtaining superposition over a random coset of the Hidden subgroup, and then taking the Fourier transform so as to sample from the dual lattice. Rather than generalizing to non-Abelian groups (see non-Abelian hidden subgroup ), one can instead generalize to the problem of identifying hidden subsets other than lattices. As shown by Childs et al. [ 23 ] this problem is efficiently solvable on quantum computers for certain subsets defined by polynomials, such as spheres. Decker et al. showed how to efficiently solve some related problems in [ 31 , 212 ]. ", + "references": [ + 23, + 31, + 212 + ], + "category": "Oracular Algorithms" + }, + "18": { + "alg_id": 32, + "name": "Center of Radial Function", + "speedup": "Polynomial", + "description": " We are given an oracle that evaluates a function f from \\( \\mathbb{R}^d \\) to some arbitrary set S , where f is spherically symmetric. We wish to locate the center of symmetry, up to some precision. (For simplicity, let the precision be fixed.) In [ 110 ], Liu gives a quantum algorithm, based on a curvelet transform, that solves this problem using a constant number of quantum queries independent of d . This constitutes a polynomial speedup over the classical lower bound, which is \\( \\Omega(d) \\) queries. The algorithm works when the function f fluctuates on sufficiently small scales, e.g. , when the level sets of f are sufficiently thin spherical shells. The quantum algorithm is shown to work in an idealized continuous model, and nonrigorous arguments suggest that discretization effects should be small. ", + "references": [ + 110 + ], + "category": "Oracular Algorithms" + }, + "19": { + "alg_id": 33, + "name": "Group Order and Membership", + "speedup": "Superpolynomial", + "description": " Suppose a finite group G is given oracularly in the following way. To every element in G , one assigns a corresponding label. Given an ordered pair of labels of group elements, the oracle returns the label of their product. There are several classically hard problems regarding such groups. One is to find the group's order, given the labels of a set of generators. Another task is, given a bitstring, to decide whether it corresponds to a group element. The constructive version of this membership problem requires, in the yes case, a decomposition of the given element as a product of group generators. Classically, these problems cannot be solved using polylog(| G |) queries even if G is Abelian. For Abelian groups, quantum computers can solve these problems using polylog(| G |) queries by reduction to the Abelian hidden subgroup problem, as shown by Mosca [ 74 ]. Furthermore, as shown by Watrous [ 91 ], quantum computers can solve these problems using polylog(| G |) queries for any solvable group. For groups given as matrices over a finite field rather than oracularly, the order finding and constructive membership problems can be solved in polynomial time by using the quantum algorithms for discrete log and factoring [ 124 ]. See also group isomorphism . ", + "references": [ + 74, + 91, + 124 + ], + "category": "Oracular Algorithms" + }, + "20": { + "alg_id": 34, + "name": "Group Isomorphism", + "speedup": "Superpolynomial", + "description": " Let G be a finite group. To every element of G is assigned an arbitrary label (bit string). Given an ordered pair of labels of group elements, the group oracle returns the label of their product. Given access to the group oracles for two groups G and G' , and a list of generators for each group, we must decide whether G and G' are isomorphic. For Abelian groups, we can solve this problem using poly(log | G |, log | G' |) queries to the oracle by applying the quantum algorithm of [ 127 ], which decomposes any Abelian group into a canonical direct product of cyclic groups. The quantum algorithm of [ 128 ] solves the group isomorphism problem using poly(log | G |, log | G' |) queries for a certain class of non-Abelian groups. Specifically, a group G is in this class if G has a normal Abelian subgroup A and an element y of order coprime to | A | such that G = A , y . Zatloukal has recently given an exponential quantum speedup for some instances of a problem closely related to group isomorphism, namely testing equivalence of group extensions [ 202 ]. ", + "references": [ + 127, + 128, + 202 + ], + "category": "Oracular Algorithms" + }, + "21": { + "alg_id": 35, + "name": "Statistical Difference", + "speedup": "Polynomial", + "description": " Suppose we are given two black boxes A and B whose domain is the integers 1 through T and whose range is the integers 1 through N . By choosing uniformly at random among allowed inputs we obtain a probability distribution over the possible outputs. We wish to approximate to constant precision the L1 distance between the probability distributions determined by A and B . Classically the number of necessary queries scales essentially linearly with N. As shown in [ 117 ], a quantum computer can achieve this using \\( O(\\sqrt{N}) \\) queries. Approximate uniformity and orthogonality of probability distributions can also be decided on a quantum computer using \\( O(N^{1/3}) \\) queries. The main tool is the quantum counting algorithm of [ 16 ]. A further improved quantum algorithm for this task is obtained in [ 265 ]. ", + "references": [ + 117, + 16, + 265 + ], + "category": "Oracular Algorithms" + }, + "22": { + "alg_id": 36, + "name": "Finite Rings and Ideals", + "speedup": "Superpolynomial", + "description": " Suppose we are given black boxes implementing the addition and multiplication operations on a finite ring R , not necessarily commutative, along with a set of generators for R . With respect to addition, R forms a finite Abelian group ( R ,+). As shown in [ 119 ], on a quantum computer one can find in poly(log | R |) time a set of additive generators \\( \\{h_1,\\ldots,h_m\\} \\subset R \\) such that \\( (R,+) \\simeq \\langle h_1 \\rangle \\times \\ldots \\times \\langle h_M \\rangle\\) and m is polylogarithmic in | R |. This allows efficient computation of a multiplication tensor for R . As shown in [ 118 ], one can similarly find an additive generating set for any ideal in R . This allows one to find the intersection of two ideals, find their quotient, prove whether a given ring element belongs to a given ideal, prove whether a given element is a unit and if so find its inverse, find the additive and multiplicative identities, compute the order of an ideal, solve linear equations over rings, decide whether an ideal is maximal, find annihilators, and test the injectivity and surjectivity of ring homomorphisms. As shown in [ 120 ], one can also use a quantum computer to efficiently decide whether a given polynomial is identically zero on a given finite black box ring. Known classical algorithms for these problems scale as poly(| R |). ", + "references": [ + 119, + 118, + 120 + ], + "category": "Oracular Algorithms" + }, + "23": { + "alg_id": 37, + "name": "Counterfeit Coins", + "speedup": "Polynomial", + "description": " Suppose we are given N coins, k of which are counterfeit. The real coins are all of equal weight, and the counterfeit coins are all of some other equal weight. We have a pan balance and can compare the weight of any pair of subsets of the coins. Classically, we need \\( \\Omega(k \\log(N/k)) \\) weighings to identify all of the counterfeit coins. We can introduce an oracle such that given a pair of subsets of the coins of equal cardinality, it outputs one bit indicating balanced or unbalanced. Building on previous work by Terhal and Smolin [ 137 ], Iwama et al. have shown [ 136 ] that on a quantum computer, one can identify all of the counterfeit coins using \\( O(k^{1/4}) \\) queries. The core techniques behind the quantum speedup are amplitude amplification and the Bernstein-Vazirani algorithm. ", + "references": [ + 137, + 136 + ], + "category": "Oracular Algorithms" + }, + "24": { + "alg_id": 38, + "name": "Matrix Rank", + "speedup": "Polynomial", + "description": " Suppose we are given oracle access to the (integer) entries of an \\( n \\times m \\) matrix A . We wish to determine the rank of the matrix. Classically this requires order nm queries. Building on [ 149 ], Belovs [ 150 ] gives a quantum algorithm that can use fewer queries given a promise that the rank of the matrix is at least r . Specifically, Belovs' algorithm uses \\( O(\\sqrt{r(n-r+1)}LT) \\) queries, where L is the root-mean-square of the reciprocals of the r largest singular values of A and T is a factor that depends on the sparsity of the matrix. For general A , \\( T = O(\\sqrt{nm}) \\). If A has at most k nonzero entries in any row or column then \\( T = O(k \\log(n+m)) \\). (To achieve the corresponding query complexity in the k -sparse case, the oracle must take a column index as input, and provide a list of the nonzero matrix elements from that column as output.) As an important special case, one can use these quantum algorithms for the problem of determining whether a square matrix is singular, which is sometimes referred to as the determinant problem. For general A the quantum query complexity of the determinant problem is no lower than the classical query complexity [ 151 ]. However, [ 151 ] does not rule out a quantum speedup given a promise on A , such as sparseness or lack of small singular values. ", + "references": [ + 149, + 150, + 151, + 151 + ], + "category": "Oracular Algorithms" + }, + "25": { + "alg_id": 39, + "name": "Matrix Multiplication over Semirings", + "speedup": "Polynomial", + "description": " A semiring is a set endowed with addition and multiplication operations that obey all the axioms of a ring except the existence additive inverses. Matrix multiplication over various semirings has many applications to graph problems. Matrix multiplication over semirings can be sped up by straightforward Grover improvements upon schoolbook multiplication, yielding a quantum algorithm that multiplies a pair of \\(n \\times n\\) matrices in \\( \\widetilde{O}(n^{5/2}) \\) time. For some semirings this algorithm outperforms the fastest known classical algorithms and for some semirings it does not [ 206 ]. A case of particular interest is the Boolean semiring, in which OR serves as addition and AND serves as multiplication. No quantum algorithm is known for Boolean semiring matrix multiplication in the general case that beats the best classical algorithm, which has complexity \\( n^{2.373} \\). However, for sparse input our output, quantum speedups are known. Specifically, let A,B be n by n Boolean matrices. Let C = AB , and let l be the number of entries of C that are equal to 1 ( i.e. TRUE). Improving upon [ 19 , 155 , 157 ], the best known upper bound on quantum query complexity is \\(\\widetilde{O}(n \\sqrt{l}) \\), as shown in [ 161 ]. If instead the input matrices are sparse, a quantum speedup over the fastest known classical algorithm also has been found in a certain regime [ 206 ]. For detailed comparison to classical algorithms, see [ 155 , 206 ]. Quantum algorithms have been found to perform matrix multiplication over the (max,min) semiring in \\(\\widetilde{O}(n^{2.473})\\) time and over the distance dominance semiring in \\(\\widetilde{O}(n^{2.458})\\) time [ 206 ]. The fastest known classical algorithm for both of these problems has \\(\\widetilde{O}(n^{2.687})\\) complexity. ", + "references": [ + 206, + 19, + 155, + 157, + 161, + 206, + 155, + 206, + 206 + ], + "category": "Oracular Algorithms" + }, + "26": { + "alg_id": 40, + "name": "Subset finding", + "speedup": "Polynomial", + "description": " We are oracle access to a function \\( f:D \\to R \\) where D and R are finite sets. Some property \\( P \\subset (D \\times R)^k \\) is specified, for example as an explicit list. Our task is to find a size- k subset of D satisfying P , i.e. \\( ((x_1,f(x_1)),\\ldots,(x_k,f(x_k))) \\in P \\), or reject if none exists. As usual, we wish to do this with the minimum number of queries to f . Generalizing the result of [ 7 ], it was shown in [ 162 ] that this can be achieved using \\(O(|D|^{k/(k+1)}) \\) quantum queries. As an noteworthy special case, this algorithm solves the k -subset-sum problem of finding k numbers from a list with some desired sum. A matching lower bound for the quantum query complexity is proven in [ 163 ]. ", + "references": [ + 7, + 162, + 163 + ], + "category": "Oracular Algorithms" + }, + "27": { + "alg_id": 41, + "name": "Search with Wildcards", + "speedup": "Polynomial", + "description": " The search with wildcards problem is to identify a hidden n -bit string x by making queries to an oracle f . Given \\( S \\subseteq \\{1,2,\\ldots,n\\} \\) and \\( y \\in \\{0,1\\}^{|S|} \\), f returns one if the substring of x specified by S is equal to y , and returns zero otherwise. Classically, this problem has query complexity \\(\\Theta(n)\\). As shown in [ 167 ], the quantum query complexity of this problem is \\( \\Theta(\\sqrt{n}) \\). Interestingly, this quadratic speedup is achieved not through amplitude amplification or quantum walks, but rather through use of the so-called Pretty Good Measurement. The paper [ 167 ] also gives a quantum speedup for the related problem of combinatorial group testing. This result and subsequent faster quantum algorithms for group testing are discussed in the entry on Junta Testing and Group Testing.", + "references": [ + 167 + ], + "category": "Oracular Algorithms" + }, + "28": { + "alg_id": 42, + "name": "Network flows", + "speedup": "Polynomial", + "description": "A network is a directed graph whose edges are labeled with numbers indicating their carrying capacities, and two of whose vertices are designated as the source and the sink. A flow on a network is an assignment of flows to the edges such that no flow exceeds that edge's capacity, and for each vertex other than the source and sink, the total inflow is equal to the total outflow. The network flow problem is, given a network, to find the flow that maximizes the total flow going from source to sink. For a network with n vertices, m edges, and integer capacities of maximum magnitude U , [ 168 ] gives a quantum algorithm to find the maximal flow in time \\( O(\\min \\{n^{7/6} \\sqrt{m} \\ U^{1/3}, \\sqrt{nU}m\\} \\times \\log n) \\). The network flow problem is closely related to the problem of finding a maximal matching of a graph, that is, a maximal-size subset of edges that connects each vertex to at most one other vertex. The paper [ 168 ] gives algorithms for finding maximal matchings that run in time \\( O(n \\sqrt{m+n} \\log n) \\) if the graph is bipartite, and \\( O(n^2 ( \\sqrt{m/n} + \\log n) \\log n) \\) in the general case. The core of these algorithms is Grover search. The known upper bounds on classical complexity of the network flow and matching problems are complicated to state because different classical algorithms are preferable in different parameter regimes. However, in certain regimes, the above quantum algorithms beat all known classical algorithms. (See [ 168 ] for details.)", + "references": [ + 168 + ], + "category": "Oracular Algorithms" + }, + "29": { + "alg_id": 43, + "name": "Electrical resistance", + "speedup": "Exponential", + "description": "We are given oracle access to a weighted graph of n vertices and maximum degree d whose edge weights are to be interpreted as electrical resistances. Our task is to compute the resistance between a chosen pair of vertices. Wang gave two quantum algorithms in [ 210 ] for this task that run in time \\(\\mathrm{poly}( \\log n, d, 1/\\phi, 1/\\epsilon) \\), where \\( \\phi \\) is the expansion of the graph, and the answer is to be given to within a factor of \\( 1+\\epsilon \\). Known classical algorithms for this problem are polynomial in n rather than \\( \\log n \\). One of Wang's algorithms is based on a novel use of quantum walks. The other is based on the quantum algorithm of [ 104 ] for solving linear systems of equations. The first quantum query complexity upper bounds for the electrical resistance problem in the adjacency query model are given in [ 280 ] using approximate span programs.", + "references": [ + 210, + 104, + 280 + ], + "category": "Oracular Algorithms" + }, + "30": { + "alg_id": 44, + "name": "Junta Testing and Group Testing", + "speedup": "Polynomial", + "description": "A function \\(f:\\{0,1\\}^n \\to \\{0,1\\}\\) is a k -junta if it depends on at most k of its input bits. The k -junta testing problem is to decide whether a given function is a k -junta or is \\( \\epsilon \\)-far from any k -junta. Althoug it is not obvious, this problem is closely related to group testing. A group testing problem is defined by a function \\(f:\\{1,2,\\ldots,n\\} \\to \\{0,1\\}\\). One is given oracle access to F , which takes as input subsets of \\( \\{1,2,\\ldots,n\\} \\). F ( S ) = 1 if there exists \\(x \\in S \\) such that f ( x ) = 1 and F ( S ) = 0 otherwise. In [ 266 ] a quantum algorithm is given solving the k -junta problem using \\( \\widetilde{O}(\\sqrt{k/\\epsilon}) \\) queries and \\( \\widetilde{O}(n \\sqrt{k/\\epsilon}) \\) time. This is a quadratic speedup over the classical complexity, and improves upon a previous quantum algorithm for k -junta testing given in [ 267 ]. A polynomial speedup for a gapped ( i.e. approximation) version of group testing is also given in [ 266 ], improving upon the earlier results of [ 167 , 268 ].", + "references": [ + 266, + 267, + 167, + 268 + ], + "category": "Oracular Algorithms" + } + }, + "Approximation and Simulation Algorithms": { + "0": { + "alg_id": 45, + "name": "Quantum Simulation", + "speedup": "Superpolynomial", + "description": " It is believed that for any physically realistic Hamiltonian H on n degrees of freedom, the corresponding time evolution operator \\( e^{-i H t} \\) can be implemented using poly( n,t ) gates. Unless BPP=BQP, this problem is not solvable in general on a classical computer in polynomial time. Many techniques for quantum simulation have been developed for general classes of Hamiltonians [ 25 , 95 , 92 , 5 , 12 , 170 , 205 , 211 , 244 , 245 , 278 , 293 , 294 , 295 , 372 , 382 ], chemical dynamics [ 63 , 68 , 227 , 310 , 375 ], condensed matter physics [ 1 , 99 , 145 ], relativistic quantum mechanics (the Dirac and Klein-Gordon equations) [ 367 , 369 , 370 , 371 ], open quantum systems [ 376 , 377 , 378 , 379 ], and quantum field theory [ 107 , 166 , 228 , 229 , 230 , 368 ]. The exponential complexity of classically simulating quantum systems led Feynman to first propose that quantum computers might outperform classical computers on certain tasks [ 40 ]. Although the problem of finding ground energies of local Hamiltonians is QMA-complete and therefore probably requires exponential time on a quantum computer in the worst case, quantum algorithms have been developed to approximate ground [ 102 , 231 , 232 , 233 , 234 , 235 , 308 , 321 , 322 , 380 , 381 ] as well as thermal states [ 132 , 121 , 281 , 282 , 307 ] for some classes of Hamiltonians and equilibrium states for some classes of master equations [ 429 ]. Efficient quantum algorithms have been also obtained for preparing certain classes of tensor network states [ 323 , 324 , 325 , 326 , 327 , 328 ]. ", + "references": [ + 25, + 95, + 92, + 5, + 12, + 170, + 205, + 211, + 244, + 245, + 278, + 293, + 294, + 295, + 372, + 382, + 63, + 68, + 227, + 310, + 375, + 1, + 99, + 145, + 367, + 369, + 370, + 371, + 376, + 377, + 378, + 379, + 107, + 166, + 228, + 229, + 230, + 368, + 40, + 102, + 231, + 232, + 233, + 234, + 235, + 308, + 321, + 322, + 380, + 381, + 132, + 121, + 281, + 282, + 307, + 429, + 323, + 324, + 325, + 326, + 327, + 328 + ], + "category": "Approximation and Simulation Algorithms" + }, + "1": { + "alg_id": 46, + "name": "Knot Invariants", + "speedup": "Superpolynomial", + "description": " As shown by Freedman [ 42 , 41 ], et al. , finding a certain additive approximation to the Jones polynomial of the plat closure of a braid at \\( e^{i 2 \\pi/5} \\) is a BQP-complete problem. This result was reformulated and extended to \\( e^{i 2 \\pi/k} \\) for arbitrary k by Aharonov et al. [ 4 , 2 ]. Wocjan and Yard further generalized this, obtaining a quantum algorithm to estimate the HOMFLY polynomial [ 93 ], of which the Jones polynomial is a special case. Aharonov et al. subsequently showed that quantum computers can in polynomial time estimate a certain additive approximation to the even more general Tutte polynomial for planar graphs [ 3 ]. It is not fully understood for what range of parameters the approximation obtained in [ 3 ] is BQP-hard. (See also partition functions .) Polynomial-time quantum algorithms have also been discovered for additively approximating link invariants arising from quantum doubles of finite groups [ 174 ]. (This problem is not known to be BQP-hard.) As shown in [ 83 ], the problem of finding a certain additive approximation to the Jones polynomial of the trace closure of a braid at \\( e^{i 2 \\pi/5} \\) is DQC1-complete. ", + "references": [ + 42, + 41, + 4, + 2, + 93, + 3, + 3, + 174, + 83 + ], + "category": "Approximation and Simulation Algorithms" + }, + "2": { + "alg_id": 47, + "name": "Three-manifold Invariants", + "speedup": "Superpolynomial", + "description": " The Turaev-Viro invariant is a function that takes three-dimensional manifolds as input and produces a real number as output. Homeomorphic manifolds yield the same number. Given a three-manifold specified by a Heegaard splitting, a quantum computer can efficiently find a certain additive approximation to its Turaev-Viro invariant, and this approximation is BQP-complete [ 129 ]. Earlier, in [ 114 ], a polynomial-time quantum algorithm was given to additively approximate the Witten-Reshitikhin-Turaev (WRT) invariant of a manifold given by a surgery presentation. Squaring the WRT invariant yields the Turaev-Viro invariant. However, it is unknown whether the approximation achieved in [ 114 ] is BQP-complete. A suggestion of a possible link between quantum computation and three-manifold invariants was also given in [ 115 ]. ", + "references": [ + 129, + 114, + 114, + 115 + ], + "category": "Approximation and Simulation Algorithms" + }, + "3": { + "alg_id": 48, + "name": "Partition Functions", + "speedup": "Superpolynomial", + "description": " For a classical system with a finite set of states S the partition function is \\( Z = \\sum_{s \\in S} e^{-E(s)/kT} \\), where T is the temperature and k is Boltzmann's constant. Essentially every thermodynamic quantity can be calculated by taking an appropriate partial derivative of the partition function. The partition function of the Potts model is a special case of the Tutte polynomial. A quantum algorithm for approximating the Tutte polynomial is given in [ 3 ]. Some connections between these approaches are discussed in [ 67 ]. Additional algorithms for estimating partition functions on quantum computers are given in [ 112 , 113 , 45 , 47 ]. A BQP-completeness result (where the \"energies\" are allowed to be complex) is also given in [ 113 ]. A method for approximating partition functions by simulating thermalization processes is given in [ 121 ]. A quadratic speedup for the approximation of general partition functions is given in [ 122 ]. A method based on quantum walks, achieving polynomial speedup for evaluating partition functions is given in [ 265 ]. ", + "references": [ + 3, + 67, + 112, + 113, + 45, + 47, + 113, + 121, + 122, + 265 + ], + "category": "Approximation and Simulation Algorithms" + }, + "4": { + "alg_id": 49, + "name": "Quantum Approximate Optimization", + "description": " For many combinatorial optimization problems, finding the exact optimal solution is NP-complete. There are also hardness-of-approximation results proving that finding an approximation with sufficiently small error bound is NP-complete. For certain problems there is a gap between the best error bound achieved by a polynomial-time classical approximation algorithm and the error bound proven to be NP-hard. In this regime there is potential for exponential speedup by quantum computation. In [ 242 ] a new quantum algorithmic technique called the Quantum Approximate Optimization Algorithm (QAOA) was proposed for finding approximate solutions to combinatorial optimization problems. In [ 243 ] it was subsequently shown that QAOA solves a combinatorial optimization problem called Max E3LIN2 with a better approximation ratio than any polynomial-time classical algorithm known at the time. However, an efficient classical algorithm achieving an even better approximation ratio (in fact, the approximation ratio saturating the limit set by hardness-of-approximation) was subsequently discovered [ 260 ]. Presently, the power of QAOA relative to classical computing is an active area of research [ 300 , 301 , 302 , 314 ]. ", + "references": [ + 242, + 243, + 260, + 300, + 301, + 302, + 314 + ], + "category": "Approximation and Simulation Algorithms" + }, + "5": { + "alg_id": 50, + "name": "Semidefinite Programming", + "speedup": "Polynomial (with some exceptions)", + "description": " Given a list of m + 1 Hermitian \\(n \\times n \\) matrices \\(C, A_1, A_2, \\ldots, A_m\\) and m numbers \\(b_1, \\ldots, b_m \\), the problem of semidefinite programming is to find the positive semidefinite \\( n \\times n \\) matrix X that maximizes tr( CX ) subject to the constraints \\( \\mathrm{tr} (A_j X) \\leq b_j \\) for \\( j = 1,2,\\ldots, m \\). Semidefinite programming has many applications in operations research, combinatorial optimization, and quantum information, and it includes linear programming as a special case. Introduced in [ 313 ], and subsequently improved in [ 383 , 425 ], quantum algorithms are now known that can approximately solve semidefinite programs to within \\( \\pm \\epsilon \\) in time \\( O (\\sqrt{m} \\log m \\cdot \\mathrm{poly}(\\log n, r, \\epsilon^{-1})) \\), where r is the rank of the semidefinite program. This constitutes a quadratic speedup over the fastest classical algorithms when r is small compared to n . The quantum algorithm is based on amplitude amplification and quantum Gibbs sampling [ 121 , 307 ]. In a model in which input is provided in the form of quantum states the quantum algorithm for semidefinite programming can achieve superpolynomial speedup, as discussed in [ 383 ], although recent dequantization results [ 421 ] delineate limitations on the context in which superpolynomial quantum speedup for semidefinite programs is possible. ", + "references": [ + 313, + 383, + 425, + 121, + 307, + 383, + 421 + ], + "category": "Approximation and Simulation Algorithms" + }, + "6": { + "alg_id": 51, + "name": "Zeta Functions", + "speedup": "Superpolynomial", + "description": " Let f ( x , y ) be a degree- d polynomial over a finite field \\( \\mathbb{F}_p \\). Let \\( N_r \\) be the number of projective solutions to f ( x , y = 0 over the extension field \\( \\mathbb{F}_{p^r} \\). The zeta function for f is defined to be \\( Z_f(T) = \\exp \\left( \\sum_{r=1}^\\infty \\frac{N_r}{r} T^r \\right) \\). Remarkably, \\( Z_f(T) \\) always has the form \\( Z_f(T) = \\frac{Q_f(T)}{(1-pT)(1-T)} \\) where \\( Q_f(T) \\) is a polynomial of degree 2 g and \\(g = \\frac{1}{2} (d-1)(d-2) \\) is called the genus of f . Given \\( Z_f(T) \\) one can easily compute the number of zeros of f over any extension field \\( \\mathbb{F}_{p^r} \\). One can similarly define the zeta function when the original field over which f is defined does not have prime order. As shown by Kedlaya [ 64 ], quantum computers can determine the zeta function of a genus g curve over a finite field \\( \\mathbb{F}_{p^r} \\) in \\( \\mathrm{poly}(\\log p, r, g) \\) time. The fastest known classical algorithms are all exponential in either log( p ) or g . In a diffent, but somewhat related contex, van Dam has conjectured that due to a connection between the zeros of Riemann zeta functions and the eigenvalues of certain quantum operators, quantum computers might be able to efficiently approximate the number of solutions to equations over finite fields [ 87 ]. ", + "references": [ + 64, + 87 + ], + "category": "Approximation and Simulation Algorithms" + }, + "7": { + "alg_id": 52, + "name": "Weight Enumerators", + "speedup": "Superpolynomial", + "description": " Let C be a code on n bits, i.e. a subset of \\( \\mathbb{Z}_2^n \\). The weight enumerator of C is \\( S_C(x,y) = \\sum_{c \\in C} x^{|c|} y^{n-|c|} \\) where | c | denotes the Hamming weight of c . Weight enumerators have many uses in the study of classical codes. If C is a linear code, it can be defined by \\( C = \\{c: Ac = 0\\} \\) where A is a matrix over \\( \\mathbb{Z}_2 \\) In this case \\( S_C(x,y) = \\sum_{c:Ac=0} x^{|c|} y^{n-|c|} \\). Quadratically signed weight enumerators (QWGTs) are a generalization of this: \\( S(A,B,x,y) = \\sum_{c:Ac=0} (-1)^{c^T B c} x^{|c|} y^{n-|c|} \\). Now consider the following special case. Let A be an \\( n \\times n \\) matrix over \\( \\mathbb{Z}_2 \\) such that diag( A )=I. Let lwtr( A ) be the lower triangular matrix resulting from setting all entries above the diagonal in A to zero. Let l,k be positive integers. Given the promise that \\( |S(A,\\mathrm{lwtr}(A),k,l)| \\geq \\frac{1}{2} (k^2+l^2)^{n/2} \\) the problem of determining the sign of \\( S(A,\\mathrm{lwtr}(A),k,l) \\) is BQP-complete, as shown by Knill and Laflamme in [ 65 ]. The evaluation of QWGTs is also closely related to the evaluation of Ising and Potts model partition functions [ 67 , 45 , 46 ]. ", + "references": [ + 65, + 67, + 45, + 46 + ], + "category": "Approximation and Simulation Algorithms" + }, + "8": { + "alg_id": 53, + "name": "Simulated Annealing", + "speedup": "Polynomial", + "description": " In simulated annealing, one has a series of Markov chains defined by stochastic matrices \\( M_1, M_2,\\ldots,M_n \\). These are slowly varying in the sense that their limiting distributions \\( pi_1, \\pi_2, \\ldots, \\pi_n \\) satisfy \\( |\\pi_{t+1} -\\pi_t| \\lt \\epsilon \\) for some small \\( \\epsilon \\). These distributions can often be thought of as thermal distributions at successively lower temperatures. If \\( \\pi_1 \\) can be easily prepared, then by applying this series of Markov chains one can sample from \\( \\pi_n \\). Typically, one wishes for \\( \\pi_n \\) to be a distribution over good solutions to some optimization problem. Let \\( \\delta_i \\) be the gap between the largest and second largest eigenvalues of \\( M_i \\). Let \\( \\delta = \\min_i \\delta_i \\). The run time of this classical algorithm is proportional to \\( 1/\\delta \\). Building upon results of Szegedy [ 135 , 85 ], Somma et al. have shown [ 84 , 177 ] that quantum computers can sample from \\( \\pi_n \\) with a runtime proportional to \\( 1/\\sqrt{\\delta} \\). Additional methods by which classical Markov chain Monte Carlo algorithms can be sped up using quantum walks are given in [ 265 ]. ", + "references": [ + 135, + 85, + 84, + 177, + 265 + ], + "category": "Approximation and Simulation Algorithms" + }, + "9": { + "alg_id": 54, + "name": "String Rewriting", + "speedup": "Superpolynomial", + "description": " String rewriting is a fairly general model of computation. String rewriting systems (sometimes called grammars) are specified by a list of rules by which certain substrings are allowed to be replaced by certain other substrings. For example, context free grammars, are equivalent to the pushdown automata. In [ 59 ], Janzing and Wocjan showed that a certain string rewriting problem is PromiseBQP-complete. Thus quantum computers can solve it in polynomial time, but classical computers probably cannot. Given three strings s,t,t' , and a set of string rewriting rules satisfying certain promises, the problem is to find a certain approximation to the difference between the number of ways of obtaining t from s and the number of ways of obtaining t' from s . Similarly, certain problems of approximating the difference in number of paths between pairs of vertices in a graph, and difference in transition probabilities between pairs of states in a random walk are also BQP-complete [ 58 ]. ", + "references": [ + 59, + 58 + ], + "category": "Approximation and Simulation Algorithms" + }, + "10": { + "alg_id": 55, + "name": "Matrix Powers", + "speedup": "Superpolynomial", + "description": " Quantum computers have an exponential advantage in approximating matrix elements of powers of exponentially large sparse matrices. Suppose we are have an \\( N \\times N \\) symmetric matrix A such that there are at most polylog( N ) nonzero entries in each row, and given a row index, the set of nonzero entries can be efficiently computed. The task is, for any 1 < i < N , and any m polylogarithmic in N , to approximate \\( (A^m)_{ii} \\) the \\( i^{\\mathrm{th}} \\) diagonal matrix element of \\( A^m \\). The approximation is additive to within \\( b^m \\epsilon \\) where b is a given upper bound on | A | and \\( \\epsilon \\) is of order 1/polylog( N ). As shown by Janzing and Wocjan, this problem is PromiseBQP-complete, as is the corresponding problem for off-diagonal matrix elements [ 60 ]. Thus, quantum computers can solve it in polynomial time, but classical computers probably cannot.
", + "references": [ + 60 + ], + "category": "Approximation and Simulation Algorithms" + } + }, + "Optimization, Numerics, and Machine Learning": { + "0": { + "alg_id": 56, + "name": "Constraint Satisfaction", + "speedup": "Polynomial", + "description": " Constraint satisfaction problems, many of which are NP-hard, are ubiquitous in computer science, a canonical example being 3-SAT. If one wishes to satisfy as many constraints as possible rather than all of them, these become combinatorial optimization problems. (See also adiabatic algorithms .) The brute force solution to constraint satisfaction problems can be quadratically sped up using Grover's algorithm. However, most constraint satisfaction problems are solvable by classical algorithms that (although still exponential-time) run more than quadratically faster than brute force checking of all possible solutions. Nevertheless, a polynomial quantum speedup over the fastest known classical algorithm for 3-SAT is given in [ 133 ], and polynomial quantum speedups for some other constraint satisfaction problems are given in [ 134 , 298 ]. In [ 423 ] a quadratic quantum speedup for approximate solutions to homogeneous QUBO/Ising problems is obtained by building upon the quantum algorithm for semidefinite programming. A commonly used classical algorithm for constraint satisfaction is backtracking, and for some problems this algorithm is the fastest known. A general quantum speedup for backtracking algorithms is given in [ 264 ] and further improved in [ 422 ]. ", + "references": [ + 133, + 134, + 298, + 423, + 264, + 422 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "1": { + "alg_id": 57, + "name": "Adiabatic Algorithms", + "speedup": "Unknown", + "description": " In adiabatic quantum computation one starts with an initial Hamiltonian whose ground state is easy to prepare, and slowly varies the Hamiltonian to one whose ground state encodes the solution to some computational problem. By the adiabatic theorem, the system will track the instantaneous ground state provided the variation of the Hamiltonian is sufficiently slow. The runtime of an adiabatic algorithm scales at worst as \\(1/ \\gamma^3 \\) where \\( \\gamma \\) is the minimum eigenvalue gap between the ground state and the first excited state [ 185 ]. If the Hamiltonian is varied sufficiently smoothly, one can improve this to \\( \\widetilde{O}(1/\\gamma^2) \\) [ 247 ]. Adiabatic quantum computation was first proposed by Farhi et al. as a method for solving NP-complete combinatorial optimization problems [ 96 , 186 ]. Adiabatic quantum algorithms for optimization problems typically use \"stoquastic\" Hamiltonians, which do not suffer from the sign problem. Such algorithms are sometimes referred to as quantum annealing. Adiabatic quantum computation with non-stoquastic Hamiltonians is as powerful as the quantum circuit model [ 97 ]. Adiabatic algorithms using stoquastic Hamiltonians are probably less powerful [ 183 ], but are likely more powerful than classical computation [ 429 ]. The asymptotic runtime of adiabatic optimization algorithms is notoriously difficult to analyze, but some progress has been achieved [ 179 , 180 , 181 , 182 , 187 , 188 , 189 , 190 , 191 , 226 ]. (Also relevant is an earlier literature on quantum annealing, which originally referred to a classical optimization algorithm that works by simulating a quantum process, much as simulated annealing is a classical optimization algorithm that works by simulating a thermal process. See e.g. [ 199 , 198 ].) Adiabatic quantum computers can perform a process somewhat analogous to Grover search in \\( O(\\sqrt{N}) \\) time [ 98 ]. Adiabatic quantum algorithms achieving quadratic speedup for a more general class of problems are constructed in [ 184 ] by adapting techniques from [ 85 ]. Adiabatic quantum algorithms have been proposed for several specific problems, including PageRank [ 176 ], machine learning [ 192 , 195 ], finding Hadamard matrices [ 406 ], and graph problems [ 193 , 194 ]. Some quantum simulation algorithms also use adiabatic state preparation. ", + "references": [ + 185, + 247, + 96, + 186, + 97, + 183, + 429, + 179, + 180, + 181, + 182, + 187, + 188, + 189, + 190, + 191, + 226, + 199, + 198, + 98, + 184, + 85, + 176, + 192, + 195, + 406, + 193, + 194 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "2": { + "alg_id": 58, + "name": "Gradients, Structured Search, and Learning Polynomials", + "speedup": "Polynomial", + "description": " Suppose we are given a oracle for computing some smooth function \\( f:\\mathbb{R}^d \\to \\mathbb{R} \\). The inputs and outputs to f are given to the oracle with finitely many bits of precision. The task is to estimate \\( \\nabla f \\) at some specified point \\( \\mathbf{x}_0 \\in \\mathbb{R}^d \\). As shown in [ 61 ], a quantum computer can achieve this using one query, whereas a classical computer needs at least d+1 queries. In [ 20 ], Bulger suggested potential applications for optimization problems. As shown in appendix D of [ 62 ], a quantum computer can use the gradient algorithm to find the minimum of a quadratic form in d dimensions using O(d) queries, whereas, as shown in [ 94 ], a classical computer needs at least \\( \\Omega(d^2) \\) queries. Single query quantum algorithms for finding the minima of basins based on Hamming distance were given in [ 147 , 148 , 223 ]. The quantum algorithm of [ 62 ] can also extract all \\( d^2 \\) matrix elements of the quadratic form using O(d) queries, and more generally, all \\( d^n \\) n th derivatives of a smooth function of d variables in \\( O(d^{n-1}) \\) queries. Remarkably general results in [ 418 , 419 , 420 ] give quantum speedups for convex optimization and volume estimation of convex bodies, as well as query complexity lower bounds. Roughly speaking these results show that for convex optimization and volume estimation in d dimensions one gets a quadratic speedup in d just as was found earlier for the special case of minimizing quadratic forms. As shown in [ 130 , 146 ], quadratic forms and multilinear polynomials in d variables over a finite field may be extracted with a factor of d fewer quantum queries than are required classically. ", + "references": [ + 61, + 20, + 62, + 94, + 147, + 148, + 223, + 62, + 418, + 419, + 420, + 130, + 146 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "3": { + "alg_id": 59, + "name": "Linear Systems", + "speedup": "Superpolynomial", + "description": " We are given oracle access to an \\( n \\times n \\) matrix A and some description of a vector b . We wish to find some property of f(A)b for some efficiently computable function f . Suppose A is a Hermitian matrix with O (polylog n ) nonzero entries in each row and condition number k . As shown in [ 104 ], a quantum computer can in \\( O(k^2 \\log n) \\) time compute to polynomial precision various expectation values of operators with respect to the vector f(A)b (provided that a quantum state proportional to b is efficiently constructable). For certain functions, such as f(x)=1/x , this procedure can be extended to non-Hermitian and even non-square A . The runtime of this algorithm was subsequently improved to \\( O(k \\log^3 k \\log n) \\) in [ 138 ]. Exponentially improved scaling of runtime with precision was obtained in [ 263 ]. Some methods to extend this algorithm to apply to non-sparse matrices have been proposed [ 309 , 402 ], although these require certain partial sums of the matrix elements to be pre-computed. Extensions of this quantum algorithm have been applied to problems of estimating electromagnetic scattering crossections [ 249 ] (see also [ 369 ] for a different approach), solving linear differential equations [ 156 , 296 ], estimating electrical resistance of networks [ 210 ], least-squares curve-fitting [ 169 ], solving Toeplitz systems [ 297 ], and machine learning [ 214 , 222 , 250 , 251 , 309 ]. However, the linear-systems-based quantum algorithms for recommendation systems [ 309 ] and principal component analysis [ 250 ] were subsequently \"dequantized\" by Tang [ 400 , 401 ]. That is, Tang obtained polynomial time classical randomized algorithms for these problems, thus proving that the proposed quantum algorithms for these tasks do not achieve exponential speedup. Some limitations of the quantum machine learning algorithms based on linear systems are nicely summarized in [ 246 ]. In [ 220 ] it was shown that quantum computers can invert well-conditioned \\( n \\times n \\) matrices using only \\( O( \\log n ) \\) qubits, whereas the best classical algorithm uses order \\( \\log^2 n \\) bits. Subsequent improvements to this quantum algorithm are given in [ 279 ].", + "references": [ + 104, + 138, + 263, + 309, + 402, + 249, + 369, + 156, + 296, + 210, + 169, + 297, + 214, + 222, + 250, + 251, + 309, + 309, + 250, + 400, + 401, + 309, + 246, + 220, + 279 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "4": { + "alg_id": 60, + "name": "Machine Learning", + "speedup": "Varies", + "description": "Maching learning encompasses a wide variety of computational problems and can be attacked by a wide variety of algorithmic techniques. This entry summarizes quantum algorithmic techniques for improved machine learning. Many of the quantum algorithms here are cross-listed under other headings. In [ 214 , 222 , 250 , 251 , 309 , 338 , 339 , 359 , 403 ], quantum algorithms for solving linear systems [ 104 ] are applied to speed up cluster-finding, principal component analysis, binary classification, training of neural networks, and various forms of regression, provided the data satisfies certain conditions. However, a number of quantum machine learning algorithms based on linear systems have subsequently been 'dequantized'. Specifically, Tang showed in [ 400 , 401 ] that the problems of recommendation systems and principal component analysis solved by the quantum algorithms of [ 251 , 309 ] can in fact also be solved in polynomial time randomized classical algorithms. A cluster-finding method not based on the linear systems algorithm of [ 104 ] is given in [ 336 ]. The papers [ 192 , 195 , 344 , 345 , 346 , 348 ] explore the use of adiabatic optimization techniques to speed up the training of classifiers. In [ 221 ], a method is proposed for training Boltzmann machines by manipulating coherent quantum states with amplitudes proportional to the Boltzmann weights. Polynomial speedups can be obtained by applying Grover search and related techniques such as amplitude amplification to amenable subroutines of state of the art classical machine learning algorithms. See, for example [ 358 , 340 , 341 , 342 , 343 ]. Other quantum machine learning algorithms not falling into one of the above categories include [ 337 , 349 ]. Some limitations of quantum machine learning algorithms are nicely summarized in [ 246 ]. Many other quantum query algorithms that extract hidden structure of the black-box function could be cast as machine learning algorithms. See for example [ 146 , 23 , 11 , 31 , 212 ]. Query algorithms for learning the majority and 'battleship' functions are given in [ 224 ]. Large quantum advantages for learning from noisy oracles are given in [ 236 , 237 ]. In [ 428 ] quantum kernel estimation is used to implement a support-vector classifier solving a learning problem that is provably as hard as discrete logarithm. Several recent review articles [ 299 , 332 , 333 ] and a book [ 331 ] are available which summarize the state of the field. There is a related body of work, not strictly within the standard setting of quantum algorithms, regarding quantum learning in the case that the data itself is quantum coherent. See e.g. [ 350 , 334 , 335 , 351 , 352 , 353 , 354 , 355 , 356 , 357 ].", + "references": [ + 214, + 222, + 250, + 251, + 309, + 338, + 339, + 359, + 403, + 104, + 400, + 401, + 251, + 309, + 104, + 336, + 192, + 195, + 344, + 345, + 346, + 348, + 221, + 358, + 340, + 341, + 342, + 343, + 337, + 349, + 246, + 146, + 23, + 11, + 31, + 212, + 224, + 236, + 237, + 428, + 299, + 332, + 333, + 331, + 350, + 334, + 335, + 351, + 352, + 353, + 354, + 355, + 356, + 357 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "5": { + "alg_id": 61, + "name": "Tensor Principal Component Analysis", + "speedup": "Polynomial (quartic)", + "description": "In [ 424 ] a quantum algorithm is given for an idealized problem motivated by machine learning applications on high-dimensional data sets. Consider \\(T = \\lambda v_{\\mathrm{sig}}^{\\otimes p} + G \\) where G is a p -index tensor of Gaussian random variables, symmetrized over all permutations of indices, and \\(v_{\\mathrm{sig}}\\) is an N -dimensional vector of magnitude \\(\\sqrt{N}\\). The task is to recover \\(v_{\\mathrm{sig}}\\). Consider \\( \\lambda = \\alpha N^{-p/4}\\). The best classical algorithms succeed when \\( \\alpha \\gg 1\\) and have time and space complexity that scale exponentially in \\( \\alpha^{-1}\\). The quantum algorithm of [ 424 ] solves this problem in polynomial space and with runtime scaling quartically better in \\( \\alpha^{-1} \\) than the classical spectral algorithm. The quantum algorithm works by encoding the problem into the eigenspectrum of a many-body Hamiltonian and applying phase estimation together with amplitude amplification.", + "references": [ + 424 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "6": { + "alg_id": 62, + "name": "Solving Differential Equations", + "speedup": "Superpolynomial", + "description": " Consider linear first order differential equation \\( \\frac{d}{dt} \\mathbf{x} = A(t) \\mathbf{x} + \\mathbf{b}(t) \\), where \\( \\mathbf{x} \\) and \\( \\mathbf{b} \\) are N -dimensional vectors and A is an \\(N \\times N\\) matrix. Given an initial condition \\( \\mathbf{x}(0) \\) one wishes to compute the solution \\( \\mathbf{x}(t) \\) at some later time t to some precision \\( \\epsilon \\) in the sense that the normalized vector \\( x(t)/\\|x(t)\\| \\) produced has distance at most \\( \\epsilon \\) from the exact solution. In [ 156 ], Berry gives a quantum algorithm for this problem that runs in time \\( O(t^2 \\mathrm{poly}(1/\\epsilon) \\mathrm{poly log} N) \\), whereas the fastest classical algorithms run in time \\( O ( t \\mathrm{poly} N ) \\). The final result is produced in the form of a quantum superposition state on \\( O(log N) \\) qubits whose amplitudes contain the components of \\( \\mathbf{x}(t) \\). The algorithm works by reducing the problem to linear algebra via a high-order finite difference method and applying the quantum linear algebra primitive of [ 104 ]. In [ 410 ] an improved quantum algorithm for this problem was given which brings the epsilon dependence down to \\( \\mathrm{poly log}(1/\\epsilon) \\). A quantum algorithm for solving nonlinear differential equations (again in the sense of obtaining a solution encoded in the amplitudes) is described in [ 411 ], which has exponential scaling in t . In [ 426 , 427 ] quantum algorithms are given for solving nonlinear differential equations that scale as \\( O(t^2) \\). These are applicable to a restricted class of nonlinear differential equations. In particular, their solutions must not grow or shrink in magnitude too rapidly. Partial differential equations can be reduced to ordinary differential equations through discretization, and higher order differential equations can be reduced to first order through additiona of auxiliary variables. Consequently, these more general problems can be solved through the methods of [ 156 , 104 ]. However, quantum algorithms designed to solve these problems directly may be more efficient (and for specific problems one may analyze the complexity of tasks that are unspecified in a more general formulation such as preparation of relevant initial states). In [ 249 ] a quantum algorithm is given which solves the wave equation by applying finite-element methods to reduce it to linear algebra and then applying the quantum linear algebra algorithm of [ 104 ] with preconditioning. In [ 369 ] a quantum algorithm is given for solving the wave equation by discretizing it with finite differences and massaging it into the form of a Schrodinger equation which is then simulated using the method of [ 245 ]. The problem solved by [ 369 ] is not equivalent to that solved by [ 249 ] because in [ 249 ] the problem is reduced to a time-indepent one through assuming sinusoidal time dependence and applying separation of variables, whereas [ 369 ] solves the time-dependent problem. The quantum speedup achieved over classical methods for solving the wave equation in d -dimensiona is polynomial for fixed d but expontial in d . Concrete resource estimates for quantum algorithms to solve differential equations are given in [ 412 , 413 , 414 ]. A quantum algorithm for solving linear partial differential equations using continuous-variable quantum computing is given in [ 415 ]. In [ 296 ] quantum finite element methods are analyzed in a general setting. A quantum spectral method for solving differential equations is given in [ 416 ]. A quantum algorithm for solving the Vlasov equation is given in [ 417 ]. ", + "references": [ + 156, + 104, + 410, + 411, + 426, + 427, + 156, + 104, + 249, + 104, + 369, + 245, + 369, + 249, + 249, + 369, + 412, + 413, + 414, + 415, + 296, + 416, + 417 + ], + "category": "Optimization, Numerics, and Machine Learning" + }, + "7": { + "alg_id": 63, + "name": "Quantum Dynamic Programming", + "speedup": "Polynomial", + "description": " In [ 409 ] the authors introduce a problem called path-in-the-hypercube. In this problem, one given a subgraph of the hypercube and asked whether there is a path along this subgraph that starts from the all zeros vertex, ends at the all ones vertex, and makes only Hamming weight increasing moves. (The vertices of the hypercube graph correspond to bit strings of length n and the hypercube graph joins vertices of Hamming distance one.) Many NP-complete problems for which the best classical algorithm is dynamic programming can be modeled as instances of path-in-the-hypercube. By combining Grover search with dynamic programming methods, a quantum algorithm can solve path-in-the-hypercube in time \\( O^*(1.817^n) \\), where the notation \\( O^* \\) indicates that polynomial factors are being omitted. The fastest known classical algorithm for this problem runs in time \\( O^*(2^n) \\). Using this primitive quantum algorithms can be constructed that solve vertex ordering problems in \\( O^*(1.817^n) \\) vs. \\( O^* (2^n) \\) classically, graph bandwidth in \\( O^*(2.946^n) \\) vs. \\( O^*(4.383^n) \\) classically, travelling salesman and feedback arc set in \\( O^*(1.729^n) \\) vs. \\( O^*(2^n) \\) classically, and minimum set cover in \\( O( \\mathrm{poly}(m,n) 1.728^n ) \\) vs. \\( O(nm2^n) \\) classically.
", + "references": [ + 409 + ], + "category": "Optimization, Numerics, and Machine Learning" + } + } +} \ No newline at end of file diff --git a/src/storage/globalStore.js b/src/storage/globalStore.js new file mode 100644 index 0000000..98a9af8 --- /dev/null +++ b/src/storage/globalStore.js @@ -0,0 +1,45 @@ +import * as algorithms_ from './algorithms.json'; +import * as references_ from './references.json' +import {writable} from "svelte/store"; + +// Algorithms +const algorithms = algorithms_; + +// References +const references = references_; + + +// Control display_info +let to_display = writable("all_algs"); +let algs_of_cat_menu = writable(Object.keys(algorithms.default)[0]); // Just to have something +let display_menu = writable(false); +let display_categories = writable(false); +let display_algorithms = writable(false); + +// Algorithm to display +let alg_to_display = writable({}); + +// Category to display +let cat_to_display = writable({}); + +// Search results +let show_search_results = writable(false); + +// Screen width, placed here for global access +let screen_width = writable(0); +const screen_width_breakpoint = 768; + +export { + algorithms, + references, + to_display, + algs_of_cat_menu, + display_menu, + display_categories, + display_algorithms, + alg_to_display, + cat_to_display, + show_search_results, + screen_width, + screen_width_breakpoint +}; diff --git a/src/storage/references.json b/src/storage/references.json new file mode 100644 index 0000000..e8a4a9e --- /dev/null +++ b/src/storage/references.json @@ -0,0 +1,3733 @@ +{ + "1": { + "ref_id": 1, + "authors": "Daniel S. Abrams and Seth Lloyd", + "title": "Simulation of many-body Fermi systems on a universal quantum computer.", + "links": { + "arXiv:quant-ph/9703054": "http://arxiv.org/abs/quant-ph/9703054" + }, + "extra": "Physical Review Letters, 79(13):2586-2589, 1997." + }, + "2": { + "ref_id": 2, + "authors": "Dorit Aharonov and Itai Arad", + "title": "The BQP-hardness of approximating the Jones polynomial.", + "links": { + "arXiv:quant-ph/0605181": "http://arxiv.org/abs/quant-ph/0605181" + }, + "extra": "New Journal of Physics 13:035019, 2011." + }, + "3": { + "ref_id": 3, + "authors": "Dorit Aharonov, Itai Arad, Elad Eban, and Zeph Landau", + "title": "Polynomial quantum algorithms for additive approximations of the Potts model and other points of the Tutte plane.", + "links": { + "arXiv:quant-ph/0702008": "http://arxiv.org/abs/quant-ph/0702008" + }, + "extra": "" + }, + "4": { + "ref_id": 4, + "authors": "Dorit Aharonov, Vaughan Jones, and Zeph Landau", + "title": "A polynomial quantum algorithm for approximating the Jones polynomial.", + "links": { + "arXiv:quant-ph/0511096": "http://arxiv.org/abs/quant-ph/0511096" + }, + "extra": "In Proceedings of the 38th ACM Symposium on Theory of Computing, 2006." + }, + "5": { + "ref_id": 5, + "authors": "Dorit Aharonov and Amnon Ta-Shma", + "title": "Adiabatic quantum state generation and statistical zero knowledge.", + "links": { + "arXiv:quant-ph/0301023": "http://arxiv.org/abs/quant-ph/0301023" + }, + "extra": "In Proceedings of the 35th ACM Symposium on Theory of Computing, 2003." + }, + "6": { + "ref_id": 6, + "authors": "A. Ambainis, H. Buhrman, P. H\u00f8yer, M. Karpinizki, and P. Kurur", + "title": "Quantum matrix verification.", + "links": {}, + "extra": "Unpublished Manuscript, 2002." + }, + "7": { + "ref_id": 7, + "authors": "Andris Ambainis", + "title": "Quantum walk algorithm for element distinctness.", + "links": { + "arXiv:quant-ph/0311001": "http://arxiv.org/abs/quant-ph/0311001" + }, + "extra": "SIAM Journal on Computing, 37:210-239, 2007." + }, + "8": { + "ref_id": 8, + "authors": "Andris Ambainis, Andrew M. Childs, Ben W.Reichardt, Robert \u0160palek, and Shengyu Zheng", + "title": "Every AND-OR formula of size N can be evaluated in time \\( n^{1/2+o(1)} \\) on a quantum computer.", + "links": { + "arXiv:quant-ph/0703015": "http://arxiv.org/abs/quant-ph/0703015", + "arXiv:0704.3628": "http://arxiv.org/abs/0704.3628" + }, + "extra": "In Proceedings of the 48th IEEE Symposium on the Foundations of Computer Science, pages 363-372, 2007." + }, + "9": { + "ref_id": 9, + "authors": "Dave Bacon, Andrew M. Childs, and Wim van Dam", + "title": "From optimal measurement to efficient quantum algorithms for the hidden subgroup problem over semidirect product groups.", + "links": { + "arXiv:quant-ph/0504083": "http://arxiv.org/abs/quant-ph/0504083" + }, + "extra": "In Proceedings of the 46th IEEE Symposium on Foundations of Computer Science, pages 469-478, 2005." + }, + "10": { + "ref_id": 10, + "authors": "Michael Ben-Or and Avinatan Hassidim", + "title": "Quantum search in an ordered list via adaptive learning.", + "links": { + "arXiv:quant-ph/0703231": "http://arxiv.org/abs/quant-ph/0703231" + }, + "extra": "" + }, + "11": { + "ref_id": 11, + "authors": "Ethan Bernstein and Umesh Vazirani", + "title": "Quantum complexity theory.", + "links": {}, + "extra": "In Proceedings of the 25th ACM Symposium on the Theory of Computing, pages 11-20, 1993." + }, + "12": { + "ref_id": 12, + "authors": "D.W. Berry, G. Ahokas, R. Cleve, and B. C. Sanders", + "title": "Efficient quantum algorithms for simulating sparse Hamiltonians.", + "links": { + "arXiv:quant-ph/0508139": "http://arxiv.org/abs/quant-ph/0508139" + }, + "extra": "Communications in Mathematical Physics, 270(2):359-371, 2007." + }, + "13": { + "ref_id": 13, + "authors": "A. Berzina, A. Dubrovsky, R. Frivalds, L. Lace, and O. Scegulnaja", + "title": "Quantum query complexity for some graph problems.", + "links": {}, + "extra": "In Proceedings of the 30th Conference on Current Trends in Theory and Practive of Computer Science, pages 140-150, 2004." + }, + "14": { + "ref_id": 14, + "authors": "D. Boneh and R. J. Lipton", + "title": "Quantum cryptanalysis of hidden linear functions.", + "links": {}, + "extra": "In Don Coppersmith, editor, CRYPTO '95, Lecture Notes in Computer Science, pages 424-437. Springer-Verlag, 1995." + }, + "15": { + "ref_id": 15, + "authors": "M. Boyer, G. Brassard, P. H\u00f8yer, and A. Tapp", + "title": "Tight bounds on quantum searching.", + "links": {}, + "extra": "Fortschritte der Physik, 46:493-505, 1998." + }, + "16": { + "ref_id": 16, + "authors": "G. Brassard, P. H\u00f8yer, and A. Tapp", + "title": "Quantum counting.", + "links": { + "arXiv:quant-ph/9805082": "http://arxiv.org/abs/quant-ph/9805082" + }, + "extra": "" + }, + "17": { + "ref_id": 17, + "authors": "Gilles Brassard, Peter H\u00f8yer, Michele Mosca, and Alain Tapp", + "title": "Quantum amplitude amplification and estimation.", + "links": { + "arXiv:quant-ph/0005055": "http://arxiv.org/abs/quant-ph/0005055" + }, + "extra": "In Samuel J. Lomonaco Jr. and Howard E. Brandt, editors, Quantum Computation and Quantum Information: A Millennium Volume, volume 305 of AMS Contemporary Mathematics Series . American Mathematical Society, 2002." + }, + "18": { + "ref_id": 18, + "authors": "Gilles Brassard, Peter H\u00f8yer, and Alain Tapp", + "title": "Quantum algorithm for the collision problem.", + "links": { + "arXiv:quant-ph/9705002": "http://arxiv.org/abs/quant-ph/9705002" + }, + "extra": "ACM SIGACT News, 28:14-19, 1997." + }, + "19": { + "ref_id": 19, + "authors": "Harry Buhrman and Robert \u0160palek", + "title": "Quantum verification of matrix products.", + "links": { + "arXiv:quant-ph/0409035": "http://arxiv.org/abs/quant-ph/0409035" + }, + "extra": "In Proceedings of the 17th ACM-SIAM Symposium on Discrete Algorithms, pages 880-889, 2006." + }, + "20": { + "ref_id": 20, + "authors": "David Bulger", + "title": "Quantum basin hopping with gradient-based local optimisation.", + "links": { + "arXiv:quant-ph/0507193": "http://arxiv.org/abs/quant-ph/0507193" + }, + "extra": "" + }, + "21": { + "ref_id": 21, + "authors": "Harry Burhrman, Christoph D\u00fcrr, Mark Heiligman, Peter H\u00f8yer, Fr\u00e9d\u00e9ric Magniez, Miklos Santha, and Ronald de Wolf", + "title": "Quantum algorithms for element distinctness.", + "links": { + "arXiv:quant-ph/0007016": "http://arxiv.org/abs/quant-ph/0007016" + }, + "extra": "In Proceedings of the 16th IEEE Annual Conference on Computational Complexity, pages 131-137, 2001." + }, + "22": { + "ref_id": 22, + "authors": "Dong Pyo Chi, Jeong San Kim, and Soojoon Lee", + "title": "Notes on the hidden subgroup problem on some semi-direct product groups.", + "links": { + "arXiv:quant-ph/0604172": "http://arxiv.org/abs/quant-ph/0604172" + }, + "extra": " Phys. Lett. A 359(2):114-116, 2006." + }, + "23": { + "ref_id": 23, + "authors": "A. M. Childs, L. J. Schulman, and U. V. Vazirani", + "title": "Quantum algorithms for hidden nonlinear structures.", + "links": { + "arXiv:0705.2784": "http://arxiv.org/abs/0705.2784" + }, + "extra": "In Proceedings of the 48th IEEE Symposium on Foundations of Computer Science, pages 395-404, 2007." + }, + "24": { + "ref_id": 24, + "authors": "Andrew Childs and Troy Lee", + "title": "Optimal quantum adversary lower bounds for ordered search.", + "links": { + "arXiv:0708.3396": "http://arxiv.org/abs/0708.3396" + }, + "extra": "Proceedings of ICALP 2008" + }, + "25": { + "ref_id": 25, + "authors": "Andrew M. Childs", + "title": "Quantum information processing in continuous time", + "links": {}, + "extra": "" + }, + "26": { + "ref_id": 26, + "authors": "Andrew M. Childs, Richard Cleve, Enrico Deotto, Edward Farhi, Sam Gutmann, and Daniel A. Spielman", + "title": "Exponential algorithmic speedup by quantum walk.", + "links": { + "arXiv:quant-ph/0209131": "http://arxiv.org/abs/quant-ph/0209131" + }, + "extra": "In Proceedings of the 35th ACM Symposium on Theory of Computing, pages 59-68, 2003." + }, + "27": { + "ref_id": 27, + "authors": "Andrew M. Childs, Richard Cleve, Stephen P. Jordan, and David Yonge-Mallo", + "title": "Discrete-query quantum algorithm for NAND trees.", + "links": { + "arXiv:quant-ph/0702160": "http://arxiv.org/abs/quant-ph/0702160" + }, + "extra": "Theory of Computing, 5:119-123, 2009." + }, + "28": { + "ref_id": 28, + "authors": "Andrew M. Childs and Wim van Dam", + "title": "Quantum algorithm for a generalized hidden shift problem.", + "links": { + "arXiv:quant-ph/0507190": "http://arxiv.org/abs/quant-ph/0507190" + }, + "extra": "In Proceedings of the 18th ACM-SIAM Symposium on Discrete Algorithms, pages 1225-1232, 2007." + }, + "29": { + "ref_id": 29, + "authors": "Richard Cleve, Dmitry Gavinsky, and David L. Yonge-Mallo", + "title": "Quantum algorithms for evaluating MIN-MAX trees.", + "links": { + "arXiv:0710.5794": "http://arxiv.org/abs/0710.5794" + }, + "extra": "In Theory of Quantum Computation, Communication, andCryptography, pages 11-15, Springer, 2008. (LNCS Vol. 5106)" + }, + "30": { + "ref_id": 30, + "authors": "J. Niel de Beaudrap, Richard Cleve, and John Watrous", + "title": "Sharp quantum versus classical query complexity separations.", + "links": { + "arXiv:quant-ph/0011065v2": "http://arxiv.org/abs/quant-ph/0011065" + }, + "extra": "Algorithmica, 34(4):449-461, 2002." + }, + "31": { + "ref_id": 31, + "authors": "Thomas Decker, Jan Draisma, and Pawel Wocjan", + "title": "Quantum algorithm for identifying hidden polynomials.", + "links": { + "arXiv:0706.1219": "http://arxiv.org/abs/0706.1219" + }, + "extra": "Quantum Information and Computation, 9(3):215-230, 2009." + }, + "32": { + "ref_id": 32, + "authors": "David Deutsch", + "title": "Quantum theory, the Church-Turing principle, and the universal quantum computer.", + "links": {}, + "extra": "Proceedings of the Royal Society of London Series A, 400:97-117, 1985." + }, + "33": { + "ref_id": 33, + "authors": "David Deutsch and Richard Jozsa", + "title": "Rapid solution of problems by quantum computation.", + "links": {}, + "extra": "Proceedings of the Royal Society of London Series A, 493:553-558, 1992." + }, + "34": { + "ref_id": 34, + "authors": "Christoph D\u00fcrr, Mark Heiligman, Peter H\u00f8yer, and Mehdi Mhalla", + "title": "Quantum query complexity of some graph problems.", + "links": { + "arXiv:quant-ph/0401091": "http://arxiv.org/abs/quant-ph/0401091" + }, + "extra": "SIAM Journal on Computing, 35(6):1310-1328, 2006." + }, + "35": { + "ref_id": 35, + "authors": "Christoph D\u00fcrr and Peter H\u00f8yer", + "title": "A quantum algorithm for finding the minimum.", + "links": { + "arXiv:quant-ph/9607014": "http://arxiv.org/abs/quant-ph/9607014" + }, + "extra": "" + }, + "36": { + "ref_id": 36, + "authors": "Christoph D\u00fcrr, Mehdi Mhalla, and Yaohui Lei", + "title": "Quantum query complexity of graph connectivity.", + "links": { + "arXiv:quant-ph/0303169": "http://arxiv.org/abs/quant-ph/0303169" + }, + "extra": "" + }, + "37": { + "ref_id": 37, + "authors": "Mark Ettinger, Peter H\u00f8yer, and Emanuel Knill", + "title": "The quantum query complexity of the hidden subgroup problem is polynomial.", + "links": { + "arXiv:quant-ph/0401083": "http://arxiv.org/abs/quant-ph/0401083" + }, + "extra": "Information Processing Letters, 91(1):43-48, 2004." + }, + "38": { + "ref_id": 38, + "authors": "Edward Farhi, Jeffrey Goldstone, and Sam Gutmann", + "title": "A quantum algorithm for the Hamiltonian NAND tree.", + "links": { + "arXiv:quant-ph/0702144": "http://arxiv.org/abs/quant-ph/0702144" + }, + "extra": "Theory of Computing 4:169-190, 2008." + }, + "39": { + "ref_id": 39, + "authors": "Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser", + "title": "Invariant quantum algorithms for insertion into an ordered list.", + "links": { + "arXiv:quant-ph/9901059": "http://arxiv.org/abs/quant-ph/9901059" + }, + "extra": "" + }, + "40": { + "ref_id": 40, + "authors": "Richard P. Feynman", + "title": "Simulating physics with computers.", + "links": {}, + "extra": "International Journal of Theoretical Physics, 21(6/7):467-488, 1982." + }, + "41": { + "ref_id": 41, + "authors": "Michael Freedman, Alexei Kitaev, and Zhenghan Wang", + "title": "Simulation of topological field theories by quantum computers.", + "links": {}, + "extra": "Communications in Mathematical Physics, 227:587-603, 2002." + }, + "42": { + "ref_id": 42, + "authors": "Michael Freedman, Michael Larsen, and Zhenghan Wang", + "title": "A modular functor which is universal for quantum computation.", + "links": { + "arXiv:quant-ph/0001108": "http://arxiv.org/abs/quant-ph/0001108" + }, + "extra": "Comm. Math. Phys. 227(3):605-622, 2002." + }, + "43": { + "ref_id": 43, + "authors": "K. Friedl, G. Ivanyos, F. Magniez, M. Santha, and P. Sen", + "title": "Hidden translation and translating coset in quantum computing.", + "links": { + "arXiv:quant-ph/0211091": "http://arxiv.org/abs/quant-ph/0211091" + }, + "extra": "SIAM Journal on Computing Vol. 43, pp. 1-24, 2014. Appeared earlier in Proceedings of the 35th ACM Symposium on Theory of Computing, pages 1-9, 2003." + }, + "44": { + "ref_id": 44, + "authors": "D. Gavinsky", + "title": "Quantum solution to the hidden subgroup problem for poly-near-Hamiltonian-groups.", + "links": {}, + "extra": "Quantum Information and Computation, 4:229-235, 2004." + }, + "45": { + "ref_id": 45, + "authors": "Joseph Geraci", + "title": "A new connection between quantum circuits, graphs and the Isingpartition function", + "links": { + "arXiv:0801.4833": "http://arxiv.org/abs/0801.4833" + }, + "extra": "Quantum Information Processing, 7(5):227-242, 2008." + }, + "46": { + "ref_id": 46, + "authors": "Joseph Geraci and Frank Van Bussel", + "title": "A theorem on the quantum evaluation of weight enumerators for a certain class of cyclic Codes with a note on cyclotomic cosets.", + "links": { + "arXiv:cs/0703129": "http://arxiv.org/abs/cs/0703129" + }, + "extra": "" + }, + "47": { + "ref_id": 47, + "authors": "Joseph Geraci and Daniel A. Lidar", + "title": "On the exact evaluation of certain instances of the Potts partition function by quantum computers.", + "links": { + "arXiv:quant-ph/0703023": "http://arxiv.org/abs/quant-ph/0703023" + }, + "extra": "Comm. Math. Phys. Vol. 279, pg. 735, 2008." + }, + "48": { + "ref_id": 48, + "authors": "Lov K. Grover", + "title": "Quantum mechanics helps in searching for a needle in a haystack.", + "links": { + "arXiv:quant-ph/9605043": "http://arxiv.org/abs/quant-ph/9605043" + }, + "extra": "Physical Review Letters, 79(2):325-328, 1997." + }, + "49": { + "ref_id": 49, + "authors": "Sean Hallgren", + "title": "Polynomial-time quantum algorithms for Pell's equation and the principal ideal problem.", + "links": {}, + "extra": "In Proceedings of the 34th ACM Symposium on Theory of Computing, 2002." + }, + "50": { + "ref_id": 50, + "authors": "Sean Hallgren", + "title": "Fast quantum algorithms for computing the unit group and class group of a number field.", + "links": {}, + "extra": "In Proceedings of the 37th ACM Symposium on Theory of Computing, 2005." + }, + "51": { + "ref_id": 51, + "authors": "Sean Hallgren, Alexander Russell, and Amnon Ta-Shma", + "title": "Normal subgroup reconstruction and quantum computation using group representations.", + "links": {}, + "extra": "SIAM Journal on Computing, 32(4):916-934, 2003." + }, + "52": { + "ref_id": 52, + "authors": "Mark Heiligman", + "title": "Quantum algorithms for lowest weight paths and spanning trees in complete graphs.", + "links": { + "arXiv:quant-ph/0303131": "http://arxiv.org/abs/quant-ph/0303131" + }, + "extra": "" + }, + "53": { + "ref_id": 53, + "authors": "Yoshifumi Inui and Fran\u00e7ois Le Gall", + "title": "Efficient quantum algorithms for the hidden subgroup problem over a class of semi-direct product groups.", + "links": { + "arXiv:quant-ph/0412033": "http://arxiv.org/abs/quant-ph/0412033" + }, + "extra": "Quantum Information and Computation, 7(5/6):559-570, 2007." + }, + "54": { + "ref_id": 54, + "authors": "Yuki Kelly Itakura", + "title": "Quantum algorithm for commutativity testing of a matrix set.", + "links": { + "arXiv:quant-ph/0509206": "http://arxiv.org/abs/quant-ph/0509206" + }, + "extra": "Master's thesis, University of Waterloo, 2005." + }, + "55": { + "ref_id": 55, + "authors": "G\u00e1bor Ivanyos, Fr\u00e9d\u00e9ric Magniez, and Miklos Santha", + "title": "Efficient quantum algorithms for some instances of the non-abelian hidden subgroup problem.", + "links": { + "arXiv:quant-ph/0102014": "http://arxiv.org/abs/quant-ph/0102014" + }, + "extra": "In Proceedings of the 13th ACM Symposium on Parallel Algorithms and Architectures, pages 263-270, 2001." + }, + "56": { + "ref_id": 56, + "authors": "G\u00e1bor Ivanyos, Luc Sanselme, and Miklos Santha", + "title": "An efficient quantum algorithm for the hidden subgroup problem in extraspecial groups.", + "links": { + "arXiv:quant-ph/0701235": "http://arxiv.org/abs/quant-ph/0701235" + }, + "extra": "In Proceedings of the 24th Symposium on Theoretical Aspects of Computer Science, 2007." + }, + "57": { + "ref_id": 57, + "authors": "G\u00e1bor Ivanyos, Luc Sanselme, and Miklos Santha", + "title": "An efficient quantum algorithm for the hidden subgroup problem in nil-2 groups.", + "links": { + "arXiv:0707.1260": "http://arxiv.org/abs/0707.1260" + }, + "extra": "In LATIN 2008: Theoretical Informatics, pg. 759-771,Springer (LNCS 4957)." + }, + "58": { + "ref_id": 58, + "authors": "Dominik Janzing and Pawel Wocjan", + "title": "BQP-complete problems concerning mixing properties of classical random walks on sparse graphs.", + "links": { + "arXiv:quant-ph/0610235": "http://arxiv.org/abs/quant-ph/0610235" + }, + "extra": "" + }, + "59": { + "ref_id": 59, + "authors": "Dominik Janzing and Pawel Wocjan", + "title": "A promiseBQP-complete string rewriting problem.", + "links": { + "arXiv:0705.1180": "http://arxiv.org/abs/0705.1180" + }, + "extra": "Quantum Information and Computation, 10(3/4):234-257, 2010." + }, + "60": { + "ref_id": 60, + "authors": "Dominik Janzing and Pawel Wocjan", + "title": "A simple promiseBQP-complete matrix problem.", + "links": { + "arXiv:quant-ph/0606229": "http://arxiv.org/abs/quant-ph/0606229" + }, + "extra": "Theory of Computing, 3:61-79, 2007." + }, + "61": { + "ref_id": 61, + "authors": "Stephen P. Jordan", + "title": "Fast quantum algorithm for numerical gradient estimation.", + "links": { + "arXiv:quant-ph/0405146": "http://arxiv.org/abs/quant-ph/0405146" + }, + "extra": "Physical Review Letters, 95:050501, 2005." + }, + "62": { + "ref_id": 62, + "authors": "Stephen P. Jordan", + "title": "Quantum Computation Beyond the Circuit Model", + "links": { + "arXiv:0809.2307": "http://arxiv.org/abs/0809.2307" + }, + "extra": "PhD thesis, Massachusetts Institute of Technology, 2008." + }, + "63": { + "ref_id": 63, + "authors": "Ivan Kassal, Stephen P. Jordan, Peter J. Love, Masoud Mohseni, and Al\u00e1n Aspuru-Guzik", + "title": "Quantum algorithms for the simulation of chemical dynamics.", + "links": { + "arXiv:0801.2986": "http://arxiv.org/abs/0801.2986" + }, + "extra": "Proc. Natl. Acad. Sci. Vol. 105, pg. 18681, 2008." + }, + "64": { + "ref_id": 64, + "authors": "Kiran S. Kedlaya", + "title": "Quantum computation of zeta functions of curves.", + "links": { + "arXiv:math/0411623": "http://arxiv.org/abs/math/0411623" + }, + "extra": "Computational Complexity, 15:1-19, 2006." + }, + "65": { + "ref_id": 65, + "authors": "E. Knill and R. Laflamme", + "title": "Quantum computation and quadratically signed weight enumerators.", + "links": { + "arXiv:quant-ph/9909094": "http://arxiv.org/abs/quant-ph/9909094" + }, + "extra": "Information Processing Letters, 79(4):173-179, 2001." + }, + "66": { + "ref_id": 66, + "authors": "Greg Kuperberg", + "title": "A subexponential-time quantum algorithm for the dihedral hidden subgroup problem.", + "links": { + "arXiv:quant-ph/0302112": "http://arxiv.org/abs/quant-ph/0302112" + }, + "extra": "SIAM Journal on Computing, 35(1):170-188, 2005." + }, + "67": { + "ref_id": 67, + "authors": "Daniel A. Lidar", + "title": "On the quantum computational complexity of the Ising spin glass partition function and of knot invariants.", + "links": { + "arXiv:quant-ph/0309064": "http://arxiv.org/abs/quant-ph/0309064" + }, + "extra": "New Journal of Physics Vol. 6, pg. 167, 2004." + }, + "68": { + "ref_id": 68, + "authors": "Daniel A. Lidar and Haobin Wang", + "title": "Calculating the thermal rate constant with exponential speedup on a quantum computer.", + "links": { + "arXiv:quant-ph/9807009": "http://arxiv.org/abs/quant-ph/9807009" + }, + "extra": "Physical Review E, 59(2):2429-2438, 1999." + }, + "69": { + "ref_id": 69, + "authors": "Chris Lomont", + "title": "The hidden subgroup problem - review and open problems.", + "links": { + "arXiv:quant-ph/0411037": "http://arxiv.org/abs/quant-ph/0411037" + }, + "extra": "" + }, + "70": { + "ref_id": 70, + "authors": "Fr\u00e9d\u00e9ric Magniez, Miklos Santha, and Mario Szegedy", + "title": "Quantum algorithms for the triangle problem.", + "links": { + "arXiv:quant-ph/0310134": "http://arxiv.org/abs/quant-ph/0310134" + }, + "extra": "SIAM Journal on Computing, 37(2):413-424, 2007." + }, + "71": { + "ref_id": 71, + "authors": "Carlos Magno, M. Cosme, and Renato Portugal", + "title": "Quantum algorithm for the hidden subgroup problem on a class of semidirect product groups.", + "links": { + "arXiv:quant-ph/0703223": "http://arxiv.org/abs/quant-ph/0703223" + }, + "extra": "" + }, + "72": { + "ref_id": 72, + "authors": "Cristopher Moore, Daniel Rockmore, Alexander Russell, and Leonard Schulman", + "title": "The power of basis selection in Fourier sampling: the hidden subgroup problem in affine groups.", + "links": { + "arXiv:quant-ph/0211124": "http://arxiv.org/abs/quant-ph/0211124" + }, + "extra": "In Proceedings of the 15th ACM-SIAM Symposium on Discrete Algorithms, pages 1113-1122, 2004." + }, + "73": { + "ref_id": 73, + "authors": "M. Mosca", + "title": "Quantum searching, counting, and amplitude amplification by eigenvector analysis.", + "links": {}, + "extra": "In R. Freivalds, editor, Proceedings of International Workshop on Randomized Algorithms, pages 90-100, 1998." + }, + "74": { + "ref_id": 74, + "authors": "Michele Mosca", + "title": "Quantum Computer Algorithms", + "links": {}, + "extra": "" + }, + "75": { + "ref_id": 75, + "authors": "Ashwin Nayak and Felix Wu", + "title": "The quantum query complexity of approximating the median and related statistics.", + "links": { + "arXiv:quant-ph/9804066": "http://arxiv.org/abs/quant-ph/9804066" + }, + "extra": "In Proceedings of 31st ACM Symposium on the Theory of Computing, 1999." + }, + "76": { + "ref_id": 76, + "authors": "Michael A. Nielsen and Isaac L. Chuang.", + "title": "Quantum Computation and Quantum Information", + "links": {}, + "extra": "Cambridge University Press, Cambridge, UK, 2000." + }, + "77": { + "ref_id": 77, + "authors": "Erich Novak", + "title": "Quantum complexity of integration.", + "links": { + "arXiv:quant-ph/0008124": "http://arxiv.org/abs/quant-ph/0008124" + }, + "extra": "Journal of Complexity, 17:2-16, 2001." + }, + "78": { + "ref_id": 78, + "authors": "Oded Regev", + "title": "Quantum computation and lattice problems.", + "links": { + "arXiv:cs/0304005": "http://arxiv.org/abs/cs/0304005" + }, + "extra": "In Proceedings of the 43rd Symposium on Foundations of Computer Science, 2002." + }, + "79": { + "ref_id": 79, + "authors": "Oded Regev", + "title": "A subexponential time algorithm for the dihedral hidden subgroup problem with polynomial space.", + "links": { + "arXiv:quant-ph/0406151": "http://arxiv.org/abs/quant-ph/0406151" + }, + "extra": "" + }, + "80": { + "ref_id": 80, + "authors": "Ben Reichardt and Robert \u0160palek", + "title": "Span-program-based quantum algorithm for evaluating formulas.", + "links": { + "arXiv:0710.2630": "http://arxiv.org/abs/0710.2630" + }, + "extra": "Proceedings of STOC 2008" + }, + "81": { + "ref_id": 81, + "authors": "Martin Roetteler and Thomas Beth", + "title": "Polynomial-time solution to the hidden subgroup problem for a class of non-abelian groups.", + "links": { + "arXiv:quant-ph/9812070": "http://arxiv.org/abs/quant-ph/9812070" + }, + "extra": "" + }, + "82": { + "ref_id": 82, + "authors": "Peter W. Shor", + "title": "Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer.", + "links": { + "arXiv:quant-ph/9508027": "http://arxiv.org/abs/quant-ph/9508027" + }, + "extra": "SIAM Journal on Computing, 26(5):1484-1509, 1997." + }, + "83": { + "ref_id": 83, + "authors": "Peter W. Shor and Stephen P. Jordan", + "title": "Estimating Jones polynomials is a complete problem for one clean qubit.", + "links": { + "arXiv:0707.2831": "http://arxiv.org/abs/0707.2831" + }, + "extra": "Quantum Information and Computation, 8(8/9):681-714, 2008." + }, + "84": { + "ref_id": 84, + "authors": "R. D. Somma, S. Boixo, and H. Barnum", + "title": "Quantum simulated annealing.", + "links": { + "arXiv:0712.1008": "http://arxiv.org/abs/0712.1008" + }, + "extra": "" + }, + "85": { + "ref_id": 85, + "authors": "M. Szegedy", + "title": "Quantum speed-up of Markov chain based algorithms.", + "links": {}, + "extra": "In Proceedings of the 45th IEEE Symposium on Foundations of Computer Science, pg. 32, 2004." + }, + "86": { + "ref_id": 86, + "authors": "Wim van Dam", + "title": "Quantum algorithms for weighing matrices and quadratic residues.", + "links": { + "arXiv:quant-ph/0008059": "http://arxiv.org/abs/quant-ph/0008059" + }, + "extra": "Algorithmica, 34(4):413-428, 2002." + }, + "87": { + "ref_id": 87, + "authors": "Wim van Dam", + "title": "Quantum computing and zeros of zeta functions.", + "links": { + "arXiv:quant-ph/0405081": "http://arxiv.org/abs/quant-ph/0405081" + }, + "extra": "" + }, + "88": { + "ref_id": 88, + "authors": "Wim van Dam and Sean Hallgren", + "title": "Efficient quantum algorithms for shifted quadratic character problems.", + "links": { + "arXiv:quant-ph/0011067": "http://arxiv.org/abs/quant-ph/0011067" + }, + "extra": "" + }, + "89": { + "ref_id": 89, + "authors": "Wim van Dam, Sean Hallgren, and Lawrence Ip", + "title": "Quantum algorithms for some hidden shift problems.", + "links": { + "arXiv:quant-h/0211140": "http://arxiv.org/abs/quant-ph/0211140" + }, + "extra": "SIAM Journal on Computing, 36(3):763-778, 2006." + }, + "90": { + "ref_id": 90, + "authors": "Wim van Dam and Gadiel Seroussi", + "title": "Efficient quantum algorithms for estimating Gauss sums.", + "links": { + "arXiv:quant-ph/0207131": "http://arxiv.org/abs/quant-ph/0207131" + }, + "extra": "" + }, + "91": { + "ref_id": 91, + "authors": "John Watrous", + "title": "Quantum algorithms for solvable groups.", + "links": { + "arXiv:quant-ph/0011023": "http://arxiv.org/abs/quant-ph/0011023" + }, + "extra": "In Proceedings of the 33rd ACM Symposium on Theory of Computing, pages 60-67, 2001." + }, + "92": { + "ref_id": 92, + "authors": "Stephen Wiesner", + "title": "Simulations of many-body quantum systems by a quantum computer.", + "links": { + "arXiv:quant-ph/9603028": "http://arxiv.org/abs/quant-ph/9603028" + }, + "extra": "" + }, + "93": { + "ref_id": 93, + "authors": "Pawel Wocjan and Jon Yard", + "title": "The Jones polynomial: quantum algorithms and applications in quantum complexity theory.", + "links": { + "arXiv:quant-ph/0603069": "http://arxiv.org/abs/quant-ph/0603069" + }, + "extra": "Quantum Information and Computation 8(1/2):147-180, 2008." + }, + "94": { + "ref_id": 94, + "authors": "Andrew Yao", + "title": "On computing the minima of quadratic forms.", + "links": {}, + "extra": "In Proceedings of the 7th ACM Symposium on Theory of Computing, pages 23-26, 1975." + }, + "95": { + "ref_id": 95, + "authors": "Christof Zalka", + "title": "Efficient simulation of quantum systems by quantum computers.", + "links": { + "arXiv:quant-ph/9603026": "http://arxiv.org/abs/quant-ph/9603026" + }, + "extra": "Proceedings of the Royal Society of London Series A, 454:313, 1996." + }, + "96": { + "ref_id": 96, + "authors": "Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser", + "title": "Quantum computation by adiabatic evolution.", + "links": { + "arXiv:quant-ph/0001106": "http://arxiv.org/abs/quant-ph/0001106" + }, + "extra": "" + }, + "97": { + "ref_id": 97, + "authors": "Dorit Aharonov, Wim van Dam, Julia Kempe, Zeph Landau, Seth Lloyd, andOded Regev", + "title": "Adiabatic Quantum Computation is Equivalent to Standard QuantumComputation.", + "links": { + "arXiv:quant-ph/0405098": "http://arxiv.org/abs/quant-ph/0405098" + }, + "extra": "SIAM Journal on Computing, 37(1):166-194, 2007." + }, + "98": { + "ref_id": 98, + "authors": "J\u00e9r\u00e9mie Roland and Nicolas J. Cerf", + "title": "Quantum search by local adiabatic evolution.", + "links": { + "arXiv:quant-ph/0107015": "http://arxiv.org/abs/quant-ph/0107015" + }, + "extra": "Physical Review A, 65(4):042308, 2002." + }, + "99": { + "ref_id": 99, + "authors": "L.-A. Wu, M.S. Byrd, and D. A. Lidar", + "title": "Polynomial-Time Simulation of Pairing Models on a Quantum Computer.", + "links": { + "arXiv:quant-ph/0108110": "http://arxiv.org/abs/quant-ph/0108110" + }, + "extra": "Physical Review Letters, 89(6):057904, 2002." + }, + "100": { + "ref_id": 100, + "authors": "Eli Biham, Ofer Biham, David Biron, Markus Grassl, and Daniel Lidar", + "title": "Grover's quantum search algorithm for an arbitrary initialamplitude distribution.", + "links": { + "arXiv:quant-ph/9807027": "http://arxiv.org/abs/quant-ph/9807027", + "arXiv:quant-ph/0010077": "http://arxiv.org/abs/quant-ph/0010077" + }, + "extra": "Physical Review A, 60(4):2742, 1999." + }, + "101": { + "ref_id": 101, + "authors": "Andrew Childs, Shelby Kimmel, and Robin Kothari", + "title": "The quantum query complexity of read-many formulas", + "links": { + "arXiv:1112.0548": "http://arxiv.org/abs/1112.0548" + }, + "extra": "In Proceedings of ESA 2012, pg. 337-348, Springer. (LNCS 7501)" + }, + "102": { + "ref_id": 102, + "authors": "Al\u00e1n Aspuru-Guzik, Anthony D. Dutoi, Peter J. Love, and Martin Head-Gordon", + "title": "Simulated quantum computation of molecular energies.", + "links": { + "arXiv:quant-ph/0604193": "http://arxiv.org/abs/quant-ph/0604193" + }, + "extra": "Science, 309(5741):1704-1707, 2005." + }, + "103": { + "ref_id": 103, + "authors": "A. M. Childs, A. J. Landahl, and P. A. Parrilo", + "title": "Quantum algorithms for the ordered search problem via semidefinite programming.", + "links": { + "arXiv:quant-ph/0608161": "http://arxiv.org/abs/quant-ph/0608161" + }, + "extra": "Physical Review A, 75 032335, 2007." + }, + "104": { + "ref_id": 104, + "authors": "Aram W. Harrow, Avinatan Hassidim, and Seth Lloyd", + "title": "Quantum algorithm for solving linear systems of equations.", + "links": { + "arXiv:0811.3171": "http://arxiv.org/abs/0811.3171" + }, + "extra": "Physical Review Letters 15(103):150502, 2009." + }, + "105": { + "ref_id": 105, + "authors": "Martin Roetteler", + "title": "Quantum algorithms for highly non-linear Boolean functions.", + "links": { + "arXiv:0811.3208": "http://arxiv.org/abs/0811.3208" + }, + "extra": "Proceedings of SODA 2010" + }, + "106": { + "ref_id": 106, + "authors": "Stephen P. Jordan", + "title": "Fast quantum algorithms for approximating the irreducible representations of groups.", + "links": { + "arXiv:0811.0562": "http://arxiv.org/abs/0811.0562" + }, + "extra": "" + }, + "107": { + "ref_id": 107, + "authors": "Tim Byrnes and Yoshihisa Yamamoto", + "title": "Simulating lattice gauge theories on a quantum computer.", + "links": { + "arXiv:quant-ph/0510027": "http://arxiv.org/abs/quant-ph/0510027" + }, + "extra": "Physical Review A, 73, 022328, 2006." + }, + "108": { + "ref_id": 108, + "authors": "D. Simon", + "title": "On the Power of Quantum Computation.", + "links": {}, + "extra": "In Proceedings of the 35th Symposium on Foundations of Computer Science, pg. 116-123, 1994." + }, + "109": { + "ref_id": 109, + "authors": "John Proos and Christof Zalka", + "title": "Shor's discrete logarithm quantum algorithm for elliptic curves.", + "links": { + "arXiv:quant-ph/0301141": "http://arxiv.org/abs/quant-ph/0301141" + }, + "extra": "Quantum Information and Computation, Vol. 3, No. 4,pg.317-344, 2003." + }, + "110": { + "ref_id": 110, + "authors": "Yi-Kai Liu", + "title": "Quantum algorithms using the curvelet transform.", + "links": { + "arXiv:0810.4968": "http://arxiv.org/abs/0810.4968" + }, + "extra": "Proceedings of STOC 2009, pg. 391-400." + }, + "111": { + "ref_id": 111, + "authors": "Wim van Dam and Igor Shparlinski", + "title": "Classical and quantum algorithms for exponential congruences.", + "links": { + "arXiv:0804.1109": "http://arxiv.org/abs/0804.1109" + }, + "extra": "Proceedings of TQC 2008, pg. 1-10." + }, + "112": { + "ref_id": 112, + "authors": "Itai Arad and Zeph Landau", + "title": "Quantum computation and the evaluation of tensor networks.", + "links": { + "arXiv:0805.0040": "http://arxiv.org/abs/0805.0040" + }, + "extra": "SIAM Journal on Computing, 39(7):3089-3121, 2010." + }, + "113": { + "ref_id": 113, + "authors": "M. Van den Nest, W. D\u00fcr, R. Raussendorf, and H. J. Briegel", + "title": "Quantum algorithms for spin models and simulable gate sets for quantum computation.", + "links": { + "arXiv:0805.1214": "http://arxiv.org/abs/0805.1214" + }, + "extra": "Physical Review A, 80:052334, 2009." + }, + "114": { + "ref_id": 114, + "authors": "Silvano Garnerone, Annalisa Marzuoli, and Mario Rasetti", + "title": "Efficient quantum processing of 3-manifold topologicalinvariants.", + "links": { + "arXiv:quant-ph/0703037": "http://arxiv.org/abs/quant-ph/0703037" + }, + "extra": "Advances in Theoretical and Mathematical Physics,13(6):1601-1652, 2009." + }, + "115": { + "ref_id": 115, + "authors": "Louis H. Kauffman and Samuel J. Lomonaco Jr.", + "title": "q-deformed spin networks, knot polynomials and anyonic topological quantum computation.", + "links": { + "arXiv:quant-ph/0606114": "http://arxiv.org/abs/quant-ph/0606114" + }, + "extra": "Journal of Knot Theory, Vol. 16, No. 3, pg. 267-332, 2007." + }, + "116": { + "ref_id": 116, + "authors": "Arthur Schmidt and Ulrich Vollmer", + "title": "Polynomial time quantum algorithm for the computation of the unit group of a number field.", + "links": {}, + "extra": "In Proceedings of the 37th Symposium on the Theory of Computing, pg. 475-480, 2005." + }, + "117": { + "ref_id": 117, + "authors": "Sergey Bravyi, Aram Harrow, and Avinatan Hassidim", + "title": "Quantum algorithms for testing properties of distributions.", + "links": { + "arXiv:0907.3920": "http://arxiv.org/abs/0907.3920" + }, + "extra": "IEEE Transactions on Information Theory 57(6):3971-3981, 2011." + }, + "118": { + "ref_id": 118, + "authors": "Pawel M. Wocjan, Stephen P. Jordan, Hamed Ahmadi, and Joseph P. Brennan", + "title": "Efficient quantum processing of ideals in finite rings.", + "links": { + "arXiv:0908.0022": "http://arxiv.org/abs/0908.0022" + }, + "extra": "" + }, + "119": { + "ref_id": 119, + "authors": "V. Arvind, Bireswar Das, and Partha Mukhopadhyay", + "title": "The complexity of black-box ring problems.", + "links": {}, + "extra": "In Proceedings of COCCOON 2006, pg 126-145." + }, + "120": { + "ref_id": 120, + "authors": "V. Arvind and Partha Mukhopadhyay", + "title": "Quantum query complexity of multilinear identity testing.", + "links": {}, + "extra": "In Proceedings of STACS 2009, pg. 87-98." + }, + "121": { + "ref_id": 121, + "authors": "David Poulin and Pawel Wocjan", + "title": "Sampling from the thermal quantum Gibbs state and evaluating partition functions with a quantum computer.", + "links": { + "arXiv:0905.2199": "http://arxiv.org/abs/0905.2199" + }, + "extra": "Physical Review Letters 103:220502, 2009." + }, + "122": { + "ref_id": 122, + "authors": "Pawel Wocjan, Chen-Fu Chiang, Anura Abeyesinghe, and Daniel Nagaj", + "title": "Quantum speed-up for approximating partition functions.", + "links": { + "arXiv:0811.0596": "http://arxiv.org/abs/0811.0596" + }, + "extra": "Physical Review A 80:022340, 2009." + }, + "123": { + "ref_id": 123, + "authors": "Ashley Montanaro", + "title": "Quantum search with advice.", + "links": { + "arXiv:0908.3066": "http://arxiv.org/abs/0908.3066" + }, + "extra": "In Proceedings of the 5th conference on Theory of quantumcomputation, communication, and cryptography (TQC 2010)" + }, + "124": { + "ref_id": 124, + "authors": "Laszlo Babai, Robert Beals, and Akos Seress", + "title": "Polynomial-time theory of matrix groups.", + "links": {}, + "extra": "In Proceedings of STOC 2009, pg. 55-64." + }, + "125": { + "ref_id": 125, + "authors": "Peter Shor", + "title": "Algorithms for Quantum Computation: Discrete Logarithms and Factoring.", + "links": {}, + "extra": "In Proceedings of FOCS 1994, pg. 124-134." + }, + "126": { + "ref_id": 126, + "authors": "Aaron Denney, Cristopher Moore, and Alex Russell", + "title": "Finding conjugate stabilizer subgroups in PSL(2;q) and related groups.", + "links": { + "arXiv:0809.2445": "http://arxiv.org/abs/0809.2445" + }, + "extra": "Quantum Information and Computation 10(3):282-291, 2010." + }, + "127": { + "ref_id": 127, + "authors": "Kevin K. H. Cheung and Michele Mosca", + "title": "Decomposing finite Abelian groups.", + "links": { + "arXiv:cs/0101004": "http://arxiv.org/abs/cs/0101004" + }, + "extra": "Quantum Information and Computation 1(2):26-32, 2001." + }, + "128": { + "ref_id": 128, + "authors": "Fran\u00e7ois Le Gall", + "title": "An efficient quantum algorithm for some instances of the group isomorphism problem.", + "links": { + "arXiv:1001.0608": "http://arxiv.org/abs/1001.0608" + }, + "extra": "In Proceedings of STACS 2010 ." + }, + "129": { + "ref_id": 129, + "authors": "Gorjan Alagic, Stephen Jordan, Robert Koenig, and Ben Reichardt", + "title": "Approximating Turaev-Viro 3-manifold invariants is universal for quantum computation.", + "links": { + "arXiv:1003.0923": "http://arxiv.org/abs/1003.0923" + }, + "extra": "Physical Review A 82, 040302(R), 2010." + }, + "130": { + "ref_id": 130, + "authors": "Martin R\u00f6tteler", + "title": "Quantum algorithms to solve the hidden shift problem for quadratics and for functions of large Gowers norm.", + "links": { + "arXiv:0911.4724": "http://arxiv.org/abs/0911.4724" + }, + "extra": "In Proceedings of MFCS 2009, pg 663-674." + }, + "131": { + "ref_id": 131, + "authors": "Arthur Schmidt", + "title": "Quantum Algorithms for many-to-one Functions to Solve the Regulator and the Principal Ideal Problem.", + "links": { + "arXiv:0912.4807": "http://arxiv.org/abs/0912.4807" + }, + "extra": "" + }, + "132": { + "ref_id": 132, + "authors": "K. Temme, T.J. Osborne, K.G. Vollbrecht, D. Poulin, and F. Verstraete", + "title": "Quantum Metropolis Sampling.", + "links": { + "arXiv:0911.3635": "http://arxiv.org/abs/0911.3635" + }, + "extra": "Nature, Vol. 471, pg. 87-90, 2011." + }, + "133": { + "ref_id": 133, + "authors": "Andris Ambainis", + "title": "Quantum Search Algorithms.", + "links": { + "arXiv:quant-ph/0504012": "http://arxiv.org/abs/quant-ph/0504012" + }, + "extra": "SIGACT News, 35 (2):22-35, 2004." + }, + "134": { + "ref_id": 134, + "authors": "Nicolas J. Cerf, Lov K. Grover, and Colin P. Williams", + "title": "Nested quantum search and NP-hard problems.", + "links": {}, + "extra": "Applicable Algebra in Engineering, Communication and Computing, 10 (4-5):311-338, 2000." + }, + "135": { + "ref_id": 135, + "authors": "Mario Szegedy", + "title": "Spectra of Quantized Walks and a \\( \\sqrt{\\delta \\epsilon} \\) rule.", + "links": { + "arXiv:quant-ph/0401053": "http://arxiv.org/abs/quant-ph/0401053" + }, + "extra": "" + }, + "136": { + "ref_id": 136, + "authors": "Kazuo Iwama, Harumichi Nishimura, Rudy Raymond, and Junichi Teruyama", + "title": "Quantum Counterfeit Coin Problems.", + "links": { + "arXiv:1009.0416": "http://arxiv.org/abs/1009.0416" + }, + "extra": "In Proceedings of 21st International Symposium on Algorithms and Computation (ISAAC2010), LNCS 6506, pp.73-84, 2010." + }, + "137": { + "ref_id": 137, + "authors": "Barbara Terhal and John Smolin", + "title": "Single quantum querying of a database.", + "links": { + "arXiv:quant-ph/9705041": "http://arxiv.org/abs/quant-ph/9705041" + }, + "extra": "Physical Review A 58:1822, 1998." + }, + "138": { + "ref_id": 138, + "authors": "Andris Ambainis", + "title": "Variable time amplitude amplification and a faster quantum algorithm for solving systems of linear equations.", + "links": { + "arXiv:1010.4458": "http://arxiv.org/abs/1010.4458" + }, + "extra": "" + }, + "139": { + "ref_id": 139, + "authors": "Fr\u00e9d\u00e9ric Magniez and Ashwin Nayak", + "title": "Quantum complexity of testing group commutativity.", + "links": { + "arXiv:quant-ph/0506265": "http://arxiv.org/abs/quant-ph/0506265" + }, + "extra": "In Proceedings of 32nd International Colloquium on Automata, Languages and Programming. LNCS 3580, pg. 1312-1324, 2005." + }, + "140": { + "ref_id": 140, + "authors": "Andrew Childs and Robin Kothari", + "title": "Quantum query complexity of minor-closed graph properties.", + "links": { + "arXiv:1011.1443": "http://arxiv.org/abs/1011.1443" + }, + "extra": "In Proceedings of the 28th Symposium on Theoretical Aspects of Computer Science (STACS 2011), pg. 661-672" + }, + "141": { + "ref_id": 141, + "authors": "Fr\u00e9d\u00e9ric Magniez, Ashwin Nayak, J\u00e9r\u00e9mie Roland, and Miklos Santha", + "title": "Search via quantum walk.", + "links": { + "arXiv:quant-ph/0608026": "http://arxiv.org/abs/quant-ph/0608026" + }, + "extra": "In Proceedings STOC 2007, pg. 575-584." + }, + "142": { + "ref_id": 142, + "authors": "Dmitry Gavinsky, Martin Roetteler, and J\u00e9r\u00e9my Roland", + "title": "Quantum algorithm for the Boolean hidden shift problem.", + "links": { + "arXiv:1103.3017": "http://arxiv.org/abs/1103.3017" + }, + "extra": "In Proceedings of the 17th annual international conferenceon Computing and combinatorics (COCOON '11), 2011." + }, + "143": { + "ref_id": 143, + "authors": "Mark Ettinger and Peter H\u00f8yer", + "title": "On quantum algorithms for noncommutative hidden subgroups.", + "links": { + "arXiv:quant-ph/9807029": "http://arxiv.org/abs/quant-ph/9807029" + }, + "extra": "Advances in Applied Mathematics, Vol. 25, No. 3, pg. 239-251, 2000." + }, + "144": { + "ref_id": 144, + "authors": "Andris Ambainis, Andrew Childs, and Yi-Kai Liu", + "title": "Quantum property testing for bounded-degree graphs.", + "links": { + "arXiv:1012.3174": "http://arxiv.org/abs/1012.3174" + }, + "extra": "In Proceedings of RANDOM '11 : Lecture Notes in Computer Science 6845, pp. 365-376, 2011." + }, + "145": { + "ref_id": 145, + "authors": "G. Ortiz, J.E. Gubernatis, E. Knill, and R. Laflamme", + "title": "Quantum algorithms for Fermionic simulations.", + "links": { + "arXiv:cond-mat/0012334": "http://arxiv.org/abs/cond-mat/0012334" + }, + "extra": "Physical Review A 64: 022319, 2001." + }, + "146": { + "ref_id": 146, + "authors": "Ashley Montanaro", + "title": "The quantum query complexity of learning multilinearpolynomials.", + "links": { + "arXiv:1105.3310": "http://arxiv.org/abs/1105.3310" + }, + "extra": "Information Processing Letters, 112(11):438-442, 2012." + }, + "147": { + "ref_id": 147, + "authors": "Tad Hogg", + "title": "Highly structured searches with quantum computers.", + "links": {}, + "extra": "Physical Review Letters 80: 2473, 1998." + }, + "148": { + "ref_id": 148, + "authors": "Markus Hunziker and David A. Meyer", + "title": "Quantum algorithms for highly structured search problems.", + "links": {}, + "extra": "Quantum Information Processing, Vol. 1, No. 3, pg. 321-341, 2002." + }, + "149": { + "ref_id": 149, + "authors": "Ben Reichardt", + "title": "Span programs and quantum query complexity: The general adversary bound is nearly tight for every Boolean function.", + "links": { + "arXiv:0904.2759": "http://arxiv.org/abs/0904.2759" + }, + "extra": "In Proceedings of the 50th IEEE Symposium on Foundations ofComputer Science (FOCS '09), pg. 544-551, 2009." + }, + "150": { + "ref_id": 150, + "authors": "Aleksandrs Belovs", + "title": "Span-program-based quantum algorithm for the rank problem.", + "links": { + "arXiv:1103.0842": "http://arxiv.org/abs/1103.0842" + }, + "extra": "" + }, + "151": { + "ref_id": 151, + "authors": "Sebastian D\u00f6rn and Thomas Thierauf", + "title": "The quantum query complexity of the determinant.", + "links": {}, + "extra": "Information Processing Letters Vol. 109, No. 6, pg. 305-328, 2009." + }, + "152": { + "ref_id": 152, + "authors": "Aleksandrs Belovs", + "title": "Span programs for functions with constant-sized 1-certificates.", + "links": { + "arXiv:1105.4024": "http://arxiv.org/abs/1105.4024" + }, + "extra": "In Proceedings of STOC 2012, pg. 77-84." + }, + "153": { + "ref_id": 153, + "authors": "Troy Lee, Fr\u00e9d\u00e9ric Magniez, and Mikos Santha", + "title": "A learning graph based quantum query algorithm for findingconstant-size subgraphs.", + "links": { + "arXiv:1109.5135": "http://arxiv.org/abs/1109.5135" + }, + "extra": "Chicago Journal of Theoretical Computer Science,Vol. 2012, Article 10, 2012." + }, + "154": { + "ref_id": 154, + "authors": "Aleksandrs Belovs and Troy Lee", + "title": "Quantum algorithm for k-distinctness with prior knowledge on the input.", + "links": { + "arXiv:1108.3022": "http://arxiv.org/abs/1108.3022" + }, + "extra": "" + }, + "155": { + "ref_id": 155, + "authors": "Fran\u00e7ois Le Gall", + "title": "Improved output-sensitive quantum algorithms for Boolean matrix multiplication.", + "links": {}, + "extra": "In Proceedings of the 23rd Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA '12), 2012." + }, + "156": { + "ref_id": 156, + "authors": "Dominic Berry", + "title": "Quantum algorithms for solving linear differential equations.", + "links": { + "arXiv:1010.2745": "http://arxiv.org/abs/1010.2745" + }, + "extra": "J. Phys. A: Math. Theor. 47, 105301, 2014." + }, + "157": { + "ref_id": 157, + "authors": "Virginia Vassilevska Williams and Ryan Williams", + "title": "Subcubic equivalences between path, matrix, and triangle problems.", + "links": {}, + "extra": "In 51st IEEE Symposium on Foundations of Computer Science (FOCS '10) pg. 645 - 654, 2010." + }, + "158": { + "ref_id": 158, + "authors": "Ben W. Reichardt", + "title": "Reflections for quantum query algorithms.", + "links": { + "arXiv:1005.1601": "http://arxiv.org/abs/1005.1601" + }, + "extra": "In Proceedings of the 22nd ACM-SIAM Symposium on Discrete Algorithms (SODA), pg. 560-569, 2011." + }, + "159": { + "ref_id": 159, + "authors": "Ben W. Reichardt", + "title": "Span-program-based quantum algorithm for evaluating unbalanced formulas.", + "links": { + "arXiv:0907.1622": "http://arxiv.org/abs/0907.1622" + }, + "extra": "" + }, + "160": { + "ref_id": 160, + "authors": "Ben W. Reichardt", + "title": "Faster quantum algorithm for evaluating game trees.", + "links": { + "arXiv:0907.1623": "http://arxiv.org/abs/0907.1623" + }, + "extra": "In Proceedings of the 22nd ACM-SIAM Symposium on Discrete Algorithms (SODA), pg. 546-559, 2011." + }, + "161": { + "ref_id": 161, + "authors": "Stacey Jeffery, Robin Kothari, and Fr\u00e9d\u00e9ric Magniez", + "title": "Improving quantum query complexity of Boolean matrix multiplication using graph collision.", + "links": { + "arXiv:1112.5855": "http://arxiv.org/abs/1112.5855" + }, + "extra": "In Proceedings of ICALP 2012, pg. 522-532." + }, + "162": { + "ref_id": 162, + "authors": "Andrew M. Childs and Jason M. Eisenberg", + "title": "Quantum algorithms for subset finding.", + "links": { + "arXiv:quant-ph/0311038": "http://arxiv.org/abs/quant-ph/0311038" + }, + "extra": "Quantum Information and Computation 5(7):593-604, 2005." + }, + "163": { + "ref_id": 163, + "authors": "Aleksandrs Belovs and Robert \u0160palek", + "title": "Adversary lower bound for the k-sum problem.", + "links": { + "arXiv:1206.6528": "http://arxiv.org/abs/1206.6528" + }, + "extra": "In Proceedings of ITCS 2013, pg. 323-328." + }, + "164": { + "ref_id": 164, + "authors": "Bohua Zhan, Shelby Kimmel, and Avinatan Hassidim", + "title": "Super-polynomial quantum speed-ups for Boolean evaluation treeswith hidden structure.", + "links": { + "arXiv:1101.0796": "http://arxiv.org/abs/1101.0796" + }, + "extra": "ITCS 2012: Proceedings of the 3rd Innovations in Theoretical Computer Science, ACM, pg. 249-265." + }, + "165": { + "ref_id": 165, + "authors": "Shelby Kimmel", + "title": "Quantum adversary (upper) bound.", + "links": { + "arXiv:1101.0797": "http://arxiv.org/abs/1101.0797" + }, + "extra": "39th International Colloquium on Automata, Languages and Programming - ICALP 2012 Volume 7391, p. 557-568." + }, + "166": { + "ref_id": 166, + "authors": "Stephen Jordan, Keith Lee, and John Preskill", + "title": "Quantum algorithms for quantum field theories.", + "links": { + "arXiv:1111.3633": "http://arxiv.org/abs/1111.3633" + }, + "extra": "Science, Vol. 336, pg. 1130-1133, 2012." + }, + "167": { + "ref_id": 167, + "authors": "Andris Ambainis and Ashley Montanaro", + "title": "Quantum algorithms for search with wildcards and combinatorial group testing.", + "links": { + "arXiv:1210.1148": "http://arxiv.org/abs/1210.1148" + }, + "extra": "" + }, + "168": { + "ref_id": 168, + "authors": "Andris Ambainis and Robert \u0160palek", + "title": "Quantum algorithms for matching and network flows.", + "links": { + "arXiv:quant-ph/0508205": "http://arxiv.org/abs/quant-ph/0508205" + }, + "extra": "Proceedings of STACS 2007, pg. 172-183." + }, + "169": { + "ref_id": 169, + "authors": "Nathan Wiebe, Daniel Braun, and Seth Lloyd", + "title": "Quantum data-fitting.", + "links": { + "arXiv:1204.5242": "http://arxiv.org/abs/1204.5242" + }, + "extra": "Physical Review Letters 109, 050505, 2012." + }, + "170": { + "ref_id": 170, + "authors": "Andrew Childs and Nathan Wiebe", + "title": "Hamiltonian simulation using linear combinations of unitaryoperations.", + "links": { + "arXiv:1202.5822": "http://arxiv.org/abs/1202.5822" + }, + "extra": "Quantum Information and Computation 12, 901-924, 2012." + }, + "171": { + "ref_id": 171, + "authors": "Stacey Jeffery, Robin Kothari, and Fr\u00e9d\u00e9ric Magniez", + "title": "Nested quantum walks with quantum data structures.", + "links": { + "arXiv:1210.1199": "http://arxiv.org/abs/1210.1199" + }, + "extra": "In Proceedings of the 24th ACM-SIAM Symposium on Discrete Algorithms (SODA'13), pg. 1474-1485, 2013." + }, + "172": { + "ref_id": 172, + "authors": "Aleksandrs Belovs", + "title": "Learning-graph-based quantum algorithm for k-distinctness.", + "links": { + "arXiv:1205.1534": "http://arxiv.org/abs/1205.1534" + }, + "extra": "Proceedings of STOC 2012, pg. 77-84." + }, + "173": { + "ref_id": 173, + "authors": "Andrew Childs, Stacey Jeffery, Robin Kothari, and Fr\u00e9d\u00e9ric Magniez", + "title": "A time-efficient quantum walk for 3-distinctness using nested updates.", + "links": { + "arXiv:1302.7316": "http://arxiv.org/abs/1302.7316" + }, + "extra": "" + }, + "174": { + "ref_id": 174, + "authors": "Hari Krovi and Alexander Russell", + "title": "Quantum Fourier transforms and the complexity of link invariantsfor quantum doubles of finite groups.", + "links": { + "arXiv:1210.1550": "http://arxiv.org/abs/1210.1550" + }, + "extra": "Commun. Math. Phys. 334, 743-777, 2015" + }, + "175": { + "ref_id": 175, + "authors": "Troy Lee, Fr\u00e9d\u00e9ric Magniez, and Miklos Santha", + "title": "Improved quantum query algorithms for triangle finding and associativity testing.", + "links": { + "arXiv:1210.1014": "http://arxiv.org/abs/1210.1014" + }, + "extra": "" + }, + "176": { + "ref_id": 176, + "authors": "Silvano Garnerone, Paolo Zanardi, and Daniel A. Lidar", + "title": "Adiabatic quantum algorithm for search engine ranking.", + "links": {}, + "extra": "Physical Review Letters 108:230506, 2012." + }, + "177": { + "ref_id": 177, + "authors": "R. D. Somma, S. Boixo, H. Barnum, and E. Knill", + "title": "Quantum simulations of classical annealing.", + "links": { + "arXiv:0804.1571": "http://arxiv.org/abs/0804.1571" + }, + "extra": "Physical Review Letters 101:130504, 2008." + }, + "178": { + "ref_id": 178, + "authors": "Daniel J. Bernstein, Stacey Jeffery, Tanja Lange, and Alexander Meurer", + "title": "Quantum algorithms for the subset-sum problem.", + "links": { + "from cr.yp.to": "http://cr.yp.to/qsubsetsum/qsubsetsum-20130407.pdf" + }, + "extra": "" + }, + "179": { + "ref_id": 179, + "authors": "Boris Altshuler, Hari Krovi, and J\u00e9r\u00e9mie Roland", + "title": "Anderson localization casts clouds over adiabatic quantum optimization.", + "links": { + "arXiv:0912.0746": "http://arxiv.org/abs/0912.0746" + }, + "extra": "Proceedings of the National Academy of Sciences 107(28):12446-12450, 2010." + }, + "180": { + "ref_id": 180, + "authors": "Ben Reichardt", + "title": "The quantum adiabatic optimization algorithm and local minima.", + "links": { + "Erratum": "http://www-bcf.usc.edu/~breichar/Correction.txt" + }, + "extra": "In Proceedings of STOC 2004, pg. 502-510." + }, + "181": { + "ref_id": 181, + "authors": "Edward Farhi, Jeffrey Goldstone, and Sam Gutmann", + "title": "Quantum adiabatic evolution algorithms versus simulated annealing.", + "links": { + "arXiv:quant-ph/0201031": "http://arxiv.org/abs/quant-ph/0201031" + }, + "extra": "" + }, + "182": { + "ref_id": 182, + "authors": "E. Farhi, J. Goldstone, D. Gosset, S. Gutmann, H. B. Meyer, and P. Shor", + "title": "Quantum adiabatic algorithms, small gaps, and different paths.", + "links": { + "arXiv:0909.4766": "http://arxiv.org/abs/0909.4766" + }, + "extra": "Quantum Information and Computation, 11(3/4):181-214, 2011." + }, + "183": { + "ref_id": 183, + "authors": "Sergey Bravyi, David P. DiVincenzo, Roberto I. Oliveira, and Barbara M. Terhal", + "title": "The Complexity of Stoquastic Local Hamiltonian Problems.", + "links": { + "arXiv:quant-ph/0606140": "http://arxiv.org/abs/quant-ph/0606140" + }, + "extra": "Quantum Information and Computation, 8(5):361-385, 2008." + }, + "184": { + "ref_id": 184, + "authors": "Rolando D. Somma and Sergio Boixo", + "title": "Spectral gap amplification.", + "links": { + "arXiv:1110.2494": "http://arxiv.org/abs/1110.2494" + }, + "extra": "SIAM Journal on Computing, 42:593-610, 2013." + }, + "185": { + "ref_id": 185, + "authors": "Sabine Jansen, Mary-Beth Ruskai, Ruedi Seiler", + "title": "Bounds for the adiabatic approximation with applications to quantum computation.", + "links": { + "arXiv:quant-ph/0603175": "http://arxiv.org/abs/quant-ph/0603175" + }, + "extra": "Journal of Mathematical Physics, 48:102111, 2007." + }, + "186": { + "ref_id": 186, + "authors": "E. Farhi, J. Goldstone, S. Gutmann, J. Lapan, A. Lundgren, and D. Preda", + "title": "A Quantum Adiabatic Evolution Algorithm Applied to Random Instances of an NP-Complete Problem.", + "links": { + "arXiv:quant-ph/0104129": "http://arxiv.org/abs/quant-ph/0104129" + }, + "extra": "Science, 292(5516):472-475, 2001." + }, + "187": { + "ref_id": 187, + "authors": "Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj", + "title": "How to make the quantum adiabatic algorithm fail.", + "links": { + "arXiv:quant-ph/0512159": "http://arxiv.org/abs/quant-ph/0512159" + }, + "extra": "International Journal of Quantum Information, 6(3):503-516, 2008." + }, + "188": { + "ref_id": 188, + "authors": "Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Daniel Nagaj", + "title": "Unstructured randomness, small gaps, and localization.", + "links": { + "arXiv:1010.0009": "http://arxiv.org/abs/1010.0009" + }, + "extra": "Quantum Information and Computation, 11(9/10):840-854, 2011." + }, + "189": { + "ref_id": 189, + "authors": "Edward Farhi, Jeffrey Goldstone, Sam Gutmann", + "title": "Quantum adiabatic evolution algorithms with different paths.", + "links": { + "arXiv:quant-ph/0208135": "http://arxiv.org/abs/quant-ph/0208135" + }, + "extra": "" + }, + "190": { + "ref_id": 190, + "authors": "Wim van Dam, Michele Mosca, and Umesh Vazirani", + "title": "How powerful is adiabatic quantum computation?", + "links": { + "arXiv:quant-ph/0206003": "http://arxiv.org/abs/quant-ph/0206003", + "this": "http://www.cs.berkeley.edu/~vazirani/pubs/qao.ps" + }, + "extra": "In Proceedings of FOCS 2001, pg. 279-287." + }, + "191": { + "ref_id": 191, + "authors": "E. Farhi, D. Gosset, I. Hen, A. W. Sandvik, P. Shor, A. P. Young, and F. Zamponi", + "title": "The performance of the quantum adiabatic algorithm on random instances of two optimization problems on regular hypergraphs.", + "links": { + "arXiv:1208.3757": "http://arxiv.org/abs/1208.3757" + }, + "extra": "Physical Review A, 86:052334, 2012." + }, + "192": { + "ref_id": 192, + "authors": "Kristen L. Pudenz and Daniel A. Lidar", + "title": "Quantum adiabatic machine learning.", + "links": { + "arXiv:1109.0325": "http://arxiv.org/abs/1109.0325" + }, + "extra": "Quantum Information Processing, 12:2027, 2013." + }, + "193": { + "ref_id": 193, + "authors": "Frank Gaitan and Lane Clark", + "title": "Ramsey numbers and adiabatic quantum computing.", + "links": { + "arXiv:1103.1345": "http://arxiv.org/abs/1103.1345" + }, + "extra": "Physical Review Letters, 108:010501, 2012." + }, + "194": { + "ref_id": 194, + "authors": "Frank Gaitan and Lane Clark", + "title": "Graph isomorphism and adiabatic quantum computing.", + "links": { + "arXiv:1304.5773": "http://arxiv.org/abs/1304.5773" + }, + "extra": "Physical Review A, 89(2):022342, 2014." + }, + "195": { + "ref_id": 195, + "authors": "Hartmut Neven, Vasil S. Denchev, Geordie Rose, and William G. Macready", + "title": "Training a binary classifier with the quantum adiabatic algorithm.", + "links": { + "arXiv:0811.0416": "http://arxiv.org/abs/0811.0416" + }, + "extra": "" + }, + "196": { + "ref_id": 196, + "authors": "Robert Beals", + "title": "Quantum computation of Fourier transforms over symmetric groups.", + "links": {}, + "extra": "In Proceedings of STOC 1997, pg. 48-53." + }, + "197": { + "ref_id": 197, + "authors": "Dave Bacon, Isaac L. Chuang, and Aram W. Harrow", + "title": "The quantum Schur transform: I. efficient qudit circuits.", + "links": { + "arXiv:quant-ph/0601001": "http://arxiv.org/abs/quant-ph/0601001" + }, + "extra": "In Proceedings of SODA 2007, pg. 1235-1244." + }, + "198": { + "ref_id": 198, + "authors": "S. Morita, H. Nishimori", + "title": "Mathematical foundation of quantum annealing.", + "links": {}, + "extra": "Journal of Methematical Physics, 49(12):125210, 2008." + }, + "199": { + "ref_id": 199, + "authors": "A. B. Finnila, M. A. Gomez, C. Sebenik, C. Stenson, J. D. Doll", + "title": "Quantum annealing: a new method for minimizing multidimensional functions.", + "links": {}, + "extra": "Chemical Physics Letters, 219:343-348, 1994." + }, + "200": { + "ref_id": 200, + "authors": "D. Gavinsky and T. Ito", + "title": "A quantum query algorithm for the graph collision problem.", + "links": { + "arXiv:1204.1527": "http://arxiv.org/abs/1204.1527" + }, + "extra": "" + }, + "201": { + "ref_id": 201, + "authors": "Andris Ambainis, Kaspars Balodis, J\u0101nis Iraids, Raitis Ozols, and Juris Smotrovs", + "title": "Parameterized quantum query complexity of graph collision.", + "links": { + "arXiv:1305.1021": "http://arxiv.org/abs/1305.1021" + }, + "extra": "" + }, + "202": { + "ref_id": 202, + "authors": "Kevin C. Zatloukal", + "title": "Classical and quantum algorithms for testing equivalence of group extensions.", + "links": { + "arXiv:1305.1327": "http://arxiv.org/abs/1305.1327" + }, + "extra": "" + }, + "203": { + "ref_id": 203, + "authors": "Andrew Childs and G\u00e1bor Ivanyos", + "title": "Quantum computation of discrete logarithms in semigroups.", + "links": { + "arXiv:1310.6238": "http://arxiv.org/abs/1310.6238" + }, + "extra": "" + }, + "204": { + "ref_id": 204, + "authors": "Matan Banin and Boaz Tsaban", + "title": "A reduction of semigroup DLP to classic DLP.", + "links": { + "arXiv:1310.7903": "http://arxiv.org/abs/1310.7903" + }, + "extra": "" + }, + "205": { + "ref_id": 205, + "authors": "D. W. Berry, R. Cleve, and R. D. Somma", + "title": "Exponential improvement in precision for Hamiltonian-evolution simulation.", + "links": { + "arXiv:1308.5424": "http://arxiv.org/abs/1308.5424" + }, + "extra": "" + }, + "206": { + "ref_id": 206, + "authors": "Fran\u00e7ois Le Gall and Harumichi Nishimura", + "title": "Quantum algorithms for matrix products over semirings.", + "links": { + "arXiv:1310.3898": "http://arxiv.org/abs/1310.3898" + }, + "extra": "" + }, + "207": { + "ref_id": 207, + "authors": "Nolan Wallach", + "title": "A quantum polylog algorithm for non-normal maximal cyclic hidden subgroups in the affine group of a finite field.", + "links": { + "arXiv:1308.1415": "http://arxiv.org/abs/1308.1415" + }, + "extra": "" + }, + "208": { + "ref_id": 208, + "authors": "Lov Grover", + "title": "Fixed-point quantum search.", + "links": { + "arXiv:quant-ph/0503205": "http://arxiv.org/abs/quant-ph/0503205" + }, + "extra": "Phys. Rev. Lett. 95(15):150501, 2005." + }, + "209": { + "ref_id": 209, + "authors": "Tathagat Tulsi, Lov Grover, and Apoorva Patel", + "title": "A new algorithm for fixed point quantum search.", + "links": { + "arXiv:quant-ph/0505007": "http://arxiv.org/abs/quant-ph/0505007" + }, + "extra": "Quantum Information and Computation 6(6):483-494, 2005." + }, + "210": { + "ref_id": 210, + "authors": "Guoming Wang", + "title": "Quantum algorithms for approximating the effective resistances of electrical networks.", + "links": { + "arXiv:1311.1851": "http://arxiv.org/abs/1311.1851" + }, + "extra": "" + }, + "211": { + "ref_id": 211, + "authors": "Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and Rolando D. Somma", + "title": "Exponential improvement in precision for simulating sparse Hamiltonians", + "links": { + "arXiv:1312.1414": "http://arxiv.org/abs/1312.1414" + }, + "extra": "" + }, + "212": { + "ref_id": 212, + "authors": "Thomas Decker, Peter H\u00f8yer, Gabor Ivanyos, and Miklos Santha", + "title": "Polynomial time quantum algorithms for certain bivariate hidden polynomial problems", + "links": { + "arXiv:1305.1543": "http://arxiv.org/abs/1305.1543" + }, + "extra": "" + }, + "213": { + "ref_id": 213, + "authors": "Kirsten Eisentr\u00e4ger, Sean Hallgren, Alexei Kitaev, and Fang Song", + "title": "A quantum algorithm for computing the unit group of an arbitrary degree number field", + "links": {}, + "extra": "In Proceedings of STOC 2014 pg. 293-302." + }, + "214": { + "ref_id": 214, + "authors": "Seth Lloyd, Masoud Mohseni, and Patrick Robentrost", + "title": "Quantum algorithms for supervised and unsupervised machine learning", + "links": { + "arXiv:1307.0411": "http://arxiv.org/abs/1307.0411" + }, + "extra": "" + }, + "215": { + "ref_id": 215, + "authors": "Ashley Montanaro", + "title": "Quantum pattern matching fast on average", + "links": { + "arXiv:1408.1816": "http://arxiv.org/abs/1408.1816" + }, + "extra": "" + }, + "216": { + "ref_id": 216, + "authors": "Charles H. Bennett, Ethan Bernstein, Gilles Brassard, and Umesh Vazirani", + "title": "Strengths and weaknesses of quantum computing", + "links": { + "arXiv:quant-ph/9701001": "http://arxiv.org/abs/quant-ph/9701001" + }, + "extra": "SIAM J. Comput. 26(5):1524-1540, 1997" + }, + "217": { + "ref_id": 217, + "authors": "H. Ramesh and V. Vinay", + "title": "String matching in \\( \\widetilde{O}(\\sqrt{n} + \\sqrt{m}) \\)quantum time", + "links": { + "arXiv:quant-ph/0011049": "http://arxiv.org/abs/quant-ph/0011049" + }, + "extra": "Journal of Discrete Algorithms 1:103-110, 2003" + }, + "218": { + "ref_id": 218, + "authors": "Greg Kuperberg", + "title": "Another subexponential-time quantum algorithm for the dihedral hidden subgroup problem", + "links": { + "arXiv:1112.3333": "http://arxiv.org/abs/1112.3333" + }, + "extra": "In Proceedings of TQC pg. 20-34, 2013" + }, + "219": { + "ref_id": 219, + "authors": "Peter H\u00f8yer, Jan Neerbek, and Yaoyun Shi", + "title": "Quantum complexities of ordered searching, sorting, and elementdistinctness", + "links": { + "arXiv:quant-ph/0102078": "http://arxiv.org/abs/quant-ph/0102078" + }, + "extra": "In Proceedings of ICALP pg. 346-357, 2001" + }, + "220": { + "ref_id": 220, + "authors": "Amnon Ta-Shma", + "title": "Inverting well conditioned matrices in quantum logspace", + "links": {}, + "extra": "In Proceedings of STOC 2013 pg. 881-890." + }, + "221": { + "ref_id": 221, + "authors": "Nathan Wiebe, Ashish Kapoor, and Krysta Svore", + "title": "Quantum deep learning", + "links": { + "arXiv:1412.3489": "http://arxiv.org/abs/1412.3489" + }, + "extra": "" + }, + "222": { + "ref_id": 222, + "authors": "Seth Lloyd, Silvano Garnerone, and Paolo Zanardi", + "title": "Quantum algorithms for topological and geometric analysis of big data", + "links": { + "arXiv:1408.3106": "http://arxiv.org/abs/1408.3106" + }, + "extra": "" + }, + "223": { + "ref_id": 223, + "authors": "David A. Meyer and James Pommersheim", + "title": "Single-query learning from abelian and non-abelian Hammingdistance oracles", + "links": { + "arXiv:0912.0583": "http://arxiv.org/abs/0912.0583" + }, + "extra": "" + }, + "224": { + "ref_id": 224, + "authors": "Markus Hunziker, David A. Meyer, Jihun Park, James Pommersheim, and Mitch Rothstein", + "title": "The geometry of quantum learning", + "links": { + "arXiv:quant-ph/0309059": "http://arxiv.org/abs/quant-ph/0309059" + }, + "extra": "Quantum Information Processing 9:321-341, 2010." + }, + "225": { + "ref_id": 225, + "authors": "Lawrence M. Ioannou and Michele Mosca", + "title": "Limitations on some simple adiabatic quantum algorithms", + "links": { + "arXiv:quant-ph/0702241": "http://arxiv.org/abs/quant-ph/0702241" + }, + "extra": "International Journal of Quantum Information, 6(3):419-426, 2008." + }, + "226": { + "ref_id": 226, + "authors": "Michael Jarret and Stephen P. Jordan", + "title": "Adiabatic optimization without local minima", + "links": { + "arXiv:1405.7552": "http://arxiv.org/abs/1405.7552" + }, + "extra": "Quantum Information and Computation, 15(3/4):0181-0199, 2015." + }, + "227": { + "ref_id": 227, + "authors": "Matthew B. Hastings, Dave Wecker, Bela Bauer, and Matthias Troyer", + "title": "Improving quantum algorithms for quantum chemistry", + "links": { + "arXiv:1403.1539": "http://arxiv.org/abs/1403.1539" + }, + "extra": "Quantum Information and Computation, 15(1/2):0001-0021, 2015." + }, + "228": { + "ref_id": 228, + "authors": "Stephen P. Jordan, Keith S. M. Lee, and John Preskill", + "title": "Quantum simulation of scattering in scalar quantum field theories", + "links": { + "arXiv:1112.4833": "http://arxiv.org/abs/1112.4833" + }, + "extra": "Quantum Information and Computation, 14(11/12):1014-1080, 2014." + }, + "229": { + "ref_id": 229, + "authors": "Stephen P. Jordan, Keith S. M. Lee, and John Preskill", + "title": "Quantum algorithms for fermionic quantum field theories", + "links": { + "arXiv:1404.7115": "http://arxiv.org/abs/1404.7115" + }, + "extra": "" + }, + "230": { + "ref_id": 230, + "authors": "Gavin K. Brennen, Peter Rohde, Barry C. Sanders, and Sukhi Singh", + "title": "Multi-scale quantum simulation of quantum field theory using wavelets", + "links": { + "arXiv:1412.0750": "http://arxiv.org/abs/1412.0750" + }, + "extra": "" + }, + "231": { + "ref_id": 231, + "authors": "Hefeng Wang, Sabre Kais, Al\u00e1n Aspuru-Guzik, and Mark R. Hoffmann.", + "title": "Quantum algorithm for obtaining the energy spectrum of molecular systems", + "links": { + "arXiv:0907.0854": "http://arxiv.org/abs/0907.0854" + }, + "extra": "Physical Chemistry Chemical Physics, 10(35):5388-5393, 2008." + }, + "232": { + "ref_id": 232, + "authors": "Ivan Kassal and Al\u00e1n Aspuru-Guzik", + "title": "Quantum algorithm for molecular properties and geometry optimization", + "links": { + "arXiv:0908.1921": "http://arxiv.org/abs/0908.1921" + }, + "extra": "Journal of Chemical Physics, 131(22), 2009." + }, + "233": { + "ref_id": 233, + "authors": "James D. Whitfield, Jacob Biamonte, and Al\u00e1n Aspuru-Guzik", + "title": "Simulation of electronic structure Hamiltonians using quantum computers", + "links": { + "arXiv:1001.3855": "http://arxiv.org/abs/1001.3855" + }, + "extra": "Molecular Physics, 109(5):735-750, 2011." + }, + "234": { + "ref_id": 234, + "authors": "Borzu Toloui and Peter J. Love", + "title": "Quantum algorithms for quantum chemistry based on the sparsityof the CI-matrix", + "links": { + "arXiv:1312.2529": "http://arxiv.org/abs/1312.2579" + }, + "extra": "" + }, + "235": { + "ref_id": 235, + "authors": "James D. Whitfield", + "title": "Spin-free quantum computational simulations and symmetry adapted states", + "links": { + "arXiv:1306.1147": "http://arxiv.org/abs/1306.1147" + }, + "extra": "Journal of Chemical Physics, 139(2):021105, 2013." + }, + "236": { + "ref_id": 236, + "authors": "Andrew W. Cross, Graeme Smith, and John A. Smolin", + "title": "Quantum learning robust to noise", + "links": { + "arXiv:1407.5088": "http://arxiv.org/abs/1407.5088" + }, + "extra": "" + }, + "237": { + "ref_id": 237, + "authors": "Aram W. Harrow and David J. Rosenbaum", + "title": "Uselessness for an oracle model with internal randomness", + "links": { + "arXiv:1111.1462": "http://arxiv.org/abs/1111.1462" + }, + "extra": "Quantum Information and Computation 14(7/8):608-624, 2014" + }, + "238": { + "ref_id": 238, + "authors": "Jon R. Grice and David A. Meyer", + "title": "A quantum algorithm for Viterbi decoding of classical convolutional codes", + "links": { + "arXiv:1405.7479": "http://arxiv.org/abs/1405.7479" + }, + "extra": "" + }, + "239": { + "ref_id": 239, + "authors": "Alexander Barg and Shiyu Zhou", + "title": "A quantum decoding algorithm of the simplex code", + "links": { + "author's homepage": "http://www.ece.umd.edu/~abarg/reprints/rm1dq.pdf" + }, + "extra": "Proceedings of the 36th Annual Allerton Conference, 1998" + }, + "240": { + "ref_id": 240, + "authors": "Guoming Wang", + "title": "Span-program-based quantum algorithm for tree detection", + "links": { + "arXiv:1309.7713": "http://arxiv.org/abs/1309.7713" + }, + "extra": "" + }, + "241": { + "ref_id": 241, + "authors": "Fran\u00e7ois Le Gall, Harumichi Nishimura, and Seiichiro Tani", + "title": "Quantum algorithm for finding constant-sized sub-hypergraphsover 3-uniform hypergraphs", + "links": { + "arXiv:1310.4127": "http://arxiv.org/abs/1310.4127" + }, + "extra": "In Proceedings of COCOON, 2014. pg. 429-440" + }, + "242": { + "ref_id": 242, + "authors": "Edward Farhi, Jeffrey Goldstone, and Sam Gutmann", + "title": "A quantum approximate optimization algorithm", + "links": { + "arXiv:1411.4028": "http://arxiv.org/abs/1411.4028" + }, + "extra": "" + }, + "243": { + "ref_id": 243, + "authors": "Edward Farhi, Jeffrey Goldstone, and Sam Gutmann", + "title": "A quantum approximate optimization algorithm applied to abounded occurrence constraint problem", + "links": { + "arXiv:1412.6062": "http://arxiv.org/abs/1412.6062" + }, + "extra": "" + }, + "244": { + "ref_id": 244, + "authors": "Dominic W. Berry, Andrew M. Childs, Richard Cleve, Robin Kothari, and Rolando D. Somma", + "title": "Simulating Hamiltonian dynamics with a truncated Taylor series", + "links": { + "arXiv:1412.4687": "http://arxiv.org/abs/1412.4687" + }, + "extra": "" + }, + "245": { + "ref_id": 245, + "authors": "Dominic W. Berry, Andrew M. Childs, and Robin Kothari", + "title": "Hamiltonian simulation with nearly optimal dependence on all parameters", + "links": { + "arXiv:1501.01715": "http://arxiv.org/abs/1501.01715" + }, + "extra": "" + }, + "246": { + "ref_id": 246, + "authors": "Scott Aaronson", + "title": "Read the fine print", + "links": { + "fulltext": "http://www.scottaaronson.com/papers/qml.pdf" + }, + "extra": "Nature Physics 11:291-293, 2015." + }, + "247": { + "ref_id": 247, + "authors": "Alexander Elgart and George A. Hagedorn", + "title": "A note on the switching adiabatic theorem", + "links": { + "arXiv:1204.2318": "http://arxiv.org/abs/1204.2318" + }, + "extra": "Journal of Mathematical Physics 53(10):102202, 2012." + }, + "248": { + "ref_id": 248, + "authors": "Daniel J. Bernstein, Johannes Buchmann, and Erik Dahmen,", + "title": "Eds.", + "links": { + "Springer": "http://www.springer.com/mathematics/numbers/book/978-3-540-88701-0" + }, + "extra": "Post-Quantum Cryptography" + }, + "249": { + "ref_id": 249, + "authors": "B. D. Clader, B. C. Jacobs, and C. R. Sprouse", + "title": "Preconditioned quantum linear system algorithm", + "links": { + "arXiv:1301.2340": "http://arxiv.org/abs/1301.2340" + }, + "extra": "Phys. Rev. Lett. 110:250504, 2013." + }, + "250": { + "ref_id": 250, + "authors": "S. Lloyd, M. Mohseni, and P. Rebentrost", + "title": "Quantum principal component analysis", + "links": { + "arXiv:1307.0401": "http://arxiv.org/abs/1307.0401" + }, + "extra": "Nature Physics. 10(9):631, 2014." + }, + "251": { + "ref_id": 251, + "authors": "Patrick Rebentrost, Masoud Mohseni, and Seth Lloyd", + "title": "Quantum support vector machine for big data classification", + "links": { + "arXiv:1307.0471": "http://arxiv.org/abs/1307.0471" + }, + "extra": "Phys. Rev. Lett. 113, 130503, 2014." + }, + "252": { + "ref_id": 252, + "authors": "J. M. Pollard", + "title": "Theorems on factorization and primality testing", + "links": {}, + "extra": "Proceedings of the Cambridge Philosophical Society. 76:521-228, 1974." + }, + "253": { + "ref_id": 253, + "authors": "L. Babai, R. Beals, and A. Seress", + "title": "Polynomial-time theory of matrix groups", + "links": {}, + "extra": "In Proceedings of STOC 2009, pg. 55-64." + }, + "254": { + "ref_id": 254, + "authors": "Neil J. Ross and Peter Selinger", + "title": "Optimal ancilla-free Clifford+T approximations of z-rotations", + "links": { + "arXiv:1403.2975": "http://arxiv.org/abs/1403.2975" + }, + "extra": "" + }, + "255": { + "ref_id": 255, + "authors": "L. A. B. Kowada, C. Lavor, R. Portugal, and C. M. H. de Figueiredo", + "title": "A new quantum algorithm for solving the minimum searching problem", + "links": {}, + "extra": "International Journal of Quantum Information, Vol. 6, No. 3, pg. 427-436, 2008." + }, + "256": { + "ref_id": 256, + "authors": "Sean Hallgren and Aram Harrow", + "title": "Superpolynomial speedups based on almost any quantum circuit", + "links": { + "arXiv:0805.0007": "http://arxiv.org/abs/0805.0007" + }, + "extra": "Proceedings of ICALP 2008, pg. 782-795." + }, + "257": { + "ref_id": 257, + "authors": "Fernando G.S.L. Brandao and Michal Horodecki", + "title": "Exponential quantum speed-ups are generic", + "links": { + "arXiv:1010.3654": "http://arxiv.org/abs/1010.3654" + }, + "extra": "Quantum Information and Computation, Vol. 13, Pg. 0901, 2013" + }, + "258": { + "ref_id": 258, + "authors": "Scott Aaronson and Andris Ambainis", + "title": "Forrelation: A problem that optimally separates quantum from classical computing.", + "links": { + "arXiv:1411.5729": "http://arxiv.org/abs/1411.5729" + }, + "extra": "" + }, + "259": { + "ref_id": 259, + "authors": "Z. Gedik", + "title": "Computational speedup with a single qutrit", + "links": { + "arXiv:1403.5861": "http://arxiv.org/abs/1403.5861" + }, + "extra": "" + }, + "260": { + "ref_id": 260, + "authors": "Boaz Barak, Ankur Moitra, Ryan O'Donnell, Prasad Raghavendra, OdedRegev, David Steurer, Luca Trevisan, Aravindan Vijayaraghavan, DavidWitmer, and John Wright", + "title": "Beating the random assignment on constraint satisfaction problems of bounded degree", + "links": { + "arXiv:1505.03424": "http://arxiv.org/abs/1505.03424" + }, + "extra": "" + }, + "261": { + "ref_id": 261, + "authors": "David Cornwell", + "title": "Amplified Quantum Transforms", + "links": { + "arXiv:1406.0190": "http://arxiv.org/abs/1406.0190" + }, + "extra": "" + }, + "262": { + "ref_id": 262, + "authors": "T. Laarhoven, M. Mosca, and J. van de Pol", + "title": "Solving the shortest vector problem in lattices faster using quantum search", + "links": { + "arXiv:1301.6176": "http://arxiv.org/abs/1301.6176" + }, + "extra": "Proceedings of PQCrypto13, pp. 83-101, 2013." + }, + "263": { + "ref_id": 263, + "authors": "Andrew M. Childs, Robin Kothari, and Rolando D. Somma", + "title": "Quantum linear systems algorithm with exponentially improveddependence on precision", + "links": { + "arXiv:1511.02306": "http://arxiv.org/abs/1511.02306" + }, + "extra": "" + }, + "264": { + "ref_id": 264, + "authors": "Ashley Montanaro", + "title": "Quantum walk speedup of backtracking algorithms", + "links": { + "arXiv:1509.02374": "http://arxiv.org/abs/1509.02374" + }, + "extra": "" + }, + "265": { + "ref_id": 265, + "authors": "Ashley Montanaro", + "title": "Quantum speedup of Monte Carlo methods", + "links": { + "arXiv:1504.06987": "http://arxiv.org/abs/1504.06987" + }, + "extra": "" + }, + "266": { + "ref_id": 266, + "authors": "Andris Ambainis, Aleksandrs Belovs, Oded Regev, and Ronald de Wolf", + "title": "Efficient quantum algorithms for (gapped) group testing andjunta testing", + "links": { + "arXiv:1507.03126": "http://arxiv.org/abs/1507.03126" + }, + "extra": "" + }, + "267": { + "ref_id": 267, + "authors": "A. Atici and R. A. Servedio", + "title": "Quantum algorithms for learning and testing juntas", + "links": { + "arXiv:0707.3479": "http://arxiv.org/abs/0707.3479" + }, + "extra": "Quantum Information Processing, 6(5):323-348, 2007." + }, + "268": { + "ref_id": 268, + "authors": "Aleksandrs Belovs", + "title": "Quantum algorithms for learning symmetric juntas via theadversary bound", + "links": { + "arXiv:1311.6777": "http://arxiv.org/abs/1311.6777" + }, + "extra": "Computational Complexity, 24(2):255-293, 2015. (Also appears in proceedings of CCC'14)." + }, + "269": { + "ref_id": 269, + "authors": "Stacey Jeffery and Shelby Kimmel", + "title": "NAND-trees, average choice complexity, and effective resistance", + "links": { + "arXiv:1511.02235": "http://arxiv.org/abs/1511.02235" + }, + "extra": "" + }, + "270": { + "ref_id": 270, + "authors": "Scott Aaronson, Shalev Ben-David, and Robin Kothari", + "title": "Separations in query complexity using cheat sheets", + "links": { + "arXiv:1511.01937": "http://arxiv.org/abs/1511.01937" + }, + "extra": "" + }, + "271": { + "ref_id": 271, + "authors": "Fr\u00e9d\u00e9ric Grosshans, Thomas Lawson, Fran\u00e7oisMorain, and Benjamin Smith", + "title": "Factoring safe semiprimes with a single quantum query", + "links": { + "arXiv:1511.04385": "http://arxiv.org/abs/1511.04385" + }, + "extra": "" + }, + "272": { + "ref_id": 272, + "authors": "Agnis \u0100ri\u0146\u0161", + "title": "Span-program-based quantum algorithms for graph bipartiteness and connectivity", + "links": { + "arXiv:1510.07825": "http://arxiv.org/abs/1510.07825" + }, + "extra": "" + }, + "273": { + "ref_id": 273, + "authors": "Juan Bermejo-Vega and Kevin C. Zatloukal", + "title": "Abelian hypergroups and quantum computation", + "links": { + "arXiv:1509.05806": "http://arxiv.org/abs/1509.05806" + }, + "extra": "" + }, + "274": { + "ref_id": 274, + "authors": "Andrew Childs and Jeffrey Goldstone", + "title": "Spatial search by quantum walk", + "links": { + "arXiv:quant-ph/0306054": "http://arxiv.org/abs/quant-ph/0306054" + }, + "extra": "Physical Review A, 70:022314, 2004." + }, + "275": { + "ref_id": 275, + "authors": "Shantanav Chakraborty, Leonardo Novo, Andris Ambainis, and Yasser Omar", + "title": "Spatial search by quantum walk is optimal for almost all graphs", + "links": { + "arXiv:1508.01327": "http://arxiv.org/abs/1508.01327" + }, + "extra": "" + }, + "276": { + "ref_id": 276, + "authors": "Fran\u00e7ois Le Gall", + "title": "Improved quantum algorithm for triangle finding viacombinatorial arguments", + "links": { + "arXiv:1407.0085": "http://arxiv.org/abs/1407.0085" + }, + "extra": "In Proceedings of the 55th IEEE Annual Symposium on Foundations of Computer Science (FOCS), pg. 216-225, 2014." + }, + "277": { + "ref_id": 277, + "authors": "Ashley Montanaro", + "title": "The quantum complexity of approximating the frequency moments", + "links": { + "arXiv:1505.00113": "http://arxiv.org/abs/1505.00113" + }, + "extra": "" + }, + "278": { + "ref_id": 278, + "authors": "Rolando D. Somma", + "title": "Quantum simulations of one dimensional quantum systems", + "links": { + "arXiv:1503.06319": "http://arxiv.org/abs/1503.06319" + }, + "extra": "" + }, + "279": { + "ref_id": 279, + "authors": "Bill Fefferman and Cedric Yen-Yu Lin", + "title": "A complete characterization of unitary quantum space", + "links": { + "arXiv:1604.01384": "http://arxiv.org/abs/1604.01384" + }, + "extra": "" + }, + "280": { + "ref_id": 280, + "authors": "Tsuyoshi Ito and Stacey Jeffery", + "title": "Approximate span programs", + "links": { + "arXiv:1507.00432": "http://arxiv.org/abs/1507.00432" + }, + "extra": "" + }, + "281": { + "ref_id": 281, + "authors": "Arnau Riera, Christian Gogolin, and Jens Eisert", + "title": "Thermalization in nature and on a quantum computer", + "links": { + "arXiv:1102.2389": "http://arxiv.org/abs/1102.2389" + }, + "extra": "Physical Review Letters, 108:080402 (2012)" + }, + "282": { + "ref_id": 282, + "authors": "Michael J. Kastoryano and Fernando G. S. L. Brandao", + "title": "Quantum Gibbs Samplers: the commuting case", + "links": { + "arXiv:1409.3435": "http://arxiv.org/abs/1409.3435" + }, + "extra": "Communications in Mathematical Physics, 344(3):915-957 (2016)" + }, + "283": { + "ref_id": 283, + "authors": "Andrew M. Childs, David Jao, and Vladimir Soukharev", + "title": "Constructing elliptic curve isogenies in quantum subexponential time", + "links": { + "arXiv:1012.4019": "http://arxiv.org/abs/1012.4019" + }, + "extra": "Journal of Mathematical Cryptology, 8(1):1-29 (2014)" + }, + "284": { + "ref_id": 284, + "authors": "Markus Grassl, Brandon Langenberg, Martin Roetteler, and Rainer Steinwandt", + "title": "Applying Grover's algorithm to AES: quantum resource estimates", + "links": { + "arXiv:1512.04965": "http://arxiv.org/abs/1512.04965" + }, + "extra": "" + }, + "285": { + "ref_id": 285, + "authors": "M. Ami, O. Di Matteo, V. Gheorghiu, M. Mosca, A. Parent, and J. Schanck", + "title": "Estimating the cost of generic quantum pre-image attacks onSHA-2 and SHA-3", + "links": { + "arXiv:1603.09383": "http://arxiv.org/abs/1603.09383" + }, + "extra": "" + }, + "286": { + "ref_id": 286, + "authors": "Marc Kaplan, Gaetan Leurent, Anthony Leverrier, and Maria Naya-Plasencia", + "title": "Quantum differential and linear cryptanalysis", + "links": { + "arXiv:1510.05836": "http://arxiv.org/abs/1510.05836" + }, + "extra": "" + }, + "287": { + "ref_id": 287, + "authors": "Scott Fluhrer", + "title": "Quantum Cryptanalysis of NTRU", + "links": { + "Cryptology ePrint Archive: Report 2015/676": "https://eprint.iacr.org/2015/676" + }, + "extra": "" + }, + "288": { + "ref_id": 288, + "authors": "Marc Kaplan", + "title": "Quantum attacks against iterated block ciphers", + "links": { + "arXiv:1410.1434": "http://arxiv.org/abs/1410.1434" + }, + "extra": "" + }, + "289": { + "ref_id": 289, + "authors": "H. Kuwakado and M. Morii", + "title": "Quantum distinguisher between the 3-round Feistel cipher and the random permutation", + "links": {}, + "extra": "In Proceedings of IEEE International Symposium on Information Theory (ISIT), pg. 2682-2685, 2010." + }, + "290": { + "ref_id": 290, + "authors": "H. Kuwakado and M. Morii", + "title": "Security on the quantum-type Even-Mansour cipher", + "links": {}, + "extra": "In Proceedings of International Symposium on Information Theory and its Applications (ISITA), pg. 312-316, 2012." + }, + "291": { + "ref_id": 291, + "authors": "Martin Roetteler and Rainer Steinwandt", + "title": "A note on quantum related-key attacks", + "links": { + "arXiv:1306.2301": "http://arxiv.org/abs/1306.2301" + }, + "extra": "" + }, + "292": { + "ref_id": 292, + "authors": "Thomas Santoli and Christian Schaffner", + "title": "Using Simon's algorithm to attack symmetric-key cryptographic primitives", + "links": { + "arXiv:1603.07856": "http://arxiv.org/abs/1603.07856" + }, + "extra": "" + }, + "293": { + "ref_id": 293, + "authors": "Rolando D. Somma", + "title": "A Trotter-Suzuki approximation for Lie groups with applications to Hamiltonian simulation", + "links": { + "arXiv:1512.03416": "http://arxiv.org/abs/1512.03416" + }, + "extra": "" + }, + "294": { + "ref_id": 294, + "authors": "Guang Hao Low and Isaac Chuang", + "title": "Optimal Hamiltonian simulation by quantum signal processing", + "links": { + "arXiv:1606.02685": "http://arxiv.org/abs/1606.02685" + }, + "extra": "" + }, + "295": { + "ref_id": 295, + "authors": "Dominic W. Berry and Leonardo Novo", + "title": "Corrected quantum walk for optimal Hamiltonian simulation", + "links": { + "arXiv:1606.03443": "http://arxiv.org/abs/1606.03443" + }, + "extra": "" + }, + "296": { + "ref_id": 296, + "authors": "Ashley Montanaro and Sam Pallister", + "title": "Quantum algorithms and the finite element method", + "links": { + "arXiv:1512.05903": "http://arxiv.org/abs/1512.05903" + }, + "extra": "" + }, + "297": { + "ref_id": 297, + "authors": "Lin-Chun Wan, Chao-Hua Yu, Shi-Jie Pan, Fei Gao, and Qiao-Yan Wen", + "title": "Quantum algorithm for the Toeplitz systems", + "links": { + "arXiv:1608.02184": "http://arxiv.org/abs/1608.02184" + }, + "extra": "" + }, + "298": { + "ref_id": 298, + "authors": "Salvatore Mandra, Gian Giacomo Guerreschi, and Alan Aspuru-Guzik", + "title": "Faster than classical quantum algorithm for dense formulas of exact satisfiability and occupation problems", + "links": { + "arXiv:1512.00859": "http://arxiv.org/abs/1512.00859" + }, + "extra": "" + }, + "299": { + "ref_id": 299, + "authors": "J. Adcock, E. Allen, M. Day, S. Frick, J. Hinchliff, M. Johnson, S. Morley-Short, S. Pallister, A. Price, and S. Stanisic", + "title": "Advances in quantum machine learning", + "links": { + "arXiv:1512.02900": "http://arxiv.org/abs/1512.02900" + }, + "extra": "" + }, + "300": { + "ref_id": 300, + "authors": "Cedric Yen-Yu Lin and Yechao Zhu", + "title": "Performance of QAOA on typical instances of constraint satisfaction problems with bounded degree", + "links": { + "arXiv:1601.01744": "http://arxiv.org/abs/1601.01744" + }, + "extra": "" + }, + "301": { + "ref_id": 301, + "authors": "Dave Wecker, Matthew B. Hastings, and Matthias Troyer", + "title": "Training a quantum optimizer", + "links": { + "arXiv:1605.05370": "http://arxiv.org/abs/1605.05370" + }, + "extra": "" + }, + "302": { + "ref_id": 302, + "authors": "Edward Farhi and Aram W. Harrow", + "title": "Quantum supremacy through the quantum approximate optimization algorithm", + "links": { + "arXiv:1602.07674": "http://arxiv.org/abs/1602.07674" + }, + "extra": "" + }, + "303": { + "ref_id": 303, + "authors": "Thomas G. Wong", + "title": "Quantum walk search on Johnson graphs", + "links": { + "arXiv:1601.04212": "http://arxiv.org/abs/1601.04212" + }, + "extra": "" + }, + "304": { + "ref_id": 304, + "authors": "Jonatan Janmark, David A. Meyer, and Thomas G. Wong", + "title": "Global symmetry is unnecessary for fast quantum search", + "links": { + "arXiv:1403.2228": "http://arxiv.org/abs/1403.2228" + }, + "extra": "Physical Review Letters 112:210502, 2014." + }, + "305": { + "ref_id": 305, + "authors": "David A. Meyer and Thomas G. Wong", + "title": "Connectivity is a poor indicator of fast quantum search", + "links": { + "arXiv:1409.5876": "http://arxiv.org/abs/1409.5876" + }, + "extra": "Physical Review Letters 114:110503, 2014." + }, + "306": { + "ref_id": 306, + "authors": "Thomas G. Wong", + "title": "Spatial search by continuous-time quantum walk with multiple marked vertices", + "links": { + "arXiv:1501.07071": "http://arxiv.org/abs/1409.5876" + }, + "extra": "Quantum Information Processing 15(4):1411-1443, 2016." + }, + "307": { + "ref_id": 307, + "authors": "Anirban Naryan Chowdhury and Rolando D. Somma", + "title": "Quantum algorithms for Gibbs sampling and hitting-time estimation", + "links": { + "arXiv:1603.02940": "http://arxiv.org/abs/1603.02940" + }, + "extra": "" + }, + "308": { + "ref_id": 308, + "authors": "Edward Farhi, Shelby Kimmel, and Kristan Temme", + "title": "A quantum version of Schoning's algorithm applied to quantum 2-SAT", + "links": { + "arXiv:1603.06985": "http://arxiv.org/abs/1603.06985" + }, + "extra": "" + }, + "309": { + "ref_id": 309, + "authors": "Iordanis Kerenidis and Anupam Prakash", + "title": "Quantum recommendation systems", + "links": { + "arXiv:1603.08675": "http://arxiv.org/abs/1603.08675" + }, + "extra": "Innovations in Theoretical Computer Science (ITCS 2017), LIPIcs, vol. 67, pg. 1868-8969." + }, + "310": { + "ref_id": 310, + "authors": "Markus Reiher, Nathan Wiebe, Krysta M. Svore, Dave Wecker, and Matthias Troyer", + "title": "Elucidating reaction mechanisms on quantum computers", + "links": { + "arXiv:1605.03590": "http://arxiv.org/abs/1605.03590" + }, + "extra": "" + }, + "311": { + "ref_id": 311, + "authors": "Aram W. Harrow and Ashley Montanaro", + "title": "Sequential measurements, disturbance, and property testing", + "links": { + "arXiv:1607.03236": "http://arxiv.org/abs/1607.03236" + }, + "extra": "" + }, + "312": { + "ref_id": 312, + "authors": "Martin Roetteler", + "title": "Quantum algorithms for abelian difference sets and applications to dihedral hidden subgroups", + "links": { + "arXiv:1608.02005": "http://arxiv.org/abs/1608.02005" + }, + "extra": "" + }, + "313": { + "ref_id": 313, + "authors": "Fernando G.S.L. Brandao and Krysta Svore", + "title": "Quantum speed-ups for semidefinite programming", + "links": { + "arXiv:1609.05537": "http://arxiv.org/abs/1609.05537" + }, + "extra": "" + }, + "314": { + "ref_id": 314, + "authors": "Z-C Yang, A. Rahmani, A. Shabani, H. Neven, and C. Chamon", + "title": "Optimizing variational quantum algorithms using Pontryagins's minimum principle", + "links": { + "arXiv:1607.06473": "http://arxiv.org/abs/1607.06473" + }, + "extra": "" + }, + "315": { + "ref_id": 315, + "authors": "Gilles Brassard, Peter H\u00f8yer, and Alain Tapp", + "title": "Quantum cryptanalysis of hash and claw-free functions", + "links": {}, + "extra": "In Proceedings of the 3rd Latin American symposium on Theoretical Informatics (LATIN'98), pg. 163-169, 1998." + }, + "316": { + "ref_id": 316, + "authors": "Daniel J. Bernstein", + "title": "Cost analysis of hash collisions: Will quantum computers make SHARCS obsolete?", + "links": { + "here": "https://cr.yp.to/hash/collisioncost-20090517.pdf" + }, + "extra": "In Proceedings of the 4th Workshop on Special-purpose Hardware for Attacking Cryptographic Systems (SHARCS'09), pg. 105-116, 2009." + }, + "317": { + "ref_id": 317, + "authors": "Chris Cade, Ashley Montanaro, and Aleksandrs Belovs", + "title": "Time and space efficient quantum algorithms for detecting cycles and testing bipartiteness", + "links": { + "arXiv:1610.00581": "http://arxiv.org/abs/1610.00581" + }, + "extra": "" + }, + "318": { + "ref_id": 318, + "authors": "A. Belovs and B. Reichardt", + "title": "Span programs and quantum algorithms for st-connectivity and claw detection", + "links": { + "arXiv:1203.2603": "http://arxiv.org/abs/1203.2603" + }, + "extra": "In European Symposium on Algorithms (ESA'12), pg. 193-204, 2012." + }, + "319": { + "ref_id": 319, + "authors": "Titouan Carette, Mathieu Lauri\u00e8re, and Fr\u00e9d\u00e9ric Magniez", + "title": "Extended learning graphs for triangle finding", + "links": { + "arXiv:1609.07786": "http://arxiv.org/abs/1609.07786" + }, + "extra": "" + }, + "320": { + "ref_id": 320, + "authors": "F. Le Gall and N. Shogo", + "title": "Quantum algorithm for triangle finding in sparse graphs", + "links": {}, + "extra": "In Proceedings of the 26th International Symposium on Algorithms and Computation (ISAAC'15), pg. 590-600, 2015." + }, + "321": { + "ref_id": 321, + "authors": "Or Sattath and Itai Arad", + "title": "A constructive quantum Lov\u00e1sz local lemma for commuting projectors", + "links": { + "arXiv:1310.7766": "http://arxiv.org/abs/1310.7766" + }, + "extra": "Quantum Information and Computation, 15(11/12)987-996pg, 2015." + }, + "322": { + "ref_id": 322, + "authors": "Martin Schwarz, Toby S. Cubitt, and Frank Verstraete", + "title": "An information-theoretic proof of the constructive commutative quantum Lov\u00e1sz local lemma", + "links": { + "arXiv:1311.6474": "http://arxiv.org/abs/1311.6474" + }, + "extra": "" + }, + "323": { + "ref_id": 323, + "authors": "C. Shoen, E. Solano, F. Verstraete, J. I. Cirac, and M. M. Wolf", + "title": "Sequential generation of entangled multi-qubit states", + "links": { + "arXiv:quant-ph/0501096": "http://arxiv.org/abs/quant-ph/0501096" + }, + "extra": "Physical Review Letters, 95:110503, 2005." + }, + "324": { + "ref_id": 324, + "authors": "C. Shoen, K. Hammerer, M. M. Wolf, J. I. Cirac, and E. Solano", + "title": "Sequential generation of matrix-product states in cavity QED", + "links": { + "arXiv:quant-ph/0612101": "http://arxiv.org/abs/quant-ph/0612101" + }, + "extra": "Physical Review A, 75:032311, 2007." + }, + "325": { + "ref_id": 325, + "authors": "Yimin Ge, Andr\u00e1s Moln\u00e1r, and J. Ignacio Cirac", + "title": "Rapid adiabatic preparation of injective PEPS and Gibbs states", + "links": { + "arXiv:1508.00570": "http://arxiv.org/abs/1508.00570" + }, + "extra": "Physical Review Letters, 116:080503, 2016." + }, + "326": { + "ref_id": 326, + "authors": "Martin Schwarz, Kristan Temme, and Frank Verstraete", + "title": "Preparing projected entangled pair states on a quantum computer", + "links": { + "arXiv:1104.1410": "http://arxiv.org/abs/1104.1410" + }, + "extra": "Physical Review Letters, 108:110502, 2012." + }, + "327": { + "ref_id": 327, + "authors": "Martin Schwarz, Toby S. Cubitt, Kristan Temme, Frank Verstraete, and David Perez-Garcia", + "title": "Preparing topological PEPS on a quantum computer", + "links": { + "arXiv:1211.4050": "http://arxiv.org/abs/1211.4050" + }, + "extra": "Physical Review A, 88:032321, 2013." + }, + "328": { + "ref_id": 328, + "authors": "M. Schwarz, O. Buerschaper, and J. Eisert", + "title": "Approximating local observables on projected entangled pair states", + "links": { + "arXiv:1606.06301": "http://arxiv.org/abs/1606.06301" + }, + "extra": "" + }, + "329": { + "ref_id": 329, + "authors": "Jean-Fran\u00e7ois Biasse and Fang Song", + "title": "Efficient quantum algorithms for computing class groups and solving the principal ideal problem in arbitrary degree number fields", + "links": {}, + "extra": "Proceedings of the 27th Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA '16), pg. 893-902, 2016." + }, + "330": { + "ref_id": 330, + "authors": "Peter H\u00f8yer and Mojtaba Komeili", + "title": "Efficient quantum walk on the grid with multiple marked elements", + "links": { + "arXiv:1612.08958": "https://arxiv.org/abs/1612.08958" + }, + "extra": "Proceedings of the 34th Symposium on Theoretical Aspects of Computer Science (STACS 2017), 42, 2016." + }, + "331": { + "ref_id": 331, + "authors": "Peter Wittek", + "title": "Quantum Machine Learning: what quantum computing means to data mining", + "links": {}, + "extra": "Academic Press, 2014." + }, + "332": { + "ref_id": 332, + "authors": "Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione", + "title": "An introduction to quantum machine learning", + "links": { + "arXiv:1409.3097": "https://arxiv.org/abs/1409.3097" + }, + "extra": "Contemporary Physics, 56(2):172, 2014." + }, + "333": { + "ref_id": 333, + "authors": "J. Biamonte, P. Wittek, N. Pancotti, P. Rebentrost, N. Wiebe, and S. Lloyd", + "title": "Quantum machine learning", + "links": { + "arXiv:1611.09347": "https://arxiv.org/abs/1611.09347" + }, + "extra": "" + }, + "334": { + "ref_id": 334, + "authors": "Esma A\u00efmeur, Gilles Brassard, and S\u00e9bastien Gambs", + "title": "Machine learning in a quantum world", + "links": {}, + "extra": "In Advances in Artificial Intelligence: 19th Conference of the Canadian Society for Computational Studies of Intelligence pg. 431-442, Springer, 2006." + }, + "335": { + "ref_id": 335, + "authors": "Vedran Dunjko, Jacob Taylor, and Hans Briegel", + "title": "Quantum-enhanced machine learning", + "links": {}, + "extra": "Phys. Rev. Lett 117:130501, 2016." + }, + "336": { + "ref_id": 336, + "authors": "Nathan Wiebe, Ashish Kapoor, and Krysta Svore", + "title": "Quantum algorithms for nearest-neighbor methods for supervised and unsupervised learning", + "links": { + "arXiv:1401.2142": "https://arxiv.org/abs/1401.2142" + }, + "extra": "Quantum Information and Computation 15(3/4): 0318-0358, 2015." + }, + "337": { + "ref_id": 337, + "authors": "Seokwon Yoo, Jeongho Bang, Changhyoup Lee, and Junhyoug Lee", + "title": "A quantum speedup in machine learning: finding a N-bit Boolean function for a classification", + "links": { + "arXiv:1303.6055": "https://arxiv.org/abs/1303.6055" + }, + "extra": "New Journal of Physics 6(10):103014, 2014." + }, + "338": { + "ref_id": 338, + "authors": "Maria Schuld, Ilya Sinayskiy, and Francesco Petruccione", + "title": "Prediction by linear regression on a quantum computer", + "links": { + "arXiv:1601.07823": "https://arxiv.org/abs/1601.07823" + }, + "extra": "Physical Review A 94:022342, 2016." + }, + "339": { + "ref_id": 339, + "authors": "Zhikuan Zhao, Jack K. Fitzsimons, and Joseph F. Fitzsimons", + "title": "Quantum assisted Gaussian process regression", + "links": { + "arXiv:1512.03929": "https://arxiv.org/abs/1512.03929" + }, + "extra": "" + }, + "340": { + "ref_id": 340, + "authors": "Esma A\u00efmeur, Gilles Brassard, and S\u00e9bastien Gambs", + "title": "Quantum speed-up for unsupervised learning", + "links": {}, + "extra": "Machine Learning, 90(2):261-287, 2013." + }, + "341": { + "ref_id": 341, + "authors": "Nathan Wiebe, Ashish Kapoor, and Krysta Svore", + "title": "Quantum perceptron models", + "links": { + "arXiv:1602.04799": "https://arxiv.org/abs/1602.04799" + }, + "extra": "Advances in Neural Information Processing Systems 29 (NIPS 2016), pg. 3999\u20134007, 2016." + }, + "342": { + "ref_id": 342, + "authors": "G. Paparo, V. Dunjko, A. Makmal, M. Martin-Delgado, and H. Briegel", + "title": "Quantum speedup for active learning agents", + "links": { + "arXiv:1401.4997": "https://arxiv.org/abs/1401.4997" + }, + "extra": "Physical Review X 4(3):031002, 2014." + }, + "343": { + "ref_id": 343, + "authors": "Daoyi Dong, Chunlin Chen, Hanxiong Li, and Tzyh-Jong Tarn", + "title": "Quantum reinforcement learning", + "links": {}, + "extra": "IEEE Transactions on Systems, Man, and Cybernetics- Part B (Cybernetics) 38(5):1207, 2008." + }, + "344": { + "ref_id": 344, + "authors": "Daniel Crawford, Anna Levit, Navid Ghadermarzy, Jaspreet S. Oberoi, and Pooya Ronagh", + "title": "Reinforcement learning using quantum Boltzmann machines", + "links": { + "arXiv:1612.05695": "https://arxiv.org/abs/1612.05695" + }, + "extra": "" + }, + "345": { + "ref_id": 345, + "authors": "Steven H. Adachi and Maxwell P. Henderson", + "title": "Application of Quantum Annealing to Training of Deep Neural Networks", + "links": { + "arXiv:1510.06356": "https://arxiv.org/abs/1510.06356" + }, + "extra": "" + }, + "346": { + "ref_id": 346, + "authors": "M. Benedetti, J. Realpe-G\u00f3mez, R. Biswas, and A. Perdomo-Ortiz", + "title": "Quantum-assisted learning of graphical models with arbitrary pairwise connectivity", + "links": { + "arXiv:1609.02542": "https://arxiv.org/abs/1609.02542" + }, + "extra": "" + }, + "347": { + "ref_id": 347, + "authors": "M. H. Amin, E. Andriyash, J. Rolfe, B. Kulchytskyy, and R. Melko", + "title": "Quantum Boltzmann machine", + "links": { + "arXiv:1601.02036": "https://arxiv.org/abs/1601.02036" + }, + "extra": "" + }, + "348": { + "ref_id": 348, + "authors": "Peter Wittek and Christian Gogolin", + "title": "Quantum enhanced inference in Markov logic networks", + "links": { + "arXiv:1611.08104": "https://arxiv.org/abs/1611.08104" + }, + "extra": "Scientific Reports 7:45672, 2017." + }, + "349": { + "ref_id": 349, + "authors": "N. H. Bshouty and J. C. Jackson", + "title": "Learning DNF over the uniform distribution using a quantum example oracle", + "links": {}, + "extra": "SIAM Journal on Computing 28(3):1136-1153, 1999." + }, + "350": { + "ref_id": 350, + "authors": "Srinivasan Arunachalam and Ronald de Wolf", + "title": "A survey of quantum learning theory", + "links": { + "arXiv:1701.06806": "https://arxiv.org/abs/1701.06806" + }, + "extra": "" + }, + "351": { + "ref_id": 351, + "authors": "Rocco A. Servedio and Steven J. Gortler", + "title": "Equivalences and separations between quantum and classical learnability", + "links": {}, + "extra": "SIAM Journal on Computing, 33(5):1067-1092, 2017." + }, + "352": { + "ref_id": 352, + "authors": "Srinivasan Arunachalam and Ronald de Wolf", + "title": "Optimal quantum sample complexity of learning algorithms", + "links": { + "arXiv:1607.00932": "https://arxiv.org/abs/1607.00932" + }, + "extra": "" + }, + "353": { + "ref_id": 353, + "authors": "Alex Monr\u00e0s, Gael Sent\u00eds, and Peter Wittek", + "title": "Inductive quantum learning: why you are doing it almost right", + "links": { + "arXiv:1605.07541": "https://arxiv.org/abs/1605.07541" + }, + "extra": "" + }, + "354": { + "ref_id": 354, + "authors": "A. Bisio, G. Chiribella, G. M. D'Ariano, S. Facchini, and P. Perinotti", + "title": "Optimal quantum learning of a unitary transformation", + "links": { + "arXiv:0903.0543": "https://arxiv.org/abs/0903.0543" + }, + "extra": "Physical Review A 81:032324, 2010." + }, + "355": { + "ref_id": 355, + "authors": "M. Sasaki, A. Carlini, and R. Jozsa", + "title": "Quantum template matching", + "links": { + "arXiv:quant-ph/0102020": "https://arxiv.org/abs/quant-ph/0102020" + }, + "extra": "Physical Review A 64:022317, 2001." + }, + "356": { + "ref_id": 356, + "authors": "Masahide Sasaki and Alberto Carlini", + "title": "Quantum learning and universal quantum matching machine", + "links": { + "arXiv:quant-ph/0202173": "https://arxiv.org/abs/quant-ph/0202173" + }, + "extra": "Physical Review A 66:022303, 2002." + }, + "357": { + "ref_id": 357, + "authors": "Esma A\u00efmeur, Gilles Brassard, and S\u00e9bastien Gambs", + "title": "Quantum clustering algorithms", + "links": {}, + "extra": "In Proceedings of the 24th International Conference on Machine Learning (ICML), pg. 1-8, 2007." + }, + "358": { + "ref_id": 358, + "authors": "Iordanis Kerenidis and Anupam Prakash", + "title": "Quantum gradient descent for linear systems and least squares", + "links": { + "arXiv:1704.04992": "https://arxiv.org/abs/1704.04992" + }, + "extra": "" + }, + "359": { + "ref_id": 359, + "authors": "Dan Boneh and Mark Zhandry", + "title": "Quantum-secure message authentication codes", + "links": {}, + "extra": "In Proceedings of Eurocrypt, pg. 592-608, 2013." + }, + "360": { + "ref_id": 360, + "authors": "A. M. Childs, W. van Dam, S-H Hung, and I. E. Shparlinski", + "title": "Optimal quantum algorithm for polynomial interpolation", + "links": { + "arXiv:1509.09271": "https://arxiv.org/abs/1509.09271" + }, + "extra": "In Proceedings of the 43rd International Colloquium on Automata, Languages, and Programming (ICALP), pg. 16:1-16:13, 2016." + }, + "361": { + "ref_id": 361, + "authors": "Volker Strassen", + "title": "Einige Resultate \u00fcber Berechnungskomplexit\u00e4t", + "links": {}, + "extra": "In Jahresbericht der Deutschen Mathematiker-Vereinigung, 78(1):1-8, 1976/1977." + }, + "362": { + "ref_id": 362, + "authors": "Stacey Jeffery", + "title": "Frameworks for Quantum Algorithms", + "links": {}, + "extra": "" + }, + "363": { + "ref_id": 363, + "authors": "Seiichiro Tani", + "title": "An improved claw finding algorithm using quantum walk", + "links": { + "arXiv:0708.2584": "https://arxiv.org/abs/0708.2584" + }, + "extra": "In Mathematical Foundations of Computer Science (MFCS), pg. 536-547, 2007." + }, + "364": { + "ref_id": 364, + "authors": "K. Iwama and A. Kawachi", + "title": "A new quantum claw-finding algorithm for three functions", + "links": {}, + "extra": "New Generation Computing, 21(4):319-327, 2003." + }, + "365": { + "ref_id": 365, + "authors": "D. J. Bernstein, N. Heninger, P. Lou, and L. Valenta", + "title": "Post-quantum RSA", + "links": { + "2017/351": "https://eprint.iacr.org/2017/351" + }, + "extra": "" + }, + "366": { + "ref_id": 366, + "authors": "Francois Fillion-Gourdeau, Steve MacLean, and Raymond Laflamme", + "title": "Quantum algorithm for the dsolution of the Dirac equation", + "links": { + "arXiv:1611.05484": "https://arxiv.org/abs/1611.05484" + }, + "extra": "" + }, + "367": { + "ref_id": 367, + "authors": "Ali Hamed Moosavian and Stephen Jordan", + "title": "Faster quantum algorithm to simulate Fermionic quantum field theory", + "links": { + "arXiv:1711.04006": "https://arxiv.org/abs/1711.04006" + }, + "extra": "" + }, + "368": { + "ref_id": 368, + "authors": "Pedro C.S. Costa, Stephen Jordan, and Aaron Ostrander", + "title": "Quantum algorithm for simulating the wave equation", + "links": { + "arXiv:1711.05394": "https://arxiv.org/abs/1711.05394" + }, + "extra": "" + }, + "369": { + "ref_id": 369, + "authors": "Jeffrey Yepez", + "title": "Highly covariant quantum lattice gas model of the Dirac equation", + "links": { + "arXiv:1106.0739": "https://arxiv.org/abs/1711.05394" + }, + "extra": "" + }, + "370": { + "ref_id": 370, + "authors": "Jeffrey Yepez", + "title": "Quantum lattice gas model of Dirac particles in 1+1 dimensions", + "links": { + "arXiv:1307.3595": "https://arxiv.org/abs/1307.3595" + }, + "extra": "" + }, + "371": { + "ref_id": 371, + "authors": "Bruce M. Boghosian and Washington Taylor", + "title": "Simulating quantum mechanics on a quantum computer", + "links": { + "arXiv:quant-ph/9701019": "https://arxiv.org/abs/quant-ph/9701019" + }, + "extra": "Physica D 120:30-42, 1998." + }, + "372": { + "ref_id": 372, + "authors": "Yimin Ge, Jordi Tura, and J. Ignacio Cirac", + "title": "Faster ground state preparation and high-precision ground energy estimation on a quantum computer", + "links": { + "arXiv:1712.03193": "https://arxiv.org/abs/1712.03193" + }, + "extra": "" + }, + "373": { + "ref_id": 373, + "authors": "Renato Portugal", + "title": "Element distinctness revisited", + "links": { + "arXiv:1711.11336": "https://arxiv.org/abs/1711.11336" + }, + "extra": "" + }, + "374": { + "ref_id": 374, + "authors": "Kanav Setia and James D. Whitfield", + "title": "Bravyi-Kitaev superfast simulation of fermions on a quantum computer", + "links": { + "arXiv:1712.00446": "https://arxiv.org/abs/1712.00446" + }, + "extra": "" + }, + "375": { + "ref_id": 375, + "authors": "Richard Cleve and Chunhao Wang", + "title": "Efficient quantum algorithms for simulating Lindblad evolution", + "links": { + "arXiv:1612.09512": "https://arxiv.org/abs/1612.09512" + }, + "extra": "" + }, + "376": { + "ref_id": 376, + "authors": "M. Kliesch, T. Barthel, C. Gogolin, M. Kastoryano, and J. Eisert", + "title": "Dissipative quantum Church-Turing theorem", + "links": { + "arXiv:1105.3986": "https://arxiv.org/abs/1105.3986" + }, + "extra": "Physical Review Letters 107(12):120501, 2011." + }, + "377": { + "ref_id": 377, + "authors": "A. M. Childs and T. Li", + "title": "Efficient simulation of sparse Markovian quantum dynamics", + "links": { + "arXiv:1611.05543": "https://arxiv.org/abs/1611.05543" + }, + "extra": "" + }, + "378": { + "ref_id": 378, + "authors": "R. Di Candia, J. S. Pedernales, A. del Campo, E. Solano, and J. Casanova", + "title": "Quantum simulation of dissipative processes without reservoir engineering", + "links": {}, + "extra": "Scientific Reports 5:9981, 2015." + }, + "379": { + "ref_id": 379, + "authors": "R. Babbush, D. Berry, M. Kieferov\u00e1, G. H. Low, Y. Sanders, A. Sherer, and N. Wiebe", + "title": "Improved techniques for preparing eigenstates of Fermionic Hamiltonians", + "links": { + "arXiv:1711.10460": "https://arxiv.org/abs/1711.10460" + }, + "extra": "" + }, + "380": { + "ref_id": 380, + "authors": "D. Poulin, A. Kitaev, D. S. Steiger, M. B. Hasting, and M. Troyer", + "title": "Fast quantum algorithm for spectral properties", + "links": { + "arXiv:1711.11025": "https://arxiv.org/abs/1711.11025" + }, + "extra": "" + }, + "381": { + "ref_id": 381, + "authors": "Guang Hao Low and Isaac Chuang", + "title": "Hamiltonian simulation bt qubitization", + "links": { + "arXiv:1610.06546": "https://arxiv.org/abs/1610.06546" + }, + "extra": "" + }, + "382": { + "ref_id": 382, + "authors": "F.G.S.L. Brand\u00e3o, A. Kalev, T. Li, C. Y.-Y. Lin, K. M. Svore, and X. Wu", + "title": "Quantum SDP Solvers: Large Speed-ups, Optimality, and Applications to Quantum Learning", + "links": { + "arXiv:1710.02581": "https://arxiv.org/abs/1710.02581" + }, + "extra": "Proceedings of ICALP 2019" + }, + "383": { + "ref_id": 383, + "authors": "M. Eker\u00e5 and J. H\u00e5stad", + "title": "Quantum Algorithms for Computing Short Discrete Logarithms and Factoring RSA Integers", + "links": { + "Proceedings of PQCrypto 2017": "https://link.springer.com/chapter/10.1007/978-3-319-59879-6_20" + }, + "extra": "" + }, + "384": { + "ref_id": 384, + "authors": "M. Eker\u00e5", + "title": "On post-processing in the quantum algorithm for computing short discrete logarithms", + "links": { + "IACR ePrint Archive Report 2017/1122": "https://eprint.iacr.org/2017/1122" + }, + "extra": "" + }, + "385": { + "ref_id": 385, + "authors": "D. J. Bernstein, J.-F. Biasse, and M. Mosca", + "title": "A low-resource quantum factoring algorithm", + "links": { + "Proceedings of PQCrypto 2017": "https://link.springer.com/chapter/10.1007/978-3-319-59879-6_19" + }, + "extra": "" + }, + "386": { + "ref_id": 386, + "authors": "Jianxin Chen, Andrew M. Childs, and Shih-Han Hung", + "title": "Quantum algorithm for multivariate polynomial interpolation", + "links": { + "arXiv:1701.03990": "http://arxiv.org/abs/1701.03990" + }, + "extra": "Proceedings of the Royal Society A, 474:20170480, 2017." + }, + "387": { + "ref_id": 387, + "authors": "Lisa Hales and Sean Hallgren", + "title": "An improved quantum Fourier transform algorithm and applications.", + "links": {}, + "extra": "In Proceedings of FOCS 2000, pg. 515-525." + }, + "388": { + "ref_id": 388, + "authors": "Igor Shparlinski and Arne Winterhof", + "title": "Quantum period reconstruction of approximate sequences", + "links": {}, + "extra": "Information Processing Letters, 103:211-215, 2007." + }, + "389": { + "ref_id": 389, + "authors": "Alexander Russell and Igor E. Shparlinski", + "title": "Classical and quantum function reconstruction via character evaluation", + "links": {}, + "extra": "Journal of Complexity, 20:404-422, 2004." + }, + "390": { + "ref_id": 390, + "authors": "Sean Hallgren, Alexander Russell, and Igor Shparlinski", + "title": "Quantum noisy rational function reconstruction", + "links": {}, + "extra": "Proceedings of COCOON 2005, pg. 420-429." + }, + "391": { + "ref_id": 391, + "authors": "G. Ivanyos, M. Karpinski, M. Santha, N. Saxena, and I. Shparlinski", + "title": "Polynomial interpolation and identity testing from high powers over finite fields", + "links": {}, + "extra": "Algorithmica, 80:560-575, 2017." + }, + "392": { + "ref_id": 392, + "authors": "Qi Cheng", + "title": "Primality Proving via One Round in ECPP and One Iteration in AKS", + "links": {}, + "extra": "Journal of Cryptology, Volume 20, Issue 3, pg. 375-387, July 2007." + }, + "393": { + "ref_id": 393, + "authors": "Daniel J. Bernstein", + "title": "Proving primality in essentially quartic random time", + "links": {}, + "extra": "Mathematics of Computation, Vol. 76, pg. 389-403, 2007." + }, + "394": { + "ref_id": 394, + "authors": "F. Morain", + "title": "Implementing the asymptotically fast version of the elliptic curve primality proving algorithm", + "links": {}, + "extra": "Mathematics of Computation, Vol. 76, pg. 493-505, 2007." + }, + "395": { + "ref_id": 395, + "authors": "Alvaro Donis-Vela and Juan Carlos Garcia-Escartin", + "title": "A quantum primality test with order finding", + "links": { + "arXiv:1711.02616": "https://arxiv.org/abs/1711.02616" + }, + "extra": "" + }, + "396": { + "ref_id": 396, + "authors": "H. F. Chau and H.-K. Lo", + "title": "Primality test via quantum factorization", + "links": { + "arXiv:quant-ph/9508005": "https://arxiv.org/abs/quant-ph/9508005" + }, + "extra": "International Journal of Modern Physics C, Vol. 8, No. 2, pg. 131-138, 1997." + }, + "397": { + "ref_id": 397, + "authors": "David Harvey and Joris Van Der Hoeven", + "title": "Integer multiplication in time \\( O(n \\log \\ n) \\)", + "links": { + "hal-02070778": "https://hal.archives-ouvertes.fr/hal-02070778" + }, + "extra": "" + }, + "398": { + "ref_id": 398, + "authors": "Charles Greathouse", + "title": "personal communication", + "links": {}, + "extra": ", 2019." + }, + "399": { + "ref_id": 399, + "authors": "Ewin Tang", + "title": "A quantum-inspired classical algorithm for recommendation systems", + "links": { + "arXiv:1807.04271": "https://arxiv.org/abs/1807.04271" + }, + "extra": "In Proceedings of STOC 2019, pg. 217-228." + }, + "400": { + "ref_id": 400, + "authors": "Ewin Tang", + "title": "Quantum-inspired classical algorithms for principal component analysis and supervised clustering", + "links": { + "arXiv:1811.00414": "https://arxiv.org/abs/1811.00414" + }, + "extra": "" + }, + "401": { + "ref_id": 401, + "authors": "L. Wossnig, Z. Zhao, and A. Prakash", + "title": "A quantum linear system algorithm for dense matrices", + "links": { + "arXiv:1704.06174": "https://arxiv.org/abs/1704.06174" + }, + "extra": "Physical Review Letters vol. 120, no. 5, pg. 050502, 2018." + }, + "402": { + "ref_id": 402, + "authors": "Zhikuan Zhao, Alejandro Pozas-Kerstjens, Patrick Rebentrost, and Peter Wittek", + "title": "Bayesian Deep Learning on a Quantum Computer", + "links": { + "arXiv:1806.11463": "https://arxiv.org/abs/1806.11463" + }, + "extra": "Quantum Machine Intelligence vol. 1, pg. 41-51, 2019." + }, + "403": { + "ref_id": 403, + "authors": "Anja Becker, Jean-Sebastien Coron, and Antoine Joux", + "title": "Improved generic algorithms for hard knapsacks", + "links": { + "IACR eprint 2011/474": "http://eprint.iacr.org/2011/474" + }, + "extra": "Proceedings of Eurocrypt 2011 pg. 364-385" + }, + "404": { + "ref_id": 404, + "authors": "Kun Zhang and Vladimir E. Korepin", + "title": "Low depth quantum search algorithm", + "links": { + "arXiv:1908.04171": "https://arxiv.org/abs/1908.04171" + }, + "extra": "" + }, + "405": { + "ref_id": 405, + "authors": "Andriyan Bayo Suksmono and Yuichiro Minato", + "title": "Finding Hadamard matrices by a quantum annealing machine", + "links": { + "arXiv:1902.07890": "https://arxiv.org/abs/1902.07890" + }, + "extra": "Scientific Reports 9:14380, 2019." + }, + "406": { + "ref_id": 406, + "authors": "G\u00e1bor Ivanyos, Anupam Prakash, and Miklos Santha", + "title": "On learning linear functions from subset and its applications in quantum computing", + "links": { + "": "https://drops.dagstuhl.de/opus/portals/lipics/index.php?semnr=16083", + "arXiv:1806.09660": "https://arxiv.org/abs/1806.09660" + }, + "extra": "26th Annual European Symposium on Algorithms (ESA 2018), LIPIcs volume 112, 2018." + }, + "407": { + "ref_id": 407, + "authors": "G\u00e1bor Ivanyos", + "title": "On solving systems of random linear disequations", + "links": { + "arXiv:0704.2988": "https://arxiv.org/abs/0704.2988" + }, + "extra": "Quantum Information and Computation, 8(6):579-594, 2008." + }, + "408": { + "ref_id": 408, + "authors": "A. Ambainis, K. Balodis, J. Iraids, M. Kokainis, K. Prusis, and J. Vihrovs", + "title": "Quantum speedups for exponential-time dynamic programming algorithms", + "links": { + "arXiv:1807.05209": "https://arxiv.org/abs/1807.05209" + }, + "extra": "Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 19), pg. 1783-1793, 2019." + }, + "409": { + "ref_id": 409, + "authors": "Dominic W. Berry, Andrew M. Childs, Aaron Ostrander, and Guoming Wang", + "title": "Quantum algorithm for linear differential equations with exponentially improved dependence on precision", + "links": { + "arXiv:1701.03684": "https://arxiv.org/abs/1701.03684" + }, + "extra": "Communications in Mathematical Physics, 356(3):1057-1081, 2017." + }, + "410": { + "ref_id": 410, + "authors": "Sarah K. Leyton and Tobias J. Osborne", + "title": "Quantum algorithm to solve nonlinear differential equations", + "links": { + "arXiv:0812.4423": "https://arxiv.org/abs/0812.4423" + }, + "extra": "" + }, + "411": { + "ref_id": 411, + "authors": "Y. Cao, A. Papageorgiou, I. Petras, J. Traub, and S. Kais", + "title": "Quantum algorithm and circuit design solving the Poisson equation", + "links": { + "arXiv:1207.2485": "https://arxiv.org/abs/1207.2485" + }, + "extra": "New Journal of Physics 15(1):013021, 2013." + }, + "412": { + "ref_id": 412, + "authors": "S. Wang, Z. Wang, W. Li, L. Fan, Z. Wei, and Y. Gu", + "title": "Quantum fast Poisson solver: the algorithm and modular circuit design", + "links": { + "arXiv:1910.09756": "https://arxiv.org/abs/1910.09756" + }, + "extra": "" + }, + "413": { + "ref_id": 413, + "authors": "A. Scherer, B. Valiron, S.-C. Mau, S. Alexander, E. van den Berg, and T. Chapuran", + "title": "Concrete resource analysis of the quantum linear system algorithm used to compute the electromagnetic scattering crossection of a 2D target", + "links": { + "arXiv:1505.06552": "https://arxiv.org/abs/1505.06552" + }, + "extra": "Quantum Information Processing 16:60, 2017." + }, + "414": { + "ref_id": 414, + "authors": "Juan Miguel Arrazola, Timjan Kalajdziavski, Christian Weedbrook, and Seth Lloyd", + "title": "Quantum algorithm for nonhomogeneous linear partial differential equations", + "links": { + "arXiv:1809.02622": "https://arxiv.org/abs/1809.02622" + }, + "extra": "Physical Review A 100:032306, 2019." + }, + "415": { + "ref_id": 415, + "authors": "Andrew Childs and Jin-Peng Liu", + "title": "Quantum spectral methods for differential equations", + "links": { + "arXiv:1901.00961": "https://arxiv.org/abs/1901.00961" + }, + "extra": "" + }, + "416": { + "ref_id": 416, + "authors": "Alexander Engle, Graeme Smith, and Scott E. Parker", + "title": "A quantum algorithm for the Vlasov equation", + "links": { + "arXiv:1907.09418": "https://arxiv.org/abs/1907.09418" + }, + "extra": "" + }, + "417": { + "ref_id": 417, + "authors": "Shouvanik Chakrabarti, Andrew M. Childs, Tongyang Li, and Xiaodi Wu", + "title": "Quantum algorithms and lower bounds for convex optimization", + "links": { + "arXiv:1809.01731": "https://arxiv.org/abs/1809.01731" + }, + "extra": "" + }, + "418": { + "ref_id": 418, + "authors": "S. Chakrabarti, A. M. Childs, S.-H. Hung, T. Li, C. Wang, and X. Wu", + "title": "Quantum algorithm for estimating volumes of convex bodies", + "links": { + "arXiv:1908.03903": "https://arxiv.org/abs/1908.03903" + }, + "extra": "" + }, + "419": { + "ref_id": 419, + "authors": "Joran van Apeldoorn, Andr\u00e1s Gily\u00e9n, Sander Gribling, and Ronald de Wolf", + "title": "Convex optimization using quantum oracles", + "links": { + "arXiv:1809.00643": "https://arxiv.org/abs/1809.00643" + }, + "extra": "" + }, + "420": { + "ref_id": 420, + "authors": "Nai-Hui Chia, Andr\u00e1as Gily\u00e9n, Tongyang Li, Han-Hsuan Lin, Ewin Tang, and Chunhao Wang", + "title": "Sampling-based sublinear low-rank matrix arithmetic framework for dequantizing quantum machine learning", + "links": { + "arXiv:1910.06151": "https://arxiv.org/abs/1910.06151" + }, + "extra": "Proceedings of STOC 2020, pg. 387-400" + }, + "421": { + "ref_id": 421, + "authors": "Andris Ambainis and Martins Kokainis", + "title": "Quantum algorithm for tree size estimation, with applications to backtracking and 2-player games", + "links": { + "arXiv:1704.06774": "https://arxiv.org/abs/1704.06774" + }, + "extra": "Proceedings of STOC 2017, pg. 989-1002" + }, + "422": { + "ref_id": 422, + "authors": "Fernando G.S L. Brand\u00e3o, Richard Kueng, Daniel Stilck Fran\u00e7a", + "title": "Faster quantum and classical SDP approximations for quadratic binary optimization", + "links": { + "arXiv:1909.04613": "https://arxiv.org/abs/1909.04613" + }, + "extra": "" + }, + "423": { + "ref_id": 423, + "authors": "Matthew B. Hastings", + "title": "Classical and Quantum Algorithms for Tensor Principal Component Analysis", + "links": { + "arXiv:1907.12724": "https://arxiv.org/abs/1907.12724" + }, + "extra": "Quantum 4:237, 2020." + }, + "424": { + "ref_id": 424, + "authors": "Joran van Apeldoorn, Andr\u00e1s Gily\u00e9n, Sander Gribling, and Ronald de Wolf", + "title": "Quantum SDP-Solvers: Better upper and lower bounds", + "links": { + "arXiv:1705.01843": "https://arxiv.org/abs/1705.01843" + }, + "extra": "Quantum 4:230, 2020." + }, + "425": { + "ref_id": 425, + "authors": "J-P Liu, H. Kolden, H. Krovi, N. Loureiro, K. Trivisa, and A. M. Childs", + "title": "Efficient quantum algorithm for dissipative nonlinear differential equations", + "links": { + "arXiv:2011.03185": "https://arxiv.org/abs/2011.03185" + }, + "extra": "" + }, + "426": { + "ref_id": 426, + "authors": "S. Lloyd, G. De Palma, C. Gokler, B. Kiani, Z-W Liu, M. Marvian, F. Tennie, and T. Palmer", + "title": "Quantum algorithm for nonlinear differential equations", + "links": { + "arXiv:2011.06571": "https://arxiv.org/abs/2011.06571" + }, + "extra": "" + }, + "427": { + "ref_id": 427, + "authors": "Yunchao Liu, Srinivasan Arunachalam, and Kristan Temme", + "title": "A rigorous and robust quantum speed-up in supervised machine learning", + "links": { + "arXiv:2010.02174": "https://arxiv.org/abs/2010.02174" + }, + "extra": "" + }, + "428": { + "ref_id": 428, + "authors": "Matthew B. Hastings", + "title": "The power of adiabatic quantum computation with no sign problem", + "links": { + "arXiv:2005.03791": "https://arxiv.org/abs/2005.03791" + }, + "extra": "" + }, + "429": { + "ref_id": 429, + "authors": "Nathan Ramusat and Vincenzo Savona", + "title": "A quantum algorithm for the direct estimation of the steady state of open quantum systems", + "links": { + "arXiv:2008.07133": "https://arxiv.org/abs/2008.07133" + }, + "extra": "" + } +} \ No newline at end of file