Introduction to Quantum Algorithms Part I: Quantum Gates and Simon s Algorithm

Size: px
Start display at page:

Download "Introduction to Quantum Algorithms Part I: Quantum Gates and Simon s Algorithm"

Transcription

1 Part I: Quantum Gates and Simon s Algorithm Martin Rötteler NEC Laboratories America, Inc. 4 Independence Way, Suite 00 Princeton, NJ 08540, U.S.A. International Summer School on Quantum Information, Max-Planck-Institut für Physik komplexer Systeme Dresden, August 3, 005

2 Overview Today: Introduction to qubits, quantum gates, and circuits. Appetizer: Two-bit problem where quantum beats classical! The power of quantum computing: Simon s algorithm Basic principles used: Computing in superposition Constructive/destructive interference Tomorrow: Shor s algorithm and Grover s algorithm

3 Basics: Quantum Information Quantum bit (qubit) A qubit is a normalized state in C : α 0 + β, α, β C, where α + β =. Quantum register A quantum register of length n is a collection of qubits q,..., q n. Possible operations / dynamics A quantum computer can perform unitary operations on quantum registers measure single qubits

4 Basics: Quantum Information Quantum bit (qubit) A qubit is a normalized state in C : α 0 + β, α, β C, where α + β =. Quantum register A quantum register of length n is a collection of qubits q,..., q n. Possible operations / dynamics A quantum computer can perform unitary operations on quantum registers measure single qubits

5 Basics: Quantum Information Quantum bit (qubit) A qubit is a normalized state in C : α 0 + β, α, β C, where α + β =. Quantum register A quantum register of length n is a collection of qubits q,..., q n. Possible operations / dynamics A quantum computer can perform unitary operations on quantum registers measure single qubits

6 Bits vs Qubits One classical bit One quantum bit (qubit) is in one of the basis states = High = = Low = 0 is in a coherent superposition Ψ = α + β of the basis states, Boolean state space: IF = {, } = {0, } consisting of elements Quantum state space H = C : { } α + β : α + β = of dimensions

7 Bits vs Qubits One classical bit One quantum bit (qubit) is in one of the basis states = High = = Low = 0 is in a coherent superposition Ψ = α + β of the basis states, Boolean state space: IF = {, } = {0, } consisting of elements Quantum state space H = C : { } α + β : α + β = of dimensions

8 Two Bits vs Two Qubits Two classical bits Two bits can hold either of the 4 states in the state space {0, } {0, } = {0, } = {,,, }. Two coupled qubits A register of two coupled qubits can hold any of the states Ψ = α + β + γ + δ in the state space H H = C C. Two separate qubits Two separate qubits can hold any of the product states Ψ Ψ = (α + β ) (α + β ) in the state space H H C C.

9 Two Bits vs Two Qubits Two classical bits Two bits can hold either of the 4 states in the state space {0, } {0, } = {0, } = {,,, }. Two coupled qubits A register of two coupled qubits can hold any of the states Ψ = α + β + γ + δ in the state space H H = C C. Two separate qubits Two separate qubits can hold any of the product states Ψ Ψ = (α + β ) (α + β ) in the state space H H C C.

10 Two Bits vs Two Qubits Two classical bits Two bits can hold either of the 4 states in the state space {0, } {0, } = {0, } = {,,, }. Two coupled qubits A register of two coupled qubits can hold any of the states Ψ = α + β + γ + δ in the state space H H = C C. Two separate qubits Two separate qubits can hold any of the product states Ψ Ψ = (α + β ) (α + β ) in the state space H H C C.

11 Many Bits vs Many Qubits Classical register of n bits holds one of the n states ɛ = ɛ ɛ n of the state space {0, } n = {0, } {0, }. Quantum register of n qubits can hold any coherent superposition Ψ = α ɛ ɛ n ɛ ɛ ɛ n ɛ {0,} n in the n dimensional space H n = C C C = C n. Product states of n qubits can only hold a product state Ψ Ψ Ψ n = (α + β ) (α n + β n ) (thus, only linear scaling of system and dimension)

12 Many Bits vs Many Qubits Classical register of n bits holds one of the n states ɛ = ɛ ɛ n of the state space {0, } n = {0, } {0, }. Quantum register of n qubits can hold any coherent superposition Ψ = α ɛ ɛ n ɛ ɛ ɛ n ɛ {0,} n in the n dimensional space H n = C C C = C n. Product states of n qubits can only hold a product state Ψ Ψ Ψ n = (α + β ) (α n + β n ) (thus, only linear scaling of system and dimension)

13 Many Bits vs Many Qubits Classical register of n bits holds one of the n states ɛ = ɛ ɛ n of the state space {0, } n = {0, } {0, }. Quantum register of n qubits can hold any coherent superposition Ψ = α ɛ ɛ n ɛ ɛ ɛ n ɛ {0,} n in the n dimensional space H n = C C C = C n. Product states of n qubits can only hold a product state Ψ Ψ Ψ n = (α + β ) (α n + β n ) (thus, only linear scaling of system and dimension)

14 Our Model of Measurements von Neumann measurements of one qubit First, specify a basis B for C, e. g. { 0, }. The outcome of measuring the state α 0 + β is described by a random variable X. The probabilities to observe 0 or are given by Pr(X = 0) = α, Pr(X = ) = β. Measuring a state in C n in an orthonormal basis B Recall: Orthonormal Basis of C N B = { ψ i : i =,..., N}, where ψ i ψ j = δ i,j Let ϕ = N i= α i i, where N i= α i =. Then measuring ϕ in the basis B gives random variable X B taking values,..., N: Pr(X B = ) = ψ ϕ,..., Pr(X B = N) = ψ N ϕ.

15 Our Model of Measurements von Neumann measurements of one qubit First, specify a basis B for C, e. g. { 0, }. The outcome of measuring the state α 0 + β is described by a random variable X. The probabilities to observe 0 or are given by Pr(X = 0) = α, Pr(X = ) = β. Measuring a state in C n in an orthonormal basis B Recall: Orthonormal Basis of C N B = { ψ i : i =,..., N}, where ψ i ψ j = δ i,j Let ϕ = N i= α i i, where N i= α i =. Then measuring ϕ in the basis B gives random variable X B taking values,..., N: Pr(X B = ) = ψ ϕ,..., Pr(X B = N) = ψ N ϕ.

16 Two Important Types of Operations Local operations N U = U U.,.. where U U(). U Conditioned operation: the controlled NOT (CNOT) = 0 = 0

17 Two Important Types of Operations Local operations N U = U U.,.. where U U(). U Conditioned operation: the controlled NOT (CNOT) = 0 = 0

18 Notation for Quantum Gates Gate in Feynman notation Corresponding transformation H U u u u u

19 Notation for Quantum Gates Gate in Feynman notation Corresponding transformation H U u u u u

20 Two Constructions for Matrices Tensor product ( ) ( ) T T = (T I)(I T ) = I T classically parallel T T quantum parallel = independent dynamics classical: expensive, quantum: easy, since local operations Direct sum T T = (T I)(I T ) = ( ) I T conditional operation T T CASE operator = coupled dynamics classical: easy, quantum: difficult, since entangled

21 Two Constructions for Matrices Tensor product ( ) ( ) T T = (T I)(I T ) = I T classically parallel T T quantum parallel = independent dynamics classical: expensive, quantum: easy, since local operations Direct sum T T = (T I)(I T ) = ( ) I T conditional operation T T CASE operator = coupled dynamics classical: easy, quantum: difficult, since entangled

22 The Hadamard Transform The Hadamard transform on one qubit H = ( ) = ( ) xy x y. x,y IF The Hadamard transform on n qubits The n-fold tensor product of H is given by H n = n/ where x y := n i= x iy i IF. x,y IF n ( ) x y x y,

23 The Hadamard Transform The Hadamard transform on one qubit H = ( ) = ( ) xy x y. x,y IF The Hadamard transform on n qubits The n-fold tensor product of H is given by H n = n/ where x y := n i= x iy i IF. x,y IF n ( ) x y x y,

24 The Hadamard Transform Properties of the Hadamard transform By definition H is the following map: 0 ( 0 + ) ( 0 ) Identity involving the Pauli matrices: H σ x H = σ z Identity involving the CNOT gate: H H H H =

25 The Hadamard Transform Properties of the Hadamard transform By definition H is the following map: 0 ( 0 + ) ( 0 ) Identity involving the Pauli matrices: H σ x H = σ z Identity involving the CNOT gate: H H H H =

26 The Hadamard Transform Properties of the Hadamard transform By definition H is the following map: 0 ( 0 + ) ( 0 ) Identity involving the Pauli matrices: H σ x H = σ z Identity involving the CNOT gate: H H H H =

27 Quantum Gates and Circuits Elementary quantum gates.. U (i) = U.. i CNOT (i,j) =..... i. j Universal set of gates Theorem (Barenco et al., 995): U( n ) = U (i), CNOT (i,j) : i, j =,..., n, i j Quantum gates: main problem Find efficient factorizations for given U U( n )!

28 Quantum Gates and Circuits Elementary quantum gates.. U (i) = U.. i CNOT (i,j) =..... i. j Universal set of gates Theorem (Barenco et al., 995): U( n ) = U (i), CNOT (i,j) : i, j =,..., n, i j Quantum gates: main problem Find efficient factorizations for given U U( n )!

29 Quantum Gates and Circuits Elementary quantum gates.. U (i) = U.. i CNOT (i,j) =..... i. j Universal set of gates Theorem (Barenco et al., 995): U( n ) = U (i), CNOT (i,j) : i, j =,..., n, i j Quantum gates: main problem Find efficient factorizations for given U U( n )!

30 Different Levels of Abstraction Unitary matrix U = 0 C A Factorized unitary matrix U= (I H ) (I σ x ) (H I) 0 ( )0 I B@ CA B@ CA = σ x Quantum circuit H H

31 Different Levels of Abstraction Unitary matrix U = 0 C A Factorized unitary matrix U= (I H ) (I σ x ) (H I) 0 ( )0 I B@ CA B@ CA = σ x Quantum circuit H H

32 Different Levels of Abstraction Unitary matrix U = 0 C A Factorized unitary matrix U= (I H ) (I σ x ) (H I) 0 ( )0 I B@ CA B@ CA = σ x Quantum circuit H H

33 Basic Facts About Boolean Functions Boolean functions Any function f : {0, } n {0, } m, where n is the number of input bits and m the number of output bits is said to be a Boolean function. Any Boolean function can be represented by a truth table. If f = (f,..., f m ), this is a matrix of size n m where in column i we have the list of values f i (x,..., x n ), where x j {0, } for j =,..., n. The number of Boolean functions There are n Boolean functions f : {0, } n {0, }, i. e., functions with n inputs and one output (since we can assign an arbitrary value for each of the n inputs). There are mn Boolean functions f : {0, } n {0, } m with n inputs and m outputs.

34 Basic Facts About Boolean Functions Boolean functions Any function f : {0, } n {0, } m, where n is the number of input bits and m the number of output bits is said to be a Boolean function. Any Boolean function can be represented by a truth table. If f = (f,..., f m ), this is a matrix of size n m where in column i we have the list of values f i (x,..., x n ), where x j {0, } for j =,..., n. The number of Boolean functions There are n Boolean functions f : {0, } n {0, }, i. e., functions with n inputs and one output (since we can assign an arbitrary value for each of the n inputs). There are mn Boolean functions f : {0, } n {0, } m with n inputs and m outputs.

35 Universal Gates: Classical Computing Connectives x x x x NOT gate: x x 0 0 AND gate: x x x x x x x x OR gate: NAND gate: Theorem Any deterministic classical circuit and thereby any deterministic classical computation can be realized by using NAND gates only. Any probabilistic computation can be realized using NAND gates and in addition one gate which realizes a fair coin flip.

36 Universal Gates: Classical Computing Connectives x x x x NOT gate: x x 0 0 AND gate: x x x x x x x x OR gate: NAND gate: Theorem Any deterministic classical circuit and thereby any deterministic classical computation can be realized by using NAND gates only. Any probabilistic computation can be realized using NAND gates and in addition one gate which realizes a fair coin flip.

37 Loading More Structure Onto Bits Finite field of two elements The set {0, } can be equipped with a multiplication and an addition such that the field axioms hold. Truth tables for these operations: x y x y x y x y Then ({0, },, ) becomes a field consisting of two elements only, also denoted by IF. A finite field with n elements exists if and only if n is a prime power. Important identity: ( ) x y = ( ) x ( ) y We can also rewrite CNOT: x y x x y

38 Loading More Structure Onto Bits Finite field of two elements The set {0, } can be equipped with a multiplication and an addition such that the field axioms hold. Truth tables for these operations: x y x y x y x y Then ({0, },, ) becomes a field consisting of two elements only, also denoted by IF. A finite field with n elements exists if and only if n is a prime power. Important identity: ( ) x y = ( ) x ( ) y We can also rewrite CNOT: x y x x y

39 Loading More Structure Onto Bits Finite field of two elements The set {0, } can be equipped with a multiplication and an addition such that the field axioms hold. Truth tables for these operations: x y x y x y x y Then ({0, },, ) becomes a field consisting of two elements only, also denoted by IF. A finite field with n elements exists if and only if n is a prime power. Important identity: ( ) x y = ( ) x ( ) y We can also rewrite CNOT: x y x x y

40 Loading More Structure Onto Bits Finite field of two elements The set {0, } can be equipped with a multiplication and an addition such that the field axioms hold. Truth tables for these operations: x y x y x y x y Then ({0, },, ) becomes a field consisting of two elements only, also denoted by IF. A finite field with n elements exists if and only if n is a prime power. Important identity: ( ) x y = ( ) x ( ) y We can also rewrite CNOT: x y x x y

41 Loading More Structure Onto Bits Finite field of two elements The set {0, } can be equipped with a multiplication and an addition such that the field axioms hold. Truth tables for these operations: x y x y x y x y Then ({0, },, ) becomes a field consisting of two elements only, also denoted by IF. A finite field with n elements exists if and only if n is a prime power. Important identity: ( ) x y = ( ) x ( ) y We can also rewrite CNOT: x y x x y

42 Reversible Computation of Boolean Functions Basic issue of reversible computing Suppose, we want to compute a function f : {0, } n {0, } m that is not reversible. How can we do this? One possible solution Define a new Boolean function which takes n + m inputs and n + m outputs as follows: F(x, y) := (x, y f (x)) Properties of F(x, y) On the special inputs (x, 0), where x {0, } n we obtain that F(x, 0) = (x, f (x)). Furthermore, F is reversible. Theorem (Bennett): If f can be computed using K gates, then F can be computed using K + m gates.

