1 / 28

Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871

Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871. Lectures 17-19 (2011). Richard Cleve DC 2117 cleve@cs.uwaterloo.ca. Complexity class NP. Complexity classes. Recall:.

aloha
Télécharger la présentation

Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Quantum Information ProcessingQIC 710 / CS 667 / PH 767 / CO 681 / AM 871 Lectures 17-19 (2011) Richard Cleve DC 2117 cleve@cs.uwaterloo.ca

  2. Complexity class NP

  3. Complexity classes Recall: • P (polynomial time):problems solved by O(nc)-size classical circuits (decision problems and uniform circuit families) • BPP (bounded error probabilistic polynomial time): problems solved by O(nc)-size probabilistic circuits that err with probability  ¼ • BQP (bounded error quantum polynomial time):problems solved by O(nc)-size quantum circuits that err with probability  ¼ • PSPACE (polynomial space): problems solved by algorithms that use O(nc) memory.

  4. Summary of previous containments P BPP  BQP  PSPACE  EXP EXP We now consider further structure between Pand PSPACE PSPACE BQP Technically, we will restrict our attention to languages (i.e. {0,1}-valued problems) BPP P Many problems of interest can be cast in terms of languages For example, we could define FACTORING= {(x,y) : 2 zy, such thatzdividesx}

  5. is satisfiable iff there exists such that NP Define NP (non-deterministic polynomial time)as the class of languages whose positive instances have “witnesses” that can be verified in polynomial time Example: Let 3-CNF-SAT be the language consisting of all 3-CNF formulas that are satisfiable 3-CNF formula: No sub-exponential-time algorithm is known for 3-CNF-SAT But poly-time verifiable witnesses exist (namely, b1, ..., bn)

  6. 1 output bit Λ  Λ   0  Λ  Λ Λ 1 Λ Λ  Λ  Λ 1   Λ Λ 0 Λ Λ  Λ Other “logic” problems in NP • k-DNF-SAT: • CIRCUIT-SAT:  But, unlike with k-CNF-SAT, this one is known to be in P  All known algorithms exponential-time

  7. “Graph theory” problems in NP • k-COLOR:does G have a k-coloring? • k-CLIQUE:does G have a clique of size k? • HAM-PATH:does G have a Hamiltonian path? • EUL-PATH:does G have an Eulerian path?

  8. “Arithmetic” problems in NP • FACTORING={(x,y) : 2 zy, such thatzdividesx} • SUBSET-SUM:given integers x1, x2 , ..., xn, y, do there exist i1, i2 , ..., ik {1, 2,... , n} such that xi1+xi2+ ... +xik= y? • INTEGER-LINEAR-PROGRAMMING:linear programming where one seeks an integer-valued solution(its existence)

  9. P vs. NP All of the aforementioned problems have the property that they reduce to 3-CNF-SAT, in the sense that a polynomial-time algorithm for 3-CNF-SAT can be converted into a poly-time algorithm for the problem Example: algorithm for 3-COLOR algorithm for 3-CNF-SAT If a polynomial-time algorithm is discovered for 3-CNF-SAT then a polynomial-time algorithm for 3-COLOR follows And this holds for any problem XNP

  10. P vs. NP For any problem XNP algorithm for X algorithm for 3-CNF-SAT A problem that has this property is said to be NP-hard Polynomial-time algorithm any NP-Hard problem implies P=NP NP-hard problems: 3-CNF-SAT, CIRCUIT-SAT, 3-COLOR , k-CLIQUE, HAM-PATH, SUBSET-SUM, INT-LIN-PROG, … Some problems in P: k-DNF-SAT, 2-COLOR, 3-CLIQUE, EUL-PATH,...

  11. PSPACE NP co-NP 3-CNF-SAT FACTORING P FACTORING vs. NP Is FACTORINGNP-hard too? If so, then every problem in NP is solvable by a poly-time quantum algorithm! But FACTORING has not been shown to be NP-hard Moreover, there is “evidence” that it is not NP-hard: FACTORING NPco-NP If FACTORING is NP-hard then NP=co-NP

  12. FACTORING vs.co-NP FACTORING= {(x,y) : 2 zy, s.t. zdividesx} co-NP: languages whose negative instances have “witnesses” that can be verified in poly-time PSPACE NP co-NP Question: what is a good witness for the negative instances? FACTORING P Answer: the prime factorization p1, p2, ..., pm of x will work Can verify primality and compare p1, p2, ..., pm with y, all in poly-time

  13. Grover’s quantum search algorithm

  14. x1 x1 Uf xn xn y y  f(x1,...,xn) Quantum search problem Given: a black box computing f : {0,1}n {0,1} Goal: determine if f is satisfiable (if x {0,1}n s.t. f(x) = 1) In positive instances, it makes sense to also find such a satisfying assignment x Classically, using probabilistic procedures, order 2n queries are necessary to succeed—even with probability ¾ (say) Grover’s quantum algorithm that makes only O(2n) queries Query: [Grover ’96]

  15. PSPACE NP co-NP 3-CNF-SAT FACTORING P Applications of quantum search The function f could be realized as a 3-CNF formula: Alternatively, the search could be for a certificate for any problem in NP The resulting quantum algorithms appear to be quadratically more efficient than the best classical algorithms known* Subtlety in that the search space might have to be redefined to achieve this

  16. reflection 2 reflection 1  Prelude to Grover’s algorithm: two reflections = a rotation Consider two lines with intersection angle : 2 2 1 1 Net effect: rotation by angle 2, regardless of starting vector

  17. H X X X H X X X H x1 x1 x1 x1 H U0 Uf xn xn xn xn y y y  f(x1,...,xn) y  [x=0...0] Grover’s algorithm: description I Basic operations used: Uf x = (1) f(x)x Implementation? U0x = (1)[x=0...0]x Hadamard

  18. iteration 2 ... iteration 1 0 U0 Uf Uf U0 H H H H H 0  Grover’s algorithm: description II • construct state H0...0 • repeatktimes: • apply HU0HUfto state • 3. measure state, to get x{0,1}n, and check if f(x)=1 (The setting of k will be determined later)

  19. Let and A B Grover’s algorithm: analysis I Let A={x{0,1}n : f(x) = 1} and B={x{0,1}n : f(x) = 0} and N= 2n and a=|A| and b=|B| Consider the space spanned by AandB  goal is to get close to this state H0...0 Interesting case: a << N

  20. A B Grover’s algorithm: analysis II Algorithm: (HU0HUf)kH0...0 H0...0 Observation: Uf is a reflection about B: UfA =AandUfB =B Question: what is HU0H ? U0 is a reflection about H0...0 Partial proof: HU0HH0...0=HU00...0 =H(0...0) =H0...0

  21. A Since HU0HUf is a composition of two reflections, it is a rotation by 2, wheresin()=a/N  a/N More generally, it suffices to set k  (/4)N/a B Grover’s algorithm: analysis III Algorithm: (HU0HUf)kH0...0 2 2 2 H0...0 2  When a = 1, we want (2k+1)(1/N) /2 , so k  (/4)N Question: what if a is not known in advance?

  22. Unknown number of solutions 1 solution 2 solutions 3 solutions 1 success probability 0 number of iterations 100 solutions 4 solutions 6 solutions success probability very close to zero! √N/2 Choose a randomk in the range to get success probability >0.43

  23. Optimality of Grover’s algorithm

  24. U0 f U1 f U2 f f U3 f Uk |x (1)f(x)|x Assume queries are of the form Optimality of Grover’s algorithm I Theorem: any quantum search algorithm for f: {0,1}n {0,1}must make (2n) queries to f (if f is used as a black-box) Proof (of a slightly simplified version): and that a k-query algorithm is of the form |0...0 where U0, U1, U2, ..., Uk, are arbitrary unitary operations

  25. U0 U0 fr I U1 U1 I fr U2 U2 fr I U3 U3 fr I Uk Uk |0 |0 Optimality of Grover’s algorithm II Define fr: {0,1}n {0,1} as fr (x) = 1 iff x = r Consider |ψr,k versus |ψr,0 We’ll show that, averaging over all r {0,1}n, |||ψr,k  |ψr,0|| 2k/2n

  26. |ψr,i U0 I U1 I U2 fr U3 fr Uk i ki |0 Note that |ψr,k  |ψr,0 =(|ψr,k  |ψr,k1)+ (|ψr,k1  |ψr,k2)+ ... +(|ψr,1  |ψr,0) which implies |||ψr,k  |ψr,0||  |||ψr,k  |ψr,k1|| + ... + |||ψr,1  |ψr,0|| Optimality of Grover’s algorithm III Consider

  27. query i query i+1 |ψr,i query i query i+1 U0 U0 I I U1 U1 I I U2 U2 I fr U3 U3 fr fr Uk Uk |ψr,i-1 |0 |0 Therefore, |||ψr,k  |ψr,0||  Optimality of Grover’s algorithm IV |||ψr,i  |ψr,i-1|| =|2i,r|,since query only negates|r

  28. Optimality of Grover’s algorithm V Now, averaging over all r {0,1}n, (By Cauchy-Schwarz) Therefore, for somer{0,1}n, the number of queries k must be (2n), in order to distinguish fr from the all-zero function This completes the proof

More Related