# A beginner’s guide to quantum computing

Quantum computing is often thrown around in conversations, bringing with it a sense of mystery and curiosity. People talk about quantum computing as if it’s some kind of magical device that will instantly solve the world’s problems, but is it really what it claims to be? I decided to make this guide to clear things up and give a hopefully comprehensive high-level overview of quantum computing.

Before we get into the specific workings, let’s start with some uses of quantum computers to better understand what the hype is all about. Quantum computers can only do some tasks better than classical computers, which is why classical computers are always used together with quantum computers, both to control the quantum computer and further process the output.

## Optimization

The first major use of quantum computing is optimization, as quantum computers can optimize much more efficiently than classical computers. This can include the best route for delivery trucks, the best takeoff schedules for planes, all the way to maximizing profits in the stock market. Quantum computers are great at optimization because unlike normal computers who have to check every possible solution, quantum computers can instantaneously check every single solution! Imagine a book with many pages, and one page was chosen at random then marked. A classical computer would have to flip through every page and check if it is marked. While a quantum computer, on the other hand, would be able to check every page at once. This means that even though they perform each operation more slowly than classical computers, they can do exponentially more with each operation performed on specific tasks. This is due to superposition (further explained below) which allows a qubit to exist in multiple states. Optimization will be one of the most important and major uses of quantum computers.

## Simulation

Quantum computers are also great at simulation compared to classical computers. They can simulate chemistry exponentially better than classical computers, which will significantly speed up the process of drug discovery, vaccine manufacturing, and generally helps anything that can make use of simulation. As Richard Feynman states,

Nature’s quantum mechanical, dammit. To understand nature we need to build a quantum mechanical computer. — Richard Feynman

Why should we use classical computers to simulate something that is by no means binary? We should use quantum mechanics to simulate nature, as nature is built off quantum mechanics in the first place. Thie simulation isn’t just related to chemical reactions either, it’s possible to simulate the evolution of cancer cells, or how DNA moves and changes! This is amazing, as it can help revolutionize many fields and solve problems that remain unsolved for centuries (such as **literally** **curing cancer**).

## Factorization

One of the most famous algorithms relating to quantum computing is Shor’s algorithm, which you may or may not have heard of. Shor’s algorithm is essentially just a fast way of factorizing large numbers using a quantum computer, but it’s destined to **break most current encryption methods!** Right now, the most common type of encryption is RSA encryption. This works on the basis that it’s very hard to factor large numbers. (for example 6x6=36, but 36=4x9, or 2x18, or 3x12, etc.) For a classical computer, it has to try out *every single combination.* This can take hundreds of years to complete with the most powerful supercomputers ever made, making it impractical to break. Quantum computers, on the other hand, can easily factor in these large numbers as long as they have enough qubits. But don’t worry just yet, as quantum computers still have a long way to go before they can reach the computational power needed to factor large enough numbers that will cause a significant impact, but it has theoretically been proven possible. Quantum computing also brings with it quantum encryption which is theoretically unhackable, but still brings with it a whole host of issues (further resources below).

# Taking advantage of quantum weirdness

How do quantum computers work? And what quantum properties do they take advantage of?

## Qubits

The biggest difference between quantum computers and classical computers is the fact that quantum computers use (aptly-named) qubits, or quantum bits, instead of classical bits. These qubits follow the rules of quantum mechanics, or the set of rules that govern stuff on the atomic and subatomic scale (one 10,000,000,000th of a meter!). Quantum mechanics is really really weird, and we still don’t understand *why* these weird things happen at this scale. Keep in mind that qubits are physical particles, such as photons, instead of switches that you see in classical computing. This is why quantum computers have such different properties compared to classical computers.

## Superposition

The “closer” the probability of the qubit (the black arrow in the picture above) is to 0, the more likely it will collapse into the 0 state, and vice versa for the 1 state. You can imagine a qubit as the result of a coin flip; when it’s spinning it has a chance of landing on both heads and tails. The only way to measure this is to stop the coin, thereby “collapsing” it into a state of heads or tails. Imagine this coin as also possibly being weighted on one side, making it have a higher probability of landing on that side. There is also no way to determine the weighted side unless the coin is repeatedly flipped again and again. The same thing occurs to a qubit in superposition, meaning that there is no way to directly measure the probability of a qubit without collapsing it into a 1 or 0 state, much like the coin.

## Entanglement

Another weird property of quantum mechanics is entanglement. If you thought superposition was weird, then you’re in for a ride! Entanglement is an unexplainable, almost magical phenomenon that we again, can exploit to make our lives easier. When a pair of qubits (or anything small enough for that matter) are entangled, any measurement that happens to one directly affects the other, no matter the distance! Entanglement can be achieved in a variety of ways, usually due to particles getting close enough or interacting, but specific methods are beyond the scope of this article. To explain this better, we can fall back onto the coin analogy again. Imagine two coins being flipped at the same time, but one of the coins is hidden inside a box. If you see that the coin lands on heads, you know for certain that the other coin has also landed on heads or vice versa. Again, this can happen no matter the distance and is not limited by even the speed of light. To some people out there, this might start to sound like FTL communication, right? Well, not exactly. No useful information can actually be extracted from this process, as the outcome is completely random. There is also no way to “force” the entanglement to result in a non-random way, as that would break the entanglement due to our old friend, quantum mechanics.

## Interference

Interference is a very important aspect of quantum computing. With clever use of superposition and entanglement, you can get your answer, but this begs the question of outputting your results. For a quantum computer, that’s not as simple as a classical computer. Going back to the book analogy, imagine your quantum computer has figured out what page your marking is on. The quantum computer is now in a superposition of every page and its result (page 1: no marking, page 2: no marking, page 3: marking, etc…). If you were to directly measure the state, then the state would collapse, giving you a random answer! (such as page 45: no marking) This is just as slow, if not worse, than a classical computer, and it solves none of our problems. That’s why we have to cleverly make use of interference to destructively interfere with all the wrong answers and constructively interfere with the right answers.

Imagine two objects as having been dropped in separate locations of an undisturbed pond. This will create waves similar to those shown in the picture above, and in the parts where the waves hit each other they will cancel out their momentum. This is called destructive interference. Constructive interference is the opposite, where waves are going in the same direction, and the resulting wave is even stronger! This is easily visualized in the diagram below, where you can see the waves in the same direction amplify each other, while opposite waves cancel themselves out. In a quantum computer, we just have to creatively manipulate the waveforms so that only the right answer is amplified and the wrong ones cancel out. Now we can safely check our answers without worrying about destroying all our results.

# Quantum computing today

## D-wave

D-wave is a Canadian company that currently holds the world record for the most qubits in a quantum computer. They have achieved the grand total of 5000 qubits on one quantum processor! This may sound like a lot, but they actually have significant drawbacks. They use **quantum annealers**, which can only solve an extremely specific subset of problems. Right now though, D-wave computers still can’t beat classical computers and are only used by scientists to determine the limitations and uses of quantum annealers in the future. (more detailed explanation by ars Technica in resources)

## IBM

IBM is also developing quantum computers, and they are one of the industry leaders. They also let average people test drive their quantum computers, so that’s a great place to get started in the field of quantum computing if you’re interested. They also have developed their own quantum language called Qiskit, which can be used to program their quantum computers. Qiskit is based on python, but it has a lot of custom commands and changes that make it suitable for quantum computing.

Google is on this list because they were the first to achieve **quantum supremacy**. This means that it was demonstrated that a quantum computer could actually beat a classical computer at solving a problem by a lot in fact! Google claims that the same problem would have taken 10 000 years to solve on the most powerful supercomputer and was solved in 200 seconds, although that claim is disputed by IBM, who claims that the problem could have been solved in 2.5 days on their supercomputer. Even if IBM is right though, that’s still a noticeable improvement. The problem unfortunately wasn’t useful in any way, and it was heavily optimized for the quantum computer specifically for this purpose. But never the less, it is still a great achievement on Google’s part.

## Xanadu

Xanadu is one of my personal favourite companies that is working on quantum computing, mostly because they’re the closest to breaking the barrier to **room temperature quantum computing.** They use a photonic quantum computer, not needing cryogenically cooled superconductors to function. Most of the energy draw of a quantum computer actually comes from the cooling (which needs to get colder than deep space, to a fraction of a degree kelvin), and most of the mass is actually the cryogenic freezer and radiation shielding! This means that Xanadu computers can be many times smaller — small enough to fit on a server rack in fact. The only catch is that the photon detectors, the parts which detect the result of the calculation, still need to be supercooled. But this means that the power draw is exponentially reduced, and the freezer doesn't have to be as cold, as well as making the entire computer much more resistant to outside factors and reducing the size dramatically.

# Quantum in the future

I hope that you already have a decently firm understanding of how the future of quantum will look like based on the information above, but I’ll also give my input on the future.

## Security

I believe that in the future we will need to switch over to quantum encryption, or at least change our methods as it will be increasingly difficult to secure our data from attackers.

**Personal quantum computers**

We are currently working on making quantum computers smaller and smaller, as well as making them work without the need for cooling. In the future, you might buy a laptop with a quantum subprocessor to help you do specific problems, much like you could buy a floating-point subprocessor in the 90s to help you better calculate floating-point numbers.

## Quantum in education

Much like schools are teaching kids the basics of coding now, in the future courses teaching quantum mechanics and quantum computing will be much more widespread and easily available, as well as giving kids a high-level understanding of how quantum computing works starting from a young age.

## Quantum commonplace

In the future (albeit probably a few decades into the future) we will end up taking quantum computing for granted, much like we do the telephone or the electric lightbulb. It will be so ingrained in our lives that we wouldn’t be able to ever imagine a world without quantum computing.

# TL;DR

- Quantum computing is only good at specific tasks, notably optimization, simulation, and factorization
- They use qubits (quantum bits) which have really weird properties instead of normal bits
- They take advantage of superposition (can be in the state of 1, 0 or both), entanglement (two particles are inexplicably “linked” together, no matter how long the distance), and interference (to destructively interfere with the wrong answers and constructively interfere the right ones)
- Quantum computers are admittedly not that good in the status quo, only barely being able to beat classical computers in specific tasks and requiring an immense amount of effort to cool and maintain
- In the future, quantum computers will be extremely common and accessible for everyone

# Extra resources:

**How entanglement is actually created:**

https://www.forbes.com/sites/chadorzel/2017/02/28/how-do-you-create-quantum-entanglement/?sh=25bab7551732

**Quantum encryption explained:**

https://www.csoonline.com/article/3235970/what-is-quantum-cryptography-it-s-no-silver-bullet-but-could-improve-security.html

**Other notable companies working on quantum computing:Rigetti: **https://www.rigetti.com/

**Zapata (quantum software)**: https://www.zapatacomputing.com/

**IONQ**: https://ionq.com/

**Universal Quantum:**https://universalquantum.com/

**Quantum annealing explained:**https://arstechnica.com/science/2019/10/what-problems-can-you-solve-on-a-quantum-annealer/

**Try out one of IBM’s quantum computers for yourself:**

https://quantum-computing.ibm.com/