Cologne, 8th of July 2020
Engineers hate them. These guys show you the one neat trick to fix your quantum computer in the throw of a dice!
Sometimes I’m really picky about music, I want to listen to that one song stuck in my head. But more often, I’m much more relaxed about it, I go to Spotify, click a playlist for my mood, and let it randomly choose the songs for me. I’m not interested in listening to one specific song, I care more about the overall mood. Maybe something cheerful and upbeat because I’m exercising? Or maybe some lo-fi beats because I want to chill or study.
This attitude, call it randomness as a lifestyle(TM), can be useful in other situations. For example, voting polls take this approach to life: you want to know which party will win the next elections, but you can’t possibly ask every single voter. So what you do is call a thousand voters at random. You’re not interested in exactly how many votes one party will get, you just want to get an idea about which party’s most likely to win.
Quantum computers have been in the spotlight of science for a couple of years. They could be useful in a bunch of situations, from guiding the production of pharmaceuticals and new materials, to simulating our most fundamental theories of the world. The thread that runs through these two kinds of applications is that in all those cases we’re trying to simulate the dynamics of a quantum system. Maybe we’re interested in understanding superconductors, or maybe understanding a chemical reactions between the complex molecules that you find in new potential medicines. Maybe we’re even interested in what happens when protons and nuclei crash into each other.
Understandably, we scientists are pretty excited about this potential.
With Google’s 53-qubit machine blasting through records lately, we’ve entered a sort of race for the moon: corporations –Google, Amazon, IBM, you name it– and universities are now competing to be able to scale up quantum computers in a reliable way. The larger the computers become, the more complicated and intricate are their designs, the more they are prone to destructive noise and the harder it is to characterize this noise.
‘Noise’ is any uncontrolled dynamics of the quantum computer, say, one part of the quantum computer interacting with another when it shouldn’t. Noise is the Beast.
To make an analogy, noise to a quantum computer is like a scratch on a CD. If a CD has a scratch or two, you can still enjoy the music anyway. But if it has too many scratches, it becomes unenjoyable, maybe even downright unmusical. The CD looses the musical information it had. A quantum computer is somewhat like a CD, it contains and processes information. But in a fair analogy the quantum computer would be a CD in a bed of nails in an earthquake. Like literally the world is against it working. If left unchecked, noise will quickly ruin any quantum computation.
So two things are clear at the moment: quantum computers are here to stay, and so is noise.
Noise-control is a big chunk of what people in quantum computing research on. Experimentalists have a big noticeable role. They constantly come up with ways to control their quantum computers with more precision.
Deep into the caverns of theoretical physics, people are also contributing to noise control.
Some people work on quantum error correction. Error correction is the art of encoding information in a way that makes it more resilient to noise. In a way, it allows a quantum computer to “get away” with having a bit of noise. It’s like trying to communicate with a friend in front of a really noisy road: there you will probably have to shout a word a few times before your friend understands what you’re saying, you’ll have to be redundant.
That, in a nutshell, is what quantum error correction people work on: using redundancy to protect the information in a quantum computer.
I won’t be talking about error correction in this post, that I have to leave for later. This post is about another contribution of theoretical physics: using the “randomness as a lifestyle” approach to characterize the noise in a quantum computer. The name of this procedure is randomized benchmarking, it essentially ‘tests’ how noisy your quantum computer is.
The states of a quantum computer
Normal computers work using binary language. In the memory of your laptop, what you will see is a chip with a bunch of very small transistors, essentially tiny batteries: transistors are either charged (that is, they have more negative charges than positive), or they’re neutral. For the computer, that means a ‘1’ or a ‘0’. So, in a way, the state describing your laptop is a very long string of ones and zeros
which say whether each transistor in your memory is charged or not.
Quantum computers work… well, differently. The basic unit of a quantum computer is a qubit. A qubit isn’t a transistor, it’s sometimes an atom, or sometimes a small piece of superconductor. The state of a qubit is not ‘0’ or ‘1’, but a point in a circle. It already seems a bit odd, but wait, there’s more!
The circle and the sphere are similar objects geometrically speaking. They’re both round and kind of uniform. Importantly, they’re both the collection of all points that are at the same distance from the center. The only difference is that the circle lives in two dimensions, and the sphere in three. Mathematically, we could do the same in higher dimensions. Take a point in, for example, 5 dimensions, call it the center, and then “draw” every point that is at a fixed distance from the center, what you get would be a “sphere”, but in 5 dimensions.Circles and Spheres
Why did I go all Pythagoras on you all of the sudden, you ask?
Well, the state of a normal computer was a bunch of ones and zeroes, but the state quantum computer is not just bunch of points in a circle, oh no! Instead, it is a single point in a very highly dimensional sphere. And when I say very high, I mean it. If your quantum computer has 2 qubits, it is 4 dimensional. If it has 3 qubits, it is 8 dimensional. If it has 10 qubits, 1024 dimensional. That did escalate quickly.
Now, there’s one thing we physicists love doing: measuring things. In a normal computer, you “measure” your memory if you want to read out its contents –namely, you measure if there’s charge or not in each of the transistors. You can also measure a quantum computer, but that measurement looks a bit different mathematically speaking.
In quantum computers, a measurement is described by a point in the same sphere as the one the state “lives” in. When you measure, the outcome will be the distance between the two points: how far your state point is from your measurement point.
This seems weird, so let me give an example of it: measuring the spin of an electron. Electrons, as many other fundamental particles, have a property called spin. The spin basically tells you how the electron interacts with magnetic fields. The state of the spin of an electron is given by the direction in space, say up or down, or pointing towards the kitchen. You can also measure spin: by aligning magnets in some other direction, you will measure the angle between these two directions –the direction of the electron’s spin, and the direction of the magnets. Voilà: the state and the measurement are described by two directions, essentially two points on a sphere, and the measurement outcome is how aligned these directions are.
So here’s how to use a quantum computer. Your laptop would solve a problem by manipulating the bits of its memory, and then reading out the result –that is, “measuring” the final state of the memory. A quantum computer does roughly an analogous thing: you manipulate the qubits in memory, essentially you rotate the state of the quantum computer from one point in the sphere to another, and then you perform a measurement and get an output result.
Randomness to characterize noise
Now, after all this geometry intermezzo, let me deliver. You have a quantum computer, the state of a quantum computer is a point in a sphere and you want to change that state in a controlled way. You maybe want to write something in the memory of the quantum computer, or you want to use the quantum computer to solve some problem. So you operate the quantum computer, shoot some lasers at your qubits, whatever.
Effectively what will happen is that you will rotate the state from one point of the sphere to another point in the sphere. But bam! Noise, and you end up in a different place than the one you intended.
If the noise is not too bad, you’ll end up in a point nearby and it won’t be too much of a problem: this is thanks to quantum error correction. But if the noise is too strong, then not even that will save you, and your computation will be garbage.
So, how do you judge the noisiness of your quantum computer?
What you do is use randomness. You start in some initial point in the sphere, and begin to rotate the state of your system at random a few times, let’s say k times. As a last step, you undo all the rotations you just performed, and measure. Remember that the measurement is described by a point in the sphere, and you’ll want to choose the same point as the initial state.
So, what happens?
If there was no noise, your final state will just be the initial state. So the measurement will give 0, that’s the distance between your final state and your measurement!
If there was noise, then the distance between your final state and the initial state will become larger and larger as k grows: think about it this way, each random rotation along the way will be noisy, and the noise will just pile up.
In the end, the rate at which this distance grows with k turns out to be equal to the strength of the noise individual rotations will suffer from, on average.
Ding ding ding! You’ve got yourself a result!
Randomness as a quantum lifestyle
The world is an incredibly complicated place, with all sorts of weird phenomena happening at all scales, from atoms, to cells, to society, to stars. Quantum computers are no exception to this. I hope I made a case that sometimes we can use randomness to sort of zoom out and capture some essential features in this mess. In our case, the essential feature is ‘how noisy is my quantum computer?’, which is a key question determining whether your quantum computer is ready for applications.
Right now quantum computers are still small, even the state-of-the-art computer at Google is much too small for applications. We need to scale up, but as I mentioned: scaling comes at the price of noise. The bigger the quantum computer, the noisier it is! This noise depends on all sorts of things, different quantum computers have generally different sources of noise. So, if you build a quantum computer in your lab, you’ll have to understand this noise, get a grip on it, and then minimize it.
And this place, this very place, is where randomness as a lifestyle can safeguard us from the Beast.
 For the young and future reader, CDs were an ancient and arcane version of music streaming which were used by primitive hominids in the stone ages of computing.
 This escalation is part of the reason quantum computers can be more efficient than classical ones, but that is a topic for another day.
 This idea –to use randomness to “see the forest instead of the trees”–, is used in other areas of quantum physics, and even outside of physics like in the maths of optimization, or in evolutionary biology. In quantum physics, randomness is used, for example, to capture certain important aspects of complicated nuclear processes, and to understand certain properties of black holes.