Psychology

Physics 709 Quantum Computing Lecture 11: Quantum Algorithms 1 Simon problem

Description
The Deutsch algorithm is interesting, but purely as a matter of principle-the problem it solves is so simple that it is not of much use. We are now going to build up some more interesting algorithms step-by-step. Simon is next. As in the Deutsch
Categories
Published
of 3
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
  Physics 709Quantum ComputingLecture 11: Quantum Algorithms 1 Simon problem The Deutsch algorithm is interesting, but purely as a matter of principle - the problemit solves is so simple that it is not of much use. We are now going to build upsome more interesting algorithms step-by-step. Simon is next. As in the Deutschalgorithm, the Simon algorithm involves a very specic (and slightly articial) class of functions. For the Simon algorithm we once more assume that we have a subroutinethat calculates a function  f;  but this time the input and output are a bit morecomplicated. Both input and output have  n  bits, that is  f   :  f 0 ; 1 g n ! f 0 ; 1 g n :  Thus f   takes values in a set with 2 n elements and we identify it with ( Z  2 ) n and the "+"sign means bitwise addition.Here is the dention of the problem that the algorithm solves. We restrict ourclass of function to have a  very   special structure:  f  ( X  ) =  f  ( Y  ) if and only if   X   =  Y  or  Y   =  X   +  a;  but we do not know beforehand what  a  is. We do, however, have asubroutine available that will calculate  f   ( X  ) for any input  X:  Put another way,  f   isperiodic but we do not know the period. Our notation is that  X   = ( x 0 ;x 1 ;:::;x n  1 )is an  n -bit string that belongs to this group.As can be seen by looking at the set of cosets given above, we can sum over thewhole group by summing over 2 n  1 distinct elements  g i  as long as we also sum over g i  + a: X gG=A denotes the sum over  g i  from  i  = 0 up to 2 n  1  1 :  We may summarizethe properties of   f   by saying that it is constant on the cosets, but takes distinctvalues on dierent cosets.Here's a very simple example for  n  = 2 : G  =  f (00) ; (01) ; (10) ; (11) g :  (00) is theidentity element. Here is a posssible  f   : f  (00) = 10 f  (01) = 11 f  (10) = 10 f  (11) = 11In this example,  a  = (10) : Simon's problem is: given  f   satifying the contsaints, nd  a:  This is an exampleof a what is called a hidden subgroup problem, the subgroup here being  A  =  f 0 ;a g : 1  This is a generalization to an  n -digit number from a 1-digit number for the Deutschproblem: there  X   and  Y   were 0 or 1 and  a  had to be 0 or 1. However, this is ahighly non-trivial generalization, because there are 2 n n -digit numbers.A naive classical algorithm would choose an  h 1  2  G;  compute  f   ( h 1 ) ;  chooseanother  h 2  6 =  h 1 ;  compute  f   ( h 2 ) and compare it to  f   ( h 1 ) :  If   f   ( h 1 ) =  f   ( h 2 ) then a  =  h 2  h 1  and the algorithm stops. If not, then compute  f   ( h 3 ) and compare to theearlier values until nally we get an equality. This algorithm is guaranteed to workafter 2 n  1 steps, and on average it will do rather better than this, but the run timeis still of order p  2 n = 2 n= 2 :  There are somewhat better algorithms, but even thebest known classical algorithms are still exponential in  n:  So this is a hard problem classically!  2 Algorithm Simon's algorithm is a quantum algorithm to nd  a  much faster. Let us recall thatin our notation the basis states are  j X  i  =  j x 0 ij x 1 i    j x n  1 i  (the computationalbasis) and each basis state corresponds to the binary number  X   = ( x 0 ;x 1 ;:::;x n  1 ) = x 0   2 0 + x 1   2 1 + x 2   2 2 + ::: + x n  1   2 n  1 : The one-qubit Hadamard  H  i  in the computational basis is given by a two-by-twounitary matrix H  i  = 1 p  2   1 11   1 ! applied to the  i -th qubit, and the  n -qubit Hadamard  H   is dened by applying thistransformation to each qubit. The product is then given by H  j X  i  =  H  0 j x 0 i H  1 j x 1 i H  n  1 j x n  1 i  = 12 n= 22 n  1 X Y   =0 (  1) X   Y  j Y  i ; where  X    Y   =  x 0 y 0  + x 1 y 1  + ::: + x n  1 y n  1  mod2 is the mod 2 scalar product. (Youshould check this equation!).Our black-box program for computing  f   does the unitary transformation U  f   j X  ij Y  i  =  j X  i j Y   + f  ( X  ) i The algorithm is as follows.1. Initialize two  n -qubit registers in the state j  1 i  =  j 0 i n j 0 i n : The rst register is the input register and the second register is called the "ancillary"register.2. Apply the  n -qubit Hadamard to the input register. j  2 i  = ( H   j 0 i n ) j 0 i n = 12 n= 22 n  1 X X  =0 j X  i j 0 i n : 2  3. Apply  U  f  : j  3 i  =  U  f   j  2 i = 12 n= 22 n  1 X X  =0 j X  i j f  ( X  ) i = 12 n= 2 X X  2 G=A ( j X  i j f  ( X  ) i + j X   + a i j f  ( X   + a ) i )= 12 n= 2 X X  2 G=A ( j X  i + j X   + a i )  j f  ( X  ) i ; where the sum runs over the 2 n  1 values of   X   such that no two elements of the setsare related by addition of   a: 4. Apply the Hadamard again to the input register j  4 i  = 12 n= 2 X X  2 G=A 2 n  1 X Y   =0 h (  1) X   Y  j Y  i + (  1) X   Y   + a  Y  j Y  i i  j f  ( X  ) i = 12 n= 2  1 X X  2 G=A X a  Y   =0 (  1) X   Y  j Y  ij f  ( X  ) i : 5. Now measure the input register, obtaining some result  Y:  There are manypossible values for the binary number  Y   , but each satises  a  Y   = 0 : 6. Repeat  O ( n ) times obtaining  n  1 linearly independent values  Y  1 ;Y  2 ;:::Y  n  of  Y   that are orthogonal to  a:  (To prove that we need only  O ( n ) tries, we need to notethat 2 n  1 values of   Y   satisfy this relation and that the probability of measuring thevarious  Y  's in this set is uniform. but this seems pretty clear.)7. Solve the set of   n  1 equations  a  y 1  = 0 ;:::;a  y n  = 0 for  a:  This can be doneby a method which works somewhat similarly to the Gaussian elimination methodfor sets of linear equations. It runs in polynomial time.We will not give the details of the proof that this can be done in polynomial time,but we can give a plausibility argument rather easily. If we wish to nd a vector  ~a in 3-space and we have a vector  ~y  that satises  ~a  ~y  = 0 ;  this means that  ~a  lies in acertain plane. In our problem  ~a  has components that are zeros and ones so it lies onthe corner of a cube in 3-dimensional space. Applying the condition  ~a  ~y 1  we ndthat  ~a  lies now in a plane. Applying the condition  ~a  ~y 2  we nd that  ~a  lies now in aline. Each equation reduces the dimension of space where  a  can be by 1. So we onlyneed 2 vectors  ~y  to solve the problem. In the general case,  n  1 linearly independentvectors will work.Notice that quantum interference is used to get the nal result in step 4, whilequantum entanglement also seems to be necessary since we need 2 registers, not 1,and the wavefunction is not a product wavefunction in the middle of step 3. Soquantum mechanics appears to enter in 2 ways.3
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks
SAVE OUR EARTH

We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

More details...

Sign Now!

We are very appreciated for your Prompt Action!

x