A Ridiculously Brief Overview

Slides:



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

Quantum Computation and Quantum Information – Lecture 3
Quantum Circuit Decomposition
University of Queensland
Puzzle Twin primes are two prime numbers whose difference is two.
Cove: A Practical Quantum Computer Programming Framework Matt Purkeypile Fall 2008.
Quantum Packet Switching A. Yavuz Oruç Department of Electrical and Computer Engineering University of Maryland, College Park.
March 11, 2015CS21 Lecture 271 CS21 Decidability and Tractability Lecture 27 March 11, 2015.
Department of Computer Science & Engineering University of Washington
Phase in Quantum Computing. Main concepts of computing illustrated with simple examples.
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
Quantum Computing Joseph Stelmach.
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.
Introduction to Quantum logic (2) Yong-woo Choi.
Quantum Algorithms Preliminaria Artur Ekert. Computation INPUT OUTPUT Physics Inside (and outside) THIS IS WHAT OUR LECTURES WILL.
CSEP 590tv: Quantum Computing Dave Bacon June 29, 2005 Today’s Menu Administrivia Complex Numbers Bra’s Ket’s and All That Quantum Circuits.
Presented by: Erik Cox, Shannon Hintzman, Mike Miller, Jacquie Otto, Adam Serdar, Lacie Zimmerman.
Quantum Computing MAS 725 Hartmut Klauck NTU
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.
Small-Depth Quantum Circuits Frederic Green Department of Math/CS Clark University Worcester, MA.
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.
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
1 Introduction to Quantum Information Processing CS 667 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 Lecture 20 (2009)
Modeling Quantum Computing in Haskell Amr Sabry عمرو صبرى Indiana University.
Quantum Computing and Quantum Programming Language
Cove: A Practical Quantum Computer Programming Framework Matt Purkeypile (DCS3) Winter 2009.
Shor’s Factoring Algorithm
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 Computing: An Introduction Khalid Muhammad 1 History of Quantum Computing Bits and Qubits Problems with the Quantum Machine.
Quantum Computers The basics. Introduction 2/47 Dušan Gajević.
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)
Quantum Computer Simulation Alex Bush Matt Cole James Hancox Richard Inskip Jan Zaucha.
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.
Quantum Bits (qubit) 1 qubit probabilistically represents 2 states
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
Quantum Circuits and Algorithms
For computer scientists
Quantum Computing: What’s It Good For?
Quantum One.
Chap 4 Quantum Circuits: p
Introduction to Quantum logic (2)
OSU Quantum Information Seminar
Quantum Computation and Information Chap 1 Intro and Overview: p 28-58
Quantum computation with classical bits
Quantum Computing Joseph Stelmach.
Presentation transcript:

A Ridiculously Brief Overview Quantum Computing: A Ridiculously Brief Overview Frederic Green CS270 Clark University Spring 2018

Some Background Computation as we know it obeys classical laws; 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 some 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. Grover (1996) found a quantum algorithm to search an unsorted database of n items in time O(√n). This is not possible classically.

Two Important Questions: Can we build a quantum computer? If we could build one, would it be useful? In these lectures: Mostly ignore first question above. Start with a quick explanation of what quantum computing is… then see a little of what we can do with it.

Let’s see what quantum computation is mathematically. First let’s look at 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 mk = 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

2|n| |n|

Desired configurations m |n|

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 (2n 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”

“Vector of probabilities”

“Vector of probabilities”

“Vector of probabilities”

“Vector of probabilities”

The “tree” representation is a little misleading: many configurations t=3

The “tree” representation is a little misleading: can lead to one t=4

...but this clarifies what’s happening: j = prob that j leads to i Let Then i.e., matrix multiplication! .....to sum up:

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

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

Once again:

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

Evolution of probabilities (quantum formulation): Let v(t) = vector of probability amplitudes at time t. vi(t) is a complex number whose square norm |vi(t)|2 = probability that we are in configuration i at time t. As in the classical case, v(t) evolves linearly. I.e., there is a matrix U such that, v(t+1) = Uv(t) Ui j is a complex number whose norm squared is the probability that configuration j yields configuration i. So (of course!) Ui j is not necessarily a real number in [0,1]. U must leave Si |vi(t)|2 invariant (prob’s 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!

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

t=0

t=1

Cancel t=2

Cancel t=3

t=4

Left with exactly what we want! (we hope!) t=4

Quantum Computing Just as classical computing transforms classical information, quantum computing (in its standard formulation) transforms quantum information. Quantum information is transformed via unitary transformations (true of any quantum state) Just as we build up classical computers out of elementary logic gates (AND, OR, NOT), so we build up quantum circuits out of elementary unitary transformations. Before looking at these, look at what we are transforming....

Building Blocks of Quantum Information Bits: Computational basis state: (Column vector with one non-zero entry corresponding to a single (classical) configuration of memory.)

Computational Basis States

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

Overall Setup 1. Begin computation with a computational basis state: Or a superposition: 2. Apply a unitary operator to 3. Measure certain output bits; these give the output of the computation (with probabilities determined by and the initial ).

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

Building Blocks of Quantum Computation Construct our unitary transformations by combining elements 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 by combining elements 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 by combining elements of a set of quantum gates. The following are universal: sufficient for realizing any unitary transformation! Controlled-Not (“CNOT”) Toffoli Hadamard = H

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

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 (and quantum crypto!).

Generalization: “Cat State”:

“Schrödinger’s Cat”:

Seen on a T-shirt:

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 evaluation!

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 evaluation! Uf 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 evaluation! H H Uf H 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 evaluation! H H Uf H 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 evaluation! H H Uf H 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: Start by “guessing” an m < n with gcd(m, n) = 1. If we find gcd(m, n) > 1, we have a factor! Otherwise, it is useful to find the minimum r such that mr = 1 (mod n), the period of m mod n. 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: Quantum Fourier Transform This is the only quantum part of Shor’s algorithm!

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

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

The Quantum Fourier Transform (QFT) Let (2k-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.)

Let’s look at some of this stuff in more detail.....