In the last half decade or so, there has been a surge of interest in quantum computing among students of all ages and levels, from high school students to business executives. As a result, there exists a plethora of ways to learn quantum computing.
The Challenge: The Leaps of Logic
Perhaps you have gained a general understanding of quantum technology by reading the many online articles in existence. After all, there exist significant resources that describe the basic theory, notation, and mathematics of quantum computing.
Many of these resources are helpful and can aid in raising interest across a wide range of target audiences. Yet as you continue to read, digging deeper into modern innovations in quantum computing, you may encounter a major roadblock, especially when it comes to applying this knowledge. To devise novel quantum algorithms, understand the hardware on a low level, or work in some combination of the two, significant supplemental knowledge is needed.
Contrary to popular belief, quantum computing is still at a stage of relative infancy (at least at the time of writing). Researchers are programming at the bit-level, which is nearly analogous to (or perhaps even more primitive than) classical assembly language. Furthermore, to effectively implement an algorithm – or even run it on a quantum computer – some knowledge of the underlying physics may be needed.
This translates to understanding current limitations of quantum computers. Oftentimes, the daily recalibration of these devices and exact limitations are less publicized, and the restraints they define are less clear to a newcomer to the field of quantum computing.
Evidently, the hype around quantum computing is enough to garner plenty of attention, but are there enough materials to sustain the growing generation of quantum computing experts?
Some institutions, such as Harvard, have ensured that resources for this supplemental knowledge are covered by introducing a structured degree pathway for their students (one of the first of its kind).
The issue is that readily-accessible, affordable, and structured quantum computing courses may be out of reach for many of the prospective quantum enthusiasts in the world. Or, alternatively, they may be hard to find.
This may be remedied in two ways. The first, aimed at overcoming the accessibility barrier, is to opt for self-motivated methods of study or online courses. The second, aimed at tackling the question of structure, is to build an intuition for the physics and mathematics that define quantum computing.
Resources for Learning Quantum Computing
Online resources, including textbooks and courses, are go-to options. In the day and age of the Internet of Things, using a combination of these resources can help you build a well-rounded understanding of quantum computing.
If you are searching for resources that simulate the classroom setting, online courses such as Qubit by Qubit, hosted by the Coding School, may be ideal. As your understanding of quantum computing progresses, more accelerated programs such as the two-week Qiskit Global Summer School may be of interest.
However, these courses require consistent attendance at live sessions. You may instead want to schedule your own study sessions while still seeking the structured classroom format. In this case, self-paced courses, such as those offered by The University of Chicago on EdX (“Introduction of Quantum Computing for Everyone”) and – in a shameless self-plug – Q-munity Tech’s courses, will be perfect. Additional courses are discussed in our blog here.
There also exist a number of quality textbooks available to students. For people who are still searching for an introductory course on quantum computing that is not mathematically or technically intense, Quantum Computing as a High School Module (by Perry, et al) and Quantum Computing for Everyone (by Chris Bernhardt) fits your needs rather well.
The free quantum computing textbook, Introduction to Classical and Quantum Computing, by Thomas Wong is able to introduce to you quantum computing at the level of an undergraduate or advanced high school student. Yet he also includes a discussion of complex number calculations and other mathematical background (alongside numerous exercises), a characteristic which several existing resources lack.
For exceedingly difficult mathematical exercises, but nonetheless thorough investigation of quantum computing, Quantum Computation and Quantum Information by Michael A. Nielsen and Isaac L. Chuang may be recommended. In a similar vein, for specific studies in algorithms and programming the IBM Qiskit Textbook is commonly referenced.
Building Your Quantum Toolkit
Prior knowledge is occasionally assumed by the authors of these resources. For example, a certain linear algebra identity or method of notation (the latter of which varies from author to author) may be assumed to be known. Perhaps in the proof for an algorithm, simplifications are made with little explanation. Thomas Wong’s textbook does well in assuming this is not the case, but certain resources, such as the Qiskit Textbook, will readily assume sufficient mathematical background has been acquired.
In these cases, having a strong foundation in the basics will play a large role in ensuring you are still able to comprehend what is on the page. This foundation will come from building a solid understanding in the core subjects that support quantum computing. These subjects are as follows.
(1) Linear Algebra
The role linear algebra plays in quantum computing is almost self-explanatory. The information in these bits are represented using vectors, and the operations that are performed on them may be described using some series of matrices.
However, simple vector and matrix operations (which are as far as a number of resources will go) are only the tip of the iceberg. Step only slightly further and gain an understanding of the likes of Euler’s Formula (not to be confused with Euler’s Theorem) and tensors, among many other topics. It is recommended you gain a stronger understanding of the implications of these calculations on the quantum level.
“Linear Algebra for Quantum Computing” walks readers (and potential quantum computer programmers) through exercises (in the form of coding notebooks) that introduce quantum computing from this perspective.
(2) Complex Numbers and Analysis
Complex numbers and their related calculations are less discussed in a number of resources. Many introductory materials introduce qubits (or quantum bits) using only real number representations. For the most part, only a two dimensional axis (an x and y value) is used to represent the vectors in question. In truth, however, qubit calculations – and gates – deal largely with complex numbers.
While the idea may seem simple, certain notations or formulas – such as when calculating the norm of a vector – have new implications. For example, to find the squared magnitude of a complex number, rather than simply multiplying the complex number by itself and distributing the values, the complex number is instead multiplied by its conjugate.
Thomas Wong’s textbook takes the time to introduce complex numbers in the context of quantum computing in-depth.
(3) Quantum Mechanics
Quantum computing-specific resources tend to jump directly into discussion of spins and entanglement. However, quantum computing spans much more than just that. An understanding of the different types of quantum computers – many of which are not in fact directly reliant on spin (but still tangentially related) – can be better achieved through an intuition of the behavior of quantum mechanics. In other words, there exists a disconnect between the theoretical and experimental (hardware) communities, and pursuing a deeper understanding of quantum mechanics may remedy this.
Some courses elect to begin not with spin but, instead, wave and optics. While this introduction is much more lengthy and roundabout than its counterparts, it builds up significant intuition behind the oscillatory model adopted by quantum mechanics. In such a way, physics-heavy calculations become more straightforward with this background. Of course, this is optional, and many are able to learn quantum computing without extensive knowledge of the theory on which quantum mechanics was built. Nonetheless, the need to build a foundation to support your reasoning is consistent.
In the end, regardless of precisely what application you intend on using quantum computing for, the end goal is to be able to apply what is learned. Do not be afraid to challenge yourself, find what methods of learning work best for you, and try, try, and try again!