Quantum computing is becoming one of the most talked about new technology even though it does not fully exist yet.
Technology has advanced significantly in recent years, our mobile phones have become more powerful than the computer NASA used to put a man on the moon and it gets better by the day.
In the nearest future, quantum computers would change our world drastically. So, why should I even study about it today? My answer is simple: it’s going to be a big game changer in the world of computing as we know it. Microsoft’s research lab predicts that quantum computers would begin to replace our classical computers in the next 10 –15 years. By classical computers I mean electronic devices like our laptops, phones, etc.
In this article, I would be attempting to answer 4 major questions asked when the subject of quantum computing comes up.
1. What is a quantum computer?
2. What areas would quantum computers affect what we do?
3. Do quantum computers exist today?
4. What are the available tools for Quantum Computing today?
What is a quantum computer?
“Quantum computing is computing using quantum-mechanical phenomena, such as superposition and entanglement.” – Wikipedia
That definition confused me as well, so let me try to write it my own words.
To define a quantum computer, let us first understand what classical
computers are. At the very fundamental level, all quantum computers use a
transistor, a transistor can be in one of two states; the on
or off
state,
in computer terms we’ll say 1 or 0, this information of the state is
what we call a bit( the smallest unit of information inside a computer).
For a classical computer to function we have to combine different bits
(existing in either an on or off state) and transistors together. An
increase in the number of bits in a computer means an increase in the
information that computer can process. Lots of transistors are put
together to form what we call computer chips, these make up the building
blocks of classical computers as we know it today.
Quantum computers do not make use of bit
as we saw above, the fundamental unit of a quantum computer is known as qubit
which is a short form for quantum bit. Follow me closely now, while a bit
can only exist in an on
or off
state, a qubit
can exist in one of the state namely: on
, off
, or both on & off
. In essence, a qubit can represent and process more than one state simultaneously, this makes it faster and more efficient.
The Maze Analogy (credits to Chuck Bates )
Let us consider traversing a maze using the concept of a quantum and classical computer.
When solving the maze puzzle using a classical computer, the computer
restarts to process information all over again when it hits a dead end,
this is because the bit
can only exist in one state at a given time. The image below shows how a classical computer would solve the maze puzzle.
A quantum computer, on the other hand, would solve the maze following
all possible paths at the same time, this is because the qubit
can exist in both the on and off state at the same time.
The qubit
scales quite well, the processing power of 64bit
on the classical would only require 4 qubit
on the quantum side, it scales so high that 300 qubit
would give about 2 X 10⁹⁰ bit
.
What areas would quantum computers affect what we do?
Quantum computers would affect a lot of what we know in the world of computing today, I would just state a few. The scope of this article won’t really go deep into how this would happen.
Machine Learning:
Quantum Machine Learning (QML) would implement more complex algorithms like data classification, pattern recognition, sorting, recognition, etc. The job of detective organisations like the FBI, CIA would be a lot easier as quantum computers would give enormous computing power to help get needed info, this is just one use case.
Security & Cryptography:
A public and private key are
linked mathematically that a public key can be produced easily using a
private key, but the reverse becomes so difficult so much that it turned
out to be a security feature. This allows encrypted communication over
the internet, it is predicted that a quantum computer would be able to
reverse this action such that with a public key a private key can be
produced since it can scan for combinations much faster.
Before you rush to close all your online accounts, do note that there
are research going on to fix this major proposed breach, it is known
as post quantum cryptography.
This would help secure our apps in the future.
Stock Markets / Forex Trading:
I foresee the first set of folks using quantum computers in the stock market making a lot of money, this is because they’ll have access to more accurate information with little room for errors with the power that comes with quantum computers.
Block Chain:
Some say that quantum computers would be an end to the blockchain technology. I honestly think there is a possibility of this happening, I might not be able to talk much about it here. Shaan Ray attempts to answer these questions in his medium post here, you might also want to check out this amazing post on hackernoon.
Artificial Intelligence:
If you think AI is powerful with a classical computing brain, just imagine its possibilities with a quantum brain.
The list is endless, we could go on and on how it would affect, medicine, science and research, the financial market, software development, cloud computing, etc.
Do quantum computers exist today?
Yes, they do, but they are not fully optimised for personal use,
there are some companies using them today mostly for research purposes. A
startup like Rigetti uses quantum computing to power its cloud services.
Big names like Google, IBM and Microsoft are not left out, in-fact,
Google owns a 72-qubit quantum machine (the largest in the world as at
the time of this writing.
But I must say most of the work done with quantum computers are in its research phase and these companies are pumping in funding to make this work out in an industrial scale, the world is waiting to see who makes the first big breakthrough with this technology.
What are the available tools for Quantum Computing today?
There are different tools one can use to get started with quantum computing today. Regetti has an online community of physicists and developers that collaborate to develop quantum programs and applications, the slack channel is an amazing place and I’ve met really bright minds there. View details of the Regetti community here.
One of the most interesting tools available today is the Microsoft Quantum Software Development kit,
this is freely available and has three components; The Q# programming
language, Quantum simulator and Tutorials, examples & katas.
Q# was specifically built for quantum computing and it is been managed by Microsoft, it works well on visual studio.
The Quantum simulator can
run on your local machine or on Azure cloud, it allows developers to
test, run and debug quantum algorithms, it can be downloaded here.
Microsoft’s tutorials and examples are opensource on GitHub here.
I do hope you found this article insightful, thanks for reading.