43 Reversible Computation of Boolean Functions Basic issue of reversible computing Suppose, we want to compute a function f : {0, } n {0, } m that is not reversible. How can we do this? One possible solution Define a new Boolean function which takes n + m inputs and n + m outputs as follows: F(x, y) := (x, y f (x)) Properties of F(x, y) On the special inputs (x, 0), where x {0, } n we obtain that F(x, 0) = (x, f (x)). Furthermore, F is reversible. Theorem (Bennett): If f can be computed using K gates, then F can be computed using K + m gates.

44 Reversible Computation of Boolean Functions Basic issue of reversible computing Suppose, we want to compute a function f : {0, } n {0, } m that is not reversible. How can we do this? One possible solution Define a new Boolean function which takes n + m inputs and n + m outputs as follows: F(x, y) := (x, y f (x)) Properties of F(x, y) On the special inputs (x, 0), where x {0, } n we obtain that F(x, 0) = (x, f (x)). Furthermore, F is reversible. Theorem (Bennett): If f can be computed using K gates, then F can be computed using K + m gates.

45 Universal Gates: Reversible Computing The Toffoli gate TOF x y z x y z x y z x y z x y Theorem (Toffoli, 98) Any reversible computation can be realized by using TOF gates and ancilla (auxiliary) bits which are initialized to 0.

46 Universal Gates: Reversible Computing The Toffoli gate TOF x y z x y z x y z x y z x y Theorem (Toffoli, 98) Any reversible computation can be realized by using TOF gates and ancilla (auxiliary) bits which are initialized to 0.

47 Reversible Computation of Boolean Functions More features of the reversible embedding F(x, y) Possibly, there are reversible functions that compute G(x, 0) = (f (x), junk(x)) and use use fewer than n + m bits. Actually, only log (max c y ) many extra bits are needed to make f reversible, where c y = {x : f (x) = y} are the sizes of the collisions of f. The advantage of F is its uniform definition. Computing a function by a quantum circuit Any function f : {0, } n {0, } m can be computed by means of the reversible function F : {0, } n+m {0, } n+m. Hence we can compute f also by a quantum circuit U f x y = x y f (x).

48 Reversible Computation of Boolean Functions More features of the reversible embedding F(x, y) Possibly, there are reversible functions that compute G(x, 0) = (f (x), junk(x)) and use use fewer than n + m bits. Actually, only log (max c y ) many extra bits are needed to make f reversible, where c y = {x : f (x) = y} are the sizes of the collisions of f. The advantage of F is its uniform definition. Computing a function by a quantum circuit Any function f : {0, } n {0, } m can be computed by means of the reversible function F : {0, } n+m {0, } n+m. Hence we can compute f also by a quantum circuit U f x y = x y f (x).

49 A Two-Bit Problem The Deutsch Jozsa problem (most simple case) Given a Boolean function f : {0, } {0, }. Decide whether the property f (0) = f () holds or not. The four possible functions x f (x) x f (x) x f (x) x f (x) Observation From querying the function only on one input, we cannot determine whether f (0) = f () with certainty. E. g., if the answer is f (0) = 0, it could be the first or third function. On the other hand, two queries determine the function completely. What is the quantum query complexity?

50 A Two-Bit Problem The Deutsch Jozsa problem (most simple case) Given a Boolean function f : {0, } {0, }. Decide whether the property f (0) = f () holds or not. The four possible functions x f (x) x f (x) x f (x) x f (x) Observation From querying the function only on one input, we cannot determine whether f (0) = f () with certainty. E. g., if the answer is f (0) = 0, it could be the first or third function. On the other hand, two queries determine the function completely. What is the quantum query complexity?

51 A Two-Bit Problem The Deutsch Jozsa problem (most simple case) Given a Boolean function f : {0, } {0, }. Decide whether the property f (0) = f () holds or not. The four possible functions x f (x) x f (x) x f (x) x f (x) Observation From querying the function only on one input, we cannot determine whether f (0) = f () with certainty. E. g., if the answer is f (0) = 0, it could be the first or third function. On the other hand, two queries determine the function completely. What is the quantum query complexity?

52 The Phase Kick-Back Trick Computing the function into the phase x 0? U f? Computing the effect for different inputs ( ) 0 f (x) f (x) x x ( ) 0 = x ( ) f (x) = ( ) f (x) x ( ) 0

53 The Phase Kick-Back Trick Computing the function into the phase x 0? U f? Computing the effect for different inputs ( ) 0 f (x) f (x) x x ( ) 0 = x ( ) f (x) = ( ) f (x) x ( ) 0

54 The Phase Kick-Back Trick Computing the function into the phase x 0? U f? Computing the effect for different inputs ( ) 0 f (x) f (x) x x ( ) 0 = x ( ) f (x) = ( ) f (x) x ( ) 0

55 The Phase Kick-Back Trick Computing the function into the phase x 0? U f? Computing the effect for different inputs ( ) 0 f (x) f (x) x x ( ) 0 = x ( ) f (x) = ( ) f (x) x ( ) 0

56 The Phase Kick-Back Trick Computing the function into the phase x 0 U f ( ) f (x) x 0 Computing the effect for different inputs ( ) 0 f (x) f (x) x x ( ) 0 = x ( ) f (x) = ( ) f (x) x ( ) 0

57 The Phase Kick-Back Trick The quantum algorithm 0 H H Phase kick-back in superposition H U f ( ) f (0) 0 = U f H? H? 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0

58 The Phase Kick-Back Trick The quantum algorithm 0 H H Phase kick-back in superposition H U f ( ) f (0) 0 = U f H? H? 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0

59 The Phase Kick-Back Trick The quantum algorithm 0 H H Phase kick-back in superposition H U f ( ) f (0) 0 = U f H? H? 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0

60 The Phase Kick-Back Trick The quantum algorithm 0 H H Phase kick-back in superposition H U f ( ) f (0) 0 = U f H? H? 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0

61 The Phase Kick-Back Trick The quantum algorithm 0 H H Phase kick-back in superposition H U f ( ) f (0) 0 = U f H? H? 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0

62 The Phase Kick-Back Trick The quantum algorithm 0 H H f (0) f () H U f H Phase kick-back in superposition H U f ( ) f (0) 0 = 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0 Hence, we from measuring the first qubit in the computational basis, we obtain the answer f (0) f () which reveals whether f (0) = f () or not.

63 The Phase Kick-Back Trick The quantum algorithm 0 H H f (0) f () H U f H Phase kick-back in superposition H U f ( ) f (0) 0 = 0 + ( ) f () ( ) f (0) 0 + ( ) f (0) f () H ( ) f (0) f (0) f () 0 0 Hence, we from measuring the first qubit in the computational basis, we obtain the answer f (0) f () which reveals whether f (0) = f () or not.

64 What can be computed? The strong Church-Turing thesis Any reasonable algorithmic process carried out by a physical machine can be efficiently simulated by a probabilistic Turing machine. The slow-down for this is at most polynomial. Efficient computations Given a problem of size n, an algorithm is said to have a polynomial running time if the number of steps it needs to find a solution is bounded by p(n), where p is a polynomial. How do quantum algorithms fit in? They can solve problems which are believed to be intractable for classical computers. There are physically reasonable algorithmic processes carried which seem to be hard to simulate for any classical probabilistic Turing machine.

65 What can be computed? The strong Church-Turing thesis Any reasonable algorithmic process carried out by a physical machine can be efficiently simulated by a probabilistic Turing machine. The slow-down for this is at most polynomial. Efficient computations Given a problem of size n, an algorithm is said to have a polynomial running time if the number of steps it needs to find a solution is bounded by p(n), where p is a polynomial. How do quantum algorithms fit in? They can solve problems which are believed to be intractable for classical computers. There are physically reasonable algorithmic processes carried which seem to be hard to simulate for any classical probabilistic Turing machine.

66 What can be computed? The strong Church-Turing thesis Any reasonable algorithmic process carried out by a physical machine can be efficiently simulated by a probabilistic Turing machine. The slow-down for this is at most polynomial. Efficient computations Given a problem of size n, an algorithm is said to have a polynomial running time if the number of steps it needs to find a solution is bounded by p(n), where p is a polynomial. How do quantum algorithms fit in? They can solve problems which are believed to be intractable for classical computers. There are physically reasonable algorithmic processes carried which seem to be hard to simulate for any classical probabilistic Turing machine.

67 Computational Model: Quantum Circuits Example: quantum circuit Quantum circuit and corresponding directed acyclic graph. x 4 G G 6 U U 6 x 3 U 3 U x U 5 U 4 x G3 G G 5 G4 Uniform families of quantum circuits A family F := {C n U( n ) n IN} of quantum circuits is called uniform if there exists a polynomial-time deterministic Turing machine which computes n C n, where n is the problem size. Theorem (Yao 93) Uniform families of quantum circuits and quantum Turing machines (see Bernstein/Vazirani 93) are equivalent. y 4 y 3 y y

68 Computational Model: Quantum Circuits Example: quantum circuit Quantum circuit and corresponding directed acyclic graph. x 4 G G 6 U U 6 x 3 U 3 U x U 5 U 4 x G3 G G 5 G4 Uniform families of quantum circuits A family F := {C n U( n ) n IN} of quantum circuits is called uniform if there exists a polynomial-time deterministic Turing machine which computes n C n, where n is the problem size. Theorem (Yao 93) Uniform families of quantum circuits and quantum Turing machines (see Bernstein/Vazirani 93) are equivalent. y 4 y 3 y y

69 Computational Model: Quantum Circuits Example: quantum circuit Quantum circuit and corresponding directed acyclic graph. x 4 G G 6 U U 6 x 3 U 3 U x U 5 U 4 x G3 G G 5 G4 Uniform families of quantum circuits A family F := {C n U( n ) n IN} of quantum circuits is called uniform if there exists a polynomial-time deterministic Turing machine which computes n C n, where n is the problem size. Theorem (Yao 93) Uniform families of quantum circuits and quantum Turing machines (see Bernstein/Vazirani 93) are equivalent. y 4 y 3 y y

70 Asymptotics of Functions Landau notation We use Landau notation to compare the asymptotics of two functions f, g : IN C. Typically, f is the running time for an algorithm for input of size n and g is another function. f (n) = O(g(n)) means that for some m there exists a constant c > 0, such that f (n) cg(n) for all n m. f (n) = Ω(g(n)) means that for some m there exists a constant c > 0, such that f (n) cg(n) for all n m. f (n) = Θ(g(n)) means that both f (n) = O(g(n)) and f (n) = Ω(g(n)) hold. Example Let f (n) be number of operations needed to compute a classical FFT of a vector of length n. Then f (n) = O(n log(n)).

71 Asymptotics of Functions Landau notation We use Landau notation to compare the asymptotics of two functions f, g : IN C. Typically, f is the running time for an algorithm for input of size n and g is another function. f (n) = O(g(n)) means that for some m there exists a constant c > 0, such that f (n) cg(n) for all n m. f (n) = Ω(g(n)) means that for some m there exists a constant c > 0, such that f (n) cg(n) for all n m. f (n) = Θ(g(n)) means that both f (n) = O(g(n)) and f (n) = Ω(g(n)) hold. Example Let f (n) be number of operations needed to compute a classical FFT of a vector of length n. Then f (n) = O(n log(n)).

72 Computational Complexity Measuring the problem size Usually algorithms can use different kinds of resources. Typical examples for resources which can be measured are time, space, depth, and queries. The resources needed are always measured as a function of the input size. Examples Consider the problem of multiplying two n-bit numbers. Clearly, this can be done in O(n ) additions and multiplications using the school method. The best known method uses O(n log n log log n) operations. The converse problem of factoring an n-bit number N into its prime factors is much harder. The currently best known algorithm needs exp ( c(log N) /3 (log log N) /3) operations.

73 Computational Complexity Measuring the problem size Usually algorithms can use different kinds of resources. Typical examples for resources which can be measured are time, space, depth, and queries. The resources needed are always measured as a function of the input size. Examples Consider the problem of multiplying two n-bit numbers. Clearly, this can be done in O(n ) additions and multiplications using the school method. The best known method uses O(n log n log log n) operations. The converse problem of factoring an n-bit number N into its prime factors is much harder. The currently best known algorithm needs exp ( c(log N) /3 (log log N) /3) operations.

74 Query Problems Query complexity and black boxes Instead of counting the number of operations we can count the number of queries to f in order to solve the problem. Often upper and lower bounds can be shown for the query complexity model only. Black-box model: we assume that we are given a function f but cannot analyze how f is actually implemented. Most real-world problems are actually white-box, for example FACTORING, GRAPH-ISO, etc. Lower bounds in the white-box problems are typically very weak. Examples Black box problems: Simon s algorithm, Grover s algorithm. White-box problems: Factoring and dlog, phase estimation.

75 Query Problems Query complexity and black boxes Instead of counting the number of operations we can count the number of queries to f in order to solve the problem. Often upper and lower bounds can be shown for the query complexity model only. Black-box model: we assume that we are given a function f but cannot analyze how f is actually implemented. Most real-world problems are actually white-box, for example FACTORING, GRAPH-ISO, etc. Lower bounds in the white-box problems are typically very weak. Examples Black box problems: Simon s algorithm, Grover s algorithm. White-box problems: Factoring and dlog, phase estimation.

76 Simon s Problem The XOR bit mask problem We consider only functions f : {0, } n {0, } n for which there exists s {0, } n such that x {0, } n we have f (x) = f (x s), x, y {0, } n we have that if x y s, then f (x) f (y). The task is to find the hidden string s. Example where f : {0, } 3 {0, } Here s = (0,, ).

77 Simon s Problem The XOR bit mask problem We consider only functions f : {0, } n {0, } n for which there exists s {0, } n such that x {0, } n we have f (x) = f (x s), x, y {0, } n we have that if x y s, then f (x) f (y). The task is to find the hidden string s. Example where f : {0, } 3 {0, } Here s = (0,, ).

78 Simon s Problem The XOR bit mask problem We consider only functions f : {0, } n {0, } n for which there exists s {0, } n such that x {0, } n we have f (x) = f (x s), x, y {0, } n we have that if x y s, then f (x) f (y). The task is to find the hidden string s. Example where f : {0, } 3 {0, } Here s = (0,, ).

79 Simon s Problem Some comments about Simon s problem There is some similarity to the Deutsch-Jozsa problem, however, here the task is not to distinguish between two cases (constant vs balanced) but between exponentially many cases (one for each unknown string s). Problem might seem artificial, but Shor s algorithm has the same underlying idea. Note: This is a promise problem! Problem gave the first strong (polynomial vs exponential) separation between quantum and classical computing. Before that only super-polynomial separations were known. Literature D. R. Simon. On the Power of Quantum Computation. Proc. FOCS 94, 6 3. IEEE, 994.

