Simple circuit "factors" arbitrarily large numbers

Last Thursday, at the QIP rump session in Beijing, John Smolin described recent work with Graeme Smith and Alex Vargo [SSV] showing that arbitrarily large numbers N can be factored by using this constant-sized quantum circuit

to implement a compiled version of Shor’s algorithm.  The key to SSV’s breathtaking improvement is to choose a base for exponentiation, a, such that the function a^x bmod N is periodic with period 2.  (This kind of  simplification—using a base with a short period such as 2, 3, or 4—has in fact been used in all experimental demonstrations of Shor’s algorithm that we know of).  SSV  go on to show that an a with period 2 exists for every product of distinct primes N=pq, and therefore that the circuit above can be used to factor any such number, however large.  The problem, of course, is that in order to find a 2-periodic base a, one needs to know the factorization of N. After pointing this out, and pedantically complaining that any process requiring the answer to be known in advance ought not to be called compilation, the authors forge boldly on and note that their circuit can be simplified even further to a classical fair coin toss, giving a successful factorization whenever it is iterated sufficiently many times to obtain both a Head and a Tail among the outcomes (like having enough kids to have both a girl and a boy).   Using a penny and two different US quarters, they successfully factor 15, RSA-768, and a 20,000-bit number of their own invention by this method, and announce plans for implementing the full circuit above on state-of-the art superconducting hardware.  When I asked the authors of SSV what led them into this line of research, they said they noticed that the number of qubits used to do Shor demonstrations has been decreasing over time, even as the number being factored increased from 15 to 21, and they wanted to understand why.  Alas news travels faster than understanding—there have already been inquiries as to whether SSV might provide a practical way of factoring without the difficulty and expense of building a large-scale quantum computer.

This entry was posted in Computer Science, Hype, Quantum Computing, Quantum Computing Bastardizations. Bookmark the permalink.

3 Responses to Simple circuit "factors" arbitrarily large numbers

  1. John says:

    Brilliant!

    Like or Dislike: Thumb up 3 Thumb down 0

  2. Pingback: QIP 2013 from the perspective of a greenhorn (grad student) | Quantum Frontiers

  3. John Sidles says:

    The very first sentence of the Smolin/Smith/Vargo preprint arXiv:1301.7007 (which is wonderfully dead-pan!) asserts a Great Quantum Challenge:

    “Building a quantum computer capable of factoring larger numbers than any classical computer can hope to is one of the grand challenges of computing in the 21st century.”

    Here a Great Quantum Challenge is (with a nod to Niels Bohr) a challenge whose dual also is a Great Quantum Challenge.

    A reasonable statement of the dual Great Quantum Challenge is along the lines of

    “Building classical computers/algorithms that are practically capable of simulating the data-sets of all feasible quantum experiments is one of the grand challenges of the 21st century.”

    Here “practically capable” is understood to mean something like “requiring computational resources that are polynomial in the bit-length of a simulated dataset.”

    For the present it is entirely unknowable — and thus reasonably debatable — which (if either) Great Quantum Challenge is likely be fulfilled.

    It is evident, though, that throughout the past several decades, progress toward the second Great Quantum Challenge has been more uniformly rapid, more cumulative in capabilities demonstrated, and more transformational in practical benefits, than progress toward the first Great Quantum Challenge.

    Like or Dislike: Thumb up 0 Thumb down 2

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>