The Self-Learning Gate for Quantum Computing

Abstract

Self-learning is one of the most important scientific methods that helps develop sciences, as it derives from the desire and interests of the individual. However, self-learning loses importance if it does not follow the scientific methodology for building and organizing information. The case becomes harder if the science is new and few scientific sources are available. Quantum computing is one of the new sciences in computer science and needs the support of specialists to develop it. Quantum computing overlaps with many sciences such as physics, chemistry, and mathematics, so any student in one of the previous disciplines may lose the correct self-learning path to find themselves learning the details of another discipline that does not achieve their goals. This article motivates students and those interested in computer science to begin studying the science of quantum computing and choose the same specialization that suits their interests. The article also provides a roadmap for self-learning steps to protect the learner from losing the correct learning path. I have categorized the stages of learning quantum computing into four steps through which all the essential basics can be learned, provided the goals mentioned in each stage which should be achieved. The learning strategy proposed in this article corresponds with individuals’ self-learning rules. Through my personal experience, the proposed learning strategy has proven its effectiveness in building information in an enjoyable scientific way.

Share and Cite:

Alsalman, A. (2022) The Self-Learning Gate for Quantum Computing. Journal of Quantum Information Science, 12, 21-28. doi: 10.4236/jqis.2022.121003.

1. Introduction

The evolution of the word “computer” started as a human job then became an electronic device due to the development of computing techniques where the electronic computer is millions of times faster than humans. Today, quantum computing is a technology that performs operations millions of times faster than computers. Science is constantly evolving without limits. However, the developing method may reach its limit, or no challenge or problem to be solved to help improve that science. In 1900, Lord Kelvin stated, “there is nothing new to be discovered in physics now” (Yanes, 2019) [1]. Kelvin means that the laws of Newton, Maxwell, and Boltzmann solve all the problems of physics at that time. Nevertheless, early on the 20th century, quantum physics provided solutions for problems that humans did not think it would solve someday. Quantum Computing is a new science that overlaps with other sciences, which made it hard for a self-learner to focus on the aspect that corresponds to computer science and determine what should be learned from other disciplines. This article will talk about the meaning of quantum computing in general, its applications, topics, and roadmap for self-study, so that this article will be the bedrock for beginners.

2. What Is the Problem with a Classical Computer?

Classical computer means every electronic device, such as a computer, mobile phone, screen, etc. Computers consist of a processor consisting of tiny transistors that read the primary zero-one language of the computer. Transistor’s development factors are faster processing and becoming smaller. According to A NANO Enhancement to Moore’s Law, “Gordon Moore’s prediction is that the density of transistors and computing power doubles every twenty four months, which has held since there were fewer than 100 transistors in an integrated circuit” (Wu, Shen, Reinhardt, Szu, & Dong, 2013) [2]. Unfortunately, that is the problem with the classical computer, where the transistor will soon reach its improvement limit. Nowadays, the transistor size is 2.5 nanometers, and the possibility of miniaturization will stop at the size of the atom, which is 0.1 nanometer.

3. Why Quantum Computing?

The computer science student should know the challenge or problem to be overcome. Therefore, I will give two examples to simplify the basic idea and need for quantum computing. First example: suppose a person wants to cross the world by moving from a city western side to turn back to the same city from the eastern side. The fastest transportation at that time was a horse. After choosing the fastest horse globally and training it in the best possible ways, the cavalryman found that the heart and joints could not effort this trip. If we reduce hardship by more rest time, the time length of the journey will be longer than the horse’s life. Therefore, the horse cannot fulfill the task, and the solution is to use iron joints connected to a portable mechanical motor. In this case, we used the mechanical system instead of the natural system. The mechanical system now a day made cars and planes. The second example: suppose a bus driver wants to drive five students to five different cities. What is the best order to finish even a minute early? To calculate this assumption, we have one hundred and twenty possibilities that we can calculate in seconds via the fastest computer globally, which have a transistor size of five nanometers. If there were ten students, the probabilities would be 3,628,800, but it would take several hours or days on the same computer to calculate them. Whereas if the hypothesis were for all schools in the city in a hundred buses to different cities. That computer would take longer than the universe’s age to implement this process. Alternatively, we need too many transistors to make the processor size too big. The solution is to reduce the size of the transistors to be the size of the smallest thing, which is the atom. The atom has different physical laws called quantum laws. In this case, we used a quantum system instead of a classical system. That means the best classical computer cannot solve problems in our lives today. Moreover, the development of the computer in a classical way cannot lead us to a solution as the case with the horse’s capabilities in the first example.