80 Simon s Problem Some comments about Simon s problem There is some similarity to the Deutsch-Jozsa problem, however, here the task is not to distinguish between two cases (constant vs balanced) but between exponentially many cases (one for each unknown string s). Problem might seem artificial, but Shor s algorithm has the same underlying idea. Note: This is a promise problem! Problem gave the first strong (polynomial vs exponential) separation between quantum and classical computing. Before that only super-polynomial separations were known. Literature D. R. Simon. On the Power of Quantum Computation. Proc. FOCS 94, 6 3. IEEE, 994.

81 Simon s Problem Some comments about Simon s problem There is some similarity to the Deutsch-Jozsa problem, however, here the task is not to distinguish between two cases (constant vs balanced) but between exponentially many cases (one for each unknown string s). Problem might seem artificial, but Shor s algorithm has the same underlying idea. Note: This is a promise problem! Problem gave the first strong (polynomial vs exponential) separation between quantum and classical computing. Before that only super-polynomial separations were known. Literature D. R. Simon. On the Power of Quantum Computation. Proc. FOCS 94, 6 3. IEEE, 994.

82 Simon s Problem Some comments about Simon s problem There is some similarity to the Deutsch-Jozsa problem, however, here the task is not to distinguish between two cases (constant vs balanced) but between exponentially many cases (one for each unknown string s). Problem might seem artificial, but Shor s algorithm has the same underlying idea. Note: This is a promise problem! Problem gave the first strong (polynomial vs exponential) separation between quantum and classical computing. Before that only super-polynomial separations were known. Literature D. R. Simon. On the Power of Quantum Computation. Proc. FOCS 94, 6 3. IEEE, 994.

83 Simon s Problem: Specification How the function f is given We are given f as a black box in form of a quantum circuit computing U f : x y U f x y f (x) How can we query f? Classical algorithm: makes queries x,..., x k resulting in the answers f (x ),..., f (x k ) (counts as k queries). Quantum algorithm: can query in superposition, i. e., starting with the state ϕ = k i= x i results in U f ϕ 0 = k U f x i 0 = i= k x i f (x i ). i= This counts as one query!

84 Simon s Problem: Specification How the function f is given We are given f as a black box in form of a quantum circuit computing U f : x y U f x y f (x) How can we query f? Classical algorithm: makes queries x,..., x k resulting in the answers f (x ),..., f (x k ) (counts as k queries). Quantum algorithm: can query in superposition, i. e., starting with the state ϕ = k i= x i results in U f ϕ 0 = k U f x i 0 = i= k x i f (x i ). i= This counts as one query!

85 Simon s Problem: Specification How the function f is given We are given f as a black box in form of a quantum circuit computing U f : x y U f x y f (x) How can we query f? Classical algorithm: makes queries x,..., x k resulting in the answers f (x ),..., f (x k ) (counts as k queries). Quantum algorithm: can query in superposition, i. e., starting with the state ϕ = k i= x i results in U f ϕ 0 = k U f x i 0 = i= k x i f (x i ). i= This counts as one query!

86 Measuring the State of the System Partial measurements / non-demolition measurements Suppose we are given a Boolean function f : {0, } n {0, } and have prepared the state ψ = n/ α x x f (x) x {0,} n = n/ α x x 0 + α x x. x:f (x)=0 x:f (x)= Measuring the last qubit gives a random variable X. Pr(X = 0) = α x, Pr(X = ) = α x. x:f (x)=0 x:f (x)= This talk: We only consider von Neumann measurements of some (or all) of the qubits.

87 Measuring the State of the System Partial measurements / non-demolition measurements Suppose we are given a Boolean function f : {0, } n {0, } and have prepared the state ψ = n/ α x x f (x) x {0,} n = n/ α x x 0 + α x x. x:f (x)=0 x:f (x)= Measuring the last qubit gives a random variable X. Pr(X = 0) = α x, Pr(X = ) = α x. x:f (x)=0 x:f (x)= This talk: We only consider von Neumann measurements of some (or all) of the qubits.

88 Measuring the State of the System Partial measurements / non-demolition measurements Suppose we are given a Boolean function f : {0, } n {0, } and have prepared the state ψ = n/ α x x f (x) x {0,} n = n/ α x x 0 + α x x. x:f (x)=0 x:f (x)= Measuring the last qubit gives a random variable X. Pr(X = 0) = α x, Pr(X = ) = α x. x:f (x)=0 x:f (x)= This talk: We only consider von Neumann measurements of some (or all) of the qubits.

89 Measuring the State of the System Why partial/ non-demolition measurements We can still work with the collapsed state! For instance if measuring the last qubit of ψ = n/ α x x 0 + α x x x:f (x)=0 x:f (x)= yields the result X =, then the collapsed state is ψ = α x x, where s = {x : f (x) = }. s x:f (x)= Note: cannot be used to find solutions to f (x) =. Why? Further reading: the most general operation which can be applied to a quantum system in order to obtain classical information is a POVM (positive operator valued measure).

90 Measuring the State of the System Why partial/ non-demolition measurements We can still work with the collapsed state! For instance if measuring the last qubit of ψ = n/ α x x 0 + α x x x:f (x)=0 x:f (x)= yields the result X =, then the collapsed state is ψ = α x x, where s = {x : f (x) = }. s x:f (x)= Note: cannot be used to find solutions to f (x) =. Why? Further reading: the most general operation which can be applied to a quantum system in order to obtain classical information is a POVM (positive operator valued measure).

91 Measuring the State of the System Why partial/ non-demolition measurements We can still work with the collapsed state! For instance if measuring the last qubit of ψ = n/ α x x 0 + α x x x:f (x)=0 x:f (x)= yields the result X =, then the collapsed state is ψ = α x x, where s = {x : f (x) = }. s x:f (x)= Note: cannot be used to find solutions to f (x) =. Why? Further reading: the most general operation which can be applied to a quantum system in order to obtain classical information is a POVM (positive operator valued measure).

92 Simon s Problem: Preparing Useful States Creating the uniform superposition The basic idea is to prepare 0 0 H n n U f n x 0 x IF n x f (x). x IF n Collapsing the uniform superposition Now, measuring the second register will yield a random s IF n in the image of f. The state collapses to ϕ x0,s = ( x 0 + x 0 s ).

93 Simon s Problem: Preparing Useful States Creating the uniform superposition The basic idea is to prepare 0 0 H n n U f n x 0 x IF n x f (x). x IF n Collapsing the uniform superposition Now, measuring the second register will yield a random s IF n in the image of f. The state collapses to ϕ x0,s = ( x 0 + x 0 s ).

94 Computing the Hadamard Transform We apply H n to the collapsed states ϕ x0,s : H n ϕ x0,s = ( ) n/ ( ) x y x y ( x 0 + x 0 s ) = = n+ n+ x,y IF n ( ) x x 0 x + x IF n x IF n ( ) x (x0 s) x ( ( ) x x 0 x + ( ) x x 0 x s) ) x = = n+ n+ x IF n ( ( ) x x 0 x + ( ) x x 0 ( ) x s) x x IF n ( ) x x ( 0 + ( ) x s) x x IF n

95 Computing the Hadamard Transform We apply H n to the collapsed states ϕ x0,s : H n ϕ x0,s = ( ) n/ ( ) x y x y ( x 0 + x 0 s ) = = n+ n+ x,y IF n ( ) x x 0 x + x IF n x IF n ( ) x (x0 s) x ( ( ) x x 0 x + ( ) x x 0 x s) ) x = = n+ n+ x IF n ( ( ) x x 0 x + ( ) x x 0 ( ) x s) x x IF n ( ) x x ( 0 + ( ) x s) x x IF n

96 Computing the Hadamard Transform We apply H n to the collapsed states ϕ x0,s : H n ϕ x0,s = ( ) n/ ( ) x y x y ( x 0 + x 0 s ) = = n+ n+ x,y IF n ( ) x x 0 x + x IF n x IF n ( ) x (x0 s) x ( ( ) x x 0 x + ( ) x x 0 x s) ) x = = n+ n+ x IF n ( ( ) x x 0 x + ( ) x x 0 ( ) x s) x x IF n ( ) x x ( 0 + ( ) x s) x x IF n

97 Computing the Hadamard Transform We apply H n to the collapsed states ϕ x0,s : H n ϕ x0,s = ( ) n/ ( ) x y x y ( x 0 + x 0 s ) = = n+ n+ x,y IF n ( ) x x 0 x + x IF n x IF n ( ) x (x0 s) x ( ( ) x x 0 x + ( ) x x 0 x s) ) x = = n+ n+ x IF n ( ( ) x x 0 x + ( ) x x 0 ( ) x s) x x IF n ( ) x x ( 0 + ( ) x s) x x IF n

98 Computing the Hadamard Transform We apply H n to the collapsed states ϕ x0,s : H n ϕ x0,s = ( ) n/ ( ) x y x y ( x 0 + x 0 s ) = = n+ n+ x,y IF n ( ) x x 0 x + x IF n x IF n ( ) x (x0 s) x ( ( ) x x 0 x + ( ) x x 0 x s) ) x = = n+ n+ x IF n ( ( ) x x 0 x + ( ) x x 0 ( ) x s) x x IF n ( ) x x ( 0 + ( ) x s) x x IF n

99 Simon s Problem: Destructive Interference What have we gained by doing this? H n ϕ x0,s = = n+ n+ ( ) x x ( 0 + ( ) x s) x x IF n ( ) x x 0 x x IF n x s=0 Hence measuring this state yields a random element in What we really want... s = {x IF n x s = 0}.... are elements from s itself (there is only 0 and s itself since s is one-dimensional). How can we compute s from s?

100 Simon s Problem: Destructive Interference What have we gained by doing this? H n ϕ x0,s = = n+ n+ ( ) x x ( 0 + ( ) x s) x x IF n ( ) x x 0 x x IF n x s=0 Hence measuring this state yields a random element in What we really want... s = {x IF n x s = 0}.... are elements from s itself (there is only 0 and s itself since s is one-dimensional). How can we compute s from s?

101 Simon s Problem: Destructive Interference What have we gained by doing this? H n ϕ x0,s = = n+ n+ ( ) x x ( 0 + ( ) x s) x x IF n ( ) x x 0 x x IF n x s=0 Hence measuring this state yields a random element in What we really want... s = {x IF n x s = 0}.... are elements from s itself (there is only 0 and s itself since s is one-dimensional). How can we compute s from s?

102 Simon s Problem: Destructive Interference What have we gained by doing this? H n ϕ x0,s = = n+ n+ ( ) x x ( 0 + ( ) x s) x x IF n ( ) x x 0 x x IF n x s=0 Hence measuring this state yields a random element in What we really want... s = {x IF n x s = 0}.... are elements from s itself (there is only 0 and s itself since s is one-dimensional). How can we compute s from s?

103 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

104 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

105 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

106 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

107 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

108 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

109 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

110 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

111 Solution to Simon s Problem Quantum algorithm Given: Function f : {0, } n {0, } n with Simon promise, i. e., preimages of a fixed image have the form x 0 and x 0 s. Task: Find the unknown bit-string s IF n. Repeat the following steps n times:. Initialize two quantum registers: 0 0. Equal distribution on first register: 3. Compute f in superposition: 4. Measure second register: 5. Compute H n on first register: n n P x {0,} x 0 P n x {0,} x f (x) n ( x 0 + x 0 s ) = ϕ x0,s n+ X x IF n x s=0 ( ) x x 0 x 6. Measure first register: Sample y IF n with y s = 0. Further classical post-processing is necessary!

112 Classical Postprocessing in Simon s Algorithm Classical post-processing After n iterations: y,..., y n IF n with y i s = 0. We have to infer s by a purely classical computation. Show high probability of success over the choice of y i. Linear algebra over IF We are given the linear system of equations A s = y. y n s = 0 Hence, we have to compute the kernel of A IF (n ) n. If the kernel is one-dimensional, then s is uniquely determined.

113 Classical Postprocessing in Simon s Algorithm Classical post-processing After n iterations: y,..., y n IF n with y i s = 0. We have to infer s by a purely classical computation. Show high probability of success over the choice of y i. Linear algebra over IF We are given the linear system of equations A s = y. y n s = 0 Hence, we have to compute the kernel of A IF (n ) n. If the kernel is one-dimensional, then s is uniquely determined.

114 Classical Post-Processing in Simon s Algorithm The probability of success Since dim( s ) = we have that dim( s ) = n. Hence we have to bound the probability that n random vectors in IF n are linear independent: n n n n Pr(rk(A) = n ) = n n n = Complexity of the quantum algorithm n n n We have used n iterations and each individual run uses one query, n Hadamard transforms, and n + single qubit measurements Postprocessing: Computing the kernel of a matrix of size n n is linear algebra and can be solved in time O(n 3 ). Overall we have found a polynomial-time quantum algorithm.

115 Classical Post-Processing in Simon s Algorithm The probability of success Since dim( s ) = we have that dim( s ) = n. Hence we have to bound the probability that n random vectors in IF n are linear independent: n n n n Pr(rk(A) = n ) = n n n = Complexity of the quantum algorithm n n n We have used n iterations and each individual run uses one query, n Hadamard transforms, and n + single qubit measurements Postprocessing: Computing the kernel of a matrix of size n n is linear algebra and can be solved in time O(n 3 ). Overall we have found a polynomial-time quantum algorithm.

116 Classical Post-Processing in Simon s Algorithm The probability of success Since dim( s ) = we have that dim( s ) = n. Hence we have to bound the probability that n random vectors in IF n are linear independent: n n n n Pr(rk(A) = n ) = n n n = Complexity of the quantum algorithm n n n We have used n iterations and each individual run uses one query, n Hadamard transforms, and n + single qubit measurements Postprocessing: Computing the kernel of a matrix of size n n is linear algebra and can be solved in time O(n 3 ). Overall we have found a polynomial-time quantum algorithm.

117 Classical Post-Processing in Simon s Algorithm The probability of success Since dim( s ) = we have that dim( s ) = n. Hence we have to bound the probability that n random vectors in IF n are linear independent: n n n n Pr(rk(A) = n ) = n n n = Complexity of the quantum algorithm n n n We have used n iterations and each individual run uses one query, n Hadamard transforms, and n + single qubit measurements Postprocessing: Computing the kernel of a matrix of size n n is linear algebra and can be solved in time O(n 3 ). Overall we have found a polynomial-time quantum algorithm.

