Image credit: Russell Huffman
By Ryan F. Mandelbaum and Olivia Lanes
What is Quantum Computing? Most of this blogs readers are already excited about this technology after all, weve spent many hours reading textbooks and documentation trying to figure out how to write programs for real quantum chips. But many of our friends, family members, and people we randomly encounter still scratch their heads when they hear the words quantum and computer put together. We think its high time that they learn about quantum computing, too.
Partially inspired by Talia Gershons awesome WIRED video where she explains quantum computing at five different difficulty levels, we came up with some stock quantum computing explanations you can use to start spreading your excitement for quantum computing to other people in your life (or, if youre new here, use to understand quantum yourself). While were excited about this technology, we tried our best to sidestep the hype; quantum computers are exciting enough on their own, and theres no need to exaggerate how far along they are, what they can do today, or what we hope theyll do in the future.
But, no matter who youre trying to explain quantum to, theres a core understanding we think everyone should have. A quantum computer is similar to a classical computer in a lot of ways. Just like a classical computer, you store information using some physical system. You have to initialize that system, then perform some sort of operations on it (in other words, run a program), and then extract the information. It differs from classical computing in two key elements, however:
These core counterintuitive ideas underlie the fundamental operations of quantum computing. Once you understand these two pieces, the rest is a matter of how deep youd like to learn, and how quantum algorithms might provide benefits to you, your life, or the industry you work in. You should also get started using Qiskit.
Each of these explanations are based mainly on our experiences and opinions, and you might have your own tricks to help get quantum computing across feel free to tell us about them, what worked, and what didnt in the comments!
Some problems are really hard for todays computers to tackle, like designing drugs, running machine learning algorithms, and solving certain kinds of math equations. But the ability to solve those problems could help humankind tackle some of its biggest challenges. Well, quantum computers represent a new kind of computing system under development today that solves problems using an architecture that follows the most fundamental laws of nature and we hope theyll one day be able to to solve these hard problems. You can even try them out for yourself.
Hey, you know what a computer is but do you know how it works? Well basically, it thinks of everything, the YouTube videos you watch, the letters on the screen, everything, in a special kind of code. Programs and apps are basically just instructions that change the code around, leading to the results you see on the screen. But theres only so many different kinds of things that a regular computer can do with that code. A quantum computer works similarly to a regular computer, but its code looks a little different, and it can do even more things to those codes than your parents computers can. Quantum computers are really new, so theyre not better than a regular computer juuust yet but we think that one day they might be able to solve some of the biggest challenges in the world. Maybe it will even help you do your homework faster or something.
What do I do for work? Well *cracks knuckles*
So, there are some problems that people would like to solve that take even the best supercomputers a ridiculously long amount of time to run problems like simulating chemistry or breaking big numbers into smaller factors. Quantum computers might be able to tackle these problems by relying on a different set of physical laws than your computer does. Your computer is really just lots of electrical switches, called bits, that represents everything using binary code. In other words, the language your computer speaks encodes everything as long strings of 0s or 1s, while programs are mathematical operations that can change zeros to ones and vice versa. However, at even at the most fundamental level, a quantum computers code and its corresponding hardware looks differently. Quantum bits, or qubits, dont have to be binary during the calculation; they can actually exist in well-defined combinations of 0 and 1.
Its kind of like, if I was a qubit, instead of having mashed potatoes OR asparagus, I can have a third of a helping of mashed potatoes and two thirds of a helping of asparagus so long as it adds up to a whole side dish. However, once the problem ends, the quantum computers can only give answers in binary code, with some probability determining the outcome. Its like, if someone wanted to know which side dish I had, they check by closing their eyes, shoving their fork onto my plate, and reporting only the first side dish they taste, with the probabilities determined by how much of each side I had on my plate when they went in for a bite. Qubits also interact differently from regular bits. Lets say that Olivia and Ryan are both at dinner, and you only know that between them theyve eaten a helping of potatoes and a helping of asparagus, and not whose dish has what sides on it. But even if they havent spoken since dinner started, if you did the same eyes-closed fork jab you did on my plate, the sides they picked will be more correlated than the usual rules of random guessing would allow.
A direct consequence of this quantum dinner behavior is that there exist different types of algorithms for quantum computers. In fact, due to the quantum nature of the processor, scientists have already shown that at least theoretically, some quantum algorithms can be run exponentially faster than their classical counterparts. Provided that we can build the hardware, all these sorts of near-impossible problems may one day have solutions within arms reach. Anyway, thats what I do at work. Can you pass the gravy?
Editor Note: While thankfully we havent encountered a large contingency of quantum computing conspiracies, hype and tabloid coverage has led to some worrying interpretations of what quantum can and cant do some indeed bordering on conspiracy-minded thinking. But according to at least one expert, the best way to speak with conspiracy theorists isnt with facts but with empathy.
Oh, youre worried about quantum computers? Whys that? I was actually really interested in learning more about them, too, and I didnt understand them at first. What have you learned so far? Huh, thats interesting. So far, Ive learned that some research labs are working on a new kind of computer that can solve certain problems that classical computers cant. I was definitely really interested in the science behind it. See, theyre more or less just computer processors that rely on a system of bits to solve problems. However, these quantum bits can perform a richer set of mathematical operations than classical bits, which makes them better at solving certain problems. What did you read that they could do? Portals and new dimensions, huh? Thats really interesting, but no, I did some research on my own and what the media doesnt want you to know is that these computers are more business-y than science fiction-y they might one day be revolutionary for chemistry, machine learning, and other topics. But the media also doesnt want you to know that these computers are still really early in their development like, they forget their information quickly and theres a lot of work to do before theyre something to worry about. There are actually services that let you try them out and program them on your own. Now tell me more about the UFO you saw
Quantum computers are a new kind of computer processor that one day might augment your current computing resources to tackle certain challenges difficult for todays classical computers alone. Quantum processors work in tandem with classical computers as part of a cloud-based computing workflow, providing value by performing mathematical operations challenging for classical processors. While theres no device capable of executing a killer app yet, research has demonstrated that the enhanced capabilities of quantum systems could accelerate the research and development process, and provide value to certain industries in the coming years chemical and materials design, drug development, finance, and machine learning, for example. In one report, Boston Consulting Group predicted that productivity gains by end users of quantum computing, both in cost savings and revenue generation opportunities, could equal $450 billion or more annually. Many Fortune-500 companies have already begun to research and develop domain-specific thought leadership in quantum computing so as to be prepared when the field matures.
Quantum processors are kind of like a GPU in the sense that theyre designed to handle specific tasks that the CPU isnt well-suited to handle. But unlike a GPU, quantum computers work using a different kind of hardware architecture, one that allows them to perform a richer array of logical operations than just Boolean logic. These hardware requirements lead to bulky systems, so todays developers hoping to exploit quantum resources run their code over the cloud, employing both classical and quantum processing power where necessary for their program.
Quantum computers are a nascent technology, so programming them today is can be a lot like writing code in assembly language, stringing individual quantum bits together into circuits using quantum logic gates. These circuits are similar to classical computers in that their programs begin by initializing the qubits into a string of zeroes and ones, then perform operations, then return an output. However, quantum gates can also produce superpositions of strings, creating well-defined combinations of bitstrings (though you can only end up with one of these bitstrings, determined by the rules of probability, at the end of the calculation). Further operations produce entanglement and interference, linking certain qubits together and changing those probability distributions such that certain bitstrings become more likely and certain bitstrings become less likely when you measure the final result.
Given how recently quantum programming languages arose, developers have organized into open source communities like Qiskit where they maintain the code used to access quantum computers. As part of that, theyre designing and implementing quantum algorithms that can run on these devices, and creating modules designed to harness the potential power of quantum computers without having to continually program individual bits kind of like building a higher-level programming language on top of the assembly language with which we access quantum computers today. You can learn more by getting started with Qiskit here!
Quantum mechanics might be confusing, but it can still be incredibly useful, even if youre not a physicist. A computer based on the laws of quantum physics might help solve problems in chemistry, machine learning, or even solving partial differential equations.
Objects following the rules of quantum mechanics can enter states called superpostions. If an objects state is in a superposition of 0 and 1, that means that the object is in a linear combination of both values simultaneously until a measurement forces the object into one state or the other, with the probability of measuring either state based on the coefficients of each state in the linear combination. These objects can also become entangled, meaning you cannot describe one object mathematically on its own; when we perform experiments on entangled particles, we find that their properties are more correlated than classical physics would otherwise allow. We use these principles to construct sets of quantum bits, or qubits. I cant know each qubit value individually I can only create these linear combinations from states that include both qubits. But if I measure one qubit and force it to choose, lets say it ends up measuring 1, then the other qubit will take on a value highly correlated with the first value more correlated than random chance alone would allow. We use these ideas to generate interference, where certain combinations of qubit values become more likely and certain ones become less likely.
In a classical computer, computational spaces add together, because bits can exist in only one state or the other, 0 or 1. In a quantum computer, the computational space grows exponentially as you add more bits (2^n where n is the number of bits) so its easy to understand how they can become powerful computational tools. Furthermore, there are certain problems that are hard for classical computers to compute. Because quantum computers themselves rely on quantum physics, they are better able to simulate quantum mechanical phenomena, like chemical interactions and bonds. Though the devices are noisy and error prone today, researchers hope that quantum computers will be able to utilize the properties of entanglement and interference to run some algorithms faster than a classical computer can, making solutions to these hard problems finally feasible. Together, these benefits might one day allow scientists to perform various elements of their jobs faster.
Macroscopic quantum effects have long been observed in superconducting circuits. However, it wasnt until theoretical developments showing that flux and voltage can be quantized circuit QED that this idea was applied to quantum information processing.
A superconducting transmon qubit is essentially a quantized anharmonic oscillator. The circuits macro state can be described by the quantized energy levels; the ground state (0), the excited state (1), or even higher order excited states as well (2, 3, 4, etc.). But because the circuit is anharmonic the energy transitions between states 0 and 1 is different than 1 and 2, so we can isolate the bottom levels with a microwave pulse at that frequency to create a quantum bit for information processing.
In order to read-out and control the state of a transmon, we couple the qubit to either a 2D or 3D resonator (the physics is the same). The qubit and the resonator interact in such a way that when we probe the resonator with a standing microwave tone, the resonant frequency will actually shift depending on if the qubit is in the ground or excited state. This is how we can read out and interact with the qubits that make up a quantum computer.
Coupling these qubit-cavity systems together in an array and allowing them to talk to other another with 2-qubit gates (essentially more finely tuned microwave pulses) creates a quantum processor. Running specific gates in a specific order on this processor can create quantum algorithms. By leveraging the processors quantum properties of entanglement, superposition and interference, some quantum algorithms can theoretically be run significantly faster than their classical counterparts. Once we have reached the point where applying these algorithms has become useful and advantageous, we will have achieved what we call the era of quantum advantage.
Whispers: Hey there, pup, listen. I told my boss I would be able to teach you quantum computing, but you barely understand how your doggy door works. So heres what Im gonna do. Im gonna train you how to give me your left paw when I say initialize. Then youre gonna give me your right paw when I say X-gate. Then when I say Hadamard gate, youre going to hop on your hind legs and give me both paws. When I say CNOT, youre going to roll over, and when I say measure, youre going to bark. If you do this for me Ill cut some salami up into your dinner tonight.
Hey, Boss! Yeah! I finally figured out how to explain quantum computing to the dog! Yep, Ill write it all down in the blog post tonight. Wanna see?
Get started using Qiskit here!
Go here to see the original:
How Do You Explain Quantum Computing To Your Dog (And Other Important People in Your Life)? - Medium