HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
ONE-VOLUME INTRODUCTION TO QUANTUM COMPUTING
Download the sample pages (includes Chapter 6)
Preface xvii
Part I Preparatory Material
Chapter 1: Introduction to Essential Linear Algebra 2
1.1 What Is Linear Algebra?.. . . . . . . . . . . . . . . . . . . . 3
1.2 Some Basic Algebra.. . . . . . . . . . . . . . . . . . . . . 4
1.3 Matrix Math.. . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Vectors and Vector Spaces.. . . . . . . . . . . . . . . . . . 23
1.5 Set Theory.. . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 29
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 29
Chapter 2: Complex Numbers 32
2.1 What Are Complex Numbers?.. . . . . . . . . . . . . . . . . 32
2.2 Algebra of Complex Numbers.. . . . . . . . . . . . . . . . . 34
2.3 Complex Numbers Graphically.. . . . . . . . . . . . . . . . 38
2.4 Vector Representations of Complex Numbers.. . . . . . . . . . 45
2.5 Pauli Matrices.. . . . . . . . . . . . . . . . . . . . . . . 48
2.6 Transcendental Numbers.. . . . . . . . . . . . . . . . . . . 56
2.7 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 58
Chapter 3: Basic Physics for Quantum Computing 60
3.1 The Journey to Quantum.. . . . . . . . . . . . . . . . . . . 61
3.2 Quantum Physics Essentials.. . . . . . . . . . . . . . . . . 65
3.3 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 77
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 77
Chapter 4: Fundamental Computer Science for Quantum Computing 80
4.1 Data Structures.. . . . . . . . . . . . . . . . . . . . . . . 81
4.2 Algorithms.. . . . . . . . . . . . . . . . . . . . . . . . . 88
4.3 Computational Complexity.. . . . . . . . . . . . . . . . . . 93
4.4 Coding Theory.. . . . . . . . . . . . . . . . . . . . . . . 95
4.5 Logic Gates.. . . . . . . . . . . . . . . . . . . . . . . . 96
4.6 Computer Architecture.. . . . . . . . . . . . . . . . . . . 100
4.7 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 103
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 103
Chapter 5: Basic Information Theory 106
5.1 Basic Probability.. . . . . . . . . . . . . . . . . . . . . . 107
5.2 Set Theory.. . . . . . . . . . . . . . . . . . . . . . . . 108
5.3 Information Theory.. . . . . . . . . . . . . . . . . . . . . 112
5.4 Quantum Information.. . . . . . . . . . . . . . . . . . . . 118
5.5 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 120
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 120
Part II Basic Quantum Computing
Chapter 6: Basic Quantum Theory 122
6.1 Further with Quantum Mechanics.. . . . . . . . . . . . . . . 123
6.2 Quantum Decoherence.. . . . . . . . . . . . . . . . . . . 129
6.3 Quantum Electrodynamics.. . . . . . . . . . . . . . . . . . 131
6.4 Quantum Chromodynamics.. . . . . . . . . . . . . . . . . 133
6.5 Feynman Diagram.. . . . . . . . . . . . . . . . . . . . . 134
6.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 136
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 136
Chapter 7: Quantum Entanglement and QKD 138
7.1 Quantum Entanglement.. . . . . . . . . . . . . . . . . . . 138
7.2 Interpretation.. . . . . . . . . . . . . . . . . . . . . . . 143
7.3 QKE.. . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.4 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 151
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 152
Chapter 8: Quantum Architecture 154
8.1 Further with Qubits.. . . . . . . . . . . . . . . . . . . . . 154
8.2 Quantum Gates.. . . . . . . . . . . . . . . . . . . . . . 158
8.3 More with Gates.. . . . . . . . . . . . . . . . . . . . . . 166
8.4 Quantum Circuits. . . . . . . . . . . . . . . . . . . . . . 167
8.5 The D-Wave Quantum Architecture.. . . . . . . . . . . . . . 169
8.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 172
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 172
Chapter 9: Quantum Hardware 174
9.1 Qubits.. . . . . . . . . . . . . . . . . . . . . . . . . . 174
9.2 How Many Qubits Are Needed?. . . . . . . . . . . . . . . . 181
9.3 Addressing Decoherence.. . . . . . . . . . . . . . . . . . 182
9.4 Topological Quantum Computing.. . . . . . . . . . . . . . . 186
9.5 Quantum Essentials.. . . . . . . . . . . . . . . . . . . . 187
9.6 Quantum Networking.. . . . . . . . . . . . . . . . . . . . 188
9.7 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 191
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 191
Chapter 10: Quantum Algorithms 194
10.1 What Is an Algorithm?. . . . . . . . . . . . . . . . . . . . 194
10.2 Deutsch’s Algorithm.. . . . . . . . . . . . . . . . . . . . 197
10.3 Deutsch-Jozsa Algorithm.. . . . . . . . . . . . . . . . . . 199
10.4 Bernstein-Vazirani Algorithm.. . . . . . . . . . . . . . . . . 201
10.5 Simon’s Algorithm.. . . . . . . . . . . . . . . . . . . . . 202
10.6 Shor’s Algorithm.. . . . . . . . . . . . . . . . . . . . . . 203
10.7 Grover’s Algorithm. . . . . . . . . . . . . . . . . . . . . 209
10.8 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 211
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 211
Part III Quantum Computing and Cryptography
Chapter 11: Current Asymmetric Algorithms 212
11.1 RSA. . . . . . . . . . . . . . . . . . . . . . . . . . . 213
11.2 Diffie-Hellman.. . . . . . . . . . . . . . . . . . . . . . . 216
11.3 Elliptic Curve.. . . . . . . . . . . . . . . . . . . . . . . 219
11.4 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 227
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 227
Chapter 12: The Impact of Quantum Computing on Cryptography 228
12.1 Asymmetric Cryptography.. . . . . . . . . . . . . . . . . . 229
12.2 Specific Algorithms.. . . . . . . . . . . . . . . . . . . . . 231
12.3 Specific Applications. . . . . . . . . . . . . . . . . . . . 233
12.3.1 Digital Certificates. . . . . . . . . . . . . . . . . . 233
12.3.2 SSL/TLS. . . . . . . . . . . . . . . . . . . . . . 234
12.4 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 241
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 241
Chapter 13: Lattice-based Cryptography 244
13.1 Lattice-Based Mathematical Problems.. . . . . . . . . . . . . 245
13.2 Cryptographic Algorithms. . . . . . . . . . . . . . . . . . 249
13.3 Solving Lattice Problems.. . . . . . . . . . . . . . . . . . 256
13.4 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 259
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 259
Chapter 14: Multivariate Cryptography 262
14.1 Mathematics.. . . . . . . . . . . . . . . . . . . . . . . 262
14.2 Matsumoto-Imai.. . . . . . . . . . . . . . . . . . . . . . 264
14.3 Hidden Field Equations. . . . . . . . . . . . . . . . . . . 266
14.4 Multivariate Quadratic Digital Signature Scheme (MQDSS).. . . . 268
14.5 SFLASH.. . . . . . . . . . . . . . . . . . . . . . . . . 269
14.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 271
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 271
Chapter 15: Other Approaches to Quantum Resistant Cryptography 274
15.1 Hash Functions.. . . . . . . . . . . . . . . . . . . . . . 274
15.2 Code-Based Cryptography.. . . . . . . . . . . . . . . . . 279
15.3 Supersingular Isogeny Key Exchange.. . . . . . . . . . . . . 281
15.4 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 289
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 289
Part IV Quantum Programming
Chapter 16: Working with Q# 292
16.1 Basic Programming Concepts.. . . . . . . . . . . . . . . . 292
16.2 Getting Started with Q#.. . . . . . . . . . . . . . . . . . . 298
16.3 Grover’s Algorithm. . . . . . . . . . . . . . . . . . . . . 303
16.4 Deutsch-Jozsa Algorithm.. . . . . . . . . . . . . . . . . . 307
16.5 Bit Flipping.. . . . . . . . . . . . . . . . . . . . . . . . 310
16.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 311
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 311
Chapter 17: Working with QASM 314
17.1 Basic Programming Concepts.. . . . . . . . . . . . . . . . 315
17.2 Getting Started with QASM.. . . . . . . . . . . . . . . . . 319
17.3 Quantum Error Correction. . . . . . . . . . . . . . . . . . 320
17.4 Grover’s Algorithm. . . . . . . . . . . . . . . . . . . . . 322
17.5 Deutsch-Jozsa Algorithm.. . . . . . . . . . . . . . . . . . 326
17.6 Summary.. . . . . . . . . . . . . . . . . . . . . . . . . 328
Test Your Skills. . . . . . . . . . . . . . . . . . . . . . . 328
Appendix: Answers to Test Your Skills Questions 330
9780136793816, TOC, 5/7/2021