118 Simon s Problem: Classical Lower Bound Theorem Let A be a classical probabilistic algorithm which determines s using k queries to the function f. Then k = Ω( n/ ). Computational complexity theory lingo Hence there exists an oracle O with respect which we have a separation between classical and quantum computation: BPP O BQP O This is a so-called relativized result, i. e., it holds in a world in which calls to the oracle cost only one query. Whether this also holds for our world, i. e., without oracles, is a major open problem in theoretical computer science. Looking ahead: Why does the fact that FACTORING is in BQP, whereas no classical algorithm is known for it, does not imply that BPP BQP?

119 Simon s Problem: Classical Lower Bound Theorem Let A be a classical probabilistic algorithm which determines s using k queries to the function f. Then k = Ω( n/ ). Computational complexity theory lingo Hence there exists an oracle O with respect which we have a separation between classical and quantum computation: BPP O BQP O This is a so-called relativized result, i. e., it holds in a world in which calls to the oracle cost only one query. Whether this also holds for our world, i. e., without oracles, is a major open problem in theoretical computer science. Looking ahead: Why does the fact that FACTORING is in BQP, whereas no classical algorithm is known for it, does not imply that BPP BQP?

120 Simon s Problem: Classical Lower Bound Theorem Let A be a classical probabilistic algorithm which determines s using k queries to the function f. Then k = Ω( n/ ). Computational complexity theory lingo Hence there exists an oracle O with respect which we have a separation between classical and quantum computation: BPP O BQP O This is a so-called relativized result, i. e., it holds in a world in which calls to the oracle cost only one query. Whether this also holds for our world, i. e., without oracles, is a major open problem in theoretical computer science. Looking ahead: Why does the fact that FACTORING is in BQP, whereas no classical algorithm is known for it, does not imply that BPP BQP?

121 Simon s Problem: Classical Lower Bound Theorem Let A be a classical probabilistic algorithm which determines s using k queries to the function f. Then k = Ω( n/ ). Computational complexity theory lingo Hence there exists an oracle O with respect which we have a separation between classical and quantum computation: BPP O BQP O This is a so-called relativized result, i. e., it holds in a world in which calls to the oracle cost only one query. Whether this also holds for our world, i. e., without oracles, is a major open problem in theoretical computer science. Looking ahead: Why does the fact that FACTORING is in BQP, whereas no classical algorithm is known for it, does not imply that BPP BQP?

122 Simon s Problem: Classical Lower Bound Theorem Let A be a classical probabilistic algorithm which determines s using k queries to the function f. Then k = Ω( n/ ). Computational complexity theory lingo Hence there exists an oracle O with respect which we have a separation between classical and quantum computation: BPP O BQP O This is a so-called relativized result, i. e., it holds in a world in which calls to the oracle cost only one query. Whether this also holds for our world, i. e., without oracles, is a major open problem in theoretical computer science. Looking ahead: Why does the fact that FACTORING is in BQP, whereas no classical algorithm is known for it, does not imply that BPP BQP?

123 Simon s Problem: Classical Lower Bound Sketch of proof of the Ω( n/ ) lower bound Suppose A makes k queries x,..., x k, where x i x j. Let F k := {f (x i ) : i =,..., k} and E k := {x i x j : i j}. If F k < k then we have found a collision, i. e. a pair (i 0, j 0 ) with f (x i0 ) = f (x j0 ). Then s = x i0 x j0. Suppose there was no collision. Then s E k and E k = ( k ) candidates have been eliminated. However, there are n ( k ) candidates for s. We show that they are equally likely for a given F k. Then k = Ω( n ). Bayes rule: Pr(s = s 0 F k = k) = Pr( F k = k s = s 0 ) Pr(s = s 0 ). Pr( F k = k) The a priori probabilities Pr(s = s 0 ) are equal and by symmetry Pr( F k = k s = s0 ) is independent of s 0.

124 Simon s Problem: Classical Lower Bound Sketch of proof of the Ω( n/ ) lower bound Suppose A makes k queries x,..., x k, where x i x j. Let F k := {f (x i ) : i =,..., k} and E k := {x i x j : i j}. If F k < k then we have found a collision, i. e. a pair (i 0, j 0 ) with f (x i0 ) = f (x j0 ). Then s = x i0 x j0. Suppose there was no collision. Then s E k and E k = ( k ) candidates have been eliminated. However, there are n ( k ) candidates for s. We show that they are equally likely for a given F k. Then k = Ω( n ). Bayes rule: Pr(s = s 0 F k = k) = Pr( F k = k s = s 0 ) Pr(s = s 0 ). Pr( F k = k) The a priori probabilities Pr(s = s 0 ) are equal and by symmetry Pr( F k = k s = s0 ) is independent of s 0.

125 Simon s Problem: Classical Lower Bound Sketch of proof of the Ω( n/ ) lower bound Suppose A makes k queries x,..., x k, where x i x j. Let F k := {f (x i ) : i =,..., k} and E k := {x i x j : i j}. If F k < k then we have found a collision, i. e. a pair (i 0, j 0 ) with f (x i0 ) = f (x j0 ). Then s = x i0 x j0. Suppose there was no collision. Then s E k and E k = ( k ) candidates have been eliminated. However, there are n ( k ) candidates for s. We show that they are equally likely for a given F k. Then k = Ω( n ). Bayes rule: Pr(s = s 0 F k = k) = Pr( F k = k s = s 0 ) Pr(s = s 0 ). Pr( F k = k) The a priori probabilities Pr(s = s 0 ) are equal and by symmetry Pr( F k = k s = s0 ) is independent of s 0.

126 Simon s Problem: Classical Lower Bound Sketch of proof of the Ω( n/ ) lower bound Suppose A makes k queries x,..., x k, where x i x j. Let F k := {f (x i ) : i =,..., k} and E k := {x i x j : i j}. If F k < k then we have found a collision, i. e. a pair (i 0, j 0 ) with f (x i0 ) = f (x j0 ). Then s = x i0 x j0. Suppose there was no collision. Then s E k and E k = ( k ) candidates have been eliminated. However, there are n ( k ) candidates for s. We show that they are equally likely for a given F k. Then k = Ω( n ). Bayes rule: Pr(s = s 0 F k = k) = Pr( F k = k s = s 0 ) Pr(s = s 0 ). Pr( F k = k) The a priori probabilities Pr(s = s 0 ) are equal and by symmetry Pr( F k = k s = s0 ) is independent of s 0.

127 Simon s Problem: Classical Lower Bound Sketch of proof of the Ω( n/ ) lower bound Suppose A makes k queries x,..., x k, where x i x j. Let F k := {f (x i ) : i =,..., k} and E k := {x i x j : i j}. If F k < k then we have found a collision, i. e. a pair (i 0, j 0 ) with f (x i0 ) = f (x j0 ). Then s = x i0 x j0. Suppose there was no collision. Then s E k and E k = ( k ) candidates have been eliminated. However, there are n ( k ) candidates for s. We show that they are equally likely for a given F k. Then k = Ω( n ). Bayes rule: Pr(s = s 0 F k = k) = Pr( F k = k s = s 0 ) Pr(s = s 0 ). Pr( F k = k) The a priori probabilities Pr(s = s 0 ) are equal and by symmetry Pr( F k = k s = s0 ) is independent of s 0.

128 For Further Reading G. Alber, Th. Beth, M. Horodecki, P. Horodecki, R. Horodecki, M. Roetteler, H. Weinfurter, and A. Zeilinger. Quantum Information: An Introduction to Basic Theoretical Concepts and Experiments. Springer, 00. J. Gruska Quantum Computing. McGraw-Hill, 999. A. Yu. Kitaev, A. H. Shen, and M. N. Vyalyi. Classical and Quantum Computation. Graduate Studies in Mathematics, vol. 47, AMS, 00. M. Nielsen und I. Chuang. Quantum Computation and Information. Cambridge University Press, 000.

129 Conclusions Elementary quantum gates: Controlled NOT gate Local unitary transformations A simple quantum algorithm on two qubits which distinguishes constant from balanced functions. Separation: query (quantum) vs queries (classical) Quantum algorithm for Simon s problem based on: Computing with superpositions Interference of computational paths

130 Part II: The Algorithms of Shor and Grover Martin Rötteler NEC Laboratories America, Inc. 4 Independence Way, Suite 00 Princeton, NJ 08540, U.S.A. International Summer School on Quantum Information, Max-Planck-Institut für Physik komplexer Systeme Dresden, September, 005

131 Overview Today: Shor s algorithm Outlook: Modular exponentiation Period extraction via Quantum Fourier Transform Classical post-processing Generalizations of Shor s algorithm Grover s algorithm for searching a list Universal quantum gates On September 9, Markus Grassl will continue with an introduction to quantum error-correcting codes.

132 The Integer Factorization Problem Basic problem Given a natural number N. Find a (prime) factor of N. Best known classical algorithm The number field sieve has a complexity of exp ((.93 + o())(log N) /3 (log log N) /3) which is (sub)exponential in the number n = log N of bits of N. Making money with factoring The company RSA offers $ for anybody who can factor a certain 67 digit number N. This number is known to be of the form N = pq but finding p and q is infeasible using the best known classical algorithms.

133 The Integer Factorization Problem Basic problem Given a natural number N. Find a (prime) factor of N. Best known classical algorithm The number field sieve has a complexity of exp ((.93 + o())(log N) /3 (log log N) /3) which is (sub)exponential in the number n = log N of bits of N. Making money with factoring The company RSA offers $ for anybody who can factor a certain 67 digit number N. This number is known to be of the form N = pq but finding p and q is infeasible using the best known classical algorithms.

134 The Integer Factorization Problem Basic problem Given a natural number N. Find a (prime) factor of N. Best known classical algorithm The number field sieve has a complexity of exp ((.93 + o())(log N) /3 (log log N) /3) which is (sub)exponential in the number n = log N of bits of N. Making money with factoring The company RSA offers $ for anybody who can factor a certain 67 digit number N. This number is known to be of the form N = pq but finding p and q is infeasible using the best known classical algorithms.

135 The RSA Factoring Challenge RSA-00 is factored! In May 005 a small team of people has factored RSA-00. At 663 bits, this is the largest RSA Challenge Number factored. The classical effort undertaken Sieving equivalent of 55 years on a single. GHz Opteron CPU. The matrix step took about 3 months on a cluster of 80. GHz Opterons. Computed from late 003 to May 005. RSA-00 and its factors N = p = q =

136 The RSA Factoring Challenge RSA-00 is factored! In May 005 a small team of people has factored RSA-00. At 663 bits, this is the largest RSA Challenge Number factored. The classical effort undertaken Sieving equivalent of 55 years on a single. GHz Opteron CPU. The matrix step took about 3 months on a cluster of 80. GHz Opterons. Computed from late 003 to May 005. RSA-00 and its factors N = p = q =

137 The RSA Factoring Challenge RSA-00 is factored! In May 005 a small team of people has factored RSA-00. At 663 bits, this is the largest RSA Challenge Number factored. The classical effort undertaken Sieving equivalent of 55 years on a single. GHz Opteron CPU. The matrix step took about 3 months on a cluster of 80. GHz Opterons. Computed from late 003 to May 005. RSA-00 and its factors N = p = q =

138 Shor s Algorithm: Reduction to Order Finding Reformulating the factoring problem We can factor N if the following problem can be solved: Input: A number a with < a < N. Output: The order r of a modulo N, i. e., the smallest integer r > 0 such that a r mod N. Why is this a reduction? Suppose we want to find a divisor of N different from + or. Pick a random a with < a < N and find its order r Suppose that r is even (happens with high probability): 0 = (a r ) = (a r/ )(a r/ + ) mod N. If a r/ ± then gcd(a r/, N) and gcd(a r/ +, N) yield at least one nontrivial divisor of N.

139 Shor s Algorithm: Reduction to Order Finding Reformulating the factoring problem We can factor N if the following problem can be solved: Input: A number a with < a < N. Output: The order r of a modulo N, i. e., the smallest integer r > 0 such that a r mod N. Why is this a reduction? Suppose we want to find a divisor of N different from + or. Pick a random a with < a < N and find its order r Suppose that r is even (happens with high probability): 0 = (a r ) = (a r/ )(a r/ + ) mod N. If a r/ ± then gcd(a r/, N) and gcd(a r/ +, N) yield at least one nontrivial divisor of N.

140 Shor s Algorithm: Reduction to Order Finding Remarks about this reduction Note that gcd(a, b) of two n-bit integers can be computed in poly(log(n)) time. There were two events in which the reduction fails: (i) we pick a with an odd order r and (ii) a r/ = ±. We have to bound the probability for one of these events to occur. Theorem Let N = p µ... pµm m with m and p i >. Then The big question Pr(neither (i) nor (ii) occurs) m How can we efficiently determine the multiplicative order of a random element a modulo N?

141 Shor s Algorithm: Reduction to Order Finding Remarks about this reduction Note that gcd(a, b) of two n-bit integers can be computed in poly(log(n)) time. There were two events in which the reduction fails: (i) we pick a with an odd order r and (ii) a r/ = ±. We have to bound the probability for one of these events to occur. Theorem Let N = p µ... pµm m with m and p i >. Then The big question Pr(neither (i) nor (ii) occurs) m How can we efficiently determine the multiplicative order of a random element a modulo N?

142 Shor s Algorithm: Reduction to Order Finding Remarks about this reduction Note that gcd(a, b) of two n-bit integers can be computed in poly(log(n)) time. There were two events in which the reduction fails: (i) we pick a with an odd order r and (ii) a r/ = ±. We have to bound the probability for one of these events to occur. Theorem Let N = p µ... pµm m with m and p i >. Then The big question Pr(neither (i) nor (ii) occurs) m How can we efficiently determine the multiplicative order of a random element a modulo N?

143 Defining a Period Function The modular exponentiation map Let N be an integer and let a Z N. Let M be an integer. The modular exponentiation is the map f : x (a x mod N) from Z M to Z N. Result: The map f can be implemented efficiently using standard arithmetic in O(poly(log N)) operations. Hence also the map U f : x y x a x mod N can be implemented efficiently. Recall that the order of a is defined as the smallest integer r such that a r = mod N. Observation The function f : x (a x mod N) is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x.

144 Defining a Period Function The modular exponentiation map Let N be an integer and let a Z N. Let M be an integer. The modular exponentiation is the map f : x (a x mod N) from Z M to Z N. Result: The map f can be implemented efficiently using standard arithmetic in O(poly(log N)) operations. Hence also the map U f : x y x a x mod N can be implemented efficiently. Recall that the order of a is defined as the smallest integer r such that a r = mod N. Observation The function f : x (a x mod N) is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x.

145 Defining a Period Function The modular exponentiation map Let N be an integer and let a Z N. Let M be an integer. The modular exponentiation is the map f : x (a x mod N) from Z M to Z N. Result: The map f can be implemented efficiently using standard arithmetic in O(poly(log N)) operations. Hence also the map U f : x y x a x mod N can be implemented efficiently. Recall that the order of a is defined as the smallest integer r such that a r = mod N. Observation The function f : x (a x mod N) is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x.

