Quantum Computing: Lecture Notes
Total Page:16
File Type:pdf, Size:1020Kb
Quantum Computing: Lecture Notes Ronald de Wolf Preface These lecture notes were formed in small chunks during my “Quantum computing” course at the University of Amsterdam, Feb-May 2011, and compiled into one text thereafter. Each chapter was covered in a lecture of 2 45 minutes, with an additional 45-minute lecture for exercises and × homework. The first half of the course (Chapters 1–7) covers quantum algorithms, the second half covers quantum complexity (Chapters 8–9), stuff involving Alice and Bob (Chapters 10–13), and error-correction (Chapter 14). A 15th lecture about physical implementations and general outlook was more sketchy, and I didn’t write lecture notes for it. These chapters may also be read as a general introduction to the area of quantum computation and information from the perspective of a theoretical computer scientist. While I made an effort to make the text self-contained and consistent, it may still be somewhat rough around the edges; I hope to continue polishing and adding to it. Comments & constructive criticism are very welcome, and can be sent to [email protected] Those who want to read more (much more. ): see the book by Nielsen and Chuang [89]. Attribution and acknowledgments Most of the material in Chapters 1–6 comes from the first chapter of my PhD thesis [108], with a number of additions: the lower bound for Simon, the Fourier transform, the geometric explanation of Grover. Chapter 7 is newly written for these notes, inspired by Santha’s survey [95]. Chapters 8 and 9 are largely new as well. Section 3 of Chapter 8, and most of Chapter 10 are taken (with many changes) from my “quantum proofs” survey paper with Andy Drucker [42]. Chapters 11 and 12 are partly taken from my non-locality survey with Harry Buhrman, Richard Cleve, and Serge Massar [26]. Chapters 13 and 14 are new. Thanks to Giannicola Scarpa for useful comments on some of the chapters. January’13 : updated and corrected a few things for the Feb-Mar 2013 version of this course, and included exercises for each chapter. Thanks to Harry Buhrman, Florian Speelman, and Jeroen Zuiddam for spotting some typos in the earlier version. April’13 : more updates, clarifications and corrections; moved some material from Chapter 2 to 1; changed and added some exercises. Thanks to Jouke Witteveen for some useful comments. April’14 : fixed and clarified a few more things. Thanks to Maarten Wegewijs for spotting a typo in Chapter 4. March’15 : updated a few small things. July’15 : updated and corrected a few small things, added more exercises. Thanks to Srinivasan Arunachalam, Carla Groenland, and Koen Groenland for comments. May’16 : a few more corrections, thanks to Ralph Bottesch for comments. Jan’18 : many more corrections, more exercises, a new Chapter 6 about HSP (the above-mentioned chapter numbers are for the earlier version of the notes), and moved the hints about exercises to an Appendix for students who want to try the exercises first without hints. Thanks to Joran van Apeldoorn, Srinivasan Arunachalam, Rens Baardman, Alexander Belov, Koen de Boer, Daniel Chernowitz, Andr´as Gily´en, Ronald de Haan, Leon Ingelse, Rafael Kiesel, Jens Klooster, Sam Kuypers, Christian Nesenberend, and Christian Schaffner for comments. Ronald de Wolf, January 2018, Amsterdam ii Contents 1 Quantum Computing 1 1.1 Introduction ......................................... 1 1.2 Quantum mechanics .................................... 2 1.2.1 Superposition .................................... 2 1.2.2 Measurement .................................... 3 1.2.3 Unitary evolution .................................. 4 1.3 Qubits and quantum memory ............................... 5 1.4 Elementary gates ...................................... 6 1.5 Example: quantum teleportation ............................. 7 2 The Circuit Model and Deutsch-Jozsa 11 2.1 Quantum computation ................................... 11 2.1.1 Classical circuits .................................. 11 2.1.2 Quantum circuits .................................. 12 2.2 Universality of various sets of elementary gates ..................... 13 2.3 Quantum parallelism .................................... 14 2.4 The early algorithms .................................... 14 2.4.1 Deutsch-Jozsa .................................... 15 2.4.2 Bernstein-Vazirani ................................. 16 3 Simon’s Algorithm 19 3.1 The problem ........................................ 19 3.2 The quantum algorithm .................................. 19 3.3 Classical algorithms for Simon’s problem ......................... 20 3.3.1 Upper bound .................................... 20 3.3.2 Lower bound .................................... 21 4 The Fourier Transform 25 4.1 The classical discrete Fourier transform ......................... 25 4.2 The Fast Fourier Transform ................................ 26 4.3 Application: multiplying two polynomials ........................ 26 4.4 The quantum Fourier transform .............................. 27 4.5 An efficient quantum circuit ................................ 28 4.6 Application: phase estimation ............................... 29 iii 5 Shor’s Factoring Algorithm 31 5.1 Factoring .......................................... 31 5.2 Reduction from factoring to period-finding ........................ 31 5.3 Shor’s period-finding algorithm .............................. 33 5.4 Continued fractions ..................................... 35 6 Hidden Subgroup Problem 39 6.1 Hidden Subgroup Problem ................................. 39 6.1.1 Group theory reminder .............................. 39 6.1.2 Definition and some instances of the HSP .................... 40 6.2 An efficient quantum algorithm if G is Abelian ..................... 41 6.2.1 Representation theory and the quantum Fourier transform ........... 41 6.2.2 A general algorithm for Abelian HSP ....................... 42 6.3 General non-Abelian HSP ................................. 43 6.3.1 The symmetric group and the graph isomorphism problem .......... 43 6.3.2 Non-Abelian QFT on coset states ......................... 44 6.3.3 Query-efficient algorithm ............................. 45 7 Grover’s Search Algorithm 47 7.1 The problem ........................................ 47 7.2 Grover’s algorithm ..................................... 47 7.3 Amplitude amplification .................................. 50 7.4 Application: satisfiability ................................. 51 8 Quantum Walk Algorithms 55 8.1 Classical random walks ................................... 55 8.2 Quantum walks ....................................... 56 8.3 Applications ......................................... 58 8.3.1 Grover search .................................... 59 8.3.2 Collision problem .................................. 59 8.3.3 Finding a triangle in a graph ........................... 60 9 Quantum Query Lower Bounds 63 9.1 Introduction ......................................... 63 9.2 The polynomial method .................................. 64 9.3 The quantum adversary method ............................. 66 10 Quantum Complexity Theory 71 10.1 Most functions need exponentially many gates ...................... 71 10.2 Classical and quantum complexity classes ........................ 72 10.3 Classically simulating quantum computers in polynomial space ............ 73 11 Quantum Encodings, with a Non-Quantum Application 77 11.1 Mixed states and general measurements ......................... 77 11.2 Quantum encodings and their limits ........................... 78 11.3 Lower bounds on locally decodable codes ........................ 80 iv 12 Quantum Communication Complexity 83 12.1 Classical communication complexity ........................... 83 12.2 The quantum question ................................... 84 12.3 Example 1: Distributed Deutsch-Jozsa .......................... 85 12.4 Example 2: The Intersection problem .......................... 86 12.5 Example 3: The vector-in-subspace problem ....................... 87 12.6 Example 4: Quantum fingerprinting ........................... 87 13 Entanglement and Non-locality 93 13.1 Quantum non-locality ................................... 93 13.2 CHSH: Clauser-Horne-Shimony-Holt ........................... 95 13.3 Magic square game ..................................... 96 13.4 A non-local version of distributed Deutsch-Jozsa .................... 97 14 Quantum Cryptography 101 14.1 Quantum key distribution .................................101 14.2 Reduced density matrices and the Schmidt decomposition ...............103 14.3 The impossibility of perfect bit commitment .......................104 14.4 More quantum cryptography ...............................105 15 Error-Correction and Fault-Tolerance 109 15.1 Introduction .........................................109 15.2 Classical error-correction ..................................109 15.3 Quantum errors .......................................110 15.4 Quantum error-correcting codes ..............................111 15.5 Fault-tolerant quantum computation ...........................113 15.6 Concatenated codes and the threshold theorem .....................114 A Some Useful Linear Algebra 117 A.1 Some terminology and notation ..............................117 A.2 Unitary matrices ......................................118 A.3 Diagonalization and singular values ............................118 A.4 Trace .............................................119 A.5 Tensor products .......................................120 A.6 Rank .............................................120 A.7 Dirac notation