Quantum Computing





What is Quantum Computing ?


If you click on this page expecting that you will get the well defined, simple, clear single line definition of Quantum Computing, unfortunately this is not the right page for you. I am writing this page not to provide you with the clear definition. It would not be possible to do it not only because of my lack of experties in this area but also because of the very nature of Quantum phenomena itself. I am writing this page mainly to share my experience of studying and understanding some basic concept related to Quantum Comupting.


If you insist on getting the short, simple, single line definition of Quantum Computing, it may be defined as follows.

    Quantum Computing is a kind of computing technology based on Quantum Theory(Quantum Mechanics/Physics).

Now you would see how useless this kind of definition is -:). Then you would come up with even harder question 'What is Quamtum Theory/Quantum Mechanics ?' If I try to write a definition of Quantum Theory/Mechanics, then you would come up with other questions and this back-and-forth  would go on and on.




Then what should I do ?


I myself have spent very long time trying to grasp the clear concepts on quantum mechanics several years as a kind of hobbiest. It seems that almost everybody (experts both in Academia and engineering) agree that Quamtum Theory / Quamtum mechanics is not the area that can easily been described verbally nor can be explained based on our day to day experience. In fact, most of what quantum theory tells is against our ordinary experience. Many of the expert say Quantum Theory can only be understood in mathematical way. But I haven't yet reached the point where I can understand Quantum Theory in terms of mathmatics. However, I think I can manage to understand some concept of quatom computing (like representing Qbit, Quamtum Gate etc) in terms of mathematics... I will talk about this kind of math in separate pages.


My way of studying is just to get myself exposed to as diverse information as possible and get 'familiar' (not always same as 'understand') with basic concepts. Fortunately, thanks to YouTube and a lot of experts with good willingness to share their knowledge and understanding in the form of presentations or graphics, I could easily get many, many, many different materials that helps. Some of these materials that helped me is listed in Video Link page and I hope it can be helpful for you as well.


Trust your brain. Just put information / examples into your brain as much as possible and then your brain would digest them by itself. It doesn't necessarily mean that your brain will be able to express the learned result in writing or talks, but at some point you will 'sense' or 'feel'  "Now I think I understand this".  Interestingly, this is how Machine Learning / Deep Learning Algorithm learns. (Don't ask me what is Machine Learning -:). See this page if you are interested).




Why Quantum Computing ?


Why are we interested in Quatum Computer ? Why we are interested in something that we don't know how to define ?

Even though it is not easy to describe what the quantum computing is, it would not be so difficult (hopefully) to explain why we are interested in.


I think it would be better to talk with an example. Let's suppose we want to evaluate a function f(x) at 8 different point.


If we do this with regular / ordinary computer that we use, it would goes on as shown in < Case 1 >. A single CPU perform an evaluation for each point at a time. In this case, it would take 8 instruction cycles to complete the evaluation of all the points.

Now let's think of how to speed up this process with the current computing technology. The easiest way to think of would be to use multi-core computer (8 core in this case) and all of the CPUs performs the evaluation at different point at the same time as illustruated in <Case 2>. In this case, with one instruction cycle you may get the result for all 8 points. But the problem is that you would need more resources (more CPUs in this case) and possibly more memorys to perform the job.

However, if we use Quantum Computer we can peform the evaluation for all the eight points with single CPU and single instruction because quatum bit can exist in all the different values(states) simultatneously as illustrated in < Case 3 >. This (all the possible bit sates can exist simultaneously) is called Superposition, and this superposition is at the core of Quantum Computing. I know, you would start getting confused and a lot of questions would boggling up in your mind.  If you are new to Quantum Computing, I would suggest you to try to understand what is Superposition and what is the implication of this example.

In this example, I use an example that requires only 3 bits and it would not sound so fancy. But what if we need a case where we need 10 bits ? ... 10 bits ? not a big deal.. we can easily build 2^10 (1024)multi core PC even though it is not cheap. or buy a GPU with parallel processing. Then what if we need to solve a problem that would require 50 bits ? Are you still going to try to build a multi core PC or Super computer with 2^50 CPUs ? what about the problem that requires 500 bits ? At this point it became not possible to handle those situation with multi core CPUs or any type of super computer. But if you use a Quantum Computer supporting 512 Qbits, you can still solve the problem with a single CPU and Single Cycle. Practically not exactly single cycle due to the measurement, but let's think of the ideal situation now. The point is that Qualtum Computing can solve certain types of problems that can take forever for ordinary computer to solve or practically impossible to solve.


< Case 1 >



< Case 2 >



< Case 3 >