146 Defining a Period Function The modular exponentiation map Let N be an integer and let a Z N. Let M be an integer. The modular exponentiation is the map f : x (a x mod N) from Z M to Z N. Result: The map f can be implemented efficiently using standard arithmetic in O(poly(log N)) operations. Hence also the map U f : x y x a x mod N can be implemented efficiently. Recall that the order of a is defined as the smallest integer r such that a r = mod N. Observation The function f : x (a x mod N) is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x.

147 Defining a Period Function The modular exponentiation map Let N be an integer and let a Z N. Let M be an integer. The modular exponentiation is the map f : x (a x mod N) from Z M to Z N. Result: The map f can be implemented efficiently using standard arithmetic in O(poly(log N)) operations. Hence also the map U f : x y x a x mod N can be implemented efficiently. Recall that the order of a is defined as the smallest integer r such that a r = mod N. Observation The function f : x (a x mod N) is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x.

148 Setting up a Periodic State Observation The function f : x a x mod N is periodic and has period length r, i. e., f (x) = f (x + r) for all inputs x. The graph of the function f (x) = x mod 65 y = f (x) x

149 Shor s Problem: Preparing Useful States Creating the graph of f Let f (x) = a x mod N be the modular exponentiation and let U f : x y x y f (x) be as usual. We compute (letting M = m ) 0 0 H m x 0 Uf M x Z M M Collapsing the graph of f x Z M x f (x). Now, measuring the second register will yield a random s Z N in the image of f. The state collapses to N/r x 0 + k r. N/r k=0

150 Shor s Problem: Preparing Useful States Creating the graph of f Let f (x) = a x mod N be the modular exponentiation and let U f : x y x y f (x) be as usual. We compute (letting M = m ) 0 0 H m x 0 Uf M x Z M M Collapsing the graph of f x Z M x f (x). Now, measuring the second register will yield a random s Z N in the image of f. The state collapses to N/r x 0 + k r. N/r k=0

151 An Application of the DFT: Period Extraction Motivation We would like to apply the trick from Simon s algorithm: ϕ x0,s = ( x 0 + x 0 s ) n+ ( ) x x 0 x. x IF n x s=0 The unknown offset x 0 is transfered into the phases. The analogue of ϕ x0,s in case of the cyclic group Z N is ψ x0,r = N/r x 0 + k r N/r k=0 r {}}{ Again, we would like to transfer x 0 into the phases. x 0

152 An Application of the DFT: Period Extraction Motivation We would like to apply the trick from Simon s algorithm: ϕ x0,s = ( x 0 + x 0 s ) n+ ( ) x x 0 x. x IF n x s=0 The unknown offset x 0 is transfered into the phases. The analogue of ϕ x0,s in case of the cyclic group Z N is ψ x0,r = N/r x 0 + k r N/r k=0 r {}}{ Again, we would like to transfer x 0 into the phases. x 0

153 The Discrete Fourier Transformation (DFT) Definition of the DFT DFT N := [ ] ωn k l, N k,l=0...n ω N = e πi/n Example DFT

154 Estimating Character Sums Useful trick in quantum computing (Character Lemma) Lemma: For all i = 0,..., n the following holds: n ωn ij = n δ i,0 j=0 Proof: Let S := n j=0 ωij n. Then n ωns i = ωnω i n ij n = ω i(j+) n n = ωn ij = S j=0 j=0 j=0 If i 0 then ω i n, i. e., ( ω i n) 0. Hence S = 0. If i = 0 then ω i n = which implies that S = n.

155 Estimating Character Sums Useful trick in quantum computing (Character Lemma) Lemma: For all i = 0,..., n the following holds: n ωn ij = n δ i,0 j=0 Proof: Let S := n j=0 ωij n. Then n ωns i = ωnω i n ij n = ω i(j+) n n = ωn ij = S j=0 j=0 j=0 If i 0 then ω i n, i. e., ( ω i n) 0. Hence S = 0. If i = 0 then ω i n = which implies that S = n.

156 Estimating Character Sums Useful trick in quantum computing (Character Lemma) Lemma: For all i = 0,..., n the following holds: n ωn ij = n δ i,0 j=0 Proof: Let S := n j=0 ωij n. Then n ωns i = ωnω i n ij n = ω i(j+) n n = ωn ij = S j=0 j=0 j=0 If i 0 then ω i n, i. e., ( ω i n) 0. Hence S = 0. If i = 0 then ω i n = which implies that S = n.

157 Estimating Character Sums Useful trick in quantum computing (Character Lemma) Lemma: For all i = 0,..., n the following holds: n ωn ij = n δ i,0 j=0 Proof: Let S := n j=0 ωij n. Then n ωns i = ωnω i n ij n = ω i(j+) n n = ωn ij = S j=0 j=0 j=0 If i 0 then ω i n, i. e., ( ω i n) 0. Hence S = 0. If i = 0 then ω i n = which implies that S = n.

158 Extracting the Period of a Function Theorem (Fourier duality) Let N IN and let r Z N be a divisor of N, and let x 0 Z N. Then DFT N ψ x0,r = DFT N X N/r p x 0 + k r A = N/r k=0 X r r l=0 ω lx 0 N r N l N r Proof: DFT N ψ x0,r = = = r N r N 0 N X ω ij N i j A@ N/r X p x 0 + k r N N/r i,j=0 0 X X N/r ω i(x 0+k r) N i=0 k=0 N X N/r X ω ix 0 N ωn ikr i=0 k=0 {z } =:α i A i i k=0 A

159 Extracting the Period of a Function Theorem (Fourier duality) Let N IN and let r Z N be a divisor of N, and let x 0 Z N. Then DFT N ψ x0,r = DFT N X N/r p x 0 + k r A = N/r k=0 X r r l=0 ω lx 0 N r N l N r Proof: DFT N ψ x0,r = = = r N r N 0 N X ω ij N i j A@ N/r X p x 0 + k r N N/r i,j=0 0 X X N/r ω i(x 0+k r) N i=0 k=0 N X N/r X ω ix 0 N ωn ikr i=0 k=0 {z } =:α i A i i k=0 A

160 Extracting the Period of a Function Theorem (Fourier duality) Let N IN and let r Z N be a divisor of N, and let x 0 Z N. Then DFT N ψ x0,r = DFT N X N/r p x 0 + k r A = N/r k=0 X r r l=0 ω lx 0 N r N l N r Proof: DFT N ψ x0,r = = = r N r N 0 N X ω ij N i j A@ N/r X p x 0 + k r N N/r i,j=0 0 X X N/r ω i(x 0+k r) N i=0 k=0 N X N/r X ω ix 0 N ωn ikr i=0 k=0 {z } =:α i A i i k=0 A

161 Extracting the Period of a Function Theorem (Fourier duality) Let N IN and let r Z N be a divisor of N, and let x 0 Z N. Then DFT N ψ x0,r = DFT N X N/r p x 0 + k r A = N/r k=0 X r r l=0 ω lx 0 N r N l N r Proof: DFT N ψ x0,r = = = r N r N 0 N X ω ij N i j A@ N/r X p x 0 + k r N N/r i,j=0 0 X X N/r ω i(x 0+k r) N i=0 k=0 N X N/r X ω ix 0 N ωn ikr i=0 k=0 {z } =:α i A i i k=0 A

162 Constructive / Destructive Interference Computing the coefficients α i For each i = 0,..., N we have to compute α i = N/r k=0 ω ikr N. Case : i = N r l for some l = 0,..., r. Then α i = N/r k=0 ω N r lkr N/r N = k=0 = N r. Case : i N r l for all l = 0,..., r. Then α i = N/r k=0 by the Character Lemma. ( ) k ω N r lkr N = 0

163 Constructive / Destructive Interference Computing the coefficients α i For each i = 0,..., N we have to compute α i = N/r k=0 ω ikr N. Case : i = N r l for some l = 0,..., r. Then α i = N/r k=0 ω N r lkr N/r N = k=0 = N r. Case : i N r l for all l = 0,..., r. Then α i = N/r k=0 by the Character Lemma. ( ) k ω N r lkr N = 0

164 Constructive / Destructive Interference End of proof (Fourier duality) DFT N ψ x0,r = = r N r N N i=0 r l=0 ω ix 0 N ( N/r ω l N r x 0 N N r k=0 ) N r ωn ikr i = N ln = r r r l=0 i=0 ω l N r x 0 N ω ix 0 N α i i ln r What happens if r does not divide N? In this case the state can be approximated very accurately by ) DFT N ( k x 0 + k r k ω lµx 0 N lµ with an element µ Z N such that µr N.

165 Constructive / Destructive Interference End of proof (Fourier duality) DFT N ψ x0,r = = r N r N N i=0 r l=0 ω ix 0 N ( N/r ω l N r x 0 N N r k=0 ) N r ωn ikr i = N ln = r r r l=0 i=0 ω l N r x 0 N ω ix 0 N α i i ln r What happens if r does not divide N? In this case the state can be approximated very accurately by ) DFT N ( k x 0 + k r k ω lµx 0 N lµ with an element µ Z N such that µr N.

166 Constructive / Destructive Interference End of proof (Fourier duality) DFT N ψ x0,r = = r N r N N i=0 r l=0 ω ix 0 N ( N/r ω l N r x 0 N N r k=0 ) N r ωn ikr i = N ln = r r r l=0 i=0 ω l N r x 0 N ω ix 0 N α i i ln r What happens if r does not divide N? In this case the state can be approximated very accurately by ) DFT N ( k x 0 + k r k ω lµx 0 N lµ with an element µ Z N such that µr N.

167 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

168 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

169 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

170 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

171 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

172 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

173 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

174 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

175 Solution to the Period Extraction Problem Quantum algorithm Given: Modular exponentiation function U a : x 0 x a x mod N. Task: Find the order r of a modulo N. Repeat the following steps one time: (w/o normalizations, M = m >> N). Initialize two quantum registers: 0 0. Equal distribution on first register: P M x=0 x 0 3. Compute f in superposition: P M x=0 x ax mod N P M/r 4. Measure second register: P k=0 x 0 + k r r 5. Compute DFT M on first register: N l=0 ωl r x 0 M l N r 6. Measure first register: Sample a rational number p q which is very close to l 0 r. How can we classically reconstruct r from p q?

176 Classical Post-Processing How to obtain r from p q? N Since we know N and l 0, we could easily compute r from l 0 However, we are just given p q for which we only know that the following holds p q l 0 r < r Diophantine approximation We apply the continued fractions algorithm to p q. This will lead to several principal fractions and actually l 0 r will be one of them. Note that we can check whether a candidate r is indeed the order. r. Theorem (Shor 94) FACTORING BQP.

177 Classical Post-Processing How to obtain r from p q? N Since we know N and l 0, we could easily compute r from l 0 However, we are just given p q for which we only know that the following holds p q l 0 r < r Diophantine approximation We apply the continued fractions algorithm to p q. This will lead to several principal fractions and actually l 0 r will be one of them. Note that we can check whether a candidate r is indeed the order. r. Theorem (Shor 94) FACTORING BQP.

178 Classical Post-Processing How to obtain r from p q? N Since we know N and l 0, we could easily compute r from l 0 However, we are just given p q for which we only know that the following holds p q l 0 r < r Diophantine approximation We apply the continued fractions algorithm to p q. This will lead to several principal fractions and actually l 0 r will be one of them. Note that we can check whether a candidate r is indeed the order. r. Theorem (Shor 94) FACTORING BQP.

179 Diophantine Approximation The continued fractions algorithm Input: x IR. Output: Sequence of b i Z (possibly infinite) which represents x. Let b 0 := x, x :=, b x b := x, x :=,.... Then 0 x b x = b 0 + b + b + Example with rational input Suppose that x = The algorithm results in (vector of b i s): [,,,, 5, 3,,, 3,,,,,,,, 5,,,,,,,,,, 3] Consider the convergents C n which are obtained by truncating after n steps: n C n n C n

180 Diophantine Approximation The continued fractions algorithm Input: x IR. Output: Sequence of b i Z (possibly infinite) which represents x. Let b 0 := x, x :=, b x b := x, x :=,.... Then 0 x b x = b 0 + b + b + Example with rational input Suppose that x = The algorithm results in (vector of b i s): [,,,, 5, 3,,, 3,,,,,,,, 5,,,,,,,,,, 3] Consider the convergents C n which are obtained by truncating after n steps: n C n n C n

181 Diophantine Approximation Lagrange s Theorem Let x Q and assume that we are given p Q such that q x p q q Then x is a convergent C n of p q, namely that for which Cn p q < q. Example (cont d) Let y = 345 be the inverse period. Since denominator of y is we can work with precision 33. Suppose we measure p = q : n C n n C n

182 Diophantine Approximation Lagrange s Theorem Let x Q and assume that we are given p Q such that q x p q q Then x is a convergent C n of p q, namely that for which Cn p q < q. Example (cont d) Let y = 345 be the inverse period. Since denominator of y is we can work with precision 33. Suppose we measure p = q : n C n n C n

183 Parallels between DSP and QC w w w w Digital Signal Processing Quantum Computing signal f (x) quantum information sampling X f = f (x)δ x x transform modelling X x α x x f (x) unitary transform & measurement result probabilities

184 Example: Fast Fourier Transform (FFT) Cooley-Tukey FFT The matrix DFT N = [ ] ω k l N N k,l=0...n, where ω N = e πi/n can be written as a short product of sparse matrices. DFT 4 = Π rev ( DFT ) diag (DFT ) [ ] [ ] [ ] [ ] [ ] i i = i i i FFT Theorem Multiplication with DFT N can be performed classically in O(N log N) elementary operations. We can do much better on a quantum computer!

185 Example: Fast Fourier Transform (FFT) Cooley-Tukey FFT The matrix DFT N = [ ] ω k l N N k,l=0...n, where ω N = e πi/n can be written as a short product of sparse matrices. DFT 4 = Π rev ( DFT ) diag (DFT ) [ ] [ ] [ ] [ ] [ ] i i = i i i FFT Theorem Multiplication with DFT N can be performed classically in O(N log N) elementary operations. We can do much better on a quantum computer!

186 Example: Fast Fourier Transform (FFT) Cooley-Tukey FFT The matrix DFT N = [ ] ω k l N N k,l=0...n, where ω N = e πi/n can be written as a short product of sparse matrices. DFT 4 = Π rev ( DFT ) diag (DFT ) [ ] [ ] [ ] [ ] [ ] i i = i i i FFT Theorem Multiplication with DFT N can be performed classically in O(N log N) elementary operations. We can do much better on a quantum computer!

187 Example: Fast Fourier Transform (FFT) Cooley-Tukey FFT The matrix DFT N = [ ] ω k l N N k,l=0...n, where ω N = e πi/n can be written as a short product of sparse matrices. DFT 4 = Π rev ( DFT ) diag (DFT ) [ ] [ ] [ ] [ ] [ ] i i = i i i FFT Theorem Multiplication with DFT N can be performed classically in O(N log N) elementary operations. We can do much better on a quantum computer!

188 Fast Fourier Transform Cooley-Tukey Formula Π n DFT n = ( DFT n DFT n DFT n D n DFT n D n ) = ( DFT n ) ( n D n ) (DFT n ) Factorization of the twiddle factors D n := ω n ω n... ω n n = ( ω n n ) ( )... ω n

189 Fast Fourier Transform Cooley-Tukey Formula Π n DFT n = ( DFT n DFT n DFT n D n DFT n D n ) = ( DFT n ) ( n D n ) (DFT n ) Factorization of the twiddle factors D n := ω n ω n... ω n n = ( ω n n ) ( )... ω n

190 Cooley-Tukey Realization of DFT Quantum circuit for DFT N.. H H D 4 D N D N H D 4. Cost Classical Computer Quantum Computer T (N) = T (N/) + O(N) T (N) = T (N/) + O(logN)) T (N) = O(NlogN) T (N) = O(log N)

191 Cooley-Tukey Realization of DFT Quantum circuit for DFT N.. H H D 4 D N D N H D 4. Cost Classical Computer Quantum Computer T (N) = T (N/) + O(N) T (N) = T (N/) + O(logN)) T (N) = O(NlogN) T (N) = O(log N)

192 Shor s Algorithm: Gate Counts Modular exponentiation U : x 0 x a x mod N, where N is the k-bit number to be factored, and x is a k-bit number. Implementation using 396k(k + O(k)) elementary operations [Beckman et al.]. Quantum Fourier Transform: DFT n needs n(n ) two-qubit gates and n one-qubit gates. An upper bound on the resources for k-bit number N About 400k 3 operations are needed (can be improved to O(k log k log log k))). The space needed is 5k + qubits. Example: Factoring 8-bit and 04-bit numbers For 8-bit we need operations and 64 qubits. For 04-bit number operations and 5 qubits.

193 Shor s Algorithm: Gate Counts Modular exponentiation U : x 0 x a x mod N, where N is the k-bit number to be factored, and x is a k-bit number. Implementation using 396k(k + O(k)) elementary operations [Beckman et al.]. Quantum Fourier Transform: DFT n needs n(n ) two-qubit gates and n one-qubit gates. An upper bound on the resources for k-bit number N About 400k 3 operations are needed (can be improved to O(k log k log log k))). The space needed is 5k + qubits. Example: Factoring 8-bit and 04-bit numbers For 8-bit we need operations and 64 qubits. For 04-bit number operations and 5 qubits.

194 Shor s Algorithm: Gate Counts Modular exponentiation U : x 0 x a x mod N, where N is the k-bit number to be factored, and x is a k-bit number. Implementation using 396k(k + O(k)) elementary operations [Beckman et al.]. Quantum Fourier Transform: DFT n needs n(n ) two-qubit gates and n one-qubit gates. An upper bound on the resources for k-bit number N About 400k 3 operations are needed (can be improved to O(k log k log log k))). The space needed is 5k + qubits. Example: Factoring 8-bit and 04-bit numbers For 8-bit we need operations and 64 qubits. For 04-bit number operations and 5 qubits.

195 Shor s Algorithm: Gate Counts Modular exponentiation U : x 0 x a x mod N, where N is the k-bit number to be factored, and x is a k-bit number. Implementation using 396k(k + O(k)) elementary operations [Beckman et al.]. Quantum Fourier Transform: DFT n needs n(n ) two-qubit gates and n one-qubit gates. An upper bound on the resources for k-bit number N About 400k 3 operations are needed (can be improved to O(k log k log log k))). The space needed is 5k + qubits. Example: Factoring 8-bit and 04-bit numbers For 8-bit we need operations and 64 qubits. For 04-bit number operations and 5 qubits.

196 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

197 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

198 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

199 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

200 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

201 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

202 HSP: History of the Problem D. Simon, 994 Hidden Subgroups in (Z ) n. P. Shor, 994 Factoring Discrete Logarithm } Hidden Subgroups in Z M resp. Z M Z M Kitaev 95, Brassard & Høyer 97, Mosca & Ekert 98 Generalization to arbitrary abelian groups. Open Problems Can the Hidden Subgroups Problem be solved for Any non-abelian group? (yes!) All non-abelian groups? (don t know) Interesting non-abelian groups? (progress, but still open)

203 The Hidden Subgroup Problem (HSP) Definition of the problem Given: Finite group G, finite set S, map f : G S Promise: There exists H G where f constant on G/H, g H g H implies f (g ) f (g ). Problem: Find generators for H. Note This is a natural generalization of Simon s problem. There G = F n and in addition we know H = s =. In fact, the HSP for any subgroup H IF n can be solved efficiently. Mathematically G f S π i G/H

204 The Hidden Subgroup Problem (HSP) Definition of the problem Given: Finite group G, finite set S, map f : G S Promise: There exists H G where f constant on G/H, g H g H implies f (g ) f (g ). Problem: Find generators for H. Note This is a natural generalization of Simon s problem. There G = F n and in addition we know H = s =. In fact, the HSP for any subgroup H IF n can be solved efficiently. Mathematically G f S π i G/H

205 HSP: Separation of Pre-images Visualization of the cosets of G f H f g H. g H n f G R

206 Examples for Hidden Subgroup Problems Simon s Problem Find hidden subgroup in G = Z n of a black-box function f : G {0, } m, where m n and x y + H f (x) = f (y). Factoring Find hidden subgroup in G = Z M with respect to the function Discrete logarithm problem f (x) := a x mod N. Find hidden subgroup in G = Z M Z M with respect to the function f (x, y) := a x b y mod p. The graph isomorphism problem Can be reduced to the problem of finding certain hidden subgroups of order in the non-abelian group G = S n S.

207 Examples for Hidden Subgroup Problems Simon s Problem Find hidden subgroup in G = Z n of a black-box function f : G {0, } m, where m n and x y + H f (x) = f (y). Factoring Find hidden subgroup in G = Z M with respect to the function Discrete logarithm problem f (x) := a x mod N. Find hidden subgroup in G = Z M Z M with respect to the function f (x, y) := a x b y mod p. The graph isomorphism problem Can be reduced to the problem of finding certain hidden subgroups of order in the non-abelian group G = S n S.

208 Examples for Hidden Subgroup Problems Simon s Problem Find hidden subgroup in G = Z n of a black-box function f : G {0, } m, where m n and x y + H f (x) = f (y). Factoring Find hidden subgroup in G = Z M with respect to the function Discrete logarithm problem f (x) := a x mod N. Find hidden subgroup in G = Z M Z M with respect to the function f (x, y) := a x b y mod p. The graph isomorphism problem Can be reduced to the problem of finding certain hidden subgroups of order in the non-abelian group G = S n S.

209 Examples for Hidden Subgroup Problems Simon s Problem Find hidden subgroup in G = Z n of a black-box function f : G {0, } m, where m n and x y + H f (x) = f (y). Factoring Find hidden subgroup in G = Z M with respect to the function Discrete logarithm problem f (x) := a x mod N. Find hidden subgroup in G = Z M Z M with respect to the function f (x, y) := a x b y mod p. The graph isomorphism problem Can be reduced to the problem of finding certain hidden subgroups of order in the non-abelian group G = S n S.

210 Duality of the Fourier Transform Basic identity DFT A ( U x U+c Geometric interpretation ) x = U y U ϕ c,y y Amplitude Shifted Line DFT Phase

211 Duality of the Fourier Transform Basic identity DFT A ( U x U+c Geometric interpretation ) x = U y U ϕ c,y y Amplitude Shifted Line DFT Phase

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Petros Wallden Lecture 7: Complexity & Algorithms I 13th October 016 School of Informatics, University of Edinburgh Complexity - Computational Complexity: Classification

More information

Chapter 10. Quantum algorithms

Chapter 10. Quantum algorithms Chapter 10. Quantum algorithms Complex numbers: a quick review Definition: C = { a + b i : a, b R } where i = 1. Polar form of z = a + b i is z = re iθ, where r = z = a 2 + b 2 and θ = tan 1 y x Alternatively,

More information

Compute the Fourier transform on the first register to get x {0,1} n x 0.

Compute the Fourier transform on the first register to get x {0,1} n x 0. CS 94 Recursive Fourier Sampling, Simon s Algorithm /5/009 Spring 009 Lecture 3 1 Review Recall that we can write any classical circuit x f(x) as a reversible circuit R f. We can view R f as a unitary

More information

Complex numbers: a quick review. Chapter 10. Quantum algorithms. Definition: where i = 1. Polar form of z = a + b i is z = re iθ, where

Complex numbers: a quick review. Chapter 10. Quantum algorithms. Definition: where i = 1. Polar form of z = a + b i is z = re iθ, where Chapter 0 Quantum algorithms Complex numbers: a quick review / 4 / 4 Definition: C = { a + b i : a, b R } where i = Polar form of z = a + b i is z = re iθ, where r = z = a + b and θ = tan y x Alternatively,

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Part II Emma Strubell http://cs.umaine.edu/~ema/quantum_tutorial.pdf April 13, 2011 Overview Outline Grover s Algorithm Quantum search A worked example Simon s algorithm

More information

Lecture 2: From Classical to Quantum Model of Computation

Lecture 2: From Classical to Quantum Model of Computation CS 880: Quantum Information Processing 9/7/10 Lecture : From Classical to Quantum Model of Computation Instructor: Dieter van Melkebeek Scribe: Tyson Williams Last class we introduced two models for deterministic

More information

Ph 219b/CS 219b. Exercises Due: Wednesday 22 February 2006

Ph 219b/CS 219b. Exercises Due: Wednesday 22 February 2006 1 Ph 219b/CS 219b Exercises Due: Wednesday 22 February 2006 6.1 Estimating the trace of a unitary matrix Recall that using an oracle that applies the conditional unitary Λ(U), Λ(U): 0 ψ 0 ψ, 1 ψ 1 U ψ

More information

Introduction to Quantum Computing

Introduction to Quantum Computing Introduction to Quantum Computing Part I Emma Strubell http://cs.umaine.edu/~ema/quantum_tutorial.pdf April 12, 2011 Overview Outline What is quantum computing? Background Caveats Fundamental differences

More information

Fourier Sampling & Simon s Algorithm

Fourier Sampling & Simon s Algorithm Chapter 4 Fourier Sampling & Simon s Algorithm 4.1 Reversible Computation A quantum circuit acting on n qubits is described by an n n unitary operator U. Since U is unitary, UU = U U = I. This implies

More information

Quantum Circuits and Algorithms

Quantum Circuits and Algorithms Quantum Circuits and Algorithms Modular Arithmetic, XOR Reversible Computation revisited Quantum Gates revisited A taste of quantum algorithms: Deutsch algorithm Other algorithms, general overviews Measurements

More information

Introduction to Quantum Information Processing

Introduction to Quantum Information Processing Introduction to Quantum Information Processing Lecture 6 Richard Cleve Overview of Lecture 6 Continuation of teleportation Computation and some basic complexity classes Simple quantum algorithms in the

More information

Simulation of quantum computers with probabilistic models

Simulation of quantum computers with probabilistic models Simulation of quantum computers with probabilistic models Vlad Gheorghiu Department of Physics Carnegie Mellon University Pittsburgh, PA 15213, U.S.A. April 6, 2010 Vlad Gheorghiu (CMU) Simulation of quantum

More information

Simulating classical circuits with quantum circuits. The complexity class Reversible-P. Universal gate set for reversible circuits P = Reversible-P

Simulating classical circuits with quantum circuits. The complexity class Reversible-P. Universal gate set for reversible circuits P = Reversible-P Quantum Circuits Based on notes by John Watrous and also Sco8 Aaronson: www.sco8aaronson.com/democritus/ John Preskill: www.theory.caltech.edu/people/preskill/ph229 Outline Simulating classical circuits

More information

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT Quantum algorithms (CO 78, Winter 008) Prof. Andrew Childs, University of Waterloo LECTURE : Quantum circuits and the abelian QFT This is a course on quantum algorithms. It is intended for graduate students

More information

Lecture 4: Elementary Quantum Algorithms

Lecture 4: Elementary Quantum Algorithms CS 880: Quantum Information Processing 9/13/010 Lecture 4: Elementary Quantum Algorithms Instructor: Dieter van Melkebeek Scribe: Kenneth Rudinger This lecture introduces several simple quantum algorithms.

More information

Lecture 3: Constructing a Quantum Model

Lecture 3: Constructing a Quantum Model CS 880: Quantum Information Processing 9/9/010 Lecture 3: Constructing a Quantum Model Instructor: Dieter van Melkebeek Scribe: Brian Nixon This lecture focuses on quantum computation by contrasting it

More information

Quantum Computing Lecture 6. Quantum Search

Quantum Computing Lecture 6. Quantum Search Quantum Computing Lecture 6 Quantum Search Maris Ozols Grover s search problem One of the two most important algorithms in quantum computing is Grover s search algorithm (invented by Lov Grover in 1996)

More information

6.896 Quantum Complexity Theory September 18, Lecture 5

6.896 Quantum Complexity Theory September 18, Lecture 5 6.896 Quantum Complexity Theory September 18, 008 Lecturer: Scott Aaronson Lecture 5 Last time we looked at what s known about quantum computation as it relates to classical complexity classes. Today we

More information

An Introduction to Quantum Information and Applications

An Introduction to Quantum Information and Applications An Introduction to Quantum Information and Applications Iordanis Kerenidis CNRS LIAFA-Univ Paris-Diderot Quantum information and computation Quantum information and computation How is information encoded

More information

. An introduction to Quantum Complexity. Peli Teloni

. An introduction to Quantum Complexity. Peli Teloni An introduction to Quantum Complexity Peli Teloni Advanced Topics on Algorithms and Complexity µπλ July 3, 2014 1 / 50 Outline 1 Motivation 2 Computational Model Quantum Circuits Quantum Turing Machine

More information

Ph 219b/CS 219b. Exercises Due: Wednesday 4 December 2013

Ph 219b/CS 219b. Exercises Due: Wednesday 4 December 2013 1 Ph 219b/CS 219b Exercises Due: Wednesday 4 December 2013 4.1 The peak in the Fourier transform In the period finding algorithm we prepared the periodic state A 1 1 x 0 + jr, (1) A j=0 where A is the

More information

Introduction to Quantum Information, Quantum Computation, and Its Application to Cryptography. D. J. Guan

Introduction to Quantum Information, Quantum Computation, and Its Application to Cryptography. D. J. Guan Introduction to Quantum Information, Quantum Computation, and Its Application to Cryptography D. J. Guan Abstract The development of quantum algorithms and quantum information theory, as well as the design

More information

Lecture 1: Introduction to Quantum Computing

Lecture 1: Introduction to Quantum Computing Lecture : Introduction to Quantum Computing Rajat Mittal IIT Kanpur What is quantum computing? This course is about the theory of quantum computation, i.e., to do computation using quantum systems. These

More information

Lecture 22: Quantum computational complexity

Lecture 22: Quantum computational complexity CPSC 519/619: Quantum Computation John Watrous, University of Calgary Lecture 22: Quantum computational complexity April 11, 2006 This will be the last lecture of the course I hope you have enjoyed the

More information

Quantum Computation. Michael A. Nielsen. University of Queensland

Quantum Computation. Michael A. Nielsen. University of Queensland Quantum Computation Michael A. Nielsen University of Queensland Goals: 1. To eplain the quantum circuit model of computation. 2. To eplain Deutsch s algorithm. 3. To eplain an alternate model of quantum

More information

6.080/6.089 GITCS May 6-8, Lecture 22/23. α 0 + β 1. α 2 + β 2 = 1

6.080/6.089 GITCS May 6-8, Lecture 22/23. α 0 + β 1. α 2 + β 2 = 1 6.080/6.089 GITCS May 6-8, 2008 Lecturer: Scott Aaronson Lecture 22/23 Scribe: Chris Granade 1 Quantum Mechanics 1.1 Quantum states of n qubits If you have an object that can be in two perfectly distinguishable

More information

Simon s algorithm (1994)

Simon s algorithm (1994) Simon s algorithm (1994) Given a classical circuit C f (of polynomial size, in n) for an f : {0, 1} n {0, 1} n, such that for a certain s {0, 1} n \{0 n }: x, y {0, 1} n (x y) : f (x) = f (y) x y = s with

More information

Extended Superposed Quantum State Initialization Using Disjoint Prime Implicants

Extended Superposed Quantum State Initialization Using Disjoint Prime Implicants Extended Superposed Quantum State Initialization Using Disjoint Prime Implicants David Rosenbaum, Marek Perkowski Portland State University, Department of Computer Science Portland State University, Department

More information

Semiconductors: Applications in spintronics and quantum computation. Tatiana G. Rappoport Advanced Summer School Cinvestav 2005

Semiconductors: Applications in spintronics and quantum computation. Tatiana G. Rappoport Advanced Summer School Cinvestav 2005 Semiconductors: Applications in spintronics and quantum computation Advanced Summer School 1 I. Background II. Spintronics Spin generation (magnetic semiconductors) Spin detection III. Spintronics - electron

More information

CS257 Discrete Quantum Computation

CS257 Discrete Quantum Computation CS57 Discrete Quantum Computation John E Savage April 30, 007 Lect 11 Quantum Computing c John E Savage Classical Computation State is a vector of reals; e.g. Booleans, positions, velocities, or momenta.

More information

Quantum Computing: Foundations to Frontier Fall Lecture 3

Quantum Computing: Foundations to Frontier Fall Lecture 3 Quantum Computing: Foundations to Frontier Fall 018 Lecturer: Henry Yuen Lecture 3 Scribes: Seyed Sajjad Nezhadi, Angad Kalra Nora Hahn, David Wandler 1 Overview In Lecture 3, we started off talking about

More information

QLang: Qubit Language

QLang: Qubit Language QLang: Qubit Language Christopher Campbell Clément Canonne Sankalpa Khadka Winnie Narang Jonathan Wong September 24, 24 Introduction In 965, Gordon Moore predicted that the number of transistors in integrated

More information

CSCI 2570 Introduction to Nanocomputing. Discrete Quantum Computation

CSCI 2570 Introduction to Nanocomputing. Discrete Quantum Computation CSCI 2570 Introduction to Nanocomputing Discrete Quantum Computation John E Savage November 27, 2007 Lect 22 Quantum Computing c John E Savage What is Quantum Computation It is very different kind of computation

More information

α x x 0 α x x f(x) α x x α x ( 1) f(x) x f(x) x f(x) α x = α x x 2

α x x 0 α x x f(x) α x x α x ( 1) f(x) x f(x) x f(x) α x = α x x 2 Quadratic speedup for unstructured search - Grover s Al- CS 94- gorithm /8/07 Spring 007 Lecture 11 01 Unstructured Search Here s the problem: You are given an efficient boolean function f : {1,,} {0,1},

More information

Ph 219b/CS 219b. Exercises Due: Wednesday 20 November 2013

Ph 219b/CS 219b. Exercises Due: Wednesday 20 November 2013 1 h 219b/CS 219b Exercises Due: Wednesday 20 November 2013 3.1 Universal quantum gates I In this exercise and the two that follow, we will establish that several simple sets of gates are universal for

More information

Introduction to Quantum Computation

Introduction to Quantum Computation Chapter 1 Introduction to Quantum Computation 1.1 Motivations The main task in this course is to discuss application of quantum mechanics to information processing (or computation). Why? Education:Asingleq-bitisthesmallestpossiblequantummechanical

More information

QUANTUM COMPUTATION. Exercise sheet 1. Ashley Montanaro, University of Bristol H Z U = 1 2

QUANTUM COMPUTATION. Exercise sheet 1. Ashley Montanaro, University of Bristol H Z U = 1 2 School of Mathematics Spring 017 QUANTUM COMPUTATION Exercise sheet 1 Ashley Montanaro, University of Bristol ashley.montanaro@bristol.ac.uk 1. The quantum circuit model. (a) Consider the following quantum

More information

arxiv: v1 [quant-ph] 31 Dec 2015

arxiv: v1 [quant-ph] 31 Dec 2015 Computational Complexity of Some Quantum Theories in 1 + 1 Dimensions Saeed Mehraban arxiv:1512.09243v1 [quant-ph] 31 Dec 2015 Computer Science and Artificial Intelligence Laboratory Massachusetts Institute

More information

Quantum Algorithms. 1. Definition of the Subject and Its Importance. 4. Factoring, Discrete Logarithms, and the Abelian Hidden Subgroup Problem

Quantum Algorithms. 1. Definition of the Subject and Its Importance. 4. Factoring, Discrete Logarithms, and the Abelian Hidden Subgroup Problem Quantum Algorithms Michele Mosca Institute for Quantum Computing and Dept. of Combinatorics & Optimization University of Waterloo and St. Jerome s University, and Perimeter Institute for Theoretical Physics

More information

Quantum Information Processing with Liquid-State NMR

Quantum Information Processing with Liquid-State NMR Quantum Information Processing with Liquid-State NMR Pranjal Vachaspati, Sabrina Pasterski MIT Department of Physics (Dated: May 8, 23) We demonstrate the use of a Bruker Avance 2 NMR Spectrometer for

More information

Quantum Information Processing and Diagrams of States

Quantum Information Processing and Diagrams of States Quantum Information and Diagrams of States September 17th 2009, AFSecurity Sara Felloni sara@unik.no / sara.felloni@iet.ntnu.no Quantum Hacking Group: http://www.iet.ntnu.no/groups/optics/qcr/ UNIK University

More information

Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models. CS448J, Autumn 2015, Stanford University Dominik L.

Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models. CS448J, Autumn 2015, Stanford University Dominik L. Concepts and Algorithms of Scientific and Visual Computing Advanced Computation Models CS448J, Autumn 2015, Stanford University Dominik L. Michels Advanced Computation Models There is a variety of advanced

More information

Quantum Computing. 6. Quantum Computer Architecture 7. Quantum Computers and Complexity

Quantum Computing. 6. Quantum Computer Architecture 7. Quantum Computers and Complexity Quantum Computing 1. Quantum States and Quantum Gates 2. Multiple Qubits and Entangled States 3. Quantum Gate Arrays 4. Quantum Parallelism 5. Examples of Quantum Algorithms 1. Grover s Unstructured Search

More information

A Thermodynamic Turing Machine: Artificial Molecular Computing Using Classical Reversible Logic Switching Networks [1]

A Thermodynamic Turing Machine: Artificial Molecular Computing Using Classical Reversible Logic Switching Networks [1] 1 arxiv:0904.3273v2 [cs.cc] 14 May 2009 A Thermodynamic Turing Machine: Artificial Molecular Computing Using Classical Reversible Logic Switching Networks [1] Abstract A Thermodynamic Turing Machine (TTM)

More information

Advanced Cryptography Quantum Algorithms Christophe Petit

Advanced Cryptography Quantum Algorithms Christophe Petit The threat of quantum computers Advanced Cryptography Quantum Algorithms Christophe Petit University of Oxford Christophe Petit -Advanced Cryptography 1 Christophe Petit -Advanced Cryptography 2 The threat

More information

QUANTUM COMPUTATION. Lecture notes. Ashley Montanaro, University of Bristol 1 Introduction 2

QUANTUM COMPUTATION. Lecture notes. Ashley Montanaro, University of Bristol 1 Introduction 2 School of Mathematics Spring 018 Contents QUANTUM COMPUTATION Lecture notes Ashley Montanaro, University of Bristol ashley.montanaro@bristol.ac.uk 1 Introduction Classical and quantum computational complexity

More information

Seminar 1. Introduction to Quantum Computing

Seminar 1. Introduction to Quantum Computing Seminar 1 Introduction to Quantum Computing Before going in I am also a beginner in this field If you are interested, you can search more using: Quantum Computing since Democritus (Scott Aaronson) Quantum

More information

NQP = co-c = P. Electronic Colloquium on Computational Complexity, Report No. 73 (1998)

NQP = co-c = P. Electronic Colloquium on Computational Complexity, Report No. 73 (1998) NQP = co-c = P Electronic Colloquium on Computational Complexity, Report No. 73 (1998) Tomoyuki Yamakami and Andrew C. Yao Department of Computer Science, Princeton University Princeton, NJ 08544 December

More information

Quantum gate. Contents. Commonly used gates

Quantum gate. Contents. Commonly used gates Quantum gate From Wikipedia, the free encyclopedia In quantum computing and specifically the quantum circuit model of computation, a quantum gate (or quantum logic gate) is a basic quantum circuit operating

More information

Grover s algorithm. We want to find aa. Search in an unordered database. QC oracle (as usual) Usual trick

Grover s algorithm. We want to find aa. Search in an unordered database. QC oracle (as usual) Usual trick Grover s algorithm Search in an unordered database Example: phonebook, need to find a person from a phone number Actually, something else, like hard (e.g., NP-complete) problem 0, xx aa Black box ff xx

More information

Quantum Communication Complexity

Quantum Communication Complexity Quantum Communication Complexity Ronald de Wolf Communication complexity has been studied extensively in the area of theoretical computer science and has deep connections with seemingly unrelated areas,

More information

An Introduction to Quantum Computation and Quantum Information

An Introduction to Quantum Computation and Quantum Information An to and Graduate Group in Applied Math University of California, Davis March 13, 009 A bit of history Benioff 198 : First paper published mentioning quantum computing Feynman 198 : Use a quantum computer

More information

1 Bernstein-Vazirani Algorithm

1 Bernstein-Vazirani Algorithm CMSC 33001: Novel Computing Architectures and Technologies Lecturer: Yongshan Ding, Pranav Gokhale Scribe: Shankar G. Menon Lecture 08: More on Algorithms November 1, 018 1 Bernstein-Vazirani Algorithm

More information

*WILEY- Quantum Computing. Joachim Stolze and Dieter Suter. A Short Course from Theory to Experiment. WILEY-VCH Verlag GmbH & Co.

*WILEY- Quantum Computing. Joachim Stolze and Dieter Suter. A Short Course from Theory to Experiment. WILEY-VCH Verlag GmbH & Co. Joachim Stolze and Dieter Suter Quantum Computing A Short Course from Theory to Experiment Second, Updated and Enlarged Edition *WILEY- VCH WILEY-VCH Verlag GmbH & Co. KGaA Contents Preface XIII 1 Introduction

More information

Nothing Here. Fast Quantum Algorithms

Nothing Here. Fast Quantum Algorithms Nothing Here Fast Quantum Algorithms or How we learned to put our pants on two legs at a time. Dave Bacon Institute for Quantum Information California Institute of Technology ? A prudent question is one-half

More information

Lecture 1: Introduction to Quantum Computing

Lecture 1: Introduction to Quantum Computing Lecture 1: Introduction to Quantum Computing Rajat Mittal IIT Kanpur Whenever the word Quantum Computing is uttered in public, there are many reactions. The first one is of surprise, mostly pleasant, and

More information

Quantum Information & Quantum Computation

Quantum Information & Quantum Computation CS9A, Spring 5: Quantum Information & Quantum Computation Wim van Dam Engineering, Room 59 vandam@cs http://www.cs.ucsb.edu/~vandam/teaching/cs9/ Administrivia Who has the book already? Office hours: Wednesday

More information

Unitary evolution: this axiom governs how the state of the quantum system evolves in time.

Unitary evolution: this axiom governs how the state of the quantum system evolves in time. CS 94- Introduction Axioms Bell Inequalities /7/7 Spring 7 Lecture Why Quantum Computation? Quantum computers are the only model of computation that escape the limitations on computation imposed by the

More information

An Architectural Framework For Quantum Algorithms Processing Unit (QAPU)

An Architectural Framework For Quantum Algorithms Processing Unit (QAPU) An Architectural Framework For Quantum s Processing Unit (QAPU) Mohammad Reza Soltan Aghaei, Zuriati Ahmad Zukarnain, Ali Mamat, and ishamuddin Zainuddin Abstract- The focus of this study is developing

More information

C/CS/Phys C191 Quantum Gates, Universality and Solovay-Kitaev 9/25/07 Fall 2007 Lecture 9

C/CS/Phys C191 Quantum Gates, Universality and Solovay-Kitaev 9/25/07 Fall 2007 Lecture 9 C/CS/Phys C191 Quantum Gates, Universality and Solovay-Kitaev 9/25/07 Fall 2007 Lecture 9 1 Readings Benenti, Casati, and Strini: Quantum Gates Ch. 3.2-3.4 Universality Ch. 3.5-3.6 2 Quantum Gates Continuing

More information

Quantum Computing: A Future Trends in Computing

Quantum Computing: A Future Trends in Computing Volume 3, No. 3, May-June 2012 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info Quantum Computing: A Future Trends in Computing Amit V.Pandhare

More information

C/CS/Phys 191 Quantum Gates and Universality 9/22/05 Fall 2005 Lecture 8. a b b d. w. Therefore, U preserves norms and angles (up to sign).

