Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Quantum complexity theory

From Wikipedia, the free encyclopedia
Computational complexity of quantum algorithms

This article includes a list ofgeneral references, butit lacks sufficient correspondinginline citations. Please help toimprove this article byintroducing more precise citations.(March 2020) (Learn how and when to remove this message)

Quantum complexity theory is the subfield ofcomputational complexity theory that deals withcomplexity classes defined usingquantum computers, acomputational model based onquantum mechanics. It studies the hardness ofcomputational problems in relation to these complexity classes, as well as the relationship between quantum complexity classes and classical (i.e., non-quantum) complexity classes.

Two important quantum complexity classes areBQP andQMA.

Background

[edit]
See also:Computational complexity andComplexity class

Acomplexity class is a collection ofcomputational problems that can be solved by a computational model under certain resource constraints. For instance, the complexity classP is defined as the set of problems solvable by aTuring machine inpolynomial time. Similarly, quantum complexity classes may be defined using quantum models of computation, such as thequantum circuit model or the equivalentquantum Turing machine. One of the main aims of quantum complexity theory is to find out how these classes relate to classical complexity classes such asP,NP,BPP, andPSPACE.

One of the reasons quantum complexity theory is studied are the implications of quantum computing for the modernChurch-Turing thesis. In short the modern Church-Turing thesis states that any computational model can be simulated in polynomial time with aprobabilistic Turing machine.[1][2] However, questions around the Church-Turing thesis arise in the context of quantum computing. It is unclear whether the Church-Turing thesis holds for the quantum computation model. There is much evidence that the thesis does not hold. It may not be possible for a probabilistic Turing machine to simulate quantum computation models in polynomial time.[1]

Both quantum computational complexity of functions and classical computational complexity of functions are often expressed withasymptotic notation. Some common forms of asymptotic notion of functions areO(T(n)){\displaystyle O(T(n))},Ω(T(n)){\displaystyle \Omega (T(n))}, andΘ(T(n)){\displaystyle \Theta (T(n))}.O(T(n)){\displaystyle O(T(n))} expresses that something is bounded above bycT(n){\displaystyle cT(n)} wherec{\displaystyle c} is a constant such thatc>0{\displaystyle c>0} andT(n){\displaystyle T(n)} is a function ofn{\displaystyle n},Ω(T(n)){\displaystyle \Omega (T(n))} expresses that something is bounded below bycT(n){\displaystyle cT(n)} wherec{\displaystyle c} is a constant such thatc>0{\displaystyle c>0} andT(n){\displaystyle T(n)} is a function ofn{\displaystyle n}, andΘ(T(n)){\displaystyle \Theta (T(n))} expresses bothO(T(n)){\displaystyle O(T(n))} andΩ(T(n)){\displaystyle \Omega (T(n))}.[3] These notations also have their own names.O(T(n)){\displaystyle O(T(n))} is calledBig O notation,Ω(T(n)){\displaystyle \Omega (T(n))} is called Big Omega notation, andΘ(T(n)){\displaystyle \Theta (T(n))} is called Big Theta notation.

Overview of complexity classes

[edit]

The important complexity classes P, BPP, BQP, PP, and PSPACE can be compared based onpromise problems. A promise problem is a decision problem which has an input assumed to be selected from the set of all possible input strings. A promise problem is a pairA=(Ayes,Ano){\displaystyle A=(A_{\text{yes}},A_{\text{no}})}, whereAyes{\displaystyle A_{\text{yes}}} is the set of yes instances andAno{\displaystyle A_{\text{no}}} is the set of no instances, and the intersection of these sets is empty:AyesAno={\displaystyle A_{\text{yes}}\cap A_{\text{no}}=\varnothing }. All of the previous complexity classes contain promise problems.[4]

