In the 1930s, Alan Turing developed the Turing machine. This machine comprises an unlimited length of tape that was subdivided into small squares. Each one of these little squares could either store a 1 or a 0 or be left blank. Consequently, a read and write device was used to read these symbols (1s and 0s) and blanks and proceeded to use them to give the machine instructions to execute a specific program. Typically, this is how regular computers work to date.
As opposed to this traditional way of computing, quantum computers take a different fundamental approach towards computing. Now that we know how a Turing machine works, let's look at a hypothetical quantum Turing machine. A quantum Turing machine would have a couple of differences. First, both the tape and the read and write device would exist in a quantum state. This implies that, unlike the regular Turing machine, the quantum Turing machine's tape will store the symbols on the tape as either 1s, 0s, or a superposition of 1 and 0. By superposition, I mean the symbols could take any value in the interval of 0 and 1, 0, and 1 all at the same time. This ability is where the power of quantum computing lies.
Unlike a typical Turing machine that could only perform one calculation simultaneously, a quantum version of the same machine can perform several calculations simultaneously. This feature makes quantum computers incredibly fast compared to regular computers.
Regular computers, like a Turing machine, operate fundamentally by manipulating bits. Bits exist in only two states, either a 1 or a 0. However, quantum computers operate a little differently. They are not limited to the two states mentioned above. Quantum computers encode information as qubits (quantum bits). Here is the difference: qubits can exist in superposition, bits cannot. Qubits are like the control devices behind quantum computers, and they work collaboratively as quantum processors and memory. With this potential comes the magic; the quantum computers' ability to contain multiple states simultaneously makes them extremely powerful even compared to the most powerful supercomputers of today.
In an attempt to paint a clearer picture of the power of quantum computing, David Deutsch, a well-known physicist, stated that a quantum computer could perform a million mathematical computations simultaneously. The regular PC can only work on one at a time. This ability is referred to as parallelism. Parallelism in quantum computing refers to the quantum computers' memory registers' ability to exist in multiple states(superposition), making them able to compute several different scenarios simultaneously. This inherent parallelism of quantum computers is entirely based on the superposition of the qubits. It is projected that a quantum computer of about 30-qubits could match the power of a normal computer processor running at 10 teraflops (trillions of floating-point operations per second.) This is insane computing power since today's PCs operate at speeds measured in gigaflops (billions of floating-point operations per second.)
As they say, when the deal is too good, think twice. Challenges are facing the quantum computing world are yet to be resolved. I mean, otherwise, we'd all have the technology available to us. There is a complication regarding the states of the qubits. The challenge is, whenever you try to look at the value of the subatomic particles, you could induce a change in its value. Similarly, if you attempt to determine the value of a qubit in superposition, the qubit will assume one specific value, either a 1 or a 0, and not both. Why is this a problem? Well, remember the initial Turing Machine? That's precisely what we get. This reduces the mighty quantum computers to a mundane traditional computer that can only handle one computation at a time.
Luckily, quantum researchers have a possible solution. Do you remember back in quantum physics class? Probably not, so let me enlighten you a bit about entanglement. The moment you apply an external force to two atoms in quantum mechanics, it will probably make them entangled. The second atom could then assume the properties of the first. For example, since an atom will spin in all directions if undisturbed, it will turn in a particular direction (a specific spin /value) when disturbed. Consequently, the second atom will spin in the opposite direction (opposite spin/value). With the help of this principle, quantum computing experts could easily tell the value of each qubit without having to look at them.
There has been a race for supremacy between the tech giants, especially Google and IBM. The search engine giant set a goal to create a quantum computer that would exceed the abilities of a conventional digital computer. In March 2017, it was said that Google had plans to release commercialized quantum computers in five years. Quickly after, Google announced that it had plans to realize "quantum supremacy" by developing a 49-qubit computer before 2018. Quantum supremacy is used as a measure, referring to the point where quantum computers outdo the abilities of an ordinary computer.
Again, in November 2017, IBM took the market by shock by announcing that it had built a 50-qubit quantum computer. However, as mentioned in wired, the quantum computer was far from being stable. The system only managed to hold its quantum state for about 90 microseconds. This duration is impressive since it holds the record; however, it is still farfetched to expect some practically viable time from these computers. Here is a picture of the interior of an IBM Quantum computer, uploaded to Flickr by IBM Research.
IBM, however, has made significant steps at making quantum computers available for public consumption. Since 2016, IBM has continuously offered quantum computing researchers the opportunity to conduct experiments on its 5-qubit quantum computer on the cloud. The IBM team also made its 20-qubit quantum computer available online at the end of 2017. Quite impressive work.
As much as a quantum computer possesses impressive capabilities and seems to be the future of computing, the concept could turn out quite disastrous. Imagine a powerful machine in the wrong hands. Look at it this way; a quantum computer can code and decipher encrypted information incredibly fast. This implies that modern encryption techniques would pose no challenge for a quantum computer. This means regular accounts could be hacked without breaking a sweat and sensitive information leaked. This information could be used for several nefarious activities.
Interestingly, however powerful quantum computers sound to you, some mathematicians still claim that there are mathematical problems that remain practically unsolvable even with the help of these computers. According to Quanta Magazine, Kalai - a mathematician at Hebrew University in Jerusalem, quantum computing and all its glory is only a mirage. Kalai is part of a group of mathematicians and physicists who believe that qubits will never have the ability to handle the sophisticated level of choreography expected of them, at least not consistently. Only time will tell.
Of course, not everyone in the computing world is convinced that quantum computing is worth the effort. In my opinion, however, quantum computing is an impressive milestone in achieving supremacy in computing. Although this technology is less likely to impact the life of the regular Joe directly, it will be beneficial in other fields such as Artificial Intelligence, Machine Learning, and even Cyber Security. And even though quantum computers are still not a reality to most of us, it is evident that we are close.