Universal quantum computers

Similar documents
Universal quantum computers

Lecture 2: From Classical to Quantum Model of Computation

92 CHAPTER III. QUANTUM COMPUTATION. Figure III.11: Diagram for swap (from NC).

Lecture 3: Constructing a Quantum Model

Introduction to Quantum Computing

An Introduction to Quantum Computation and Quantum Information

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

COMPARATIVE ANALYSIS ON TURING MACHINE AND QUANTUM TURING MACHINE

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

CSCI 2570 Introduction to Nanocomputing. Discrete Quantum Computation

QLang: Qubit Language

D.5 Quantum error correction

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

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

QUANTUM COMPUTER SIMULATION

2.0 Basic Elements of a Quantum Information Processor. 2.1 Classical information processing The carrier of information

Fourier Sampling & Simon s Algorithm

Factoring on a Quantum Computer

Great Ideas in Theoretical Computer Science. Lecture 28: A Gentle Introduction to Quantum Computation

Week 2: Defining Computation

SE 3310b Theoretical Foundations of Software Engineering. Turing Machines. Aleksander Essex

10 Quantum Complexity Theory I

Chapter 10. Quantum algorithms

Quantum Complexity Theory and Adiabatic Computation

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

CS257 Discrete Quantum Computation

Quantum Information & Quantum Computation

Automata Theory CS S-12 Turing Machine Modifications

Quantum Phase Estimation using Multivalued Logic

arxiv: v4 [cs.dm] 19 Nov 2018

Introduction. Pvs.NPExample

arxiv:quant-ph/ v1 28 May 1998

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

IV. Turing Machine. Yuxi Fu. BASICS, Shanghai Jiao Tong University

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

Short Course in Quantum Information Lecture 2

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

Unitary Dynamics and Quantum Circuits

1 Measurements, Tensor Products, and Entanglement

Chapter 2 Algorithms and Computation

1 Mathematical preliminaries

Decomposition of Quantum Gates

Gates for Adiabatic Quantum Computing

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

6.896 Quantum Complexity Theory September 18, Lecture 5

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

Systems I: Computer Organization and Architecture

Chapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1>

Quantum Computing. Thorsten Altenkirch

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

Principles of Quantum Mechanics Pt. 2

Synthesis of Quantum Circuit for FULL ADDER Using KHAN Gate

Combinational Logic. By : Ali Mustafa

CSCI 1590 Intro to Computational Complexity

Quantum Computing Lecture 8. Quantum Automata and Complexity

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

C. QUANTUM INFORMATION 99

Quantum computing! quantum gates! Fisica dell Energia!

Chapter 8. Turing Machine (TMs)

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

Reversible and Quantum computing. Fisica dell Energia - a.a. 2015/2016

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

MACHINE COMPUTING. the limitations

- Why aren t there more quantum algorithms? - Quantum Programming Languages. By : Amanda Cieslak and Ahmana Tarin

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

AN INTRODUCTION TO QUANTUM COMPUTING

Boolean circuits. Lecture Definitions

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).

Universal Turing Machine. Lecture 20

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

arxiv: v3 [cs.dm] 13 Feb 2018

Boolean State Transformation

Introduction to Quantum Information Processing

)j > Riley Tipton Perry University of New South Wales, Australia. World Scientific CHENNAI

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

Basics on quantum information

ECE 250 / CPS 250 Computer Architecture. Basics of Logic Design Boolean Algebra, Logic Gates

Quantum Computing Lecture 2. Review of Linear Algebra

Exemple of Hilbert spaces with dimension equal to two. *Spin1/2particle

Optimal Realizations of Controlled Unitary Gates

PUBLISHED VERSION American Physical Society

Quantum Entanglement and the Bell Matrix

FPGA-Based Circuit Model Emulation of Quantum Algorithms

Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)

Quantum gate. Contents. Commonly used gates

Boolean algebra. Examples of these individual laws of Boolean, rules and theorems for Boolean algebra are given in the following table.

2. Introduction to quantum mechanics

More Turing Machines. CS154 Chris Pollett Mar 15, 2006.

Implementing Competitive Learning in a Quantum System

Basic concepts from quantum theory

Basics on quantum information

Lecture 2: Introduction to Quantum Mechanics

QFT. Unit 1: Relativistic Quantum Mechanics

Quantum Computing. Vraj Parikh B.E.-G.H.Patel College of Engineering & Technology, Anand (Affiliated with GTU) Abstract HISTORY OF QUANTUM COMPUTING-

CS21 Decidability and Tractability

Chapter 2. Basic Principles of Quantum mechanics

DRAFT. Algebraic computation models. Chapter 14

Quantum Computation. Michael A. Nielsen. University of Queensland

Chapter 5 Arithmetic Circuits

The quantum state as a vector

Transcription:

F. UNIVERSAL QUANTUM COMPUTERS 169 F Universal quantum computers Hitherto we have used a practical definition of universality: since conventional digital computers are implemented in terms of binary digital logic, we have taken the ability to implement binary digital logic as su cient for universality. This leave open the question of the relation of quantum computers to the theoretical standard of computational universality: the Turing machine. Therefore, a natural question is: What is the power of a quantum computer? Is it super-turing or sub-turing? Another question is: What is its e ciency? Can it solve NP problems e ciently? There are a number of universal quantum computing models for both theoretical and practical purposes. F.1 Feynman on quantum computation F.1.a Simulating quantum systems In 1982 Richard Feynman discussed what would be required to simulate a quantum mechanical system on a digital computer. 22 First he considered a classical probabilistic physical system. Suppose we want to use a conventional computer to calculate the probabilities as the system evolves in time. Further suppose that the system comprises R particles that are confined to N locations in space, and that each configuration c has a probability p(c). There are N R possible configurations, since a configuration assigns a location N to each of the R particles (i.e., the number of functions R! N). Therefore to simulate all the possibilities would require keeping track of a number of quantities (the probabilities) that grows exponentially with the size of the system. This is infeasible. So let s take a weaker goal: we want a simulator that exhibits the same probabilistic behavior as the system. Our goal is that if we run both of them over and over, we will see the same distribution of behaviors. This we can do. You can implement this by having a nondeterministic computer that has the same state transition probabilities as the primary system. Let s try the same trick with quantum systems, that is, have a conventional computer that exhibits the same probabilities as the quantum system. If you do the math (which we won t), it turns out that this is impossible. The reason is that, in e ect, some of the state transitions would have to have 22 This section is based primarily on Feynman (1982).

170 CHAPTER III. QUANTUM COMPUTATION a... o b,,, SUM o ^ CARRY Figure III.38: Simple adder using reversible logic. [fig. from Feynman (1986)] 0 b C d=o' A C1 S I ~ C I... (3 = 0 I s'- --l---b SUM b' c' CARRY = d' Figure III.39: Full adder using reversible logic. [fig. from Feynman (1986)] what amount to negative probabilities, and we don t know how to do this classically. We ve seen how in quantum mechanics, probabilities can in e ect cancel by destructive interference of the wavefunctions. The conclusion is that no conventional computer can e ciently simulate a quantum computer. Therefore, if we want to (e ciently) simulate any physical system, we need aquantumcomputer. F.1.b Universal quantum computer In 1985 Feynman described several possible designs for a universal quantum computer. 23 He observes that NOT, CNOT, and CCNOT are su cient for any logic gate, as well as for COPY and EXCHANGE, and therefore for universal computation. He exhibits circuits for a simple adder (Fig. III.38) and a full adder (Fig. III.39). The goal is to construct a Hamiltonian to govern the operation of a quantum computer. Feynman describes quantum logic gates in terms of two primitive operations, which change the state of an atom (two-state system or wire ). Letters near the beginning of the alphabet (a, b, c,...) areusedfor 23 This section is based primarily on Feynman (1986).

F. UNIVERSAL QUANTUM COMPUTERS 171 data or register atoms, andthosetowardtheend(p, q, r,...) forprogram atoms (which are used for sequencing operations). In this simple sequential computer, only one program atom is set at a time. For a single line a, theannihilation operator is defined: 0 1 a = = 0ih 1. 0 0 The annihilator changes the state 1i to 0i; typicallyitlowerstheenergyof a quantum system. Applied to 0i, itleavesthestateunchangedandreturns the zero vector 0 (which is not a meaningful quantum state). It matches 1i and resets it to 0i. The operation is not unitary (because not norm preserving). It is a partial NOT operation. Its conjugate transpose it the creation operation: 24 a = 0 0 1 0 = 1ih 0. The creator transforms 0i to 1i, butleaves 1i alone, returning 0; typically is raises the energy of a quantum system. It matches 0i and sets it to 1i. This is the other half of NOT = a + a. Feynman also defines a number operation or 1-test: Consider 25 N a = a a = 0 0 0 1 = 1ih 1. This has the e ect of returning 1i for input 1i, but0 for 0i: N a = a a = 1ih0 0ih1 = 1ih0 0ih1 = 1ih 1. Thus it s a test for 1i. (This is a partial identity operation.) Similarly, the 0-test is defined: 26 1 N a = aa = 1 0 0 0 = 0ih 0. 24 Note that Feynman uses a for the adjoint (conjugate transpose) of a. 25 This matrix is not the same as that given in Feynman (1982, 1986), since Feynman uses the basis 1i =(1, 0) T, 0i =(0, 1) T, whereas we use 0i =(1, 0) T and 1i =(0, 1) T. 26 This matrix is di erent from that given in Feynman (1982, 1986), as explained in the previous footnote.