Complexity ClassCriteria
PPromise problems for which a polynomial time deterministic Turing machine accepts all strings inAyes{\displaystyle A_{\text{yes}}} and rejects all strings inAno{\displaystyle A_{\text{no}}}[4]
BPPPromise problems for which a polynomial time Probabilistic Turing machine accepts every string inAyes{\displaystyle A_{\text{yes}}} with a probability of at least23{\displaystyle {\frac {2}{3}}}, and accepts every string inAno{\displaystyle A_{\text{no}}} with a probability of at most13{\displaystyle {\frac {1}{3}}}[4]
BQPPromise problems such that for functionsa,b:N[0,1]{\displaystyle a,b:\mathbb {N} \to [0,1]}, there exists a polynomial time generated family of quantum circuitsQ={Qn:nN}{\displaystyle Q={\{Q_{n}:n\in \mathbb {N} \}}}, whereQn{\displaystyle Q_{n}} is a circuit which acceptsn{\displaystyle n} qubits and gives an output of one qubit. An elementx{\displaystyle x} ofAyes{\displaystyle A_{\text{yes}}} is accepted byQ{\displaystyle Q} with a probability greater than or equal toa(|x|){\displaystyle a(\left\vert x\right\vert )}. An elementx{\displaystyle x} ofAno{\displaystyle A_{\text{no}}} is accepted byQ{\displaystyle Q} with a probability less than or equal tob(|x|){\displaystyle b(\left\vert x\right\vert )}.[4]
PPPromise problems for which a polynomial time Probabilistic Turing machine accepts every string inAyes{\displaystyle A_{\text{yes}}} with a probability greater than12{\displaystyle {\frac {1}{2}}}, and accepts every string inAno{\displaystyle A_{\text{no}}} with a probability of at most12{\displaystyle {\frac {1}{2}}}[4]
PSPACEPromise problems for which a deterministic Turing machine, that runs in polynomial space, accepts every string inAyes{\displaystyle A_{\text{yes}}} and rejects all strings inAno{\displaystyle A_{\text{no}}}[4]

BQP

[edit]
Main article:BQP
BQP algorithm (1 run)
Answer
produced
Correct
answer
YesNo
Yes≥ 2/3≤ 1/3
No≤ 1/3≥ 2/3
The suspected relationship of BQP to other complexity classes[5]

The class ofproblems that can be efficiently solved by a quantum computer with bounded error is called BQP ("bounded error, quantum, polynomial time"). More formally, BQP is the class of problems that can be solved by a polynomial-timequantum Turing machine with error probability of at most 1/3.

As a class of probabilistic problems, BQP is the quantum counterpart toBPP ("bounded error, probabilistic, polynomial time"), the class of problems that can be efficiently solved byprobabilistic Turing machines with bounded error.[6] It is known thatBPPBQP{\displaystyle {\mathsf {BPP\subseteq BQP}}} and widely suspected, but not proven, thatBQPBPP{\displaystyle {\mathsf {BQP\nsubseteq BPP}}}, which intuitively would mean that quantum computers are more powerful than classical computers in terms of time complexity.[7] BQP is a subset ofPP.

The exact relationship of BQP toP,NP, andPSPACE is not known. However, it is known thatPBQPPSPACE{\displaystyle {\mathsf {P\subseteq BQP\subseteq PSPACE}}}; that is, the class of problems that can be efficiently solved by quantum computers includes all problems that can be efficiently solved by deterministic classical computers but does not include any problems that cannot be solved by classical computers with polynomial space resources. It is further suspected that BQP is a strict superset of P, meaning there are problems that are efficiently solvable by quantum computers that are not efficiently solvable by deterministic classical computers. For instance,integer factorization and thediscrete logarithm problem are known to be in BQP and are suspected to be outside of P. On the relationship of BQP to NP, little is known beyond the fact that some NP problems are in BQP (integer factorization and the discrete logarithm problem are both in NP, for example). It is suspected thatNPBQP{\displaystyle {\mathsf {NP\nsubseteq BQP}}}; that is, it is believed that there are efficiently checkable problems that are not efficiently solvable by a quantum computer. As a direct consequence of this belief, it is also suspected that BQP is disjoint from the class ofNP-complete problems (if any NP-complete problem were in BQP, then it follows fromNP-hardness that all problems in NP are in BQP).[8]

The relationship of BQP to the essential classical complexity classes can be summarized as:

PBPPBQPPPPSPACE{\displaystyle {\mathsf {P\subseteq BPP\subseteq BQP\subseteq PP\subseteq PSPACE}}}

