Lecture 4: Elementary Quantum Algorithms

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

Fourier Sampling & Simon s Algorithm

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

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

Lecture 1: Overview of quantum information

6.896 Quantum Complexity Theory September 18, Lecture 5

Lecture 10: Eigenvalue Estimation

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

Quantum Computing Lecture 6. Quantum Search

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

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

Lecture 3: Constructing a Quantum Model

Quantum Algorithms Lecture #2. Stephen Jordan

Lecture 2: From Classical to Quantum Model of Computation

Lecture 15: The Hidden Subgroup Problem

Hilbert Space, Entanglement, Quantum Gates, Bell States, Superdense Coding.

An Introduction to Quantum Information and Applications

Lecture 9: Phase Estimation

Lecture 3: Superdense coding, quantum circuits, and partial measurements

Quantum Circuits and Algorithms

Short introduction to Quantum Computing

Introduction to Quantum Information Processing

Introduction to Quantum Computing

Quantum algorithms (CO 781/CS 867/QIC 823, Winter 2013) Andrew Childs, University of Waterloo LECTURE 13: Query complexity and the polynomial method

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

An Introduction to Quantum Computation and Quantum Information

Introduction to Quantum Computing

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

1 Bernstein-Vazirani Algorithm

Quantum Computing: Foundations to Frontier Fall Lecture 3

Nothing Here. Fast Quantum Algorithms

Richard Cleve David R. Cheriton School of Computer Science Institute for Quantum Computing University of Waterloo

First, let's review classical factoring algorithm (again, we will factor N=15 but pick different number)

Lecture 21: Quantum communication complexity

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

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

The query register and working memory together form the accessible memory, denoted H A. Thus the state of the algorithm is described by a vector

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

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

6.896 Quantum Complexity Theory October 2, Lecture 9

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

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

Advanced Cryptography Quantum Algorithms Christophe Petit

Simon s algorithm (1994)

Lecture 23: Alternation vs. Counting

Shor s Prime Factorization Algorithm

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 11: From random walk to quantum walk

Lecture 12: Grover s Algorithm

CS257 Discrete Quantum Computation

CSCI 2570 Introduction to Nanocomputing. Discrete Quantum Computation

An Architectural Framework For Quantum Algorithms Processing Unit (QAPU)

b) (5 points) Give a simple quantum circuit that transforms the state

Simulation of quantum computers with probabilistic models

Chapter 10. Quantum algorithms

. Here we are using the standard inner-product over C k to define orthogonality. Recall that the inner-product of two vectors φ = i α i.

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

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

Lecture 1: Introduction to Quantum Computing

Lecture 22: Counting

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

Lecture 8: Alternatation. 1 Alternate Characterizations of the Polynomial Hierarchy

Extended Superposed Quantum State Initialization Using Disjoint Prime Implicants

Example: sending one bit of information across noisy channel. Effects of the noise: flip the bit with probability p.

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

CS120, Quantum Cryptography, Fall 2016

Notes for Lecture 14 v0.9

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

Quantum Communication

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

Talk by Johannes Vrana

Lecture 23: Introduction to Quantum Complexity Theory 1 REVIEW: CLASSICAL COMPLEXITY THEORY

Lecture 3: Reductions and Completeness

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

Quantum Information Processing with Liquid-State NMR

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

Deutsch Algorithm on Classical Circuits

6.080/6.089 GITCS May 13, Lecture 24

Quantum Algorithms Lecture #3. Stephen Jordan

1 Measurements, Tensor Products, and Entanglement

Lecture 8: Linearity and Assignment Testing

C/CS/Phys C191 Amplitude Amplification, Quantum Zeno, Vaidman s bomb 11/10/09 Fall 2009 Lecture 22

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

Volume 2, Issue 9, September 2014 International Journal of Advance Research in Computer Science and Management Studies

Lecture 1: Introduction to Quantum Computing

Theoretical Cryptography, Lectures 18-20

Quantum Gates, Circuits & Teleportation

Quantum Simulation. 9 December Scott Crawford Justin Bonnar

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

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

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

Security Implications of Quantum Technologies

Seminar 1. Introduction to Quantum Computing

QLang: Qubit Language

Quantum Error Correction and Fault Tolerance. Classical Repetition Code. Quantum Errors. Barriers to Quantum Error Correction

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

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