4. What is a Quantum Computer?

They are computers that use the principles of physical quantum mechanics to perform calculations that a classical computer cannot calculate, and they are millions of times faster than classical computers. This is because quantum physics has different axioms than classical physics, making it difficult to comprehend. For example, light is a wave, and stone is a particle in classical physics axioms, in contrast, in quantum physics, light switches between the wave and particle as a dual state in the subatomic world. From the dual state in the atom, scientists conduct to represent the elementary unit of the classical computer (binary representation 0, 1) to obtain a unit that is zero and one simultaneously. That gives the quantum computer immediate performance without waiting to carry out the operations step by step. Moreover, realizing this power of quantum computing is a powerful motivator for learning. Therefore, it is essential to learn about the applications of quantum computers in simulating chemical elements and accessing big data and its impact to information security.

5. Quantum Computing Topics

Even though the science of quantum computing is new, scattering is a possibility for those who want to learn it by self-study. The scattering lies in the overlap of sciences in establishing this science. According to First Experiences Teaching Quantum Computing, “it has been claimed that it is possible to effectively teach quantum computing to undergraduate students without a physics background by means of computer programming” (Carrascal, Barrio, & Botella, 2020) [3]. However, this does not mean that there is no need to understand the physical phenomena of the atom or know the impact of chemical elements in the quantum computing industry. The goal that should focus on is how to develop quantum computing using classical computers or its sciences. Students can learn some basics from other sciences by focusing on computer science. For example, the quantum computing topics that I got during my master’s degree and according to “Experience Teaching Quantum Computing” (Tappert et al., 2019) [4], some issues need learning some physics information or other scientific backgrounds additional to computer science background. Thus, below is a list of the essential topics in quantum computing and what a computer science student should focus on to avoid going deeper into other disciplines.

5.1. The Qubit and Its States

Qubit is the basic unit of the quantum computer, and it is an abbreviation of Quantum bit. This unit builds data of quantum computers, as with bits in classical computers. In the following, some of the Qubit states that it is essential to comprehend for computer science students.

5.1.1. Superposition

The superposition is a distinct state of the Qubit. The position in superposition can be in computer science in the state of zero and one together, not one of them until it is measured. The concept is tricky, but the common example of a coin spinning moment can illustrate it. It is impossible to determine if the spinning coin is head or tail until land it, but the coin represents both sides during the spinning. The superposition of Qubit has a mathematical representation by vectors; thus, it is necessary to understand linear algebra and cope with matrices. According to Teaching Quantum Computing, “the amount you need is only a small part of linear algebra and also the easier part” (Westfall & Leider, 2018) [5]. Therefore, I recommend computer science students read this paper to learn the essential role of linear algebra. Overall, it is necessary to understand the superposition and its theories and how to measure the Qubit theoretically and practically.

5.1.2. Entanglement

This state can be described as a state of communication between two or more Qubits to represent one thing simultaneously. This phenomenon is considered one of the illogical phenomena compared to classical physics in reality. Coherence between two atoms implements the entanglement to execute the hypothesis of moving something from one place to another. Entangled particles are interconnected and interact even without communication tools and distance limitations. The computer science student should study the mechanism by learning entanglement algorithms. Students should learn the role of quantum gates such as H gate, X gate, etc., and their impact on the mechanism of decoding and entanglement. It is also essential to learn how to handle obstacles to error correction and monitoring interference using a classical computer simulation.

5.1.3. Interference

This state is the interference of waves in the entangled Qubits, where each Qubit is a wave that represents all possibilities in the case of superposition. The interference of waves can produce one wave that represents the correct probability when measured. That happens by constructive interference to increase the height of some waves and destructive interference to delete some waves. That helps get the goal to create a set of corresponding Qubits. Computer science students should learn how to use constructive and destructive interference to increase the probability of getting one correct answer in the measurement process.