It is also known that BQP is contained in the complexity class#P{\displaystyle \color {Blue}{\mathsf {\#P}}} (or more precisely in the associated class of decision problemsP#P{\displaystyle {\mathsf {P^{\#P}}}}),[8] which is a subset ofPSPACE.

Simulation of quantum circuits

[edit]

There is no known way to efficiently simulate a quantum computational model with a classical computer. This means that a classical computer cannot simulate a quantum computational model in polynomial time. However, aquantum circuit ofS(n){\displaystyle S(n)} qubits withT(n){\displaystyle T(n)} quantum gates can be simulated by a classical circuit withO(2S(n)T(n)3){\displaystyle O(2^{S(n)}T(n)^{3})}classical gates.[3] This number of classical gates is obtained by determining how many bit operations are necessary to simulate the quantum circuit. In order to do this, first the amplitudes associated with theS(n){\displaystyle S(n)} qubits must be accounted for. Each of the states of theS(n){\displaystyle S(n)} qubits can be described by a two-dimensional complex vector, or a state vector. These state vectors can also be described alinear combination of itscomponent vectors with coefficients called amplitudes. These amplitudes are complex numbers which are normalized to one, meaning the sum of the squares of the absolute values of the amplitudes must be one.[3] The entries of the state vector are these amplitudes. The amplitudes, acting as coefficients in the linear combination description, each correspond to a non-zero component of the state vector. As an equation this is described asα[10]+β[01]=[αβ]{\displaystyle \alpha {\begin{bmatrix}1\\0\end{bmatrix}}+\beta {\begin{bmatrix}0\\1\end{bmatrix}}={\begin{bmatrix}\alpha \\\beta \end{bmatrix}}} orα|1+β|0=[αβ]{\displaystyle \alpha \left\vert 1\right\rangle +\beta \left\vert 0\right\rangle ={\begin{bmatrix}\alpha \\\beta \end{bmatrix}}} usingDirac notation. The state of the entireS(n){\displaystyle S(n)} qubit system can be described by a single state vector. This state vector describing the entire system is the tensor product of the state vectors describing the individual qubits in the system. The result of the tensor products of theS(n){\displaystyle S(n)} qubits is a single state vector which has2S(n){\displaystyle 2^{S(n)}} dimensions and entries that are the amplitudes associated with each basis state or component vector. Therefore,2S(n){\displaystyle 2^{S(n)}}amplitudes must be accounted for with a2S(n){\displaystyle 2^{S(n)}} dimensional complex vector which is the state vector for theS(n){\displaystyle S(n)} qubit system.[9] In order to obtain an upper bound for the number of gates required to simulate a quantum circuit we need a sufficient upper bound for the amount data used to specify the information about each of the2S(n){\displaystyle 2^{S(n)}} amplitudes. To do thisO(T(n)){\displaystyle O(T(n))} bits of precision are sufficient for encoding each amplitude.[3] So it takesO(2S(n)T(n)){\displaystyle O(2^{S(n)}T(n))} classical bits to account for the state vector of theS(n){\displaystyle S(n)} qubit system. Next the application of theT(n){\displaystyle T(n)} quantum gates on2S(n){\displaystyle 2^{S(n)}} amplitudes must be accounted for. The quantum gates can be represented as2S(n)×2S(n){\displaystyle 2^{S(n)}\times 2^{S(n)}}sparse matrices.[3] So to account for the application of each of theT(n){\displaystyle T(n)} quantum gates, the state vector must be multiplied by a2S(n)×2S(n){\displaystyle 2^{S(n)}\times 2^{S(n)}} sparse matrix for each of theT(n){\displaystyle T(n)} quantum gates. Every time the state vector is multiplied by a2S(n)×2S(n){\displaystyle 2^{S(n)}\times 2^{S(n)}} sparse matrix,O(2S(n)){\displaystyle O(2^{S(n)})} arithmetic operations must be performed.[3] Therefore, there areO(2S(n)T(n)2){\displaystyle O(2^{S(n)}T(n)^{2})} bit operations for every quantum gate applied to the state vector. SoO(2S(n)T(n)2){\displaystyle O(2^{S(n)}T(n)^{2})} classical gate are needed to simulateS(n){\displaystyle S(n)} qubit circuit with just one quantum gate. Therefore,O(2S(n)T(n)3){\displaystyle O(2^{S(n)}T(n)^{3})} classical gates are needed to simulate a quantum circuit ofS(n){\displaystyle S(n)} qubits withT(n){\displaystyle T(n)} quantum gates.[3] While there is no known way to efficiently simulate a quantum computer with a classical computer, it is possible to efficiently simulate a classical computer with a quantum computer. This is evident from the fact thatBPPBQP{\displaystyle {\mathsf {BPP\subseteq BQP}}}.[4]

