Fifty years ago, smartphones would have seemed like completely magical computers. In the same way that classical computers were almost unimaginable to previous generations, today we are faced with the birth of an entirely new type of computing: something so mystical that it can be called magical. These are quantum computers. If the word "quantum" is unfamiliar to you, you are not alone. This very cold, small, sensitive and very strange world may seem like a dubious system on which to build a commercial computing machine, but this is exactly what IBM, Google, Rigetti Computing and others are working on.
At CES in January, IBM's Q initiative showed System One (see above): a dazzling, sleek and chandelier-like machine that was the first integrated general purpose quantum computing system for commercial use that anyone could play with.
Probably everyone has heard about the potential of quantum computers: the properties of quantum physics open up massively parallel computing circuits that are likely to provide huge leaps in computing power and outpace any transistorized supercomputers we may encounter - today and tomorrow. They will revolutionize chemistry, pharmaceuticals, materials science and machine learning.
But what exactly makes quantum computers so powerful? Let's figure it out.
What are qubits?
Let's start by looking at how quantum computers work.
Promotional video:
The secret of their skill is that they manipulate the cubits. Everything that a classical computer processes - text, images, video, and so on - consists of long strings of zeros and ones, or bits. At its core, a bit represents one of two states: on / off, or an electrical circuit is connected or not. In modern computers, a bit is usually represented by an electrical voltage or current pulse.
In contrast, quantum computers rely on qubits. Like binary bits, qubits are at the heart of computation, with one big difference: qubits tend to be superconductors of electrons or other subatomic particles. Unsurprisingly, manipulating qubits is a challenging scientific and engineering challenge. IBM, for example, uses multiple layers of superconducting circuits that are in a controlled environment and gradually cool to temperatures that are lower than deep space - near absolute zero.
Because qubits inhabit a quantum reality, they have amazing quantum properties.
Superposition, entanglement and interference
If a bit is represented as a coin with heads (0) or tails (1), the qubits are represented by a spinning coin: in a sense, they are both heads and tails, with each state having a certain probability. Scientists use calibrated microwave pulses to superimpose qubits; similarly, other frequencies and durations of these pulses can flip the qubit so that it is in a slightly different state (but still in superposition).
Because of the superposition, a single qubit can represent much more information than a binary bit. This is partly due to the fact that, upon initial input, qubits can brute-force a huge number of possible results simultaneously. The final answer comes only when scientists measure the qubits - also using microwave signals - which causes them to "collapse" into a binary state. Scientists often have to perform calculations several times to verify the answer.
Entanglement is even more awesome. Applying microwave pulses to a couple of qubits can entangle them so that they always exist in the same quantum state. This allows scientists to manipulate pairs of entangled qubits by simply changing the state of one of them, even if they are physically separated by a great distance, hence the "spooky action at a distance." Due to the predictable nature of entanglement, adding qubits exponentially increases the processing power of a quantum computer.
Interference is the last of the properties that quantum algorithms implement. Imagine rolling waves: sometimes they match each other (act constructively), sometimes they quench (destructively). The use of interference allows scientists to control conditions by amplifying the type of signals that lead to the correct answer and canceling those that produce the wrong answer.
How are quantum computers programmed?
The main goal is to encode parts of the problem into a complex quantum state using qubits, and then manipulate this state to bring it to some kind of solution that can be measured after the collapse of superpositions into deterministic sequences of zeros (0) and ones (1) …
Unclear? Reread it again.
It sounds complicated, but since we have already figured out all the terms, you can understand.
As with classical programming, scientists develop low-level assembly languages that the machine understands better in order to move from them to high-level languages and graphical interfaces more suitable for the human mind. IBM Qiskit, for example, allows experimenters to create problems and drag and drop gates.
Decoherence demon
Why aren't quantum computers on sale on every corner yet? In a sense, scientists are trying to build perfect machines from imperfect parts. Quantum computers are extremely sensitive to disturbances, noise, and other environmental influences that cause their quantum state to vibrate and disappear. This effect is called decoherence.
For some experts, decoherence is a problem holding back quantum computing. Even with all the measures taken, noise can leak into the calculations. Scientists can store quantum information until it loses its integrity under the influence of decoherence, which limits the number of computations that can be performed in a row.
The delicate nature of quantum computing is also the reason why blindly adding qubits to a system does not necessarily make it more powerful. Fault tolerance is extensively researched in the field of quantum computing: logically, adding qubits could compensate for some of the problems, but creating a single, reliable qubit for data transfer would require millions of error-correcting qubits. And we have no more than 128 of them today. Perhaps smart algorithms, which are also being developed, will help.
Imitation of a quantum using quantum computers
Since big data is a hot topic right now, one would expect quantum computers to handle large datasets better than classical computers. But this is not the case.
Instead, quantum computers will be especially good at simulating nature. For example, quantum computing could be used to build drug molecules more efficiently, because they basically work on the same basis as the molecules they are trying to model. Calculating the quantum state of a molecule is an incredibly difficult task that is almost beyond the power of our computers, but quantum computers can handle it with a bang.
Similarly, quantum computing can revolutionize the field of materials science or information transfer. Through entanglement, qubits physically separated by great distances can create a channel for transmitting information that is scientifically safer than our existing channels. The quantum internet is feasible.
But the most interesting thing is this: we do not even know the full variety of amazing questions that quantum computers can try to solve. By simply having a commercial quantum computer and letting people work with it, we could map out interesting new areas that fit this startling new technology.
Ilya Khel