5.2. Theories

Quantum theories are still in constant development to build this new science where started with the physicist Max Planck in 1900 [6]. These theories changed the previous definitions of the atom and its components, radiation, and particles. It also issued algorithms that help to control these qubits. Quantum algorithms can be described as commands to carry out instructions in one step to reach the desired goal, unlike classical computing, which implements step by step. There are many algorithms for quantum computing, but its efficiency relies on the number of qubits. What concerns the computer student is to know the fundamental algorithms of quantum computing in terms of their purpose and how to apply them programmatically. Shor’s algorithm, Grover’s search algorithm, Berstein-Vazirani algorithm, Simon problem algorithm, and Deutsch-Jossa algorithm are part of the fundamental algorithms that should be known. The following is an example of what you need to know about an algorithm to put them into practice.

5.2.1. Shor’s Algorithm

This quantum algorithm analyzes large numbers very efficiently and is unique because it is faster than other algorithms in a classical computer. The algorithm helps to decrypt the RSA encryption system, which directly affects the security of the information. Cryptography in classical computers is built on the principle of impossibly knowing the multiplication factors for large numbers. For example, it is easy for a classical computer to multiply two numbers whose result is a hundred digits or more; however, it isn’t easy to reversely get these two numbers from the result. The classical computer takes hundreds of years to calculate the probabilities, making it impossible. This algorithm can solve this problem via a quantum computer in minutes or less. Therefore, a computer science student needs to understand this algorithm due to its significant influence on information security.

5.2.2. Grover’s Search Algorithm

This algorithm is for searching in big databases. The classical computer takes a long time to implement a search in an unstructured list. For example, if we wanted to obtain one piece of information in a list of billions of information, a classical computer would take years. In contrast, a quantum computer would take minutes by this algorithm. Therefore, a computer student needs to understand this algorithm in theory and practice due to its effectiveness in managing databases.

5.3. Practical Models

A quantum computer needs an exceptional environment to build the device, so it is challenging to develop the parts of a quantum computer by self-learning. However, computer science student can direct their learning to software development through quantum computing simulation platforms. Online software platforms such as IBM, Google, and D-wave enable students to design quantum circuits or build software using programming languages. The following is a brief of Quantum circuits and programming languages.

5.3.1. Quantum Circuits

Quantum computer processors need logic gates to cope with qubits, like transistors in classical computers. These gates are the basic structure of quantum circuits. Learning how electronic circuits and logic gates work in a classical computer makes learning quantum circuits easy. Moreover, understanding the rules of drawing quantum circuits requires knowledge of linear algebra and matrices basics. Learning quantum circuits via Qiskit, Cirq, Classiq, and more is a way for the learner to help build and develop processors to increase the efficiency of quantum computers.

5.3.2. Programming Languages

Every company that manufactures a quantum computer or its parts uses its software, such as programming language, instructions, or commands. The background of Python can be a good start for learning the software of quantum computers. Online platforms such as Qiskit platform, ProjectQ, and Forest provided training courses to educate beginners without the need for background.

6. The Roadmap to Start Learning

It may be challenging to start self-learning in a new field such as quantum computing. Therefore, the following steps propose a road plan that helps computer science students build their knowledge in an orderly manner that prevents focusing on what is not related to computer science.

6.1. The First Step (40 to 80 Hours)

6.1.1. Preparing

This article is the beginning of the preparation for learning quantum computing, as it touched on what quantum computing is and its goal. In addition, computer science students should spend this step on YouTube to watch random videos. YouTube videos are usually directed to non-professionals. YouTube videos are maybe a documentary, interview, courses, or summit. Thus, the learner should balance these types for comprehensive and valuable knowledge.

6.1.2. First Step Goals

1) Overview for an establishment;

2) To observe the interest areas of the topics mentioned above;

3) To remember that understanding everything is not a goal, just knowledge;

4) To write questions about unclear points or terms for later study;

6.2. The Second Step (40 to 80 Hours)

6.2.1. Scientific Reading