Quantum query complexity

[edit]

One major advantage of using a quantum computational system instead of a classical one, is that a quantum computer may be able to give apolynomial time algorithm for some problem for which no classical polynomial time algorithm exists, but more importantly, a quantum computer may significantly decrease the calculation time for a problem that a classical computer can already solve efficiently. Essentially, a quantum computer may be able to both determine how long it will take to solve a problem, while a classical computer may be unable to do so, and can also greatly improve the computational efficiency associated with the solution to a particular problem. Quantum query complexity refers to how complex, or how many queries to the graph associated with the solution of a particular problem, are required to solve the problem. Before we delve further into query complexity, let us consider some background regarding graphing solutions to particular problems, and the queries associated with these solutions.

Query models of directed graphs

[edit]

One type of problem that quantum computing can make easier to solve are graph problems. If we are to consider the amount of queries to a graph that are required to solve a given problem, let us first consider the most common types of graphs, calleddirected graphs, that are associated with this type of computational modelling. In brief, directed graphs are graphs where all edges between vertices are unidirectional. Directed graphs are formally defined as the graphG=(N,E){\displaystyle G=(N,E)}, where N is the set of vertices, or nodes, and E is the set of edges.[10]

Adjacency matrix model

[edit]

When considering quantum computation of the solution to directed graph problems, there are two important query models to understand. First, there is theadjacency matrix model, where the graph of the solution is given by the adjacency matrix:M{0,1}anXn{\displaystyle M\in \{0,1\}a^{n\mathrm {X} n}}, withMij=1{\displaystyle M_{ij}=1}, if and only if(vi,vj)E{\displaystyle (v_{i},v_{j})\in E}.[11]

Adjacency array model

[edit]