C/CS/Phys 191 Quantum Gates and Universality 9/22/05 Fall 2005 Lecture 8. a b b d. w. Therefore, U preserves norms and angles (up to sign). C/CS/Phys 191 Quantum Gates and Universality 9//05 Fall 005 Lecture 8 1 Readings Benenti, Casati, and Strini: Classical circuits and computation Ch.1.,.6 Quantum Gates Ch. 3.-3.4 Universality Ch. 3.5-3.6

More information

ROM-BASED COMPUTATION: QUANTUM VERSUS CLASSICAL

ROM-BASED COMPUTATION: QUANTUM VERSUS CLASSICAL arxiv:quant-ph/0109016v2 2 Jul 2002 ROM-BASED COMPUTATION: QUANTUM VERSUS CLASSICAL B. C. Travaglione, M. A. Nielsen Centre for Quantum Computer Technology, University of Queensland St Lucia, Queensland,

More information

Lecture 1: Overview of quantum information

Lecture 1: Overview of quantum information CPSC 59/69: Quantum Computation John Watrous, University of Calgary References Lecture : Overview of quantum information January 0, 006 Most of the material in these lecture notes is discussed in greater

More information

Tutorial on Quantum Computing. Vwani P. Roychowdhury. Lecture 1: Introduction

Tutorial on Quantum Computing. Vwani P. Roychowdhury. Lecture 1: Introduction Tutorial on Quantum Computing Vwani P. Roychowdhury Lecture 1: Introduction 1 & ) &! # Fundamentals Qubits A single qubit is a two state system, such as a two level atom we denote two orthogonal states

More information

Ph 219b/CS 219b. Exercises Due: Wednesday 11 February 2009

Ph 219b/CS 219b. Exercises Due: Wednesday 11 February 2009 1 Ph 219b/CS 219b Exercises Due: Wednesday 11 February 2009 5.1 The peak in the Fourier transform In the period finding algorithm we prepared the periodic state A 1 1 x 0 + jr, (1) A j=0 where A is the

More information

Lecture 3: Hilbert spaces, tensor products

Lecture 3: Hilbert spaces, tensor products CS903: Quantum computation and Information theory (Special Topics In TCS) Lecture 3: Hilbert spaces, tensor products This lecture will formalize many of the notions introduced informally in the second

More information

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1 Introduction Symbolical artificial intelligence is a field of computer science that is highly related to quantum computation. At first glance, this statement appears to be a contradiction. However,

More information

Algorithms for quantum computers. Andrew Childs Department of Combinatorics & Optimization and Institute for Quantum Computing University of Waterloo

Algorithms for quantum computers. Andrew Childs Department of Combinatorics & Optimization and Institute for Quantum Computing University of Waterloo Algorithms for quantum computers Andrew Childs Department of Combinatorics & Optimization and Institute for Quantum Computing University of Waterloo What is a computer? A means for performing calculations

More information

1 Quantum Circuits. CS Quantum Complexity theory 1/31/07 Spring 2007 Lecture Class P - Polynomial Time

1 Quantum Circuits. CS Quantum Complexity theory 1/31/07 Spring 2007 Lecture Class P - Polynomial Time CS 94- Quantum Complexity theory 1/31/07 Spring 007 Lecture 5 1 Quantum Circuits A quantum circuit implements a unitary operator in a ilbert space, given as primitive a (usually finite) collection of gates

More information

Quantum Algorithms. Andreas Klappenecker Texas A&M University. Lecture notes of a course given in Spring Preliminary draft.

Quantum Algorithms. Andreas Klappenecker Texas A&M University. Lecture notes of a course given in Spring Preliminary draft. Quantum Algorithms Andreas Klappenecker Texas A&M University Lecture notes of a course given in Spring 003. Preliminary draft. c 003 by Andreas Klappenecker. All rights reserved. Preface Quantum computing

More information

Quantum Computing. Joachim Stolze and Dieter Suter. A Short Course from Theory to Experiment. WILEY-VCH Verlag GmbH & Co. KGaA

Quantum Computing. Joachim Stolze and Dieter Suter. A Short Course from Theory to Experiment. WILEY-VCH Verlag GmbH & Co. KGaA Joachim Stolze and Dieter Suter Quantum Computing A Short Course from Theory to Experiment Second, Updated and Enlarged Edition WILEY- VCH WILEY-VCH Verlag GmbH & Co. KGaA Preface XIII 1 Introduction and

More information

Quantum Computing Lecture 8. Quantum Automata and Complexity

Quantum Computing Lecture 8. Quantum Automata and Complexity Quantum Computing Lecture 8 Quantum Automata and Complexity Maris Ozols Computational models and complexity Shor s algorithm solves, in polynomial time, a problem for which no classical polynomial time

More information

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome!

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome! i Computational Complexity: A Modern Approach Draft of a book: Dated January 2007 Comments welcome! Sanjeev Arora and Boaz Barak Princeton University complexitybook@gmail.com Not to be reproduced or distributed

More information

arxiv: v3 [cs.dm] 13 Feb 2018

arxiv: v3 [cs.dm] 13 Feb 2018 An Introduction to Quantum Computing, Without the Physics Giacomo Nannicini IBM T.J. Watson, Yorktown Heights, NY nannicini@us.ibm.com Last updated: February 14, 018. arxiv:1708.03684v3 [cs.dm] 13 Feb

More information

Database Manipulation Operations on Quantum Systems

Database Manipulation Operations on Quantum Systems Quant Inf Rev, No, 9-7 (203) 9 Quantum Information Review An International Journal http://dxdoiorg/02785/qir/0002 Database Manipulation Operations on Quantum Systems Ahmed Younes Department of Mathematics

More information

Is Quantum Search Practical?

Is Quantum Search Practical? DARPA Is Quantum Search Practical? George F. Viamontes Igor L. Markov John P. Hayes University of Michigan, EECS Outline Motivation Background Quantum search Practical Requirements Quantum search versus

More information

Quantum Computation CMU BB, Fall Week 6 work: Oct. 11 Oct hour week Obligatory problems are marked with [ ]

Quantum Computation CMU BB, Fall Week 6 work: Oct. 11 Oct hour week Obligatory problems are marked with [ ] Quantum Computation CMU 15-859BB, Fall 2018 Week 6 work: Oct. 11 Oct. 18 12-hour week Obligatory problems are marked with [ ] 1. [CCNOT.] In class we showed how to simulate classical AND, OR, NOT, and

More information

Quantum Communication

Quantum Communication Quantum Communication Harry Buhrman CWI & University of Amsterdam Physics and Computing Computing is physical Miniaturization quantum effects Quantum Computers ) Enables continuing miniaturization ) Fundamentally

More information

Analyzing Quantum Circuits Via Polynomials

Analyzing Quantum Circuits Via Polynomials Analyzing Quantum Circuits Via Polynomials Kenneth W. Regan 1 University at Buffalo (SUNY) 23 January, 2014 1 Includes joint work with Amlan Chakrabarti and Robert Surówka Quantum Circuits Quantum circuits

More information

6.896 Quantum Complexity Theory September 9, Lecture 2

6.896 Quantum Complexity Theory September 9, Lecture 2 6.96 Quantum Complexity Theory September 9, 00 Lecturer: Scott Aaronson Lecture Quick Recap The central object of study in our class is BQP, which stands for Bounded error, Quantum, Polynomial time. Informally

More information

How hard is it to approximate the Jones polynomial?

How hard is it to approximate the Jones polynomial? How hard is it to approximate the Jones polynomial? Greg Kuperberg UC Davis June 17, 2009 The Jones polynomial and quantum computation Recall the Jones polynomial ( = Kauffman bracket): = q 1/2 q 1/2 =

More information

Quantum Computers. Peter Shor MIT

Quantum Computers. Peter Shor MIT Quantum Computers Peter Shor MIT 1 What is the difference between a computer and a physics experiment? 2 One answer: A computer answers mathematical questions. A physics experiment answers physical questions.

More information

C/CS/Phys C191 Grover s Quantum Search Algorithm 11/06/07 Fall 2007 Lecture 21

C/CS/Phys C191 Grover s Quantum Search Algorithm 11/06/07 Fall 2007 Lecture 21 C/CS/Phys C191 Grover s Quantum Search Algorithm 11/06/07 Fall 2007 Lecture 21 1 Readings Benenti et al, Ch 310 Stolze and Suter, Quantum Computing, Ch 84 ielsen and Chuang, Quantum Computation and Quantum

More information

Quantum Computing. Winter Quarter, 2011 and Spring Quarter, 2013

Quantum Computing. Winter Quarter, 2011 and Spring Quarter, 2013 Quantum Computing Instructor: Alexander Razborov, University of Chicago. razborov@cs.uchicago.edu Course Homepage: http://people.cs.uchicago.edu/~razborov/teaching/winter11.html Winter Quarter, 2011 and

More information

Errata list, Nielsen & Chuang. rrata/errata.html

Errata list, Nielsen & Chuang.  rrata/errata.html Errata list, Nielsen & Chuang http://www.michaelnielsen.org/qcqi/errata/e rrata/errata.html Part II, Nielsen & Chuang Quantum circuits (Ch 4) SK Quantum algorithms (Ch 5 & 6) Göran Johansson Physical realisation

More information

Quantum algorithms. Andrew Childs. Institute for Quantum Computing University of Waterloo

Quantum algorithms. Andrew Childs. Institute for Quantum Computing University of Waterloo Quantum algorithms Andrew Childs Institute for Quantum Computing University of Waterloo 11th Canadian Summer School on Quantum Information 8 9 June 2011 Based in part on slides prepared with Pawel Wocjan

More information

Quantum Searching. Robert-Jan Slager and Thomas Beuman. 24 november 2009

Quantum Searching. Robert-Jan Slager and Thomas Beuman. 24 november 2009 Quantum Searching Robert-Jan Slager and Thomas Beuman 24 november 2009 1 Introduction Quantum computers promise a significant speed-up over classical computers, since calculations can be done simultaneously.

More information

Quantum Computation. Yongjian Han. Fall Key Lab. of Quantum Information, CAS, USTC. uantum Entanglement Network Group (USTC) Fall / 88

Quantum Computation. Yongjian Han. Fall Key Lab. of Quantum Information, CAS, USTC. uantum Entanglement Network Group (USTC) Fall / 88 Quantum Computation Yongjian Han Key Lab. of Quantum Information, CAS, USTC Fall 2015 uantum Entanglement Network Group (USTC) Fall 2015 1 / 88 Overview Course Overview In the following, we will introduce

More information

Exponential algorithmic speedup by quantum walk

Exponential algorithmic speedup by quantum walk Exponential algorithmic speedup by quantum walk Andrew Childs MIT Center for Theoretical Physics joint work with Richard Cleve Enrico Deotto Eddie Farhi Sam Gutmann Dan Spielman quant-ph/0209131 Motivation

More information

arxiv:quant-ph/ v5 6 Apr 2005

arxiv:quant-ph/ v5 6 Apr 2005 Nonunitary quantum circuit Hiroaki Terashima 1, and Masahito Ueda 1, arxiv:quant-ph/3461v5 6 Apr 5 1 Department of Physics, Tokyo Institute of Technology, Tokyo 15-8551, Japan CREST, Japan Science and

More information

COMPUTATIONAL COMPLEXITY

COMPUTATIONAL COMPLEXITY COMPUTATIONAL COMPLEXITY A Modern Approach SANJEEV ARORA Princeton University BOAZ BARAK Princeton University {Щ CAMBRIDGE Щ0 UNIVERSITY PRESS Contents About this book Acknowledgments Introduction page

More information

10 Quantum Complexity Theory I

10 Quantum Complexity Theory I 10 Quantum Complexity Theory I Just as the theory of computability had its foundations in the Church-Turing thesis, computational complexity theory rests upon a modern strengthening of this thesis, which

More information

Quantum Computing. Thorsten Altenkirch

Quantum Computing. Thorsten Altenkirch Quantum Computing Thorsten Altenkirch Is Computation universal? Alonzo Church - calculus Alan Turing Turing machines computable functions The Church-Turing thesis All computational formalisms define the

More information

Experimental Realization of Shor s Quantum Factoring Algorithm

Experimental Realization of Shor s Quantum Factoring Algorithm Experimental Realization of Shor s Quantum Factoring Algorithm M. Steffen1,2,3, L.M.K. Vandersypen1,2, G. Breyta1, C.S. Yannoni1, M. Sherwood1, I.L.Chuang1,3 1 IBM Almaden Research Center, San Jose, CA

More information

LECTURE NOTES ON QUANTUM COMPUTATION. Cornell University, Physics , CS 483; Spring, 2005 c 2006, N. David Mermin

LECTURE NOTES ON QUANTUM COMPUTATION. Cornell University, Physics , CS 483; Spring, 2005 c 2006, N. David Mermin LECTURE NOTES ON QUANTUM COMPUTATION Cornell University, Physics 481-681, CS 483; Spring, 2005 c 2006, N. David Mermin IV. Searching with a Quantum Computer Last revised 3/30/06 Suppose you know that eactly

More information

Quantum Algorithms Lecture #2. Stephen Jordan

Quantum Algorithms Lecture #2. Stephen Jordan Quantum Algorithms Lecture #2 Stephen Jordan Last Time Defined quantum circuit model. Argued it captures all of quantum computation. Developed some building blocks: Gate universality Controlled-unitaries

More information

arxiv: v4 [cs.dm] 19 Nov 2018

arxiv: v4 [cs.dm] 19 Nov 2018 An Introduction to Quantum Computing, Without the Physics Giacomo Nannicini IBM T.J. Watson, Yorktown Heights, NY nannicini@us.ibm.com Last updated: November 0, 018. arxiv:1708.03684v4 [cs.dm] 19 Nov 018

More information

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

Introduction to Quantum Information Processing QIC 710 / CS 768 / PH 767 / CO 681 / AM 871 Introduction to Quantum Information Processing QIC 710 / CS 768 / PH 767 / CO 681 / AM 871 Lecture 1 (2017) Jon Yard QNC 3126 jyard@uwaterloo.ca TAs Nitica Sakharwade nsakharwade@perimeterinstitute.ca

More information

Lecture 13: Lower Bounds using the Adversary Method. 2 The Super-Basic Adversary Method [Amb02]

Lecture 13: Lower Bounds using the Adversary Method. 2 The Super-Basic Adversary Method [Amb02] Quantum Computation (CMU 18-859BB, Fall 015) Lecture 13: Lower Bounds using the Adversary Method October 1, 015 Lecturer: Ryan O Donnell Scribe: Kumail Jaffer 1 Introduction There are a number of known

More information