Why Quantum Computing?
Hello, I welcome you all to this eight weeks
20 hour course.
On quantum computing and information under
the aegis of NPTEL platform.
In this very first lecture, what I will do
today is to tell you what is this quantum
computing?
As you are all aware, this has not been a
traditional subject of physics, or computer
science for that matter, and it is only during
the last 20 years or so that this subject
has come to prominence and it is still in
a lot of developmental stage.
Now we will go through the scope of this course,
but to begin with I would like to tell you
why quantum computing after all we have had
computers for quite some time, at least for
four or five decades..
at least for five decades and what is so special
about quantum computing?
The first thing that you might try to tell
me that even the classical computing is based
on transistors and other electronic components.
So which means that these things like transistors
and other electronic components which are
parts of the integrated circuits which are
used in a classical computer, they are also
based on quantum mechanics.
So what is so special about it?
The difference is the following.
The modern computing as we know it is based
on laws of classical physics.
and of course they are based on mathematical
logic.
We will still continue to have a lot of dependence
on mathematical logic, but we will see that
the laws of classical physics which seem to
operate on the computers that we have become
accustomed to, they are gradually becoming
a little different.
The first thing that I would like to point
is this, it traditional computer software
is designed for serial computers.
What serial computation essentially means
is that when you write an algorithm, the logic
flow takes place from one point to other in
terms of time.
Now what it means is that a particular process
must be completed before another process is
taken up.
Now you will say that but we have heard about
the parallel computers even in our traditional
sense, but there is a very big difference.
Yes, there are parallel computers in classical
computers.
I am using the phrase classical computers
to mean the computers which we have today
which we have become accustomed to over the
last nearly half a century or so.
The concept of a parallel computer within
our traditional computing platform is the
following, that supposing I have a problem
which can be broken up into independent logics
which could be executed at the same time.
Just to give you an example supposing you
are computing the product of a matrix.
Now when you are computing the product of
two matrices then when you want to compute
the first element of let, us say product of
AB=C, when you want to compute the first element
of C what we require is the first row of A
and the first column of B, so that I can multiply
them one after another and add them.
But during that time in principle I could
be using let us say the second row of A and
a second or any other column of B to my advantage
also without interfering with the first computation.
Now, but how do I do it?
The only way to do it is if these different
computations which can be taken up simultaneously
are given to different processors and they
are directed that at this same time you could
do it.
In other words each one still does a serial
computation, but it is at the algorithm stage
that I split up my logic into processes which
can be executed at the same time by different
processors.
So in other words, a traditional parallel
computer must have n number of processors
which could take up the job at the same time
and then we should integrate with the results.
Now what is the difference?
A quantum computer has what I will call as
inherent parallelism.
Now let me try to explain what it is, but
before that let me also tell you a little
bit which will give you an idea about the
history of quantum computer.
As I told you it is not a very old thing,
but the first person who can credited with
an idea of may be having a quantum computer,
he might not have quite thought of it that
way, is Richard Feynman all of you must have
heard a great scientist and probably better
known because he a was a very effective communicator
and the greatest teachers that the physics
has seen.
Feynman in 1982 published a paper
which was titled simulation of physics on
using a computer, the question that he asked
is can one simulate physics using a computer?
Now there are many problems with it, the first
problem is how do you simulate time?
As we now time is a continuous variable.
The problem of stimulating time is that I
must then somehow or other discretize time.
Now you would immediately realize this is
a problem but not that great a problem because
after all we have been accustomed to discretizing
time in solving differential equations.
But the bigger problem is that, as we will
see later in detail, that in quantum mechanics
the measurements give you probabilistic results.
As you are aware that a state in quantum mechanics
is a linear combination of certain states
and when you do a measurement, let’s suppose
I talk about linear combination of some basis
states and when we make a measurement of any
physical property of the system, one of the
possible the values of that physical property
is realized with certain probability.
Now this is something which is totally new
concept in quantum mechanics, and we have
not seen a parallel like that in classical
physics.
So this probabilistic aspect is one of the
problems that we come up with.
But then the problem is that simulate a quantum
processes using a quantum computer then can
we use the quantum principle to our advantage
to let us build a computer.
Now this is the roughly the idea.
Now I could mention other people who have
been involved in it is progress, but I think
I would take a jump to about 12 years later,
there is Peter Shor who came up with an algorithm
which we will be discussing in this course
later.
In 1994 he came up with an algorithm which
showed that a very old problem that we have
in computational science can be effectively
solved if you had a quantum computer.
Now let me explain what that problem is, we
will come to mathematical details of that
during this course.
The problem is connected with how to factorize
a large composite number, now this has been
known to be a very difficult problem or as
computes scientists call it hard problem in
computer science.
And the reason why it is a hard problem is
that there are no effective algorithms known,
which can compute the factors of a large composite
number in what in compute science language
is called in polynomial time.
If it could be done in polynomial time then
of course it would be called an easy problem.
I would later on point out that even toady
we depend on this difficulty in factorizing
a large composite number to have encryption
of data and in fact RSA algorithm which provides
the data encryption depends on the relative
hardness of the factorization problem and
with respect to the multiplication which is
relatively easy.
And if one can break this RSA Code which at
least theoretically is possible today thanks
to Shor’s algorithm, then it would mean
a substantial advancement in both cryptography
and in computer science.
So what Peter Shor showed is that using the
principles of quantum mechanics we can factorize
a large composite number.
Now you may say that this essentially gave
us or heralded the coming of the quantum computers
into the field even today there are no quantum
computes which is available liberally, but
there are prototype models and in fact the
original number which was factorized using
Peter Shor’s principle on a quantum computer
is just the number 15 which of course does
not require a quantum computer, but it was
the principle of the thing that got established.
The reason why quantum computation is different
from the classical computation is the fact
that while a classical register can at a given
time have or be in one state, that is let
us suppose, I am talking about a simple classical
bit and I have a one bit register.
The one bit register can stay either in state
0 or in state 1.
Similarly a two bit register can be in state
00,01,10,11.
The difference between this statement and
the corresponding quantum mechanical statement
is that in quantum mechanics not only I can
have a register storing any of these four
state in the second example that I gave you
but it can be simultaneously in a linear combination
of these four states.
And not only that, that when you actually
compute a function then one can compute the
value of the function for this linear combination.
In other words, you compute the value of the
function for each one of the inputs at the
same time.
In other words, the parallelism that we are
talking about for a quantum computer is inherent.
And it is not an outside parallelism which
has being trust on us by having number of
processors.
So there is another important thing that comes
up that quantum bits, which we will later
on give it a name, call it qubits, they have
another property interesting property known
as entanglement, Now an entanglement, which
of course requires a minimum two qubit system,
is something which has no parallel in corresponding
classical computer.
What it means is that the two bits or two
qubits of a particular state are not individually
realizable and if you measure one of them
the state of the other one gets automatically
determined.
We will be seeing a lot of this entanglement
in this course.
Now let us come back to what is the need of
a quantum computer other than for solving
hard problems.
The main problem that is gradually coming
up over the last several years you have seen
the computers the classical computers as I
will be using the term have generally increased
in their speed.
Now how has it been possible?
This has been possible because of great deal
of miniaturization being achieved in integrated
circuits.
But that carried with it a problem, there
is a law which the electronics engineers or
the computer scientist referred to at Moore’s
law which stated that the number density of
transistors on an integrated circuit doubles
every 18 months or two years.
Now if that were shown or if that is shown,
then the spacing between the transistors or
the other components keep on decreasing.
Now when miniaturization proceeds like this
there are two problems associated with, when
the separation between different components
reach atomic dimensions.
You are all aware of quantum mechanical uncertainty
principle due to Heisenberg, and that has
a lot of influence on what is happening when
things reach atomic dimension.
In other words, if the components come so
close then the results that you get out of
that computation will no longer be reliable.
The other thing that will happen is that the
heat produced by one of the components would
naturally affect.
the performance of nearby components and so
therefore, this will also make the computation
unreliable.
There are this heat problem has certain other
aspects, for instance, the heat produced by
a computer depends on the volume occupied
by the number of bits.
But you need to remove the heat continuously
and heat can be removed only from the surface.
So as a result when the components come too
close, efficiency of removing heat will not
be quite as good.
There is a principle which is known as Landauer
principle, which says every physically irreversible
process,
you are all familiar with many reversible
processes that take place while doing computation.
For example, if you are AND gate it is irreversible
process, most of the processes in classical
computing are done irreversibly.
And this principle Landauer principles state
that every n bit of information increases
the thermodynamic entropy by nk log2, which
would mean that there is certain amount of
loss of energy and the process becomes gradually
inefficient as the number of components increase.
The present day computers dissipate much more
energy than this limit.
The quantum processes, as we will see later,
have to be carried out reversibly, in fact
the operators which will be doing it, will
be unitary operation.
Now it is also possible to do classical computing
by means of reversible gates, but then there
is always a problem of what we call as garbage.
The garbage arises because, for example, if
I am using AND gate and I want it to do it
reversibly, what it means is I have to store
the inputs continuously, in fact the only
classical gate which is a reversible gate
is a NOT gate.
But for all others if I want the process should
be done reversibly, I will need to collect
the inputs which I do not later on require.
So that becomes a very big disposal problem
and it also requires unnecessary storage.
So these are the two primary issues connected
with the advent of quantum computers.
Now let me tell you about what are the things
that I am going to be doing in this course.
I will be actually aiming to do quite a bit
in detail two major ones, the first one is
known as Grover’s database, this is a problem
with requires of the order of N queries in
classical computation.
But as we will see later quantum database
search of an unstructured database can speed
this process up quadratically, that is require
only square root of n number of queries, that
is instead of n it depends up on square root
of n.
I started talking about the Shor’s algorithm
more for historical reasons, but the Shor’s
factorization algorithm is a major advancement
in the area because till this algorithm had
been known, the classical computers could
not solve the problem, the problem of factorization,
in what we will call as a polynomial time.
In computer science the complexity of a problem
is determined by the dependence of the resources
that the algorithm requires or the length
of the input string.
By resources we mean time, memory, etc., let
suppose I am multiplying two numbers, one
could say that the way depends up on time,
depends on let us say n2+ 5.
Now mind you, these will not be the same for
two different computers, but we are talking
about order of magnitude.
So I would then say that this complexity of
this problem is order n2.
In general, if I can express the complexity
as a polynomial function of the length of
the string, then I say this problem’s complexity
is polynomial time.
And in computer science an algorithm which
can be executed in polynomial time is considered
as an easy problem.
Of course, you could have a problem which
depends up on logarithm of the resources which
also is an easy problem.
Constant time algorithms are also easy problems,
but supposing I cannot express it as a polynomial.
If in depends up on 2n ,2 is the normal base
of exponential in computation, then it is
called as exponential time algorithm and the
problem is now considered hard.
Factorization problem is one of the hard algorithms,
what Peter Shor showed is that one can solved
the.
Factorization problem in polynomial time if
you had a quantum computer.
I will begin this course with the review of
the postulates of quantum mechanics.
The postulates of quantum mechanics that I
will be talking about are basically what are
known as the Copenhagen interpretation.
I will be introducing the concept of a qubit,
a quantum bit which is similar to the classical
bits, but as I already mentioned that my registers
can simultaneously store linear combination
of such qubits.
We will see an attractive geometrical interpretation
of these qubits on a sphere called Bloch sphere.
Since this course is heavily dependent on
linear algebra and I will be spending a bit
of a time on elements of the linear algebra,
and will be introducing the Dirac notation
of quantum mechanics which is commonly used
in discussing quantum computing.
We will see that the traditional quantum mechanics
which we learn in universities, they depend
on or they describe what are called pure systems.
In reality, we rarely have pure systems but
we are likely to have either mixed systems
or even pure systems which interact with surroundings.
We will be introducing the concept of density
matrix which is more appropriate way of defining
or discussing the quantum mechanics for such
mixed systems or ensemble of systems.
After that we will be bringing up the idea
of what we call at the circuit model of quantum
computer and that is basically to introduce
various gates which are similar to the classical
gates that we have, but with certain prescription
that these gates must execute tasks unitarily
and reversibly.
One of the biggest problems that we have in
quantum computers, is the problem of measurement.
As we have seen that measurement in quantum
mechanics, does not give you the state of
the system at that time, because the state
of the system could be a linear combination
of various states.
And so what will happen is that you will get
on measurement only one of those states coming
up.
And this state which is projected out due
to measurement is probabilistic in nature,
so this actually causes a very big problem
but we will see
how to use this to our advantage and extract
what we require.
We will be bringing up a theorem known as
quantum no cloning theorem which tells us
that we cannot duplicate a quantum state.
And we will see that how a quantum state can
be transported from one place to another by
a very interesting algorithm known as quantum
teleportation.
We will be then introducing simple quantum
algorithms, but in addition to making a logical
conclusion of the course towards the two major
algorithms that we talked about, we will the
bringing up something which are fairly interesting
tests of quantum mechanics.
One of the paradoxes of quantum mechanics
was pointed out to by Einstein Podolsky and
Rosen as you might recall that one of the
persons who never believed the Copenhagen
interpretation of quantum mechanics was Albert
Einstein himself.
And this he presented as a paradox which is
known EPR paradox and that has become a subject
of intense debate among the leaders of quantum
mechanics and those who believed in the alternate
theory known as the Hidden variable theory.
John Bell provided what we make all as a conclusive
test to determine which one of the theories
is correct.
These require certain inequalities known as
Bell’s inequalities and we will be talking
about them in this course.
Once we have completed the quantum computing
part, we will be spending the last few lectures
on the aspects of quantum information theory.
But before that we have a quick review of
classical information.
We all understand what is information in some
lose sense it means knowledge but we will
see what is the way of quantifying or measuring
information, both classical information and
quantum information and we will see that interestingly
a quantity known as entropy with which you
have familiarity in your thermodynamics course
comes to our rescue.
And finally towards the last one or two lectures
we will be giving you an overview of practical
realization of a quantum computer.
This course will be primarily based on the
most standard reference that is there by Nielsen
and Chuang’s “Quantum Computation and
Quantum Information” but as I will be doing
a lot of linear Algebra there is a linear
Algebra based text by Nakahara and Ohmi on
quantum computing.
I will also be giving a detailed list of other
books that are available in the market for
quantum computer.
With this I will begin by regular exposition
of quantum computing starting with the postulates
of quantum mechanics.