Next, there is the slightly more complicated adjacency array model built on the idea ofadjacency lists, where every vertex,u{\displaystyle u}, is associated with an array of neighboring vertices such thatfi:[di+][n]{\displaystyle f_{i}:[d_{i}^{+}]\rightarrow [n]}, for the out-degrees of verticesdi+,...,dn+{\displaystyle d_{i}^{+},...,d_{n}^{+}}, wheren{\displaystyle n} is the minimum value of the upper bound of this model, andfi(j){\displaystyle f_{i}(j)} returns the "jth{\displaystyle j^{th}}" vertex adjacent toi{\displaystyle i}. Additionally, the adjacency array model satisfies the simple graph condition,i[n],j,j[k],jj:fi(j)fi(j){\displaystyle \forall i\in [n],j,j'\in [k],j\neq j':f_{i}(j)\neq f_{i}(j')}, meaning that there is only one edge between any pair of vertices, and the number of edges is minimized throughout the entire model (seeSpanning tree model for more background).[11]

Quantum query complexity of certain types of graph problems

[edit]

Both of the above models can be used to determine the query complexity of particular types of graphing problems, including theconnectivity,strong connectivity (a directed graph version of the connectivity model),minimum spanning tree, andsingle source shortest path models of graphs. An important caveat to consider is that the quantum complexity of a particular type of graphing problem can change based on the query model (namely either matrix or array) used to determine the solution. The following table showing the quantum query complexities of these types of graphing problems illustrates this point well.

Quantum query complexity of certain types of graph problems
ProblemMatrix modelArray model
Minimum spanning treeΘ(n3/2){\displaystyle \Theta (n^{3/2})}Θ(nm){\displaystyle \Theta ({\sqrt {nm}})}
ConnectivityΘ(n3/2){\displaystyle \Theta (n^{3/2})}Θ(n){\displaystyle \Theta (n)}
Strong connectivityΘ(n3/2){\displaystyle \Theta (n^{3/2})}Ω(nm){\displaystyle \Omega ({\sqrt {nm}})},O(nmlog(n)){\displaystyle O({\sqrt {nm\log(n)}})}
Single source shortest pathΩ(n3/2){\displaystyle \Omega (n^{3/2})},O(n3/2log2n){\displaystyle O(n^{3/2}\log ^{2}n)}Ω(nm){\displaystyle \Omega ({\sqrt {nm}})},O(nmlog2(n)){\displaystyle O({\sqrt {nm}}\log ^{2}(n))}

Notice the discrepancy between the quantum query complexities associated with a particular type of problem, depending on which query model was used to determine the complexity. For example, when the matrix model is used, the quantum complexity of the connectivity model inBig O notation isΘ(n3/2){\displaystyle \Theta (n^{3/2})}, but when the array model is used, the complexity isΘ(n){\displaystyle \Theta (n)}. Additionally, for brevity, we use the shorthandm{\displaystyle m} in certain cases, wherem=Θ(n2){\displaystyle m=\Theta (n^{2})}.[11] The important implication here is that the efficiency of the algorithm used to solve a graphing problem is dependent on the type of query model used to model the graph.

Other types of quantum computational queries

[edit]

In the query complexity model, the input can also be given as an oracle (black box). The algorithm gets information about the input only by querying the oracle. The algorithm starts in some fixed quantum state and the state evolves as it queries the oracle.

Similar to the case of graphing problems, the quantum query complexity of a black-box problem is the smallest number of queries to the oracle that are required in order to calculate the function. This makes the quantum query complexity a lower bound on the overall time complexity of a function.

Grover's algorithm

[edit]

An example depicting the power of quantum computing isGrover's algorithm for searching unstructured databases. The algorithm's quantum query complexity isO(N){\textstyle O{\left({\sqrt {N}}\right)}}, a quadratic improvement over the best possible classical query complexityO(N){\displaystyle O(N)}, which is alinear search. Grover's algorithm isasymptotically optimal; in fact, it uses at most a1+o(1){\displaystyle 1+o(1)} fraction more queries than the best possible algorithm.[12]

Deutsch-Jozsa algorithm

[edit]

TheDeutsch-Jozsa algorithm is a quantum algorithm designed to solve a toy problem with a smaller query complexity than is possible with a classical algorithm. The toy problem asks whether a functionf:{0,1}n{0,1}{\displaystyle f:\{0,1\}^{n}\rightarrow \{0,1\}} is constant or balanced, those being the only two possibilities.[2] The only way to evaluate the functionf{\displaystyle f} is to consult ablack box ororacle. A classicaldeterministic algorithm will have to check more than half of the possible inputs to be sure of whether or not the function is constant or balanced. With2n{\displaystyle 2^{n}} possible inputs, the query complexity of the most efficient classical deterministic algorithm is2n1+1{\displaystyle 2^{n-1}+1}.[2] The Deutsch-Jozsa algorithm takes advantage of quantum parallelism to check all of the elements of the domain at once and only needs to query the oracle once, making its query complexity1{\displaystyle 1}.[2]

Other theories of quantum physics

[edit]

It has been speculated that further advances in physics could lead to even faster computers. For instance, it has been shown that a non-local, but non-signaling hidden variable quantum computer could implement a search of anN-item database in at mostO(N3){\displaystyle O({\sqrt[{3}]{N}})} steps, a slight speedup overGrover's algorithm, which runs inO(N){\displaystyle O({\sqrt {N}})} steps. Note, however, that neither search method would allow quantum computers to solveNP-complete problems in polynomial time.[13] Theories ofquantum gravity, such asM-theory andloop quantum gravity, may allow even faster computers to be built. However, defining computation in these theories is an open problem due to theproblem of time; that is, within these physical theories there is currently no obvious way to describe what it means for an observer to submit input to a computer at one point in time and then receive output at a later point in time.[14][15]

See also

[edit]

Notes

[edit]
  1. ^abVazirani, Umesh V. (2002). "A survey of quantum complexity theory".Quantum Computation. Proceedings of Symposia in Applied Mathematics. Vol. 58. pp. 193–217.doi:10.1090/psapm/058/1922899.ISBN 9780821820841.ISSN 2324-7088.
  2. ^abcdNielsen, Michael A., 1974- (2010).Quantum computation and quantum information. Chuang, Isaac L., 1968- (10th anniversary ed.). Cambridge: Cambridge University Press.ISBN 978-1-107-00217-3.OCLC 665137861.{{cite book}}: CS1 maint: multiple names: authors list (link) CS1 maint: numeric names: authors list (link)
  3. ^abcdefgCleve, Richard (2000),"An Introduction to Quantum Complexity Theory",Quantum Computation and Quantum Information Theory, WORLD SCIENTIFIC, pp. 103–127,arXiv:quant-ph/9906111,Bibcode:2000qcqi.book..103C,doi:10.1142/9789810248185_0004,ISBN 978-981-02-4117-9,S2CID 958695, retrievedOctober 10, 2020
  4. ^abcdefgWatrous, John (2008-04-21). "Quantum Computational Complexity".arXiv:0804.3401 [quant-ph].
  5. ^Nielsen, p. 42
  6. ^Nielsen, Michael;Chuang, Isaac (2000).Quantum Computation and Quantum Information. Cambridge: Cambridge University Press. p. 41.ISBN 978-0-521-63503-5.OCLC 174527496.
  7. ^Nielsen, p. 201
  8. ^abBernstein, Ethan; Vazirani, Umesh (1997)."Quantum Complexity Theory".SIAM Journal on Computing.26 (5):1411–1473.CiteSeerX 10.1.1.144.7852.doi:10.1137/S0097539796300921.
  9. ^Häner, Thomas; Steiger, Damian S. (2017-11-12)."0.5 petabyte simulation of a 45-qubit quantum circuit".Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. New York, NY, USA: ACM. pp. 1–10.arXiv:1704.01127.doi:10.1145/3126908.3126947.ISBN 978-1-4503-5114-0.S2CID 3338733.
  10. ^Nykamp, D.Q."Directed Graph Definition".
  11. ^abcDurr, Christoph; Heiligman, Mark; Hoyer, Peter; Mhalla, Mehdi (January 2006). "Quantum query complexity of some graph problems".SIAM Journal on Computing.35 (6):1310–1328.arXiv:quant-ph/0401091.doi:10.1137/050644719.ISSN 0097-5397.S2CID 27736397.
  12. ^Zalka, Christof (1999-10-01)."Grover's quantum searching algorithm is optimal".Physical Review A.60 (4):2746–2751.arXiv:quant-ph/9711070.Bibcode:1999PhRvA..60.2746Z.doi:10.1103/PhysRevA.60.2746.S2CID 1542077.
  13. ^Aaronson, Scott (2005)."Quantum Computing and Hidden Variables"(PDF).Phys. Rev. A.71 (3) 032325.arXiv:quant-ph/0408035.doi:10.1103/PhysRevA.71.032325.
  14. ^Aaronson, Scott (2005). "NP-complete Problems and Physical Reality".ACM SIGACT News.2005.arXiv:quant-ph/0502072.Bibcode:2005quant.ph..2072A. See section 7 "Quantum Gravity": "[...] to anyone who wants a test or benchmark for a favorite quantum gravity theory,[author's footnote: That is, one without all the bother of making numerical predictions and comparing them to observation] let me humbly propose the following:can you define Quantum Gravity Polynomial-Time? [...] until we can say what it means for a 'user' to specify an 'input' and 'later' receive an 'output'—there is no such thing as computation, not even theoretically." (emphasis in original)
  15. ^"D-Wave Systems sells its first Quantum Computing System to Lockheed Martin Corporation". D-Wave. 25 May 2011. Archived fromthe original on 22 December 2020. Retrieved30 May 2011.

References

[edit]

External links

[edit]
General
Theorems
Quantum
communication
Quantum cryptography
Quantum algorithms
Quantum
complexity theory
Quantum
processor benchmarks
Quantum
computing models
Quantum
error correction
Physical
implementations
Quantum optics
Ultracold atoms
Spin-based
Superconducting
Quantum
programming
Background
Fundamentals
Formulations
Equations
Interpretations
Experiments
Science
Technology
Extensions
Related
Fields
Quantum
Other
Retrieved from "https://en.wikipedia.org/w/index.php?title=Quantum_complexity_theory&oldid=1312462863"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp