Computer Science

Quantum Computing: How it all adds up


Quantum computing has taken the world by storm. Many believe that quantum computers have the potential to overtake even the fastest supercomputers, and for good reason. Quantum computers – unlike classical computers – rely on the peculiar phenomena of quantum mechanics. How, though, do these machines function? How do scientists realistically incorporate quantum ideas into a working quantum computer?

Classical Computing

Fugaku, currently the fastest classical supercomputer in the world, can achieve a speed of 416 quadrillion calculations per second1. For the past few decades, computer scientists have achieved performance gains by shrinking transistors and capacitors. This has facilitated their denser packing in chips. In fact, some commercial microchips are already measured to be 7 nanometers2. For context, a human hair is approximately 80,000-100,000 nanometers wide3.

However, there is a limit to how far shrinking can go. At the nanometer scale, quantum effects come into play. There is a non-zero probability that an electron could pass directly through a sufficiently small transistor’s wall4. This is known as quantum tunnelling, and it can lead to large errors and faults, which would make a computer unusable.

Furthermore, many cutting edge problems are infeasible to solve at any useful scale with a classical computer: the time and memory required grow exponentially. 

This gives way to the realization that classical computing is fast approaching a dead end. Fields such as drug development, financial modelling, and cryptography are being bottlenecked by the intractability of necessary calculations on current hardware5. This is where quantum computers enter the picture.

The Qubit

The classical computer is built upon multiple layers of complex systems and abstractions. However, it all boils down to 0’s and 1’s. These are referred to as “bits”. In a classical computer, bits are represented by the presence and absence of charge stored in its capacitors.6

A quantum computer makes use of qubits instead of bits. Qubits can take the form of atoms, electrons, or photons, to name a few types. An electron, for example, possesses a property known as spin, which can be “up” or “down”.7 This is a unique quantum property without a macroscopic analogue. Naturally, the 2 spin states can be corresponded with being a 0 or a 1. A simple two-state system may sound similar to the classical bit, but one can also imagine an electron’s spin being tilted. In other words, the spin does not have to be a simple binary quantity. While this may be interesting, does it have any practical applications?

Albert Einstein remarked that “God does not play dice with the universe”, but the resounding success and accuracy of quantum theory says otherwise8. According to the Copenhagen interpretation of quantum mechanics, nature contains inherent randomness. A particle does not have a concrete state until it is measured. Instead, it has probabilities corresponding to it assuming different states after measurement.9

Not only can a qubit be either 0 or 1, but it can be a superposition of the two states (Figure 1). For example, a qubit could have a 70% probability of being 1 and a 30% probability of being 0. This property gives rise to the stark – but highly promising – differences between a quantum and classical computer.10

Figure 1: A simplified diagram showing a superposition

Quantum Circuits

Bits are useless on their own. Without being able to manipulate and perform operations on them, even the simplest of calculations could not be executed. Similarly, a method for manipulating qubits is required for quantum computers.

A classical computer makes use of logic gates. These devices take in one or more bits as input and output a single bit as the result of a logical operation. The circuits of a computer are built up from the combination of these gates.

Luckily, there is a quantum analogue to the classical gate: the quantum gate. A quantum gate modifies the probabilities of one or more unmeasured qubits. An example is the Pauli X gate. This gate acts as a quantum counterpart to the classical NOT gate; It “switches” the probabilities of a qubit being in the 0 and 1 states.11

However, there also exist quantum gates without classical counterparts. For example, the Quantum Hadamard gate is a crucial part of many quantum algorithms. It essentially mixes the probabilities of a qubit. If a qubit has a 100% chance of being 1, the Hadamard gate will transform it into a qubit with a 50-50 percent probability split. This has the effect of generating uniformly random inputs for following gates, which allows quantum computers to fully make use of the qubit’s quantum properties.12

Quantum circuits are built up through the chaining of these gates (Figure 2). This is what a quantum computer is at its most fundamental level. In reality, the physical implementation of the computer (e.g. the gates and qubits) is incredibly involved. This article has conveniently abstracted away all of those details, but they are just as (if not more) important.

Figure 2: A quantum circuit composed of Phase-shift and Hadamard gates

The Current State of Quantum Computing

Despite the advances that have been made in fields such as quantum machine learning and quantum chemistry, the state of quantum computing is still relatively primitive, where the programming happens at the level of assembling quantum gates.

It can be compared to that of early classical computing. The early computer scientists worked at the level of logic gates. Over time, they developed the predecessors of modern programming languages, nearly-forgotten languages like Algol and IPL. It is difficult to connect today’s apps and websites with the archaic systems that preceded them. The vast majority of people do not deal with logic gates, nor do they work with binary code. The overall trend in computer science has been towards greater abstraction. 

As a fledgling field, researchers have only recently built quantum programming languages and algorithms. They are pioneers at the cutting edge and the era of quantum computing has only just begun.

However, there are already numerous platforms out there that allow the simulation of quantum programs. For example, IBM has created Qiskit, a software development kit that enables the writing of quantum programs in Python. These programs allow programmers to work with quantum gates and qubits, all of which are simulated on a classical computer. They can be executed on a variety of real quantum hardware as well.13

Aside from Qiskit, there exist alternatives such as Microsoft’s Q# language and the open-source Cirq library, among many others. These alternatives have their specific domains and idiosyncrasies, but they are all making quantum computing more accessible while signalling its potential for more complex applications to follow.


Quantum computing is opening doors to solving hitherto unsolved problems. These are problems that are generally considered intractable for classical computers as the memory and time required to solve them grows exponentially with the size of their inputs.

For example, one key future application of quantum computing is in drug research. During drug development, scientists need to simulate and compare the interactions between molecules. However, the number of possible interactions scales exponentially with the number of molecules considered.14 A quantum computer is well suited to simulating these interactions and can drastically decrease the cost and time required.

Another promising application is in logistics. In order to optimise workflows associated with transport and supply-chain management, existing models need to continuously calculate optimal routes. Quantum optimisation methods, such as quantum annealing, are far more efficient compared to their classical counterparts15, which can revolutionise solving problems ranging from traffic management to fleet distribution.

Despite their promising potential applications, there are still limitations to what quantum computers can achieve. They are mainly suited towards specialised problems, where constant recomputation and a “trial and error” method is required. Quantum computers will not entirely replace classical computers, but will instead fill specialised roles that classical computers cannot.

However, there are currently many roadblocks to the development of a practical universal quantum computer. The primary problem is qubit decoherence, where qubits lose their quantum superposition and assume a binary state. This happens when qubits interact with their environment. Keeping a qubit perfectly isolated, however, is notoriously difficult as it needs to be cooled to temperatures close to absolute zero.16

Despite these challenges, scientists are making great strides and companies, such as Google and IBM, have already developed working prototypes of quantum computers. While classical computers are nearly reaching their limits, quantum computers are showing that they hold great promise and potential to push computing further along to future frontiers.


  1. Strohmaier, Simon, Dongarra, and Meuer, 2020 – “Japan Captures TOP500 Crown with Arm-Powered Supercomputer”:
  2. Cutress, Ian, 2019 – “AMD Ryzen third Gen ‘Matisse’ Coming Mid 2019: Eight Core Zen 2 with PCIe 4.0 on Desktop”:
  3. National Nanotech Initiative – “Size of the Nanoscale”:
  4. Seabaugh, 2013 – “The Tunneling Transistor”:
  5. Gossett, 2020 – “8 Quantum Computing Applications & Examples”:
  6. “Storing bits and bytes”:
  7. Nave – “Electron Spin”:
  8. Drorzel,  2011 – “The Most Precisely Tested Theory in the History of Science”:
  9. Caroll, 2019 – “Where Quantum Probability Comes From”:
  10. O’Connell, 2019 – “Quantum Computing for the Qubit Curious”:
  11. “Single Qubit Gates”:
  12. Jason Roell, 2018 – “Demystifying Quantum Gates — One Qubit At A Time”:
  13. IBM:
  14. Heid, Ostovic, 2020 – “Recalculating the future of drug development with quantum computing”:
  15. Somma, Boixo, Barnum, 2007 – “Quantum Simulated Annealing”:
  16. U.S. Army Research Laboratory. “Path to quantum computing at room temperature.” ScienceDaily. ScienceDaily, 1 May 2020.

Figure References

  1. Hands-on Linux:
  2. Dominick Marciano, 2018 – “Quantum Computing for Everyone – Part III: Quantum Circuits and OpenQASM”:

About the author

Mugilan Ganesan is an 11th grade student studying for his IB diploma at Greenwood High International School, Bangalore. He is passionate about computer science, physics, and math. He is a middle-distance runner who also enjoys reading popular science works and fiction.

Leave a Reply

Your email address will not be published. Required fields are marked *