How hard is it to approximate the Jones polynomial?

Quantum Algorithms: Problem Set 1

Discrete Quantum Theories

D.1 Deutsch-Jozsa algorithm

Transcription:

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. The particular algorithms introduced here solve their respective problems faster than their corresponding classical algorithms (deterministic or probabilistic). Specifically, we examine the Deutsch, Deutsch-Josza, Bernstein- Vazirani, and Simon problems.. 1 Solving Black Box Problems For the time being, we concern ourselves only with black box problems. A black box problem is one in which we are given a function f. All we know for certain about this function is that f : {0, 1} n {0, 1} m. It is our goal to determine some property of f. (If we are given further information about this function, we call it a promise function, as some property of the function has been promised to us.) To determine the desired property property, we are given access to a transformation (the black box) which acts on an input of our choosing (residing in {0, 1} n ); the transformation s output is the function in question applied to our input. owever, because valid quantum computations must correspond to invertible (more specifically, unitary) transformations, the black box actually performs the function f : {0, 1} n {0, 1} m {0, 1} n {0, 1} m : (x, y) (x, y f(x)). We denote the unitary transformation that realizes f by. One example of such is a transformation where m = 1. If we start in the state ψ 0 = x 0, then we see that ψ 0 = x f(x) 0 = x f(x). We then apply R π to the ancilla qubit, mapping x, f(x) to ( 1) f(x) x, f(x). Lastly, we apply to the state again, sending the ancilla back to its original state of 0, and keeping the non-ancilla qubits in the state we desired to create, ( 1) f(x) x. Pictured below is the corresponding circuit. x 1 x... x n 0 R π x, 0 x, f(x) ( 1) f(x) x, f(x) ( 1) f(x) x, 0 This particular method is referred to as phase kickback, as f(x) is encoded in the phase of our final state. 1

This transformation required two queries of our oracle. Can we achieve this phase kickback with only one query? It turns out that we can. Let s instead initialize our ancilla qubit to (Recall: = 1 ( 0 1 ) = 1.) Now when we apply, the ancilla remains in the state, and we pick up the desired phase, that is: x = ( 1) f(x) x. Thus we can achieve phase kickback with only one query of our oracle, as shown below. x 1 x... x n x, 0 ( 1) f(x) x, 0 Keeping in mind this phase kickback trick, we now turn our attention to the four problems mentioned above Deutsch s Problem Consider a function f such that f : {0, 1} n {0, 1} m. (ere, n = m = 1.) The question we wish to answer is: Does f(0) = f(1)? Classically, we must make two queries of our oracle, one to determine f(0), the other to determine f(1). (Even if we use probabilistic computation instead of deterministic, we are still required to make two queries.) owever, with a quantum circuit, we need only one query. We will use the phase kickback technique, recalling that: 0 ( 1) f(0) 0 1 ( 1) f(1) 1 If we apply the phase kickback to a superposition of these states, we find 1 ( 0 + 1 ) 1 (( 1) f(0) 0 + ( 1) f(1) 1 ) If f(0) = f(1), then this state reduces to ± 1 ( 0 + 1 ) = ± +. If f(0) f(1), the resulting state is ± 1 ( 0 1 ) = ±. We note then that these two states are orthogonal. Therefore, there exists a unitary transformation which will map one of these states to 0 and the other to 1. This transformation is the adamard gate. Therefore, the resulting quantum circuit is:

