1 Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 Lectures 17-19.

Slides:



Advertisements
Similar presentations
Complexity Theory Lecture 6
Advertisements

Lecture 21 NP-complete problems
Complexity class NP Is the class of languages that can be verified by a polynomial-time algorithm. L = { x in {0,1}* | there exists a certificate y with.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
02/01/11CMPUT 671 Lecture 11 CMPUT 671 Hard Problems Winter 2002 Joseph Culberson Home Page.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
CS151 Complexity Theory Lecture 7 April 20, 2004.
Graphs 4/16/2017 8:41 PM NP-Completeness.
NP-Complete Problems Problems in Computer Science are classified into
Analysis of Algorithms CS 477/677
NP-Completeness (2) NP-Completeness Graphs 4/17/2017 6:25 AM x x x x x
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Chapter 11: Limitations of Algorithmic Power
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Complexity ©D. Moshkovitz 1 And Randomized Computations The Polynomial Hierarchy.
1 Recap (I) n -qubit quantum state: 2 n -dimensional unit vector Unitary op: 2 n  2 n linear operation U such that U † U = I (where U † denotes the conjugate.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 22 Instructor: Paul Beame.
Quantum Algorithms II Andrew C. Yao Tsinghua University & Chinese U. of Hong Kong.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
1 Introduction to Quantum Information Processing QIC 710 / CS 678 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 / QNC 3129 Lectures.
MCS312: NP-completeness and Approximation Algorithms
CSCE350 Algorithms and Data Structure
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
October 1 & 3, Introduction to Quantum Computing Lecture 2 of 2 Richard Cleve David R. Cheriton School of Computer Science Institute for Quantum.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Course.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
October 1 & 3, Introduction to Quantum Computing Lecture 1 of 2 Introduction to Quantum Computing Lecture 1 of 2
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 2117 Lecture.
CSC401 – Analysis of Algorithms Chapter 13 NP-Completeness Objectives: Introduce the definitions of P and NP problems Introduce the definitions of NP-hard.
1 Design and Analysis of Algorithms Yoram Moses Lecture 11 June 3, 2010
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
1. 2 Lecture outline Basic definitions: Basic definitions: P, NP complexity classes P, NP complexity classes the notion of a certificate. the notion of.
Lecture 6 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
The Computational Complexity of Satisfiability Lance Fortnow NEC Laboratories America.
Design and Analysis of Algorithms - Chapter 101 Our old list of problems b Sorting b Searching b Shortest paths in a graph b Minimum spanning tree b Primality.
NP-Complete Problems Algorithm : Design & Analysis [23]
1 Introduction to Quantum Information Processing CS 667 / Phys 767 / C&O 681 Richard Cleve DC 2117 Lecture 15 (2008)
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Lecture.
Fundamentals of Informatics Lecture 14 Intractability and NP-completeness Bas Luttik.
Quantum Computing MAS 725 Hartmut Klauck NTU
Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
NP Completeness Piyush Kumar. Today Reductions Proving Lower Bounds revisited Decision and Optimization Problems SAT and 3-SAT P Vs NP Dealing with NP-Complete.
Young CS 331 D&A of Algo. NP-Completeness1 NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
Complexity ©D.Moshkovits 1 2-Satisfiability NOTE: These slides were created by Muli Safra, from OPICS/sat/)
Lecture. Today Problem set 9 out (due next Thursday) Topics: –Complexity Theory –Optimization versus Decision Problems –P and NP –Efficient Verification.
TU/e Algorithms (2IL15) – Lecture 9 1 NP-Completeness NOT AND OR AND NOT AND.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
34.NP Completeness. Computer Theory Lab. Chapter 34P.2.
TU/e Algorithms (2IL15) – Lecture 10 1 NP-Completeness, II.
P & NP.
Chapter 10 NP-Complete Problems.
Richard Cleve DC 2117 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Lecture.
Lecture 2-2 NP Class.
Lecture 5 NP Class.
NP-Completeness Yin Tat Lee
NP-Completeness Yin Tat Lee
Richard Cleve DC 2117 Introduction to Quantum Information Processing CS 667 / PH 767 / CO 681 / AM 871 Lecture 18 (2009) Richard.
CSE 6408 Advanced Algorithms.
CSE 589 Applied Algorithms Spring 1999
Presentation transcript:

1 Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 Lectures (2011)

2 Complexity class NP

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

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

5 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 is satisfiable iff there exists such that But poly-time verifiable witnesses exist (namely, b 1,..., b n ) 3-CNF formula: No sub-exponential-time algorithm is known for 3-CNF-SAT

6 Other “logic” problems in NP k -DNF-SAT: CIRCUIT-SAT:       Λ Λ  Λ Λ Λ  Λ Λ  Λ Λ Λ Λ Λ Λ Λ  output bit  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 that z divides x} SUBSET-SUM: given integers x 1, x 2,..., x n, y, do there exist i 1, i 2,..., i k  { 1, 2,..., n} such that x i 1 + x i x i k = y ? INTEGER-LINEAR-PROGRAMMING: linear programming where one seeks an integer-valued solution (its existence)