172 CHAPTER III. QUANTUM COMPUTATION <o C... q IF c = t GO p TO q AND PUT c =O p ~ IF c =O GO p TO r AND PUT c= I I H : q* cp + r*c*p IF c = I GO r TO p AND PUT c:o IF c =O GO q TO p AND PUT c= I + p*c*q + p*cr Figure III.40: Switch element. 0/1 annotations on the wires show the c values. [fig. from Feynman (1986)] (Feynman writes this 1 N a because he writes 1 = I.) This has the e ect of returning 0i for input 0i, but0 for 1i. Thisistestfor 0i. (Itistherest of the identity operation.) The two operations a and a are su cient for creating all 2 2matrices, and therefore all transformations on a single qubit. Note that w x = waa + xa + ya + za a. y z Feynman writes A a for the negation operation applied to a. Obviously, A a = a + a (it annihilates 1i and creates from 0i) and1 = aa + a a (it passes 0i and passes 1i. WecanprovethatA a A a = 1 (Exer. III.51). Feynman writes A a,b for the CNOT operation applied to lines a and b. Observe, A a,b = a a(b + b )+aa. Notice that this is a tensor product on the register a, bi: A a,b = a a (b + b )+aa 1. Youcanwritethisformula N a A b +(1 N a ) 1. Thatis,ifN a detects 1i, thenitnegatesb. If1 N a detects 0i, thenitleavesb alone. Feynman writes A ab,c for the CCNOT operation applied to lines a, b, and c. Note that A ab,c = 1 + a ab b(c + c 1)(Exer.III.52). Thisformulais more comprehensible in this form: A ab,c = 1 + N a N b (A c 1). One of Feynman s universal computers is based on only two logic gates, Not and Switch (Fig. III.40). If c = 1i, then the cursor (locus of control)

F. UNIVERSAL QUANTUM COMPUTERS 173 O sminot01tm a s =b+ t I s N t N I Figure III.41: CNOT implemented by switches. 0/1 annotations on the wires show the a values. [fig. from Feynman (1986)] at p moves to q, butifc = 0i it moves to r. Italsonegatesc in the process. It s also reversible (see Fig. III.40). The switch is a tensor product on c, p, q, ri: q cp + r c p +[p c q + p cr]. (The bracketed expression is just the complex conjugate of the first part, required for reversibility.) Read the factors in each term from right to left: (1) q cp: ifp and c are set, then unset them and set q. (2) r c p:ifp is set and c is not set, the unset p and set c and r. Fig. III.41 shows CNOT implemented by switches. This is the controlled- NOT applied to data a, b and sequenced by cursor atoms s, t (= start, terminate). If a =1thecursorstatemovesalongthetopline,andifa =0 along the bottom. If it moves along the top, then it applies b + b to negate b (otherwise leaving it alone). In either case, the cursor arrives at the reversed switch, where sets the next cursor atom t. We can write it H a,b (s, t) =s Mas + t a t M + t M(b + b )s M + s Na s + t at N + t Ns N +c.c, where c.c means to add the complex conjugates of the preceding terms. Read the factors in each term from right to left: (1) s M as: ifs and a are set, then unset them and set s M. (4) s N a s:ifs is set and a in unset, then unset s and set s N and a. (6) t N s N:ifs N is set, then unset it and set t N. (3) t M (b + b )s M :ifs M is set, then unset it, negate b and set t M.

174 CHAPTER III. QUANTUM COMPUTATION f f copy I i~ NOT f IJ Figure III.42: Garbage clearer. 0/1 annotations on the wires show the f values. [fig. from Feynman (1986)] (5) t at N : if t N and a are set (as a must be to get here), then unset them and set t. (2) t a t M :ift M is set and a is unset (as it must be to get here), then reverse their states and set t. (The t N s N term can be eliminated by setting t N = s N.) F.1.c Garbage clearer Instead of having a separate copy of the machine to clear out the garbage, it s possible to run the same machine backwards (Fig. III.42). An external register In contains the input, and the output register Out and all machine registers are initialized to 0s. Let s be the starting program atom. The flag f is initially 0. The f =0flagroutescontrolthroughthereversedswitch(settingf =1) to Copy. The Copy box uses CNOTs to copy the external input into M. Next M operates, generating the result in an internal register. At the end of the process M contains garbage. The f =1flagdirectscontrolintotheupperbranch(resettingf =0), which uses CNOTs to copy the result into the external output register Out. Control then passes out from the upper branch of the switch down and back into the lower branch, which negates f, settingittof =1. Controlpasses back into the machine through the lower switch branch (resetting f =0),and backwards through M, clearingoutallthegarbage,restoringalltheregisters to 0s. It passes backwards through the Copy box, copying the input back from M to the external input register In. This restores the internal registers to 0s. Control finally passes out through the lower branch of the left switch (setting f =1),butitnegatesf again, so f =0. Itarrivesattheterminal

F. UNIVERSAL QUANTUM COMPUTERS 175 program atom t. Attheendoftheprocess,everythingisresettotheinitial conditions, except that we have the result in the Out register. Feynman also discusses how to do subroutines and other useful programming constructs, but we won t go into those details. F.2 Benio s quantum Turing machine In 1980 Paul Benio published the first design for a universal quantum computer, which was based on the Turing machine (Benio, 1980). The tape is represented by a finite lattice of quantum spin systems with eigenstates corresponding to the tape symbols. (Therefore, he cannot implement an open-ended TM tape, but neither can an ordinary digital computer.) The read/write head is a spinless system that moves along the lattice. The state of the TM was represented by another spin system. Benio defined unitary operators for doing the various operations (e.g., changing the tape). In 1982 he extended his model to erase the tape, as in Bennett s model (Benio, 1982). Each step was performed by measuring both the tape state under the head and the internal state (thus collapsing them) and using this to control the unitary operator applied to the tape and state. As a consequence, the computer does not make much use of superposition. F.3 Deutsch s universal quantum computer Benio s computer is e ectively classical; it can be simulated by a classical Turing machine. Moreover, Feynman s construction is not a true universal computer, since you need to construct it for each computation, and it s not obvious how to get the required dynamical behavior. Deutsch sought a broader definition of quantum computation, and a universal quantum computer Q. 27 M binary observables are used to represent the processor, {ň i } for i 2 M, wherem = {0,...,M 1}. Collectively they are called ň. An infinite sequence of binary observables implements the memory, { ˇm i } (i 2 Z) Collectively the sequence is called ˇm. An observable ˇx, withspectrumz, represents the tape position (address) of the head. The computational basis states have the form: x; n; mi def = x; n 0,n 1,...,n M 1 ;...,m 1,m 0,m 1,...i. 27 This section is based on Deutsch (1985).

176 CHAPTER III. QUANTUM COMPUTATION Here the eigenvectors are labeled by their eigenvalues x, n, and m. The dynamics of computation is described by a unitary operator U, which advances the computation by one step of duration T : (nt )i = U n (0)i. Initially, only a finite number of the memory elements are prepared in a non-zero state. (0)i = X m m 0; 0; mi, where X m m 2 =1, That is, only finitely many m 6=0,andinparticular m =0whenaninfinite number of the m are non-zero. The non-zero entries are the program and its input. Note that the initial state may be a superposition of initial tapes. The matrix elements of U (relating the new state to the current state) have the form: hx 0 ; n 0 ; m 0 U x; n; mi = [ x+1 x U + (n 0,m 0 x n,m 0 x )+ x 1 x U (n 0,m 0 x n,m 0 x )] Y y6=x m y m 0 y. U + and U represent moves to the right and left, respectively. The first two functions ensure that the tape position cannot move by more than one position in a step. The final product of deltas ensures that all the other tape positions are unchanged; it s equivalent to: 8y 6= x : m 0 y = m y. The U + and U functions define the actual transitions of the machine in terms of the processor state and the symbol under the tape head. Each choice defines a quantum computer Q[U +,U ]. The machine cannot be observed before it has halted, since that would generally alter its state. Therefore one of the processor s bits is chosen as a halt indicator. It can be observed from time to time without a ecting the computation. Q can simulate TMs, but also any other quantum computer to arbitrary precision. In fact, it can simulate any finitely realizable physical system to arbitrary precision, and it can simulate some physical systems that go beyond the power of TMs (hypercomputation).