+ +, ( 1) f(x) x, 0 Thus if we observe the 0 state, we know that f(0) = f(1), and vice-versa for an observation of the 1. Therefore, we see that with only one query, we are able to determine the nature of f, with 100% accuracy. 3 Deutsch-Jozsa Problem Now we consider a more general problem, where our function takes a string of n qubits: f : {0, 1} n {0, 1} Additionally, this is a promise problem; we are told some additional information about f. In this particular case, we know that f is either balanced or constant. (In the n=1 case, we see that this reduces to just the Deutsch problem.) It is our task to determine whether f is balanced or constant. ow many queries are required to answer this question correctly? Deterministically, n 1 +1 queries are required. The number of queries required using a classical randomized algorithm will depend on the allowed error. If k inputs are chosen at random, k queries will yield a correct answer with error less than or equal to 1 k. (If the function is balanced, we could discover this in a minimum of two queries, if we are lucky. The most unlucky we can be is to choose k inputs that have the same output, leading us to guess incorrectly that the function is constant. The probability of choosing k inputs with the same output, and hence guessing wrong, is 1 k.) owever, there exists a quantum algorithm which yields 100% accuracy (modulo experimental error) with only 1 query, providing a tremendous speedup, from exponential to constant! ow does this algorithm work? Start with an initial state which is a uniform superposition of n qubits, tensored together with one ancilla in the state, or: ψ 0 = 1 n ( Apply to this state. If f is constant, we find that: ψ 0 = ± 1 n ( x {0,1} n x ) x {0,1} n x ) If f is balanced, ψ 0 takes on a more complicated form, but as in the Deutsch algorithm, Uf balanced ψ 0 is orthogonal to Uf constant ψ 0. Therefore, all we need is, as before, a unitary transformation that will send Uf balanced ψ 0 to a string of all 0s. Again, the adamard gate will serve this purpose; applying it to each (non-ancilla) wire yields the desired result. If f is constant, the final readout will be the all-0 string. As Uf balanced ψ 0 is orthogonal to Uf constant ψ 0, the final readout 3

for a balanced f cannot be the all-0 string. Thus in one query have we determined the nature of f, with 100% accuracy. Shown below is the quantum circuit diagram for this algorithm. +... 3.1 Note on the adamard Gate + n 0 n (If f is balanced.) Before proceeding, let us consider the operation of n adamard gates on a base state of length n: n x. We see that such an operation has the following action: n x = n i=1 0 + ( 1) x i 1 = 1 n ( 1) x y y (1) y (x y denotes an inner product, that is, x y = n i=1 x iy i.) Thus by appropriate choice of x, we may generate all possible base states in the { +, } basis. Additionally, we can generate a uniform superposition of states if we choose x=0. 4 Bernstein-Vazirani Problem Now consider the following function. f : {0, 1} n {0, 1} x (a x + b) (mod ) (a {0, 1} n, b {0, 1}) The promise is that f conforms to the above constraints. Our task is to determine the values of a and b. (We note that the Bernstein-Vazirani promise is a restriction on Deutsch-Josza, but the question is harder to solve.) With a classical deterministic algorithm, n + 1 queries are required; 1 to determine b (query with x = 0), and n to determine a. (We also note that is, classically, the optimal algorithm, as n + 1 bits of information are required.) A classical randomized algorithm will do no better, also requiring n + 1 queries. Exercise 1. Show that any classical randomized algorithm that solves the Bernstein-Vazirani problem with reasonable error makes at least n + 1 queries. 4

Turning to the quantum algorithm, we will discover that there exists a solution that requires only two queries, solving with 100% accuracy. As before, one query is required for b, but now also only one query is required for a. b is determined in the same manner as in the classical algorithm. To determine a, we initialize to: ψ 0 = + n We note then that: ψ 0 = 1 ( ( 1) f(x) x ) = ( 1)b ( n x {0,1} n n x {0,1} n ( 1) a x x ) If we simply apply a adamard gate to each non-ancilla qubit, then the final readout will be of a (along with the ancilla), as illustrated by equation (1). +... + n ( 1) b n x ( 1)a x x a It turns out that this is the most optimal quantum algorithm for this problem; one cannot do better. 5 Simon s Algorithm Now we examine a function which maps not to {0, 1}, but to {0, 1} n instead. More specifically f : {0, 1} n {0, 1} n such that either: (1) f is one-to-one (f is a permutation.) or () s 0 (x, y)f(x) = f(y) x y = s (f is two-to-one.) (It should be noted that (1) is a special case of (), with s = 0.) Our goal here is to determine if f falls into category (1) or (), and also determine the value of s. If one were lucky, and f fell into the second category, one could solve this problem classically with only two queries (by appropriately choosing x and y such that f(x) = f(y)). owever, this is not a reliable method, nor could it tell us if f is one-to-one. The general lower bound is achieved by picking k possible values for s (k different spacings), eliminating ( ) k n values for s. Thus the lower bound is approximately queries. A randomized algorithm requires Ω( n ) queries. owever, there exists a quantum algorithm which can solve this problem in O(n) time. The demonstration of this technique is forthcoming in the next lecture (Lecture 5). 5