Large Integer Factorization: Number Field Sieve vs Shor

My book about Programming Quantum Computers just came out on January 2019 in Amazon at https://www.amazon.com/gp/product/1484242173/ref=dbs_a_def_rwt_bibl_vppi_i0

I wrote this book to be the ultimate guide for programming a quantum computer in the cloud. Thanks to the good folks at IBM research this is now possible. IBM has made their prototype quantum rig (QExperience) available not only for research but for individuals in general interested in this field of computing.

Quantum computing is gaining traction and now is the time to learn to program these machines. In years to come, the first commercial quantum computers should be available and they promise significant computational speedups compared to classical computers. Consider the graph bellow showing the time complexities for two large integer factorization algorithms: the best classical algorithm, the number field sieve, vs. the quantum factorization algorithm developed by Peter Shor.

Shor’s algorithm provides a significant speedup over the number field sieve for a problem that is the foundation of current cryptography. A practical implementation of this algorithm will render current asymmetric encryption useless!

All in all, this book is a journey of understanding. If you find the concepts explained throughout the chapters difficult to grasp, then you are not alone. The great physicist Richard Feynman once said: If somebody tells you he understands quantum mechanics, it means he doesn’t understand quantum mechanics. Even the titans of this bizarre theory have struggled to understand what it all means. Ultimately, this is my take on quantum computing in the cloud and I hope you find as much enjoyment exploring it as I got writing it. My humble advice: Learn to program quantum computers, soon they will be ever present in the data center, doing everything form search and simulations to medicine and artificial intelligence. You name it.

The manuscript is divided in the following Chapters:

Chapter 1: The Bizarre and Awesome World of Quantum Mechanics

It all begun in the 1930s with Max Planck reluctant genius. He came up with a new interpretation for the energy distribution of the light spectrum. He started it all by unwillingly postulating that the energy of the photon was not described by a continuous function, as believed by classical physicists, but by tiny chucks he called quanta. He was about to start the greatest revolution in science in this century: quantum mechanics. This chapter is an appetizer to the main course, and explores the clash of two titans of physics: Albert Einstein and Niels Bohr. Quantum mechanics was a revolutionary theory in the 30s and most of the scientific establishment was reluctant to accept it; including the colossus of the century: Albert Einstein. Fresh from wining the Nobel Prize, Einstein never accepted the probabilistic nature of quantum mechanics. This caused a rift with its biggest champion: Niels Bohr. The two greats debated it out for decades and never resolved their differences. Ultimately, quantum mechanics has withstood 70 years of theoretical and experimental challenges, to emerge always triumphant. Read this chapter and explore the theory, experiments, and results; all under the cover of the incredible story of these two extraordinary individuals.

Chapter 2: Quantum Computing: Bending the Fabric of Reality Itself

In the 80s, another great physicist – Richard Feynman – proposes a quantum computer. That is, a computer that can take advantage of the principles of quantum mechanics to solve problems faster. The race is on to construct such a machine. This chapter explores, in general terms, the basic architecture of a quantum computer: Qubits, the basic blocks of quantum computation. They may not seem like much but they have almost magical properties: Superposition, believe or not, a qubit can be in two states at the same time: 0 and 1. This is concept hard to grasp at the macro scale where we live. Nevertheless, at the atomic scale, all bets are off. This fact has been proven experimentally for over 70 years. Thus superposition allows a quantum computer to outmuscle a classical computer by performing large amounts of computation with relative small numbers of qubits. Another mind bender is qubit entanglement: Something that, when explored, seems more like voodoo magic than a physical principle. Entangled qubits transfer states, when observed, faster than the speed of light across time or space! Wrap your head around that. All in all, this chapter explores all the physical components of a quantum computer: quantum gates, types of qubits such as super conducting loops, ion traps, topological braids, and more. Furthermore, the current efforts of all major technology players in the subject are described, as well as other types of quantum computation such as quantum annealing.

Chapter 3: Enter the IBM Q Experience: A One of a Kind Platform for Quantum Computing in the Cloud

In this chapter you will get your feet wet with the IBM Q Experience. This is the first quantum computing platform in the cloud that provides real or simulated quantum devices for the rest of us. Traditionally, a real quantum device will be available only for research purposes. Not anymore, thanks to the folks at IBM which have been building this stuff for decades and graciously decided to open it up for public use. Learn how to create a quantum circuit using the visual Composer or write it down using the excellent Python SDK for the programmer within you. Then execute your circuit in the real thing, explore the results, and take the first step in your new career as a quantum programmer. IBM may have created the first quantum computing platform in the cloud, but its competitors are close behind. Expect to see new cloud platforms in the near future from other IT giants. Now is the time to learn.

Chapter 4: QISKit, Awesome SDK for Quantum Programming in Python

QISKit stands for Quantum Information Software Kit. It is a Python SDK to write quantum programs in the cloud or a local simulator. In this chapter you will learn how to setup the Python SDK in your PC. Next, you will learn how the quantum gates are described using linear algebra to gain a deeper understanding of what goes on behind the scenes. This is the appetizer to your first quantum program, a very simple thing to familiarize your with the syntax of the Python SDK. Finally you will run it in a real quantum device. Of course, quantum programs can also be created visually in the Composer. Gain a deeper understanding of quantum gates, the basic building blocks of a quantum program. All this and more is covered in this chapter.

Chapter 5: Start Your Engines: From Quantum Random Number Generators to Quantum Teleportation

This chapter is a journey through three remarkable information processing capabilities of quantum systems. Quantum random number generation explores the nature of quantum mechanics as a source for true randomness. You will learn how this can be achieved using very simple logic gates and the Python SDK. Next, this chapter explores two related information processing protocols: Super Dense Coding and Quantum Teleportation. They have exuberant names and almost magical properties. Discover their secrets, write circuits for the Composer, execute remotely using Python, and finally interpret and verify their results.

Chapter 6: Fun with Quantum Games

In this chapter you will learn how to implement a basic game in a quantum computer. For this purpose we use the quintessential Quantum Battleship distributed with the QISKit Python tutorial. The first part looks at the mechanics of the game, yet we don’t stop there. The second part of this chapter takes things to the next level by giving it a major face lift. In this part you will put Quantum Battleship in the cloud by giving it: A browser based user interface, an Apache CGI interface to consume events and dispatch them to the quantum simulator, and more. Impress your friends and family by playing Quantum Battleship with your web browsers in the cloud.

Chapter 7: Game Theory: With Quantum Mechanics Odds are always in your Favor

This is a weird one, even for quantum mechanics standards. This chapter explores two game puzzles that sow the remarkable power of quantum algorithms over their classical counterparts: The counterfeit coin puzzle and the Mermin-Peres Magic Square. In the counterfeit coin puzzle, a quantum algorithm is used to reach quartic speed up over the classical solution for finding a fake coin using balance scale a limited number of times. The Mermin-Peres Magic Square is an example of quantum pseudo-telepathy or the ability of players to almost read each other’s minds achieving outcomes only possible if they communicate during the game.

Leave a comment

Design a site like this with WordPress.com
Get started