Quantum computing sounds fancy but also scary. Is it possible to learn quantum computing rigorously without years of training in mathematics, physics, and Computer Science? This book tries to address this question. For any serious learner who has some basic training in science or engineering at the junior level, they should find this textbook useful to prepare themselves to start a serious quantum computing journey within a few months.
This book is based on an introduction to quantum computing class I teach at San Jose State University. The target audiences are senior and master’s students who do not have a strong background in linear algebra and physics. This book is suitable for self-study or as a textbook for a one-semester or one-quarter introduction class at senior or master’s level. After spending 60–90 hours of reading, students are expected to be able to understand the critical concepts of quantum computing, construct and run quantum computing circuits, and interpret the results. For self-study students, it is recommended to read the book and do the exercise for 3–4 hours per week for about 20 weeks (about 1–2 chapters per week).
There are two parts in this book. Part I teaches linear algebra with an emphasis on quantum computing applications. Part II teaches quantum computing gates and algorithms. If the readers have not been exposed to quantum computing and do not have a very strong background in linear algebra, it is recommended to read from the first chapter to the final chapter in sequence. Part I is “entangled” with Part II. Many important quantum computing concepts are introduced in Part I. It is not recommended to start with Part II even if the readers already have some background in linear algebra. Part I of this book can also be used to enhance the students’ understanding of linear algebra as standalone teaching material.
Real quantum computers (IBM-Q) are used to implement some of the algorithms, and students are encouraged to write their own simple simulator using Google Co-lab.
Author(s): Hiu Yung Wong
Edition: 2
Publisher: Springer
Year: 2023
Language: English
Pages: 352
Preface to the Second Edition
Preface to the First Edition
Contents
About the Author
Part I Linear Algebra for Quantum Computing
1 The Most Important Step to Understand Quantum Computing
1.1 Introduction
1.1.1 Learning Outcomes
1.1.2 Teaching Videos
1.2 How to Learn Quantum Computing
2 First Impression
2.1 Introduction
2.1.1 Learning Outcomes
2.1.2 Teaching Videos
2.2 What Is Quantum Computing?
2.3 Summary
Problems
3 Basis, Basis Vectors, and Inner Product
3.1 Introduction
3.1.1 Learning Outcomes
3.1.2 Teaching Videos
3.2 A Romantic Story
3.3 Vectors in Quantum Computing
3.4 Vector Space
3.5 Inner Products of Vectors
3.6 Higher Dimensional Vector Space
3.7 Summary
Problems
4 Orthonormal Basis, Bra–Ket Notation, and Measurement
4.1 Introduction
4.1.1 Learning Outcomes
4.1.2 Teaching Videos
4.2 Orthonormal Basis
4.3 Bra–ket Notation
4.4 Quantum Mechanical State, Superposition, and Measurement
4.5 Summary
Problems
5 Changing Basis, Uncertainty Principle, and Bra–Ket Operations
5.1 Introduction
5.1.1 Learning Outcomes
5.1.2 Teaching Videos
5.2 Basis and Uncertainty Principle
5.3 More Bra–Ket Operations
5.4 Summary
5.5 More About Python
Problems
6 Observables, Operators, Eigenvectors, and Eigenvalues I
6.1 Introduction
6.1.1 Learning Outcomes
6.1.2 Teaching Videos
6.2 Observables and Operators
6.3 Eigenvalues and Eigenvectors
6.4 Eigenvalues and Eigenvectors Finding and Phase Factor
6.5 Remarks on Eigenvectors, Basis, and Measurement
6.6 Summary
Problems
7 Pauli Spin Matrices, Adjoint Matrix, and Hermitian Matrix
7.1 Introduction
7.1.1 Learning Outcomes
7.1.2 Teaching Videos
7.2 Pauli Spin Matrices
7.3 Commutation and Anti-commutation
7.4 Spin Operator in Arbitrary Direction
7.5 Relationship Between Spin Direction and Real 3D Space
7.6 Adjoint and Hermitian Matrices
7.7 Summary
Problems
8 Operator Rules, Real Eigenvalues, and Projection Operator
8.1 Introduction
8.1.1 Learning Outcomes
8.1.2 Teaching Videos
8.2 Operator Rules in the Bra-ket Notation
8.3 Eigenvalues of Hermitian Matrix
8.4 Copenhagen Interpretation/Born Rule and Projection Operator
8.5 Summary
Problems
9 Eigenvalues II, Matrix Diagonalization and Unitary Matrix
9.1 Introduction
9.1.1 Learning Outcomes
9.1.2 Teaching Videos
9.2 Eigenvalues and Matrix Diagonalization
9.3 Unitary Matrix
9.4 Summary
Problems
10 Unitary Transformation, Completeness, and Construction of Operator
10.1 Introduction
10.1.1 Learning Outcomes
10.1.2 Teaching Videos
10.2 Unitary Transformation
10.3 Construction of Unitary Transformation Matrices
10.4 Completeness of Basis
10.5 Construct Operator from Eigenvalues and Eigenvectors
10.6 Summary
Problems
11 Hilbert Space, Tensor Product, and Multi-Qubit
11.1 Introduction
11.1.1 Learning Outcomes
11.1.2 Teaching Videos
11.2 Hilbert Space
11.3 Expansion of Hilbert Space and Tensor Product
11.4 Multi-Qubits
11.5 More About Tensor Product in Hilbert Space
11.6 Summary
Problems
12 Tensor Product of Operators, Partial Measurement, and Matrix Representation in a Given Basis
12.1 Introduction
12.1.1 Learning Outcomes
12.1.2 Teaching Videos
12.2 Tensor Product of Vectors in General Form
12.3 Tensor Product of Operators
12.4 Partial Measurement
12.5 Matrix Representation in a Given Basis
12.6 Summary
Problems
Part II Quantum Computing: Gates and Algorithms
13 Quantum Register and Data Processing, Entanglement, the Bell States, and EPR Paradox
13.1 Introduction
13.1.1 Learning Outcomes
13.1.2 Teaching Videos
13.2 Quantum Register
13.3 Quantum Data Processing
13.4 Entanglement and Bell States
13.5 Einstein–Podolsky–Rosen (EPR) Paradox
13.6 Summary
Problems
14 Concepts Review, Density Matrix, and Entanglement Entropy
14.1 Introduction
14.1.1 Learning Outcomes
14.1.2 Teaching Videos
14.2 Concepts Review Using Entanglement
14.3 Pure State, Mixed State, and Density Matrix
14.4 Measurement of Entanglement
14.5 Summary
Problems
15 Quantum Gate Introduction: NOT and CNOT Gates
15.1 Introduction
15.1.1 Learning Outcomes
15.1.2 Teaching Videos
15.2 Basic Quantum Gate Properties
15.3 NOT (X) Gate
15.3.1 Definition
15.3.2 Matrix
15.3.3 Circuit and Properties
15.4 XOR (CNOT) Gate
15.4.1 Definition
15.4.2 Matrix
15.4.3 Circuit and Properties
15.5 Summary
Problems
16 SWAP, Phase Shift, and CCNOT (Toffoli) Gates
16.1 Introduction
16.1.1 Learning Outcomes
16.1.2 Teaching Videos
16.2 SWAP Gate
16.2.1 Definition
16.2.2 Matrix
16.2.3 Circuit and Properties
16.3 Phase Shift Gate
16.3.1 Definition
16.3.2 Matrix
16.3.3 Circuit and Properties
16.4 Controlled Phase Shift Gate
16.4.1 Definition
16.4.2 Matrix
16.4.3 Circuit and Properties
16.5 Toffoli (CCNOT) Gate
16.5.1 Definition
16.5.2 Matrix
16.5.3 Circuit and Properties
16.6 Summary
Problems
17 Walsh–Hadamard Gate and Its Properties
17.1 Introduction
17.1.1 Learning Outcomes
17.1.2 Teaching Videos
17.2 Walsh–Hadamard Gate
17.2.1 Definition
17.2.2 Matrix
17.2.3 Circuit
17.3 Properties of the Hadamard Gate
17.3.1 Inverse of Hadamard Gate
17.3.2 Multiple-Qubit Hadamard Gate
17.3.3 Properties of n-Qubit Hadamard Gate
17.4 Summary
Problems
18 Two Quantum Circuit Examples
18.1 Introduction
18.1.1 Learning Outcomes
18.1.2 Teaching Videos
18.2 Quantum Circuit for Rotating Basis
18.2.1 Run on IBM-Q
18.3 Quantum Circuit for Implementing a SWAP Gate
18.3.1 Run on IBM-Q
18.4 Summary
Problems
19 No-Cloning Theorem and Quantum Teleportation I
19.1 Introduction
19.1.1 Learning Outcomes
19.1.2 Teaching Videos
19.2 No-Cloning Theorem
19.3 Quantum Teleportation
19.3.1 A Simplified Version
19.3.2 Measurement in the 69640972 +"526930B /69640972 -"526930B Basis
19.3.3 Run on IBM-Q
19.4 Summary
Problems
20 Quantum Teleportation II and Entanglement Swapping
20.1 Introduction
20.1.1 Learning Outcomes
20.1.2 Teaching Videos
20.2 Quantum Teleportation: The Full Version
20.2.1 Run on IBM-Q
20.3 Entanglement Swapping
20.3.1 Run on IBM-Q
20.4 Summary
Problems
21 Deutsch Algorithm
21.1 Introduction
21.1.1 Learning Outcomes
21.1.2 Teaching Videos
21.2 Deutsch Algorithm
21.2.1 The Problem
21.2.2 Classical Algorithm
21.2.3 Quantum Computing Solution
21.2.4 The Quantum Circuit
21.2.5 Run on IBM-Q
21.3 Summary
Problems
22 Quantum Oracles and Construction of Quantum Gate Matrices
22.1 Introduction
22.1.1 Learning Outcomes
22.1.2 Teaching Videos
22.2 Quantum Oracle
22.2.1 XOR Quantum Oracle
22.2.2 Phase Quantum Oracle
22.3 Construction of Quantum Gates and Oracles
22.4 Summary
Problems
23 Grover's Algorithm: I
23.1 Introduction
23.1.1 Learning Outcomes
23.1.2 Teaching Videos
23.2 Grover's Algorithm
23.2.1 Computational Complexity
23.2.2 The Problem
23.2.3 An Overview of Grover's Algorithm
23.2.4 Implementation of Grover's Algorithm
23.2.5 Circuit for Grover's Algorithm
23.3 Summary
Problems
24 Grover's Algorithm: II
24.1 Introduction
24.1.1 Learning Outcomes
24.1.2 Teaching Videos
24.2 Numerical Example for Grover's Algorithm
24.2.1 Construction of Quantum Oracle
24.2.2 Construction of the Grover Diffusion Operator
24.2.3 Evolution of the Wavefunction
24.3 Simulation on IBM-Q
24.4 Implementation Using XOR Quantum Oracle
24.5 Summary
Problems
25 Quantum Fourier Transform I
25.1 Introduction
25.1.1 Learning Outcomes
25.1.2 Teaching Videos
25.2 The N-th Root of Unity
25.3 Discrete Fourier Transform
25.4 Quantum Fourier Transform
25.5 Inverse Quantum Fourier Transform
25.6 Summary
Problems
26 Quantum Fourier Transform II
26.1 Introduction
26.1.1 Learning Outcomes
26.1.2 Teaching Videos
26.2 Another Definition of QFT and IQFT
26.3 Many-Qubit SWAP Gate
26.4 QFT Circuit
26.4.1 Implementation of a 3-Qubit QFT Circuit
26.5 Implementation of IQFT
26.6 General Circuit of QFT
26.7 Summary
Problems
27 Bloch Sphere and Single-Qubit Arbitrary Unitary Gate
27.1 Introduction
27.1.1 Learning Outcomes
27.1.2 Teaching Videos
27.2 Bloch Sphere
27.3 Expectation Values of Pauli Matrices
27.4 Single-Qubit Arbitrary Unitary Rotation
27.5 Summary
Problems
28 Quantum Phase Estimation
28.1 Introduction
28.1.1 Learning Outcomes
28.1.2 Teaching Videos
28.2 General Controlled Unitary Gate
28.3 Quantum Phase Estimation
28.3.1 QPE for a 22 Matrix
28.3.2 Implementation on IBM-Q
28.3.3 General QPE Circuit
28.4 Summary
Problems
29 Shor's Algorithm
29.1 Introduction
29.1.1 Learning outcomes
29.1.2 Teaching Videos
29.2 Background
29.2.1 Encryption
29.2.2 Period Finding
29.2.3 Prime Integer Factorization
29.3 Shor's Algorithm
29.4 Summary
Problems
30 The Last But Not the Least
30.1 Introduction
30.1.1 Learning Outcomes
30.1.2 Teaching Videos
30.2 The End of the Beginning
30.3 Quantum Programming
30.4 Harrow–Hassidim–Lloyd (HHL) Quantum Algorithm
30.5 Next Steps
A Resources of This Book
B Extra Exercises
C Suggested Solutions
Index