9 P vs. NP If a polynomial-time algorithm is discovered for 3-CNF-SAT then a polynomial-time algorithm for 3-COLOR follows 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 algorithm for 3-CNF-SAT algorithm for 3-COLOR Example: And this holds for any problem X  NP

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

11 FACTORING vs. NP 3-CNF-SAT FACTORING P NP PSPACE co-NP Is FACTORING NP-hard too? 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 so, then every problem in NP is solvable by a poly-time quantum algorithm! If FACTORING is NP-hard then NP = co-NP

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

13 Grover’s quantum search algorithm

14 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 2 n queries are necessary to succeed—even with probability ¾ (say) x1x1 xnxn yy xnxn x1x1  y  f(x 1,...,x n )  UfUf Grover’s quantum algorithm that makes only O(  2 n ) queries Query: [Grover ’96]

15 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 3-CNF-SAT FACTORING P NP PSPACE co-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 Prelude to Grover’s algorithm: two reflections = a rotation  11 22 11 22 Consider two lines with intersection angle  : reflection 1 reflection 2 Net effect: rotation by angle 2 , regardless of starting vector

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

18 Grover’s algorithm: description II 1.construct state H   2.repeat k times: apply  H U 0 H U f to state 3. measure state, to get x  {0,1} n, and check if f (x) =1 00 00   UfUf HHU0U0 HUfUf HU0U0 H iteration 1 iteration 2... (The setting of k will be determined later)

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

20 Grover’s algorithm: analysis II Algorithm: (  H U 0 H U f ) k H   BB AA H   Observation: U f is a reflection about  B  : U f  A  =   A  and U f  B  =  B  Question: what is  H U 0 H ? Partial proof:  H U 0 H H   =  H U 0   =  H (    ) = H   U 0 is a reflection about H  

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

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

23 Optimality of Grover’s algorithm

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

25 Optimality of Grover’s algorithm II Define f r : {0,1} n  {0,1} as f r ( x ) = 1 iff x = r frfr U0U0 U1U1 U2U2 U3U3 UkUk frfr frfr frfr |0|0 | ψ r,k  Consider versus I U0U0 U1U1 U2U2 U3U3 UkUk III |0|0 | ψ r, 0  We’ll show that, averaging over all r  {0,1} n, || | ψ r,k   | ψ r, 0  ||  2 k /  2 n

26 Optimality of Grover’s algorithm III Consider I U0U0 U1U1 U2U2 U3U3 UkUk Ifrfr frfr |0|0 | ψ r,i  k  ik  i i |ψ r,k   |ψ r,0  = ( |ψ r,k   |ψ r,k  1  ) + ( |ψ r,k  1   |ψ r,k  2  ) ( |ψ r,1   |ψ r,0  ) Note that || |ψ r,k   |ψ r,0  ||  || |ψ r,k   |ψ r,k  1  || || |ψ r,1   |ψ r,0  || which implies

27 Optimality of Grover’s algorithm IV I U0U0 U1U1 U2U2 U3U3 UkUk Ifrfr frfr |0|0 | ψ r,i  query i query i +1 || | ψ r,i   | ψ r,i -1  || = | 2  i,r |, since query only negates | r  I U0U0 U1U1 U2U2 U3U3 UkUk IIfrfr |0|0 query i query i +1 | ψ r,i-1  Therefore, || | ψ r,k   | ψ r, 0  || 

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