qc-article-2001 - A brief overview of quantum computing or,...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: A brief overview of quantum computing or, Can we compute faster in a multiverse? Tom Carter http://cogs.csustan.edu/~ tom/quantum . . . ... June, 2001 1 Our general topics: Hilbert space and quantum mechanics Tensor products Quantum bits (qubits) Entangled quantum states Quantum computing Simple quantum gates Tractability of computation Factoring Notes on factoring Quantum algorithms for satisfiability Possibilities for physical implementation Decoherence and error correction Prospects References On-line references 2 The quotes Twelve men Magic Shocking Finis To top 3 Twelve men "There was a time when the newspapers said that only 12 men understood the theory of relativity. I do not believe there ever was such a time. There might have been a time when only 1 man did, because he was the only guy who caught on, before he wrote his paper. But after people read the paper a lot of people understood the theory of relativity in some way or other, certainly more than 12. On the other hand, I think I can safely say that nobody understands quantum mechanics" -Richard Feynman 4 Hilbert space and quantum mechanics A Hilbert space H is a complete normed vector space over C : 1. H is a vector space over C 2. There is an inner product | : H x H C which is conjugate linear: v|w = w|v v|w = v|w for C v + w|z = v|z + w|z v|v 0 and v|v = 0 iff v = 0 3. From the inner product, as usual, we define the norm of a vector: v 2 = v|v 4. H is complete with respect to the norm. 5 We will typically use the bra/ket notation: |v is a vector in H , and v| is the covector which is the conjugate transpose of v. This notation also allows us to represent the outer product of a vector and covector as |v w|, which, for example, acts on a vector |z as |v w|z . For example, if {v1,v2} is an orthonormal basis for a two-dimensional Hilbert space, |v1 v2| is the transformation that maps |v2 to |v1 and |v1 to (0, 0)T since |v1 v2||v2 = |v1 v2|v2 = |v1 |v1 v2||v1 = |v1 v2|v1 = 0|v1 = 0 0 . Equivalently, |v1 v2| can be written in matrix form where |v1 = (1, 0)T , v1| = (1, 0), |v2 = (0, 1)T , and v2| = (0, 1). Then |v1 v2| = 1 0 (0, 1) = 0 1 0 0 . 6 A unitary operator U : H H is a linear mapping whose conjugate transpose is its inverse: U = U -1 Unitary operators are norm preserving: U v 2 = v|U U |v = v|v = v 2 We will think of a quantum state as a (normalized) vector |v H . For math folks, we are in effect working in Complex projective space, normalizing to 1 so that the probabilities make sense. The dynamical evolution of a quantum system is expressed as a unitary operator acting on the quantum state. Eigenvalues of a unitary matrix are of the form ei where is a real-valued angle. A unitary operator is in effect a rotation. 7 Just for reference, a typical expression of Schrdinger's equation looks like o 2 - 2me 2 +V (x, y, z) = i t with general solution (x, y, z, t) = n=0 cnn(x, y, z) exp -iEnt where n(x, y, z) is an eigenfunction solution of the time independent Schrdinger equation with En the o corresponding eigenvalue. The inner product, giving a time dependent probability, looks like P (t) = dv. Another way to think of this is that we have to find the Hamiltonian H which generates evolution according to: i |(t) = H|(t) . t 8 In our context, we will have to solve for H given a desired U : |f = exp - i Hdt |0 = U |0 A solution for H always exists, as long as the linear operator U is unitary. A measurement consists of applying an operator O to a quantum state v. To correspond to a classical observable, O must be Hermitian, O = O, so that all its eigenvalues are real. If one of its eigenvalues is associated with a single eigenvector u, then we observe the value with probability | v|u |2 (i.e., the square of the length of the projection along u). 9 In general, if there is more than one eigenvector u associated with the eigenvalue , we let P be the projection operator onto the subspace spanned by the eigenvectors, and the probability of observing when the system is in state v is Pv 2. Most projection operators do not commute with each other, and are not invertible. Therefore, we can expect that the order in which we do measurements will matter, and that doing a measurement will irreversibly change the state of the quantum system. 10 Tensor products We can form tensor products of a wide variety of objects. For example: 1. The tensor product of an n dimensional vector u and an m dimensional vector v is an nm dimensional vector u v. 2. If A and B are operators on n and m dimensional vectors, respectively, then A B is an operator on nm dimensional vectors. 3. if H1 and H2 are Hilbert spaces, then H1 H2 is also a Hilbert space. If H1 and H2 are finite dimensional with bases {u1, u2, . . . un} and {v1, v2, . . . vm} respectively, then H1 H2 has dimension nm with basis {ui vj |1 i n, 1 j m}. 11 Tensor products obey a number of nice rules. For matrices A, B, C, D, U , vectors u, v, w, and scalars a, b, c, d the following hold: (A B)(C D) = AC BD (A B)(u v) = Au Bv (u + v) w = u w + v w u (v + w) = u v + u w au bv = ab(u v) Thus for matrices, A B C D U = AU BU CU DU , which specializes for scalars to a b c d U = aU bU cU dU . 12 The conjugate transpose distributes over tensor products: (A B) = A B . The tensor product of several matrices is unitary if and only if each one of the matrices is unitary up to a constant. Let U = A1 . . . An. Then U is unitary if Ai Ai = kiI and i ki = 1. U U = (A1 . . . A )(A1 . . . An) n = A1A1 . . . A An n = k1 I . . . kn I = I 13 Note that u v|w z = u|w v|z . This implies that 0 u|0 u = 0, and therefore 0 u must be the zero vector of the tensor product Hilbert space. This in turn implies (reminds us?) that the tensor product space is actually the equivalence classes in a quotient space. In particular, if A and B are vector spaces, F is the free abelian group on A B, and K is the subgroup of F generated by all elements of the following forms (where a, a1, a2 A, b, b1, b2 B, a scalar): 1. (a1 + a2, b) - (a1, b) - (a2, b) 2. (a, b1 + b2) - (a, b1) - (a, b2) 3. (a, b) - (a, b) then A B is the quotient space F/K. 14 Quantum bits (qubits) A quantum bit, or qubit, is a unit vector in a two dimensional complex vector space for which a particular orthonormal basis, denoted by {|0 , |1 }, has been fixed. It is important to notice that the basis vector |0 is NOT the zero vector of the vector space. For example, the basis |0 and |1 may correspond to the | and | polarizations of a photon respectively, or to the polarizations | and | . Or |0 and |1 could correspond to the spin-up and spin-down states (| and | ) of an electron. 15 For the purposes of quantum computing, the basis states |0 and |1 are taken to encode the classical bit values 0 and 1 respectively. Unlike classical bits however, qubits can be in a superposition of |0 and |1 such as a|0 + b|1 where a and b are complex numbers such that |a|2 + |b|2 = 1. If such a superposition is measured with respect to the basis {|0 , |1 }, the probability that the measured value is |0 is |a|2 and the probability that the measured value is |1 is |b|2. 16 Key properties of quantum bits: 1. A qubit can be in a superposition state of 0 and 1. 2. Measurement of a qubit in a superposition state will yield probabilistic results. 3. Measurement of a qubit changes the state to the one measured. 4. There is no transformation which exactly copies all qubits. This is known as the `no cloning' principle. Interestingly, it is nonetheless possible to `teleport' a quantum state, but in the process, the original quantum state is destroyed . . . 17 Magic "The Universe is full of magical things patiently waiting for our wits to grow sharper." -Eden Phillpotts "Any sufficiently advanced technology is indistinguishable from magic." -Arthur C. Clarke 18 Entangled quantum states If we have available more than one (physical) qubit, we may be able to entangle them. The tensor product of the Hilbert spaces for the individual qubits is the appropriate model for these entangled systems. For example, if we have two qubits with bases {|0 1, |1 1} and {|0 2, |1 2} respectively, the tensor product space has the basis {|0 1 |0 2, |0 1 |1 2, |1 1 |0 2, |1 1 |1 2}. We can (conveniently) denote this basis as {|00 , |01 , |10 , |11 }. 19 More generally, if we have n qubits to which we can apply common measurements, we will be working in the 2n-dimensional Hilbert space with basis {|00 . . . 00 , |00 . . . 01 , . . . , |11 . . . 10 , |11 . . . 11 } A typical quantum state for an n-qubit system is 2n-1 ai|i where ai C, basis, with (in our notation) i written as an n-bit binary number. i=0 |ai|2 = 1, and {|i } is the 20 A classical (macroscopic) physical object broken into pieces can be described and measured as separate components. An n-particle quantum system cannot always be described in terms of the states of its component pieces. For instance, the state |00 + |11 cannot be decomposed into separate states of each of the two qubits in the form (a1|0 + b1|1 ) (a2|0 + b2|1 ). This is because (a1|0 + b1|1 ) (a2|0 + b2|1 ) = a1a2|00 + a1b2|01 + b1a2|10 + b1b2|11 and a1b2 = 0 implies that either a1a2 = 0 or b1b2 = 0. States which cannot be decomposed in this way are called entangled states. These are states that don't have classical counterparts, and for which our intuition is likely to fail. 21 Particles are entangled if a measurement of one affects a measurement of the other. For example, the state 1 (|00 + |11 ) is entangled since the 2 probability of measuring the first bit as |0 is 1/2 if the second bit has not been measured. However, if the second bit has been measured, the probability that the first bit is measured as |0 is either 1 or 0, depending on whether the second bit was measured as |0 or |1 , respectively. On 1 the other hand, the state (|00 + |01 ) 2 is not entangled. Since 1 1 (|00 + |01 ) = |0 (|0 + |1 ), any 2 2 measurement of the first bit will yield |0 regardless of measurements of the second bit. Similarly, the second bit has a fifty-fifty chance of being measured as |0 regardless of measurements of the first bit. Note that entanglement in terms of particle measurement dependence is equivalent to the definition of entangled states as states that cannot be written as a tensor product of individual states. 22 Shocking "Anyone who is not shocked by quantum theory has not understood it." Neils Bohr "One is led to a new notion of unbroken wholeness which denies the classical analyzability of the world into separately and independently existing parts. The inseparable quantum interconnectedness of the whole universe is the fundamental reality." David Bohm "I don't like it, and I'm sorry I ever had anything to do with it." Erwin Schrodinger 23 Quantum computing This exponential growth in number of states, together with the ability to subject the entire space to transformations (either unitary dynamical evolution of the system, or a measurement projection into an eigenvector subspace), provides the foundation for quantum computing. An interesting (apparent) dilemma is the energetic costs/irreversability of classical computing. Since unitary transformations are invertible, quantum computations (except measurements) will all be reversible. Most classical boolean operations such as b1 b2, b1 b2, and b1 b2 are irreversible, and therefore cannot directly be used as basic operations for quantum computers. 24 The logical nand-gate (b1 b2) is sufficient to generate all the traditional boolean functions (e.g., b b b). We are likely to end up looking for simple quantum gates that are similarly generic for quantum operations. In general, if we had enough time, we could simulate any quantum computation with a classical computer. The real potential value of quantum computers lies in speeding up computations. The critical questions are: 1. How much can we speed up particular computations? 2. Can we develop a practical implementation of a particular quantum computation? 3. Can we build a physical implementation of a quantum computer? 25 4. Does the implementation allow us to carry out useful computations before decoherence interactions with the environment disturb the system too much? 5. Given the "no cloning" principle, can we develop quantum error detection/correction systems? In particular, we can't just take measurements for error control since measurements have irreversible effects on quantum systems. 26 Simple quantum gates These are some examples of useful single-qubit quantum state transformations. Because of linearity, the transformations are fully specified by their effect on the basis vectors. The associated matrix is also shown. I : |0 |1 x : |0 |1 y : |0 |1 z : |0 |1 |0 |1 |1 |0 |1 -|0 |0 -|1 1 0 0 1 0 1 1 0 0 1 1 0 -1 0 0 -1 I is the identity transformation, x is negation, z is a phase shift operation, and y = z x is a combination of both. All these gates are unitary. For example y y = 0 -1 1 0 0 1 -1 0 = I. 27 Another important single-bit transformation is the Hadamard transformation defined by H : |0 |1 1 (|0 + |1 ) 2 1 (|0 - |1 ). 2 Applied to n bits each in the |0 state, the transformation generates a superposition of all 2n possible states. (H H H)|00 . . . 0 1 ((|0 + |1 ) (|0 + |1 )) = 2n 2n-1 1 |x . = n 2 x=0 The transformation acting on n bits is called the Walsh or Walsh-Hadamard transformation W . 28 An important example of a two qubit gate is the controlled-not gate, Cnot, which complements the second bit if the first bit is 1 and leaves the bit unchanged otherwise. Cnot : |00 |01 |10 |11 |00 |01 |11 |10 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 The transformation Cnot is unitary since Cnot = Cnot and CnotCnot = I. The Cnot gate cannot be decomposed into a tensor product of two single-bit transformations. It is useful to have graphical representations of quantum state transformations, especially when several transformations are combined. The controlled-not gate Cnot is typically represented by a circuit of the form d 29 The open circle indicates the control bit, and the indicates the conditional negation of the subject bit. In general there can be multiple control bits. Some authors use a solid circle to indicate negative control, in which the subject bit is toggled when the control bit is 0. Similarly, the controlled-controlled-not, which negates the last bit of three if and only if the first two are both 1, has the following graphical representation. d d Single bit operations are graphically represented by appropriately labelled boxes as shown. H Z 30 The bra/ket notation is useful in defining other unitary operations. Given two arbitrary unitary transformations U1 and U2, the "conditional" transformation |0 0| U1 + |1 1| U2 is also unitary. For example, the controlled-not gate can defined by Cnot = |0 0| I + |1 1| X. 31 The three-bit controlled-controlled-not gate or Toffoli gate is also an instance of this conditional definition: T = |0 0| I I + |1 1| Cnot. T : |000 |001 |010 |011 |100 |101 |110 |111 |000 |001 |010 |011 |100 |101 |111 |110 T can be used to construct a complete set of the classical boolean connectives and thus general combinatory circuits since it can be used to construct the not and and operators in the following way: T |1, 1, x T |x, y, 0 = |1, 1, x = |x, y, x y 32 Tractability of computation We can generally categorize computational algorithms according to how the resources needed for execution of the algorithm increase as we increase the size of the input. Typical resources are time and (storage) space. In different contexts, we may be interested in worst-case or average-case performance of the algorithm. For theoretical purposes, we will typically be interested in large input sets . . . The hope of quantum computing is that problems that are difficult or impossible for classical computers to solve can be handled by quantum computers. 33 A standard mechanism for comparing the growth of functions with domain N is "big-Oh." One way of defining this notion is to associate each function with a set of functions. We can then compare algorithms by looking at their "big-Oh" categories. Given a function f , we define O(f ) by: g O(f ) there exist c > 0 and N 0 such that |g(n)| c|f (n)| for all n N . We further define (f ) by: g (f ) iff g O(f ) and f O(g). 34 In general we will consider the run-time of algorithms in terms of the growth of the number of elementary computer operations as a function of the number of bits in the (encoded) input. Some important categories an algorithm's run-time f is: 1. Logarithmic if f (log(n)). 2. Linear if f (n). 3. Quadratic if f (n2). 4. Polynomial if f (P (n)) for some polynomial P (n). 5. Exponential if f (bn) for some constant b > 1. 6. Factorial if f (n!). 35 Typically we say that a problem is tractable if (we know) there exists an algorithm whose run-time is (at worst) polynomial that solves the problem. Otherwise, we call the problem intractable. There are many problems which have the interesting property that if someone (an oracle?) provides you with a solution to the problem, you can tell in polynomial time whether what they provided you actually is a solution. Problems with this property are called Non-deterministically Polynomial, or NP, problems. One way to think about this property is to imagine that we have arbitrarily many machines available. We let each machine work on one possible solution, and whichever machine finds the (a) solution lets us know. 36 There are some even more interesting NP problems which are universal for the class of NP problems. These are called NP-complete problems. A problem S is NP-complete if S is NP and, there exists a polynomial time algorithm that allows us to translate any NP problem into an instance of S. If we could find a polynomial time algorithm to solve a single NP-complete problem, we would then have a polynomial time solution for each NP problem. 37 Some examples: 1. Factoring a number is NP. First, we recognize that if M is the number we want to factor, then the input size m is approximately log(M ) (that is, the input size is the number of digits in the number). The elementary school algorithm (try dividing by each number less than M ) has run-time m approximately 10 2 , which is exponential in the number of digits. On the other hand, if someone hands you two numbers they claim are factors of M , you can check by multiplying, which takes on the order of m2 operations. It is worth noting that there is a polynomial time algorithm to determine whether or not a number is prime, but for composite numbers, this algorithm does not provide a 38 factorization. Factoring is a particularly important example because various encryption algorithms such as RSA (used in the PGP software) depend for their security on the difficulty of factoring numbers with several hundred digits. 39 2. Satisfiability of a boolean expression is NP-complete. Suppose we have n boolean variables {b1, b2, . . . , bn} (each with the possible values 0 and 1). We can form a general boolean expression from these variables and their negations: f (b1, b2, . . . , bn) = ( (bi, bj )). k i,jn A solution to such a problem is an assignment of values 0 or 1 to each of the bi such that f (b1, b2, . . . , bn) =1. There are 2n possible assignments of values. We can check an individual possible solution in polynomial time, but there are exponentially many possibilities to check. If we could develop a feasible quantum computation for this problem, we would in some sense resolve the ? traditional P=NP problem . . . 40 3. The discrete Fourier transform of a q-1 sequence a = aj j=0 is the sequence A = Ak k=0 where 2ijk 1 aj e q Ak = q j=0 q-1 q-1 One way to think about this is that A = F a where the linear transformation F is given by: 1 2ijk [F ]j,k = e q q Note that the inverse of F is F that is, 1 - 2ijk -1 ] q . [F k,j = e q Suggestively, this says that the discrete Fourier transform is a unitary operation. The action of this transformation on a vector of dimension q looks as though it would take the q 2 operations of 41 matrix multiplication, but there is enough structure that the classical fast Fourier transform algorithm can be done in q log(q) operations. The corresponding quantum Fourier transform UQF T with base 2n is defined by 1 2 -1 2icx UQF T : |x e 2n |c . 2n c=0 We will see that this can be accomplished in approximately n2 operations rather than n2n. This is an exponential speed-up of the process. n 42 Factoring The quantum algorithm which has probably done the most for popularizing quantum computation is Shor's factoring algorithm. As noted above, a fast algorithm for factoring numbers with several hundred digits would invalidate some of the most widely used encryption systems. Shor's algorithm provides theoretical evidence for such an algorithm, waiting only for a practical physical realization. The general approach used by Shor is based on a classical probabilistic method for factoring. The classical algorithm is exponential in the number of digits Shor's is (quantum) polynomial. 43 Outline of Shor's algorithm for factoring a number M : 1. Choose an integer 1 < y < M arbitrarily. If y is not relatively prime to M , we've found a factor of M . Otherwise apply the rest of the algorithm. 2. Let n be such that M 2 2n < 2M 2. We begin with n qubits, each in state |0 . We now apply the Walsh transformation W to superpose all states: 2n-1 1 2 -1 W |a . |0 - n 2 a=0 a=0 n 3. Apply a transformation which implements raising to powers (mod M ): 1 1 |a |a, f (a) n n 2 a=0 2 a=0 where f (a) = y a (mod M ). 44 2n-1 2n-1 4. Measure to find a state whose amplitude has the same period as f . 5. Apply a quantum Fourier transform to invert the frequency. 6. Extract the period, which we expect to be the order of y (mod M ). 7. Find a factor of M . When our estimate for the period, q, is even, we use the Euclidean algorithm to efficiently check whether either y q/2 + 1 or y q/2 - 1 has a non-trivial common factor with M . 8. Repeat the algorithm, if necessary. 45 Here's another version of the outline of Shor's algorithm for factoring We begin with 2 n-qubit registers. Apply the Walsh transformation on the first to give a uniform superposition of states: 1 |0 |0 |l | 0 Q l=0 Apply a transformation which computes y l mod N : Q-1 1 |l |y l modN Q l=0 Measure the second register: 1 A Q-1 Q-1 |l |y l0 = l=0|y l =y l0 1 A-1 |jr + l0 |y l0 A j=0 46 Apply the quantum Fourier transform over ZQ on the first register: 1 1 e2i(jr+l0)k/Q |k |y l0 Q k=0 A j=0 Measure the first register. Let k1 be the outcome. Approximate the fraction k1 by Q a fraction with denominator smaller than N . If the denominator d doesn't satisfy y d = 1 mod N , throw it away, else call the denominator r1. Repeat all previous steps poly(log(N)) times to get r1, r2, . . . Output the minimal r. Q-1 A-1 47 Notes on factoring To factor a number M , we choose a number y < M with gcd(y, M ) = 1. We then find r, the order of y in the multiplicative group (mod M ). If r is even, then (y r/2 + 1)(y r/2 - 1) = (y r - 1) 0 (mod M ). Then gcd(y r - 1, M ) is a non-trivial factor of M except when r is odd or y r/2 -1 (mod M ). This procedure produces a non-trivial factor of M with probability at least 1 - 1/2k-1, where k is the number of distinct odd prime factors of M . If we don't get a factor, we can choose a new y and repeat the process. By repeating the process, we can make our likelihood of success as close to one as we like. Note that if M is even, finding a factor is easy; if M is a power of a prime, there are other fast classical methods of factoring which we can use on M before we start this process. 48 We want to find the period of the function f (a) = y a (mod M ). We do that by measuring to find a state whose amplitude has the same period as f . We measure the qubits of the state obtained from encoding f (a). A random value u is obtained. We don't actually use the value u; only the effect the measurement has on our set of superpositions is of interest. This measurement projects the state space onto the subspace compatible with the measured value, so the state after measurement is C a g(a)|a, u , for some scale factor C where g(a) = 1 if f (a) = u 0 otherwise Note that the a's that actually appear in the sum, those with g(a) = 0, differ from 49 each other by multiples of the period, and thus g(a) is the function we are looking for. If we could just measure two successive a's in the sum, we would have the period. Unfortunately the quantum world permits only one measurement. Shor's method uses a quantum version of the Fourier transform to find the period of the function y a (mod M ). We apply the quantum Fourier transform to the state obtained by the measurement. g(a)|a - a QF T c G(c)|c Standard Fourier analysis tells us that when the period r of g(a) is a power of two, the result of the quantum Fourier transform is 2n C j |j r j 50 where |j | = 1. When the period r does not divide 2n, the transform approximates the exact case so most of the amplitude is attached to integers close to multiples n of 2 . r In order for Shor's factoring algorithm to be a polynomial algorithm, the quantum Fourier transform must be efficiently computable. Shor developed a quantum Fourier transform construction with base 2n using only n(n+1) gates. The 2 construction makes use of two types of gates. One is a gate to perform the Hadamard transformation H. We will denote by Hj the Hadamard transformation applied to the jth bit. The other type of gate performs transformations of the form 1 0 0 0 1 0 Sj,k = 0 0 1 0 0 0 51 0 0 0 eik-j where k-j = /2k-j , which acts on the kth element, depending on the value of the jth element. Think of this as acting on the basis {|00 , |01 , |10 , |11 } . . . The quantum Fourier transform is given by H0S0,1 . . . S0,n-1H1 . . . Hn-3Sn-3,n-2Sn-3,n-1Hn-2Sn-2,n-1Hn-1. This actually produces the reverse of the Fourier transform, so it typically will be followed by a bit reversal transformation. 52 There is a second piece of Shor's algorithm which must be accomplished in polynomial time. We need to extract (using the QFT) the period of the function a (y a) (mod M ). We must transform as: 1 1 |a |a, y a(modM ) 2n a=0 2n a=0 We want to develop a transformation which computes the function fy,M (a) = y a (mod M ). First, we write y a as m-1 a 1 0 m-1 , where m is y a = y 2 a0 y 2 a1 . . . y 2 the number of digits in the binary expansion of M . Then, modular exponentiation can be computed by initializing the result register to |1 , and successively effecting m multiplications by i y 2 (mod M ), depending on the value of the qubit |ai . 2n-1 2n-1 53 If ai = 1, we want the operation 20 a0 +...2i-1 ai-1 , 0 |y 0 i-1 0 i-1 i |y 2 a0+...2 ai-1 , y 2 a0+...2 ai-1 y 2 to be performed; otherwise, when ai = 0 we just require 20 a0 +...2i-1 ai-1 , 0 |y 0 i-1 0 i-1 |y 2 a0+...2 ai-1 , y 2 a0+...2 ai-1 . Note that in both cases the result can be 20 a0 +...2i-1 ai-1 , y 20 a0 +...2iai . written as |y 54 To extract the period, we measure the state in the standard basis for quantum computation, and call the result v. In the case where the period happens to be a power of 2 so that the quantum Fourier transform gives exactly multiples of the scaled frequency, the period is easy to 2n for some j. extract. In this case, v = j r Most of the time j and r will be relatively prime, in which case reducing the fraction v to its lowest terms will yield a fraction 2n whose denominator q is the period r. The fact that in general the quantum Fourier transform only gives approximately multiples of the scaled frequency complicates the extraction of the period from the measurement. When the period is not a power of 2, a good guess for the period can be obtained using the v continued fraction expansion of 2n . Various things could have gone wrong so that this process does not yield a factor of M : 55 1. The value v was not close enough to a n multiple of 2 . r 2. The period r and the multiplier j could have had a common factor so that the denominator q was actually a factor of the period, rather than the period itself. 3. We find M as M 's factor. 4. The period of f (a) = y a (mod M ) is odd. A few repetitions of this algorithm yields a factor of M with high probability. 56 Quantum algorithms for satisfiability Various approaches have been developed which provide hope that the NP-complete boolean satisfiability problem can be solved in polynomial time. It is not clear that any of the published techniques will be effective. Some of the methods seem to require either exponential space/hardware (e.g., bulk spin resonance via NMR) or exponential measurement precision. This is a very active area of current research. One algorithm which has been well analyzed is Grover's search algorithm. It gives quadratic speedup of solving satisfiability, but in its general form can do no better than that, and hence does not give the exponential speedup needed to get P = N P . 57 Following is an outline of Grover's general search algorithm. If P (x) is a boolean function for 0 x < N , classical search algorithms take on the order of N 2 operations to find an item x0 for which P (x0) = 1. Grover's algorithm takes on the order of N operations. Grover's algorithm has been shown to be optimal for the general search problem. This is not an exponential speedup, but it is an improvement over the classical algorithms. However, problems such as satisfiability have additional structure which can make them easier to solve. Grover's algorithm consists of the following steps: 1. Let n be such that 2n N , and prepare a register containing a superposition of all xi [0 . . . 2n - 1]. 58 2. Apply a unitary transformation that computes P (xi) on this register: 1 n-1 1 n-1 UP : |x, 0 |x, P (x) . n n 2 x=0 2 x=0 For any x0 such that P (x0) is true, |x0, 1 will be part of the resulting superposition, but since its amplitude is 1 n , the probability that a measurement produces x0 is only 2-n. 3. Change amplitude aj to -aj for all xj such that P (xj ) = 1. 4. Apply inversion about the average to increase amplitude of xj with P (xj ) = 1 and decrease other amplitudes. 5. Repeat steps 2 through 4 4 2n times. 2 6. Measure the last qubit of the quantum state, representing P (x). Because of the amplitude change, there is a high 59 probability that the result will be 1. If this is the case, the measurement has projected the state onto the subspace k 1 |xi, 1 where k is the number 2k i=1 of solutions. Further measurement of the remaining bits will provide one of these solutions. An interesting feature of this algorithm is that repeating steps 2 through 4 a total 2n times is optimal. In particular, if of 4 the process is repeated more times, the probability of a successful measurement decreases back toward zero . . . 60 An alternative approach builds the unitary transformation for the boolean expression, applies the transformation to molecules in solution, then uses bulk spin resonance analysis via NMR to measure the expected values of the spins, and thus solves the satisfiability problem. However, realistic implementations seem to require an exponentially large NMR sample. The general estimate is that if n is the number of qubits, and M is the number of molecules in the sample, then n2n < M . For a typical sample, M 1023 276 and so n < 70. For an upper limit, a reasonable estimate of the number of elementary particles in the accessible universe is 1080 2265 which corresponds with 256 qubits . . . 61 Possibilities for physical implementation Implementations of quantum computers will be a difficult experimental challenge. Quantum computer equipment must satisfy a variety of constraints: (1) the qubits must interact very weakly with their environment to minimize decoherence and preserve their superpositions, (2) the qubits must interact very strongly with one another for the logic gates and information transfer to be effective, and (3) the initialization and readout of states must be efficient. Not many known physical systems can satisfy these requirements, although there are some possibilities. 62 A collection of charged ions held in an electromagnetic trap is one possibility. Each atom stores a qubit of information in a pair of internal electron levels. Each atom's levels are protected from environmental influences. Scaling to larger numbers of qubits should be able to be done by adding more atoms to the collection. When appropriate laser radiation is applied to the atoms, only one of the two internal states fluoresces. This allows detection of the state of each qubit. The atoms are coupled by virtue of their mutual Coulomb repulsion. Experimental development of trapped ion quantum computation is at the level of single-ion and two-ion qubit systems. Extensions to larger numbers of trapped ions has been difficult, but there do not seem to be impossible theoretical limits to scaling. 63 Another system which could be developed into a quantum computer is a single molecule, in which nuclear spins of individual atoms represent qubits. This is the basis of the NMR technique mentioned above. The spins can be manipulated, initialized, and measured. For example, the carbon and hydrogen nuclei in a chloroform molecule can be used to represent two qubits. Applying a radio-frequency pulse to the hydrogen nucleus addresses that qubit and causes it to rotate from a |0 state to a 1 superposition (|0 + |1 ) state. 2 Interactions through chemical bonds allow multiple-qubit logic to be performed. However, it is difficult to find molecules with more than 10 spins in them and with a large coupling constant between every pair of spins . . . 64 Decoherence and error correction Decoherence in general arises from interactions with the environment, which typically has the effect of measuring the system and thus collapsing a quantum computation. In addition, we have to be careful about leaving temporary qubits floating around. We can expect them to be entangled with the rest of the system, and thus an observation of the "dust" left behind by intermediate computations could effect a measurement of the system, invalidating later stages. Thus, one emphasis in research on quantum computation has been on how to efficiently avoid leaving any garbage floating about. 65 As noted above, error detection/correction is difficult in the quantum environment since we cannot reliably clone an arbitrary qubit. Further, any intermediate measurement of the system for error control is likely to invalidate our computation. There are, however, approaches using polarization encoding schemes for error control. 66 Prospects The history of quantum mechanical algorithms is very brief. There are two main approaches that have resulted in descriptions of efficient quantum computational algorithms: the first is estimates of periodicity that resulted in the factorization algorithm, and the second is amplitude amplification that has led to Grover's quantum search and related algorithms. Over the past 70 or 80 years, physicists have observed various quantum mechanical phenomena that lead to puzzling and even apparently paradoxical results. Most of these still remain to be investigated from a quantum computing perspective. 67 One interesting question is how slight difference in the laws of quantum mechanics might affect these issues. Some interesting work by Abrams et al. shows that if there was even the slightest amount of nonlinearity in quantum mechanics, it would be possible to modify the amplitude amplification scheme of Grover's quantum search algorithm to obtain an efficient algorithm solving the NP-complete satisfiability problem. However, most people believe that such nonlinearity probably does not exist because it would also lead to faster-than-light communication, noncausality, and other violations of fundamental physical principles . . . 68 Finis "Nature uses only the longest threads to weave her patterns, so that each small piece of her fabric reveals the organization of the entire tapestry." Richard Feynman 69 To top References [1] Abrams D S and Lloyd S, Non-Linear Quantum Mechanics implies Polynomial Time solution for NP-complete and #P problems, http://xxx.lanl.gov/abs/quant-ph/9801041 [2] Aharonov D, Beckman D, Chuang I and Nielsen M, What Makes Quantum Computers Powerful? http://wwwcas.phys.unm.edu/mnielsen/science.html ~ [3] Aharonov, D., Quantum Computation, Annual Reviews of Computational Physics VI, Edited by Dietrich Stauffer, World Scientific, 1998 [4] Barenco A A universal two-bit gate for quantum computation, Proc. R. Soc. Lond. A 449 679683, 1995 [5] Barenco A, Deutsch D, Ekert E and Jozsa R, Conditional quantum dynamics and quantum gates, Phys. Rev. Lett. 74 40834086, 1995 70 [6] Barenco A, Bennett C H, Cleve R, DiVincenzo D P, Margolus N, Shor P, Sleator T, Smolin J A and Weinfurter H, Elementary gates for quantum computation, Phys. Rev. A 52, 34573467, 1995 [7] Bell J S On the Einstein-Podolsky-Rosen paradox, Physics 1 195200, 1964 [8] Bell J S On the problem of hidden variables in quantum theory, Rev. Mod. Phys. 38 447-52, 1966 Speakable and unspeakable in quantum mechanics 1987 (Cambridge University Press) [9] Bennett C H, Brassard G, Crpeau C, Jozsa R, e Peres A and Wootters W K Teleporting an unknown quantum state via dual classical and Einstein-Podolsky-Rosen channels, Phys. Rev. Lett. 70 18951898, 1993 [10] Bennett C H, DiVincenzo D P, Smolin J A and Wootters W K Mixed state entanglement and quantum error correction, Phys. Rev. A 54 3825, 1996 [11] Bennett C H, Bernstein E, Brassard G and Vazirani U Strengths and Weaknesses of quantum computing, SIAM Journal of Computation 26 5 pp 15101523 October, 1997 [12] Boyer M, Brassard G, Hoyer P and Tapp A, Tight bounds on quantum searching, in Fortsch.Phys. 46, (1998) pp. 493-506 71 [13] Brassard G, Searching a quantum phone book, Science 275 627-628 1997 [14] Calderbank A R and Shor P W, Good quantum error-correcting codes exist, Phys. Rev. A 54 1098-1105, 1996 [15] Chuang I L, Laflamme R, Shor P W and Zurek W H, Quantum computers, factoring, and decoherence, Science 270 16331635, 1995 [16] Chuang I L, Laflamme R and Paz J P, Effects of Loss and Decoherence on a Simple Quantum Computer, http://xxx.lanl.gov/abs/quant-ph/9602018 [17] Clausen M, Fast Generalized Fourier transforms, Theoret. Comput. Sci. 56 5563 1989 [18] Coppersmith D, An approximate Fourier transform useful in quantum factoring, IBM Research Report RC 19642, 1994 [19] Cormen T, Leiserson C and Rivest R, Introduction to Algorithms, (pp 776800 for FFT, 837844 for primality test, 812 for extended Euclid algorithm, 834836 for RSA cryptosystem) MIT press, 1990 72 [20] Cory D G, Fahmy A F, and Havel T F, Nuclear magnetic resonance spectroscopy: an experimentally accessible paradigm for quantum computing, in Proc. of the 4th Workshop on Physics and Computation (Complex Systems Institute, Boston, New England) 1996 [21] Deutsch, D., The Fabric of Reality, Penguin Books Ltd, Harmondsworth, Middlesex, England, 1997 [22] Deutsch D, Quantum theory, the Church-Turing principle and the universal quantum computer, In Proc. Roy. Soc. Lond. A 400 97-117, 1985 [23] Deutsch D, Quantum computational networks, In Proc. Roy. Soc. Lond. A 425 73-90, 1989 [24] Deutsch D and Jozsa R, Rapid solution of problems by quantum computation, In Proc. Roy. Soc. Lond A 439 553-558, 1992 [25] Deutsch D, Barenco A and Ekert A, Universality in quantum computation, In Proc. R. Soc. Lond. A 449 669-677, 1995 [26] DiVincenzo D P, Two-bit gates are universal for quantum computation, Phys. Rev. A 51 1015-1022 1995 73 [27] DiVincenzo D P, Quantum computation, Science 270 255-261 1995 [28] Einstein A, Rosen N and Podolsky B, Phys. Rev. 47, 777 1935 [29] Ekert A and Jozsa R Quantum computation and Shor's factoring algorithm, Rev. Mod. Phys. 68 733 1996 [30] Feynman R P Simulating physics with computers, In Int. J. Theor. Phys. 21 467-488, 1982 [31] Feynman R P, Quantum mechanical computers, In Found. of Phys. 16 507-531, 1986 see also Optics News February 1985, 11-20. [32] R. Feynman, Feynman lectures on computation, 1996. [33] Garey M R and Johnson D S, Computers and Intractability, published by Freeman and Company, New York, 1979 [34] Gershenfeld N A and Chuang I L Bulk spin-resonance quantum computation, Science, 275:350356, 1997. 74 [35] Grover L K, Quantum mechanics helps in searching for a needle in a haystack, Phys. Rev. Lett. 79, 325-328 1997 and the original STOC paper: A fast quantum mechanical algorithm for database search Proc. of the 28th Annual ACM Symposium on Theory of Computing (STOC) 212221, 1996 [36] Grover L K, A framework for fast quantum mechanical algorithms, http://xxx.lanl.gov/abs/quant-ph/9711043 [37] Grover L K, Quantum computers can search arbitrarily large databases by a single query in Phys. Rev. Let. 79 23, 47094712, 1997 [38] Grover L K, A fast quantum mechanical algorithm for estimating the median, http://xxx.lanl.gov/abs/quant-ph/9607024 [39] Hagley E et. al, Generation of Einstein Podolsky Rosen pairs of atoms, Phys. Rev. Lett, 79, 15, 1997 [40] Hamming R W 1986 Coding and information theory, 2nd ed, (Prentice-Hall, Englewood Cliffs) [41] Hardy G H and Wright E M 1979 An introduction to the theory of numbers (Clarendon Press, Oxford) 75 [42] Haroche S and Raimond J-M 1996 Quantum computing: dream or nightmare? Phys. Today August 51-52 [43] Hodges A 1983 Alan Turing: the enigma (Vintage, London) [44] Hungerford T W, 1974 Algebra (Springer-Verlag, New York) [45] A. J. Jones, M. Mosca and R. H. Hansen, Implementation of a Quantum Search Algorithm on a Nuclear Magnetic Resonance Quantum Computer, in Nature 393 (1998) 344-346, and see also A. J. Jones and M. Mosca, Implementation of a Quantum Algorithm to Solve Deutsch's Problem on a Nuclear Magnetic Resonance Quantum Computer, in J. Chem. Phys. 109 (1998) 1648-1653 [46] Knill E and Laflamme R 1997 A theory of quantum error-correcting codes, Phys. Rev. A 55 900-911 [47] Knill E, Laflamme R and Zurek W H 1997 Resilient quantum computation: error models and thresholds http://xxx.lanl.gov/abs/quant-ph/9702058 [48] Knuth D E 1981 The Art of Computer Programming, Vol. 2: Seminumerical Algorithms, 2nd ed (Addison-Wesley). 76 [49] Lipton R J, Using DNA to solve NP-complete problems. Science, 268 542545, Apr. 28, 1995 [50] Lloyd S 1995 Almost any quantum logic gate is universal, Phys. Rev. Lett. 75, 346-349 [51] Margolus N 1990 Parallel Quantum Computation, in Complexity, Entropy and the Physics of Information, Santa Fe Institute Studies in the Sciences of Complexity, vol VIII p. 273 ed Zurek W H (Addison-Wesley) [52] von Neumann, Probabilistic logic and the synthesis of reliable organisms from unreliable components, in automata studies( Shanon,McCarthy eds), 1956 [53] Papadimitriou C H, Computational Complexity, Addison-Wesley, 1994 [54] Peres A 1993 Quantum theory: concepts and methods (Kluwer Academic Press, Dordrecht) [55] Preskill J 1997 Fault tolerant quantum computation, to appear in Introduction to Quantum Computation, edited by H.-K. Lo, S. Popescu, and T. P. Spiller http://xxx.lanl.gov/abs/quant-ph/9712048 [56] Preskill J, Kitaev A, Course notes for Physics 229, Fall 1998, Caltech Univ., http://www.theory.caltech.edu/people/preskill/ph229 77 [57] Rieffel E, Polak W An Introduction to Quantum Computing for Non-Physicists http://xxx.lanl.gov/abs/quant-ph/9809016 [58] Rivest R, Shamir A and Adleman L 1979 On digital signatures and public-key cryptosystems, MIT Laboratory for Computer Science, Technical Report, MIT/LCS/TR-212 [59] J.J.Saqurai Modern Quantum Mechanics, revised edition. Addison Wesley, 1994 [60] Shannon C E 1948 A mathematical theory of communication Bell Syst. Tech. J. 27 379; also p. 623 [61] Shor P W, Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer, SIAM J. Comp., 26, No. 5, pp 14841509, October 1997 [62] Steane A M, Error correcting codes in quantum theory, Phys. Rev. Lett. 77 793-797, 1996, Simple quantum error-correcting codes, Phys. Rev. A 54, 4741-4751, 1996, Quantum Reed-Muller codes, submitted to IEEE Trans. Inf. Theory (preprint in LANL e-print quant-ph/9608026, http://xxx.lanl.gov) Active stabilization, quantum computation, and quantum state synthesis, Phys. Rev. Lett. 78, 2252-2255, 1997 78 [63] Steane A, Quantum Computation, Reports on Progress in Physics 61 (1998) 117, preprint in http://xxx.lanl.gov/abs/quant-ph/9708022 [64] Toffoli T 1980 Reversible computing, in Automata, Languages and Programming, Seventh Colloquium, Lecture Notes in Computer Science, Vol. 84, de Bakker J W and van Leeuwen J, eds, (Springer) 632-644 [65] Turing A M 1936 On computable numbers, with an application to the Entschneidungsproblem, Proc. Lond. Math. Soc. Ser. 2 42, 230 ; see also Proc. Lond. Math. Soc. Ser. 2 43, 544 [66] Wheeler J A and Zurek W H, eds, 1983 Quantum theory and measurement (Princeton Univ. Press, Princeton, NJ) [67] Wootters W K and Zurek W H 1982 A single quantum cannot be cloned, Nature 299, 802 [68] Zalka C, Grover's quantum searching algorithm is optimal, http://xxx.lanl.gov/abs/quant-ph/9711070 [69] Zurek W H, Decoherence and the transition from quantum to classical, Physics Today 44(10), October, 1991 3644. To top 79 On-line references Some of the references listed above are available on line. They are listed again here for easy access: Abrams D S and Lloyd S, Non-Linear Quantum Mechanics implies Polynomial Time solution for NP-complete and #P problems, http://xxx.lanl.gov/abs/quant-ph/9801041 Aharonov D, Quantum Computation, http://xxx.lanl.gov/abs/quant-ph/9812037 Chuang I L, Laflamme R and Paz J P, Effects of Loss and Decoherence on a Simple Quantum Computer, http://xxx.lanl.gov/abs/quant-ph/9602018 Grover L K, A framework for fast quantum mechanical algorithms, http://xxx.lanl.gov/abs/quant-ph/9711043 Grover L K, A fast quantum mechanical algorithm for estimating the median, http://xxx.lanl.gov/abs/quant-ph/9607024 Knill E, Laflamme R and Zurek W H 1997 Resilient quantum computation: error models and thresholds http://xxx.lanl.gov/abs/quant-ph/9702058 80 Preskill J 1997 Fault tolerant quantum computation, to appear in Introduction to Quantum Computation, edited by H.-K. Lo, S. Popescu, and T. P. Spiller http://xxx.lanl.gov/abs/quant-ph/9712048 Preskill J, Kitaev A, Course notes for Physics 229, Fall 1998, Caltech Univ., http://www.theory.caltech.edu/people/preskill/ph229 Rieffel E, Polak W An Introduction to Quantum Computing for Non-Physicists http://xxx.lanl.gov/abs/quant-ph/9809016 Steane A, Quantum Computation, Reports on Progress in Physics 61 (1998) 117, http://xxx.lanl.gov/abs/quant-ph/9708022 Zalka C, Grover's quantum searching algorithm is optimal, http://xxx.lanl.gov/abs/quant-ph/9711070 To top 81 ...
View Full Document

Ask a homework question - tutors are online