# A Brief Introduction to Quantum Computing

It’s been a while since I’ve updated this blog: whoops! Guess that’s another reason to make writing on here a habit.

I remember the first time I heard about quantum computers. It was in a popular science magazine article, talking all about how this revolutionary technology would change the future of computing. One of the pictures was of a quantum computer that had been developed by D-Wave. It looked like an upside-down cone, with wires and pipes twisting around a complex series of components. At the very tip of the upside down cone was the actual location of the computer: all the other components were either to control the computer, or to cool it down, since the computer’s temperature had to be maintained as close to absolute zero as possible.

I remember being both fascinated and confused. What was the point of this complex machine? What incredible thing could it do? With quantum computing being mentioned frequently in the news today, I’m sure others have those same questions. In this article, I hope to address those.

## What is a quantum computer, and why should I care?

A quantum computer is a machine that manipulates *things* which have quantum mechanical properties. Usually, these
*things* are atoms or particles, but anything that follows the rules of quantum mechanics could potentially be a
*thing* used in a quantum computer.

What’s the point of a quantum computer manipulating these tiny particles, though? Well, first, its best to think of
these particles as a method of storage. Each one can store exactly one *qubit* of information. What is a qubit? Don’t
worry about that right now… in the next section, I’ll go over what a qubit is.

Computers, at their very core, only do one thing: transform data. Of course, that is a very abstract way of thinking
about computer processes. But it helps illustrate why quantum computers are called *computers*: because they transform
data. Of course, this data has a very different nature that so-called ‘classical’ data, and that’s what makes quantum
computers so special.

### What’s a qubit?

A qubit is a singular unit of quantum data, in the same way that a bit is a singular unit of classical data. The main
difference is that a classical bit can store only two discrete values: one and zero, while a qubit can store **any
combination of both**. What does that mean? It means that a qubit can either be discretely one or zero, but it can
also be somewhere in between. The reasons why it can be ‘both at once’ has to do with quantum mechanics. Though I won’t
go into the specifics of how this is possible, it’s important to understand that to store quantum data, the storage medium
must be incredibly stable and isolated from noise or disruption. This is why quantum computers must be as close
to absolute zero as possible to work correctly; otherwise, a quantum particle could experience ‘decoherence’ and the
results would be meaningless.

### What makes quantum computers so interesting?

With our understanding of qubits, we can now tackle this question. It’s easier to think of a qubit as some device that will output ‘zero’ or ‘one’ when it is observed, each with a certain probability. For example, a certain quantum particle might have a 20% chance to be in the spin-up state when observed and an 80% chance to be in the spin-down state.

At first, this doesn’t seem so interesting. Are qubits simply random number generators? What makes them so powerful? The answer to that question is simple: quantum entanglement.

Quantum entanglement is a very misunderstood concept in the realm of popular science. All that it means is that two or more quantum particles can become ‘entangled’ with each other, meaning that the state of a certain particle depends on the observation of one of the other entangled particles. For example, it is possible to entangle two quantum particles so that both have a 50% of being spin-up and a 50% chance of being spin-down, but if one particle is measured to be spin-up, the other one has a 100% chance of being spin-down, and vice-versa. In other words, the output of a qubit could depend on another qubit. If we modeled both of these entangled particles as simple devices that have a 50% chance of outputting a ‘one’ (spin-up), then there are four possible states the system could be in: 00, 01, 10, and 11. However, if they are entangled, the system can only be in two possible states: 01 and 10.

This entanglement property means that adding a new qubit to a quantum computer significantly increases
the amount of possible data that can be stored. The information that a quantum computer can store
is actually a two-dimensional matrix of probability values for each possible output when the
quantum computer’s state is measured. Because of this, a quantum computer’s storage capabilities
*double* with each qubit added, while classical computers only gain one additional bit of information.

With enough qubits, problems can be solved significantly faster than classical computers. Shors Algorithm is an algorithm for quantum computers that allows finding the prime factors of an arbitrary integer in polynomial time, which would allow RSA encryption (which powers Internet protocols such as HTTPS!) to be cracked. Granted, a quantum computer would need thousands of qubits to achieve this for 32-bit or 64-bit integers, but that day may not be far off. Whether people like it or not, quantum computing will only become more important as researchers constantly improve how many qubits a quantum computer can support.

I hope this article has intrigued you about the amazing possibilities of quantum computing. There are many resources that are more through than this one in explaining how quantum computers work, but I hope this was a good primer.