Quantum computers without beating about the bush

Disclaimer

This article won’t make you an expert, but it should help you understand what quantum computing is, why it’s important, and why it’s so exciting. If you already have a background in quantum mechanics and grad school math, you probably don’t need to read this article. You can jump straight into a book like A Gentle Introduction To Quantum Computing(Hint, “gentle” is a relative term). But if you’re like most of us and don’t have that background, I hope you saved some brain space for this because we will forget everything we know about computers and do our best to demystify one of the most mystical topics in this field.

But first a word from our Prime Minister:

Apparently he  knows something about it. But he missed the point. All he said was that you can pack more information into qubits. QC (Quantum Computing not Quebec) is not about information density but about parallelization that scales exponentially with the number of qubits. Kudos for trying. He didn’t get it right but at least he didn’t get it wrong. Let’s move on.

Classical computers:

Behold! The transistor, a tiny switch about the size of a virus that can control the flow of a small electrical current acting like a barrier. It’s one of the most important inventions ever because when it’s on, it’s on and when it’s off, it’s off. Sounds simple. But this “either/or” situation is incredibly useful because it is a binary system. On or off, yes or no, one or zero. But with enough transistors working together we can create limitless combinations of “ons” and “offs”, “ones” and “zeros” to make a code that can store and process just about any kind of information you can imagine and that’s how your computer computes. The only limitation to how fast and smart our computers could get was how many transistors we could pack onto a microchip (processor). But when you start dealing with distances that are smaller than 10 nanometers, the world gets fuzzy at the atomic scale. Particles can be treated as wave-like disturbances that have a certain probability of being in one place or another and you start to face the very real dilemma of electrons just jumping across the barrier for no reason, in a phenomenon known as quantum tunneling. If that starts happening, your data is gonna start getting corrupted while it moves around inside your computer.

Some fundamentals of Quantum Computing:

what is QUBITS?

They are kinda of equivalent to classical bits…, bear with me here, they can be 0 or 1 or anything in between, and this notion of “between” what really melt your brain. They have a probability of being 0 and a probability of being 1, but until you measure them, they may be in an indefinite state. For example, an electron may have a clockwise spin or a counterclockwise spin. But it’s “quantum state” or what we call it “Superposition” is a mix of probabilities that it is one or the other.

Superposition is what makes quantum computers operate as parallelized systems. That’s why a quantum computer can work on a million computations at once, while your desktop PC works on one.

Why Qubit?

A bit can hold only either 0 or 1 at one time, Qubit can hold both 1 and 0 at the same time, the number of calculations grows exponentially as more bits are added. The dual identity of qubits means that all those calculations can take place at the same time, providing an answer far more quickly. So theoretically a single qubit can take part in millions of processes at a single time. Thus making quantum computers super fast.

Entanglement:

Groups of independent qubits, by themselves, aren’t enough to create the massive breakthroughs that are promised by quantum computing. The magic really starts to happen when the quantum physics concept of entanglement is implemented. Entangled qubits affect each other instantly when measured, no matter far apart they are. The instant one qbit is disturbed, it chooses one spin, or one value; and at the same time, the second entangled qbit will choose a spin direction that is consistent with the way they are entangled.

Einstein didn’t buy this concept and euphemistically called it “spooky action at a distance.” 

This behavior allows us to know the value, or state, of the qubits without actually looking at them.This behavior is also how quantum computers are able to process extremely complex computations and simulations, providing a diversity, or range, of results like The Traveling Salesman Problem that we talked about in a previous article. This is also where the challenge of scaling quantum computing (aka the number of qubits) lies. We have to be able to isolate our fragile qubits from unwanted entanglement with the surrounding (noise) e.g., a microwave warming a pizza next door.

Why QC is super fast?

Okay, here is an example:

There is a maze which has only one or two correct way out, and millions of other way which will result in dead end. Now, imagine yourself at the centre of this maze. You don’t know the way out, so you will start exploring each and every way one by one, and after millions of tries and years of time, you will be able to find the correct way out. (Modern computer works this way)
Second case:
Now again imagine you have your millions of clones also along with you. You and your clones will start exploring all the ways together at once. And because all clones are exploring all the possible ways together, one of the clone will find the correct way out in the first go itself. Thus you have your solution or way out in the first try. You will get your solution very fast in the first go, isn’t it. Those clones of yours which are present and finding all the ways at once, are actually your superposition states. You were present at many places at once. That is like qubit.

The Bottom Line:

I know that all of this raises more questions than it answers, but that’s how science and technologie works. The good news is that trivial quantum computing programs are actually pretty easy to understand if a bit confusing at first. Plenty of tutorials are available that will help you write your first quantum program, as well as let you run it on a simulator, and possibly even on a real quantum computer.

Further Reading

  1. https://www.technologyreview.com/2019/01/29/66141/what-is-quantum-computing/
  2. https://www.quantumcomputinginc.com/
  3. https://www.edn.com/the-basics-of-quantum-computing-a-tutorial/
  4. https://towardsdatascience.com/the-ultimate-beginners-guide-to-quantum-computing-and-its-applications-5b43c8fbcd8f