Reading books and e-books on academic scientific websites in quantum computing helps to understand better what you learned from the first step. Google’s Quantum Al are an example of websites that provided platforms with unique content to teach quantum computing. Moreover, in Google Scholar, there are several books about the introduction in quantum computing, and it is simple to understand for beginners. An example of these books is:

1) An introduction to quantum computing, without the physics (by Nannicini);

2) Quantum computing for high school students (by Billig, Y.);

3) Quantum computation and quantum information (by Michael Nielsen and Isaac Chuang).

6.2.2. The Second Step Goals

1) To answer the questions of the first step;

2) To understand the basics of linear algebra;

3) Building a scientific knowledge background in the specialization;

4) To write examples of problems and their quantum solutions;

5) Determining the appropriate references for deep research.

6.3. The Third Step (10 to 20 Hours)

6.3.1. Practicality

Through online platforms, programs can be run on the simulation of quantum computers and creating quantum circuits for quantum chips. The programs are available in open source. Everyone can modify or add to it. I highly recommend spending part of the third step choosing suitable platforms to avoid getting distracted by the languages’ differences.

6.3.2. The Third Step Goals

1) To be able to use the simulation environment and implement quantum algorithms;

2) To practice coding, which is related to computer science;

3) To review the development of theories. Start as a physical phenomenon, a mathematical explanation, and then a software.

6.4. The Fourth Step (10 to 20 Hours)

6.4.1. Evaluation and Research

In the fourth step, students should build comprehensive background on quantum computing and practice the practical part. The computer science student will be familiar with all aspects of this science and will be able to assess the level and determine the inclination for one of the topics to study. Whatever the choice, the overall goal of the computer science student is to develop quantum computing using the classical computer. After the evaluation, start back over to utilize the mechanism mentioned in the second and third steps.

6.4.2. The Last Step Goals

1) Determining the research topic;

2) Comprehending the topics related to the research topic for review;

3) Determining the tools or work environment suitable for practicality.

7. Conclusions

Quantum computing is a revolution in computer sciences and will change many technologies in the future. After spending 100 to 200 hours in self-learning, learners will learn quantum computing foundations, know the research point, and get into the intermediate or advanced levels. Self-learning quantum computing is not simple, but it is possible. What helps learning is that there is no need to understand the details because it is difficult to understand. What is essential is applying theories and understanding their working mechanism for development using a classical computer. Increasing the number of Qubits is a challenge for scientists today. The growth of quantum computing is slower than the growth of classical computer processors. Nevertheless, something may happen in the development of quantum processors to make them begin to grow like in Gordon Moore’s law after the invention of transistors.

In the next articles, I will write about each topic that I mentioned in this article one by one. It will be an article series for beginners to briefly illustrate the topic and guide them to go deep into the topic.

Conflicts of Interest

The author declares no conflicts of interest regarding the publication of this paper.

References

[1] Yanes, J. (2019) Lord Kelvin and the End of Physics, Which He Never Predicted.
https://www.bbvaopenmind.com/en/science/physics/lord-kelvin-and-the-end-of-physics-which-he-never-predicted/
[2] Wu, J., Shen, Y.-L., Reinhardt, K., Szu, H. and Dong, B. (2013) A Nanotechnology Enhancement to Moore’s Law. Applied Computational Intelligence and Soft Computing, 2013, Article ID 426962.
https://doi.org/10.1155/2013/426962
[3] Carrascal, G., Barrio, A.D. and Botella, G. (2020) First Experiences of Teaching Quantum Computing. The Journal of Supercomputing, 77, 2770-2799.
https://doi.org/10.1007/s11227-020-03376-x
[4] Tappert, C., Frank, R.I., Barabasi, I., Leider, A.M., Evans, D. and Westfall, L. (2019) Experience Teaching Quantum Computing. ASCUE Proceedings, 48 p.
https://files.eric.ed.gov/fulltext/ED597112.pdf
[5] Westfall, L. and Leider, A. (2018) Teaching Quantum Computing. Proceedings of the Future Technologies Conference, 881, 63-80.
https://doi.org/10.1007/978-3-030-02683-7_6
[6] Wikipedia.org. (n.d.) Max Planck.
https://en.wikipedia.org/wiki/Max_Planck

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.