Small-Depth Quantum Circuits Frederic Green Department of Math/CS Clark University Worcester, MA.

Slides:



Advertisements
Similar presentations
Department of Computer Science & Engineering University of Washington
Advertisements

New Evidence That Quantum Mechanics Is Hard to Simulate on Classical Computers Scott Aaronson Parts based on joint work with Alex Arkhipov.
Quantum Computation and Quantum Information – Lecture 3
University of Queensland
Quantum Computing MAS 725 Hartmut Klauck NTU
Quantum Packet Switching A. Yavuz Oruç Department of Electrical and Computer Engineering University of Maryland, College Park.
Resent Progress in Quantum Algorithms Min Zhang. Overview What is Quantum Algorithm Challenges to QA What motivates new QAs Quantum Theory in a Nutshell.
March 11, 2015CS21 Lecture 271 CS21 Decidability and Tractability Lecture 27 March 11, 2015.
A Brief Introduction to Quantum Computation 1 Melanie Mitchell Portland State University 1 This talk is based on the following paper: E. Rieffel & W. Polak,
1 Quantum Computing: What’s It Good For? Scott Aaronson Computer Science Department, UC Berkeley January 10,  John.
Quantum Computation and Error Correction Ali Soleimani.
University of Queensland
CSEP 590tv: Quantum Computing
Quantum Computing Joseph Stelmach.
Anuj Dawar.
1 Recap (I) n -qubit quantum state: 2 n -dimensional unit vector Unitary op: 2 n  2 n linear operation U such that U † U = I (where U † denotes the conjugate.
Quantum Mechanics from Classical Statistics. what is an atom ? quantum mechanics : isolated object quantum mechanics : isolated object quantum field theory.
Shor’s Algorithm Osama Awwad Department of Computer Science Western Michigan University July 12, 2015.
Quantum Algorithms Preliminaria Artur Ekert. Computation INPUT OUTPUT Physics Inside (and outside) THIS IS WHAT OUR LECTURES WILL.
ROM-based computations: quantum versus classical B.C. Travaglione, M.A.Nielsen, H.M. Wiseman, and A. Ambainis.
Quantum computing Alex Karassev. Quantum Computer Quantum computer uses properties of elementary particle that are predicted by quantum mechanics Usual.
CSEP 590tv: Quantum Computing Dave Bacon June 29, 2005 Today’s Menu Administrivia Complex Numbers Bra’s Ket’s and All That Quantum Circuits.
Quantum Computing MAS 725 Hartmut Klauck NTU
Classical Versus Quantum. Goal: Fast, low-cost implementation of useful algorithms using standard components (gates) and design techniques Classical Logic.
Quantum Algorithms for Neural Networks Daniel Shumow.
Quantum Error Correction Jian-Wei Pan Lecture Note 9.
Outline Main result Quantum computation and quantum circuits Feynman’s sum over paths Polynomials QuPol program “Quantum Polynomials” Quantum polynomials.
Quantum Computers Algorithms and applications. Simulating classical operations 2/41 Dušan Gajević.
1 Introduction to Quantum Information Processing QIC 710 / CS 678 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 / QNC 3129 Lectures.
Quantum Computation for Dummies Dan Simon Microsoft Research UW students.
October 1 & 3, Introduction to Quantum Computing Lecture 2 of 2 Richard Cleve David R. Cheriton School of Computer Science Institute for Quantum.
Cove: A Practical Quantum Computer Programming Framework Matt Purkeypile Doctorate of Computer Science Dissertation Defense June 26, 2009.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Course.
Lecture note 8: Quantum Algorithms
Algorithms Artur Ekert. Our golden sequence H H Circuit complexity n QUBITS B A A B B B B A # of gates (n) = size of the circuit (n) # of parallel units.
October 1 & 3, Introduction to Quantum Computing Lecture 1 of 2 Introduction to Quantum Computing Lecture 1 of 2
Quantum Computing MAS 725 Hartmut Klauck NTU
Short course on quantum computing Andris Ambainis University of Latvia.
Quantum Factoring Michele Mosca The Fifth Canadian Summer School on Quantum Information August 3, 2005.
Solving mutual exclusion by using entangled Qbits Mohammad Rastegari proff: Dr.Rahmani.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
Quantum Computing MAS 725 Hartmut Klauck NTU
1 Introduction to Quantum Information Processing CS 667 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 Lecture 20 (2009)
Quantum Computing and Quantum Programming Language
Cove: A Practical Quantum Computer Programming Framework Matt Purkeypile (DCS3) Winter 2009.
Shor’s Factoring Algorithm
1/22 Quantum Algorithms Deutsch-Josza Algorithm: quantum computers are more powerful than classical ones. b f(b) b f(b) b f(b) 0 1 b f(b) 0.
Introduction to Quantum Computing
Quantum Computing Michael Larson. The Quantum Computer Quantum computers, like all computers, are machines that perform calculations upon data. Quantum.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 653 Lecture.
Quantum Computation Stephen Jordan. Church-Turing Thesis ● Weak Form: Anything we would regard as “computable” can be computed by a Turing machine. ●
Richard Cleve DC 2117 Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871 Lecture (2011)
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 2117 Lecture.
1 An Introduction to Quantum Computing Sabeen Faridi Ph 70 October 23, 2007.
Beginner’s Guide to Quantum Computing Graduate Seminar Presentation Oct. 5, 2007.
Quantum Computing Keith Kelley CS 6800, Theory of Computation.
Attendance Syllabus Textbook (hardcopy or electronics) Groups s First-time meeting.
Richard Cleve DC 3524 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Lecture.
Richard Cleve DC 2117 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681 Lecture.
Introduction to Quantum Computing Lecture 1 of 2
For computer scientists
A Ridiculously Brief Overview
OSU Quantum Information Seminar
Quantum Computation and Information Chap 1 Intro and Overview: p 28-58
Quantum computation with classical bits
Quantum Computation – towards quantum circuits and algorithms
Quantum Computing Joseph Stelmach.
Presentation transcript:

Small-Depth Quantum Circuits Frederic Green Department of Math/CS Clark University Worcester, MA

Some Background Computers (as we know them) obey the laws of classical physics. But Nature is quantum mechanical! Feynman (ca. 1981) noted that “quantum mechanical computers” can probably simulate physical systems more efficiently than classical ones. Deutsch (1985) introduced quantum Turing machines, and found evidence that they can solve hard problems more efficiently than classical Turing machines. Shor (1994) found an efficient quantum algorithm to factor a number. No known classical algorithm can do this.

In This Talk: What is quantum computation? (Answer: Quantum circuits.) How do we measure its efficiency? (Answer: Computational complexity theory.) Start with an intro to quantum computing… Two Important Questions: Can we build a quantum computer? If we could build one, would it be useful? Ignore first question above; concentrate on second.

What is quantum computation? Approach from the point of view of classical probabilistic computation. Example: Miller-Rabin primality test. Very roughly stated: To determine if n is prime: Randomly generate a bunch of numbers m < n. Check that m k = 1 (mod n), or -1, for certain (carefully chosen!) k. If so, return TRUE, else FALSE. As we generate more and more bits of m, the number of possible “configurations of memory” increases exponentially. But the right answer is obtained with very high probability.

A picture of this process: time “possible configuration of memory” (only one when we start out)

t=0

t=1

t=2

t=3

|n| 2 |n|

|n| 2 |n| Desired configurations m

Interpretation: At any step of the computation, memory can be in any one of a large number of configurations. Each configuration occurs with a certain probability; represent this set of probabilities as a vector (2 n components for n bits). The vector of probabilities evolves over time according to a certain set of rules determined by the algorithm.

“Vector of probabilities” t=0

t=1

t=2

t=3

t=4

Evolution of probabilities (classical formulation): Let v(t) = vector of probabilities at time t. v i (t) = probability that we are in configuration i at time t. I.e., there is a matrix M such that, v(t+1) = Mv(t) M i j is simply the probability that configuration j yields configuration i. It’s not hard to see that v(t) evolves linearly. So (of course!) M i j is a real number in [0,1]. M must leave  i v i (t) invariant (probabilities sum to 1).

Evolution of probabilities (quantum formulation): Let v(t) = vector of probability amplitudes at time t. v i (t) is a complex number whose norm squared |v i (t)| 2 = probability that we are in configuration i at time t. I.e., there is a matrix U such that, v(t+1) = Uv(t) U i j is a complex number whose norm squared is the probability that configuration j yields configuration i. As in the classical case, v(t) evolves linearly. So (of course!) U i j is not necessarily a real number in [0,1]. U must leave  i |v i (t)| 2 invariant (probabilities sum to 1). Hence U is unitary: UU † = 1.

Measurement After the computation has evolved, we may measure the configuration. The matrix U, applied to the initial configuration, determines the probability that we end up in any given configuration. Once the bits of the configuration have been measured, they will retain their measured value until acted on again (“collapse of the wavefunction”).

WHY? Don’t ask!

Consequences Configurations can actually cancel! Because of unitarity, quantum computation is reversible!

t=0

t=1

t=2 Cancel

t=3 Cancel

t=4

Left with exactly what we want! (we hope!)

Building Blocks of Quantum Information Bits: Qubit: Computational basis state: (Column vector with one non-zero entry corresponding to a single (classical) configuration of memory.) More generally, a quantum state is a linear combination, or “superposition” of computational basis states.

Building Blocks of Quantum Computation Construct our unitary transformations from one of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation!

Controlled-Not (“CNOT”) Building Blocks of Quantum Computation Construct our unitary transformations from one of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation!

Controlled-Not (“CNOT”)Toffoli Building Blocks of Quantum Computation Construct our unitary transformations from one of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation!

Controlled-Not (“CNOT”) Hadamard H = Toffoli Building Blocks of Quantum Computation Construct our unitary transformations from one of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation!

Controlled-Not (“CNOT”) Hadamard H = Toffoli Phase S = Building Blocks of Quantum Computation Construct our unitary transformations from one of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation!

What Quantum Circuits Can Do: Entanglement H

What Quantum Circuits Can Do: Entanglement H Measure one bit, and know that the other has the same value instantaneously, even if it is at the other end of the universe! Einstein called this “spooky action at a distance” and believed that it could prove the absurdity of quantum mechanics. But it has been observed in the laboratory, and appears to be useful for quantum computation.

What Quantum Circuits Can Do: Deutsch Algorithm Suppose f is a boolean function f : {0,1} {0,1}. Classically, to evaluate the exclusive-or of f(0) and f(1) requires two evaluations. With quantum circuits, we can compute it with only one!

What Quantum Circuits Can Do: Deutsch Algorithm Suppose f is a boolean function f : {0,1} {0,1}. Classically, to evaluate the exclusive-or of f(0) and f(1) requires two evaluations. With quantum circuits, we can compute it with only one! UfUf Classical circuit to evaluate f Note it’s just evaluated once

What Quantum Circuits Can Do: Deutsch Algorithm Suppose f is a boolean function f : {0,1} {0,1}. Classically, to evaluate the exclusive-or of f(0) and f(1) requires two evaluations. With quantum circuits, we can compute it with only one! UfUf H HH H

What Quantum Circuits Can Do: Deutsch Algorithm Suppose f is a boolean function f : {0,1} {0,1}. Classically, to evaluate the exclusive-or of f(0) and f(1) requires two evaluations. With quantum circuits, we can compute it with only one! UfUf H HH H

What Quantum Circuits Can Do: Deutsch Algorithm Suppose f is a boolean function f : {0,1} {0,1}. Classically, to evaluate the exclusive-or of f(0) and f(1) requires two evaluations. With quantum circuits, we can compute it with only one! UfUf H HH H Destructive interference and entanglement (of x with f(x)) are crucial in this algorithm.

What Quantum Circuits Can Do: Factor Numbers (Shor’s Algorithm) Factoring reduces to period finding: Otherwise, it is useful to find the minimum r such that m r = 1 (mod n), the period of m mod n. Start by “guessing” an m < n with gcd(m, n) = 1. If we find gcd(m, n) > 1, we have a factor! This is the hard part. All other steps (including the guessing of m) are classical, based on elementary number theory. Crucial tool for finding the period: Fourier Transform This is the only quantum part of Shor’s algorithm!

The Quantum Fourier Transform (QFT) Let (2 k -th root of unity)

The Quantum Fourier Transform (QFT) Let (2 k -th root of unity) The QFT acts on an k-bit quantum register:

The Quantum Fourier Transform (QFT) Let (2 k -th root of unity) The QFT acts on an k-bit quantum register: QFT k bits Apply QFT (twice) to obtain a superposition with states whose probability amplitudes depend on sums of powers of.

The powers of are arranged so that…. For those states in which b doesn’t help us determine the period, they (mostly) cancel. (In fact, when r is a power of 2, the “bad” states cancel exactly.)

The powers of are arranged so that…. For those states in which b doesn’t help us determine the period, they (mostly) cancel. For those states in which b does help us determine the period, they add. (In fact, when r is a power of 2, the “bad” states cancel exactly.)

Shor’s algorithm is exponentially faster than any known classical algorithm for factoring. But this does not prove that quantum computers would be exponentially faster. It is possible we have just not been clever enough to think up a polynomial-time classical algorithm for factoring. Grover’s database search algorithm (1996) does give a provable quadratic speed-up over classical algorithms, but not exponential. There is one realm in which quantum circuits give a provable exponential improvement over classical circuits, and that is for constant-depth circuits. Some Remarks on Complexity

Classical Circuits Building blocks: ORNOT x1x1 xnxn AND x1x1 xnxn i=1 n xixi n xixi xx A typical question in computational complexity: How many of these gates are needed to compute an explicit Boolean function of n inputs, as n increases? Generally very difficult to answer such questions, especially when you introduce more powerful circuit elements.

Some Classical Circuit Complexity Suppose we would like to compute parity: Plus our circuits can only have constant depth. Answer (Razborov/Smolensky, 1987): No. Exponential size! More generally, Smolensky proved that if q, p are distinct primes, computing the MOD q function requires exponential size constant-depth circuits with AND, OR, and MOD p gates. …but we only have AND, OR, and NOT gates, and, as an added bonus, MOD3 gates, that determine if the number of 1’s in the input is divisible by 3. Can it be done with a polynomial number of gates? (i.e., is the number of ones odd?)

Analogous Quantum Circuits [Green, Homer, Moore & Pollett 2002] Imagine (someday) we could have unbounded fan-in Toffoli gates, and gates that could reversibly fan out bits (classical only; qubits cannot be copied by the no-cloning theorem).

Analogous Quantum Circuits [Green, Homer, Moore & Pollett 2002] Imagine (someday) we could have unbounded fan-in Toffoli gates, and gates that could reversibly fan out bits (classical only; qubits cannot be copied by the no-cloning theorem). x1x1 x2x2 xnxn x1x1 x2x2 xnxn b i=1 n b xixi Generalized Toffoli

Analogous Quantum Circuits [Green, Homer, Moore & Pollett 2002] Imagine (someday) we could have unbounded fan-in Toffoli gates, and gates that could reversibly fan out bits (classical only; qubits cannot be copied by the no-cloning theorem). x1x1 x2x2 xnxn x1x1 x2x2 xnxn b i=1 n b xixi Generalized Toffoli x1x1 x2x2 xnxn b b Fanout bx1x1 bx2x2 bxnxn = Constant depth circuits built out of these gates alone are equivalent to those built out of AND, OR and NOT (in constant depth). What happens if we also allow the single-qubit gates (e.g., Hadamard and phase)?

Fanout Gates are Powerful!

H H H H H H H H

H H H H H H H H Fanout Gates are Powerful! H H H H H H H H =

H H H H H H H H Fanout Gates are Powerful! H H H H H H H H = =

H H H H H H H H Fanout Gates are Powerful! H H H H H H H H = = This is a parity gate!

H H H H H H H H Fanout Gates are Powerful! H H H H H H H H = = This is a parity gate! 2

H H H H H H H H Fanout Gates are Powerful H H H H H H H H = = This is a parity gate! 2 In the quantum circuit world, the mere presence of fanout allows us to compute parity…

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times:

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times: MMMM n layers

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers:

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T layer 1

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T layer 2

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T layer 3

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T layer 4

Fanout Gates Allow Parallelization Suppose we have a controlled unitary operator M that we would like to apply n times. With fanout, we can do it in constant depth: First diagonalize M, writing M = T † DT. Thus M n = T † D n T. The following does this in 5 layers: T†T† D D D T layer 5

Consequence: Fanout Gates are REALLY Powerful! For quantum circuits, MOD q is as good as MOD p, for any q, p (prime or otherwise), up to polynomial size and constant depth. Computing MOD q reduces to fanout and vice versa, for any q, in poly. size/constant depth. (Contrast with the classical results of Razborov/Smolensky, where Mod q requires exponential size circuits with Mod p!) (But wait, there’s more….)

Consequence: Fanout Gates are REALLY REALLY Powerful! Høyer and Spalek (2003) use a clever adaptation of our parallelization method to show that threshold gates reduce to fanout. The Quantum Fourier Transform can be done in constant depth, poly. size with just single-qubit and fanout gates. For constant depth quantum circuits, “EVERYTHING” reduces to fanout! Hence, IF we could implement fanout gates, we could do the quantum part of Shor’s algorithm in constant time. (But that’s a big “if”!)

Open Problems, Current Work For physicists: Can we implement fanout? (One candidate technology: Ion trap) For complexity theorists: Can we implement fanout using single qubits and Toffoli gates? (Ongoing work of Fang, Fenner, Green, Homer, Zhang strongly suggests “no”) For everyone: Can we come up with new quantum algorithms?