The Quantum Age
“The nineteenth century was known as the machine age, the twentieth century will go down in history as the information age. I believe the twenty-first century will be the quantum age.” — Paul Davies
Computers are everywhere — you might even be reading this on one! But what is it that computers do? Let’s step back and ask instead what it is we want them to do.
Algorithms and programs
Consider the fact that there is nothing your digital computer can compute that a room full of people with pen and paper could not. Remember long division? Imagine those people are doing long division — a sequence of memorized steps on new pieces of data. The steps your teacher drilled into you are called an algorithm. The steps are abstract rules that people with pen and paper could carry out, people with an abacus, electronic circuits with a Windows operating system, and so on. Given a particular set of tools, the specific instructions needed to carry out the steps using those tools are called the program. (You have several programs unique to your brand of computer that are carrying out the steps of algorithms right now.)
Regardless of the tools used, if the algorithm is followed faithfully, the answer will always be the same. People with pen and paper are prone to errors and are slow. Electronic circuits are near perfect and extremely fast. The choice is clear. Let’s put it another way. There are plenty of algorithms we want — or need — to carry out. Wouldn’t it be great if we could engineer a device to do it for us quickly and accurately? Yes, of course it would.
Remarkably, every algorithm we can think of can be cast as a program that changes sequences of 1s and 0s one step at a time. If we could build a machine that can represent any sequence of 1s and 0s and accept instructions (programs) for changing one sequence into another, we could use it to carry out the steps in any algorithm instead of doing it ourselves. Indeed, this is what a modern digital computer is — a machine that can perform any computation for us.
Although a digital computer can carry out the steps of any algorithm, some algorithms have digital programs that require too many steps to be feasible. For example, solving certain equations using digital computers is completely infeasible, even if the computer could do it in principle. We know, roughly speaking, the equations we would need to solve to determine what would happen when a hypothetical drug molecule interacted with a biological molecule. There are even algorithms to solve these equations. Many of the world’s supercomputers chug away, running inefficient programs to solve such equations. But it’s just too hard — so we “solve” the equations with genetically modified mice instead.
The quantum ask
As before, we ask the following: wouldn’t it be great if a machine could be built especially for the purpose of carrying out these equation-solving algorithms? Yes, that would be fantastic. But what would it need to do exactly? As it turns out, scientists have found algorithms whose steps change not sequences of 1s and 0s but sequences of complex numbers — numbers like the square root of -1 and π. These algorithms, though constrained not to be all-powerful, have far fewer steps than the original algorithms.
In some sense, these algorithms are not special — children could be trained to carry out the steps like long division. But that would be as inefficient as it is cruel. So, the original question becomes more precise. Can we build a machine that can represent any sequence of complex numbers and accept programs to change one sequence into another? Indeed, we can — and that device is called a quantum computer.
Nowadays, many algorithms are phrased as steps that change sequences of complex numbers rather than 1s and 0s. These so-called quantum algorithms could be performed by hand or using a digital computer, but it would take a long time. A quantum computer is a special-purpose device used to carry out these steps directly and efficiently.
Many things can be used to represent a 1 or 0. Digital computing technology has settled on the transistor, billions of which are in your computer now. But how do you “naturally” represent complex numbers? As it turns out, there’s a theory for that! Quantum physics demonstrates that complex numbers are encoded by the fine details of light and matter. Really, they are all around us — we just don’t have the finesse to get at them with our clumsy hands. But science and engineering have progressed through the past 100 years to give us the required level of control. We can now build devices to encode complex numbers and change them.
At the time of writing, all quantum computers in existence are prototypes — they are small and not reliable enough to be practical. They also don’t have quantum programs at the level of abstraction that we have for digital computers. There is no “quantum” version of the word processing program I’m writing this on or the web browser program you potentially downloaded it on. The most interesting thing to imagine is what those quantum programs might look like — after all, when digital algorithms were being invented and the early computing machines were built to implement them, no one could have imagined that programs for future versions of those machines would exist to write blogs, share videos, perform bank transactions, and all the other things we take for granted. We know quantum computers will be able to solve some important problems for us, but what we will eventually have them do for us is unimaginable today because human foresight rather poor.
Swiss Army computer
Even if I had a use for every one of the tools on a Swiss Army knife, I still would not buy one — it’s too bulky, and I’m not headed into the woods anytime soon. Such a knife illustrates that specialized tasks are best carried out using specialized tools. If you open a hundred bottles of wine per day, for example, a Swiss Army knife has a corkscrew — but you are far better off buying a machine optimized for opening bottles of wine.
A computer is like a Swiss Army knife but for calculations. A computer can solve all sorts of mathematical problems. And that’s extremely useful because many everyday problems can be phrased as math problems. Obvious examples are determining how much tip to leave at a restaurant, figuring out what time to catch the bus to arrive early for that meeting, adding up the values in a spreadsheet, and so on. Less obvious examples that are really just hidden math problems are recognizing faces in a digital photo, formatting words in a document, and seamlessly showing two people’s faces to each other on other sides of the world in real time.
The central processing unit, or CPU, inside your tablet, smartphone, or laptop is tasked with carrying out any possible set of instructions thrown at it. But, because it can do anything, it’s not the best at doing specific things. This is where the other PUs come in. Probably the most famous is the GPU, or graphics processing unit.
Maybe graphics aren’t something you think about a lot. But even displaying something as simple as text on your screen requires coordinating the brightness and color of millions of pixels. That’s not an easy calculation for a CPU. So, GPUs were made as special-purpose electronic devices that do the calculations required to display images well and not much else. The CPU outsources those difficult calculations to the GPU, and video gamers rejoice!
The QPU
Calculations involving the multiplication and addition of complex numbers are very time-consuming for a CPU. As you now know, these kinds of calculations are essential for solving problems in quantum physics, including simulating chemical reactions and other microscopic phenomena. It would be convenient for these kinds of calculations if a quantum processing unit (QPU) were available. These are confusingly called quantum computers, even though they are chips sent very specific calculations by a CPU. I predict they will eventually be called just QPUs.
You won’t find a QPU inside your computer today. This technology is being developed by many companies and academic researchers around the world. The prototypes that exist today require a lot of supporting technology, such as refrigerators cooled using liquid helium. So, while QPUs are “small,” the pictures you will see of them show large laboratory equipment surrounding them.
What will the future QPU in your computer do? First of all, we could not have guessed even ten years ago what we’d be doing today with the supercomputers we all carry around in our pockets. (Mostly, we are applying digital filters to pictures of ourselves, as it turns out.) So, we probably can’t even conceive of what QPUs will be used for ten years from now. However, we do have some clues as to industrial and scientific applications.
At the Quantum Algorithm Zoo (quantumalgorithmzoo.org), 65 problems (and counting) are currently listed that a QPU could solve more efficiently than a CPU alone. Admittedly, those problems are abstract, but so are the detailed calculations that any processor carries out. The trick is in translating real-world problems into the math problems we know a QPU could be useful for. Not much effort has been put into this challenge simply because QPU didn’t exist until recently, so the incentive wasn’t there. However, as QPUs start to come online, new applications will come swiftly.
Simulate all the things
My favorite and inevitable application of QPUs is the simulation of physics. Physics simulations are ubiquitous. Gamers will know this well. When you think of video games, you should think of virtual worlds. These worlds have physical laws, and the motion of the objects and characters in the world needs to be calculated — this is a simulation. Physics must be simulated when designing aircraft, bridges, and any other engineered system. Physics is simulated in science, too — entire galaxies have been simulated to understand their formation. But quantum physics has resisted simulation because CPUs are really bad at it.
Once we can simulate quantum physics on QPUs, we can simulate chemical interactions to rapidly design new materials and medicines. We might also be able to simulate the physics at the creation of the universe or the center of a black hole, and who knows what we will find there.
The takeaway
Qubits, superposition, entanglement, parallelism, and other quantum magic you’ve read about elsewhere are not useful concepts to think about if you only want a five-minute summary of quantum computers. The basic thing you need to know about QPUs is the same thing you know about GPUs — they are special-purpose calculators that are good at solving a particular kind of mathematical problem.
If, at some point, you end up with a job title that has the word quantum in it, it will probably be a software job (much like there are 20 software engineers for every computer hardware engineer today). The most challenging problem a Quantum Solutions Engineer might face is in translating the calculations their business currently performs into problems that can be outsourced to a QPU. They may not even use or need to understand concepts like superposition and entanglement! So, you have a pass if you’d like to be spared the details.
The bigger problem today is that the details of quantum concepts are not avoided, but replaced with poor analogies and mysticism. The Quantum Age looms, but today, we are in the Quantum Dark Ages, where myth and superstition run rampant.
This was part of the following book, and it is free here on Medium!
Physical copies are available on Amazon: What You Shouldn’t Know About Quantum Computers.