Matrix Product Operator Simulations of Quantum Algorithms
Total Page:16
File Type:pdf, Size:1020Kb
Matrix Product Operator Simulations of Quantum Algorithms Kieran Woolfe Submitted in total fulfillment of the requirements of the degree of Master of Philosophy School of Physics The University of Melbourne February, 2015 Abstract We develop simulation methods for matrix product operators, and per- form simulations of the Quantum Fourier Transform, Shor's algorithm and Grover's algorithm using matrix product states and matrix product opera- tors. By doing so, we provide numerical evidence that a constant number of QFTs can be efficiently classically simulated on any state whose Schmidt rank grows only polynomially with the number of qubits, and quantify the amount of entanglement present in Shor's algorithm. The efficiency of the matrix product state and operator representation allows us to perform mod- erately large simulations of both Shor's algorithm with Z errors and Grover's algorithm with up to 15 X, Y and Z errors. While larger simulations have been performed, our results have been computed with little computational power and provide new methods to perform large-scale quantum algorithm simulations. i Declaration This is to certify that: i the thesis comprises only my original work towards the MPhil except where indicated in the Preface, ii due acknowledgement has been made in the text to all other material used, iii the thesis is less than 50 000 words in length, exclusive of tables, maps, bibliographies and appendices. Kieran Woolfe February, 2015 ii Preface This thesis is comprised entirely of original work undertaken during this Masters of Philosophy under the supervision of Dr Charles Hill and Professor Lloyd Hollenberg, except for the reviews of earlier work and the literature as noted in the text. In particular, chapters 2 and 3 are reviews of existing theory relevant to the thesis and sections 4.1, 5.1 and 6.1 are reviews of the previous work relevant to the topics of chapters 4, 5 and 6 respectively. The majority of the content of chapter 4 is the same as that of a paper prepared for publication during the Masters program [1], which was authored with the guidance of Dr Hill and Professor Hollenberg. All simulations discussed in this thesis were performed with original computer codes developed for this project, using the LAPACK and NumPy libraries. iii Acknowledgements I extend my thanks to everyone who has assisted me and made this research possible. Firstly and most importantly to my supervisors Dr Charles Hill and Professor Lloyd Hollenberg for their extensive assistance throughout the duration of my research and the preparation of this document. I acknowledge the assistance of the Australian Government for the grant of an Australian Postgraduate Award which made my research possible. My thanks also to the everyone from the Australian Research Council Center of Excellence for Quantum Computation and Communication Technology for providing me with an intellectual home in which to learn about quantum computing and to collaborate. Particular thanks to Ms Patricia Gigliuto for making everything administrative very simple for me. I extend my gratitude to the School of Physics at the University of Melbourne for admitting me to their graduate program and to the libraries and staff of the university for facilitating my research. Finally, my thanks to my fellow graduate students and to my office- mates, who were instrumental in both delaying and hastening the completion of this document. iv Contents Abstract i Declaration ii Preface iii Acknowledgements iv 1 Introduction 2 2 Quantum Computing 7 2.1 Quantum bits and gates . .7 2.2 Grover's Algorithm . 12 2.3 Shor's Algorithm . 15 2.4 Quantum Fourier Transform . 19 2.5 Entanglement . 21 2.6 Decoherence . 25 3 Matrix product states and operators 30 3.1 Matrix product states . 30 3.1.1 Freedom in the MPS representation . 33 3.1.2 Calculations with MPSs . 37 3.1.3 An analytic example . 43 3.2 Projected entangled pair states . 44 3.3 Matrix product operators . 45 3.3.1 Calculations with MPOs . 46 3.4 Quantum Circuit Simulation . 51 3.5 Entanglement in matrix product states . 53 3.5.1 Area Laws . 55 v Contents vi 4 Simulation of the quantum Fourier transform 57 4.1 Previous QFT simulation results . 57 4.2 Circuit and simulation methods . 59 4.3 Representation size scaling . 60 4.4 Truncation Errors . 63 4.5 Fragility of the scaling . 66 4.6 Reasons for the efficient representation . 68 4.7 Implications and complexity . 70 5 Simulation of Shor's algorithm 72 5.1 Previous Results . 72 5.1.1 MPS simulation . 73 5.1.2 Entanglement . 74 5.1.3 Shor's algorithm in the presence of noise . 75 5.2 Optimised MPS simulation . 76 5.2.1 Modular exponentiation . 76 5.2.2 QFT . 80 5.3 MPS Simulation with errors . 81 5.3.1 Z errors . 82 5.3.2 X errors . 85 5.4 Success probability with errors . 88 5.5 Entanglement in Shor's algorithm . 91 5.5.1 The decay of success probability with different r values 95 5.6 Discussion . 96 6 Simulation of Grover's Algorithm 98 6.1 Quantum circuit for Grover's algorithm . 99 6.2 Simulation with a MPO . 101 6.2.1 A MPO encoding inversion about the mean . 101 6.2.2 MPOs encoding arbitrary oracles . 102 6.2.3 The complexity of the oracle MPO . 103 6.2.4 Using two MPOs for simulation . 105 6.2.5 Simulation technique . 107 6.2.6 Simulation technique with errors . 109 6.3 Determining search solutions from MPOs . 110 6.3.1 Comparison to the work of Chamon and Mucciolo . 114 6.4 Noisy simulations of Grover's algorithm . 115 Contents 1 6.4.1 X errors . 117 6.4.2 Z errors . 123 6.4.3 Y errors . 127 6.4.4 Depolarising noise . 131 6.4.5 Physical error models . 133 6.5 Discussion . 136 7 Conclusion 139 Chapter 1 Introduction Quantum computing, the use of quantum devices to perform computations, may deliver exponentially faster results than classical computing for specific problems. Most famously, Shor's algorithm [2, 3] allows the products of primes to be factorised with an exponential speedup over the fastest known classical algorithm. However, a quantum computer would be subject to noise and may only be useful for selected problems which must be identified and solved with carefully designed algorithms. Research in the field of quantum algorithms offers ways to address these issues. In this thesis, we focus on two questions: what is the source of the computational speedup in quantum computing, and how will a quantum computer perform in the presence of noise. We address these problems with simulations of quantum algorithms. Quantum Computing The idea of quantum computing stems from the exponential growth of the size of the Hilbert space of a quantum system as the system size increases. The very large size of such a Hilbert space both makes simulating large scale quantum mechanical systems very difficult and opens the possibility that controllable systems could be employed as computers to simulate other inter- esting quantum systems, an idea was first suggested by Feynman [4]. More broadly, quantum computing exploits the computational resources of large Hilbert spaces to perform calculations. Some of the quantum algorithms that have been discovered are: Shor's algorithm [2, 3], by which products of large primes are factorised; Grover's algorithm [5, 6], by which an unordered database can be searched with a quadratic speedup over classical methods; 2 3 and quantum simulation [7, 8, 9, 10, 11] by which it is believed that all physically realistic Hamiltonians can be simulated in polynomial time and the ground and thermal states of Hamiltonians can be estimated [12]. Quan- tum walks [13, 14], a quantum analogy of classical random walks, have been used to create quantum algorithms for such problems as search algorithms [15, 16, 17], the triangle problem [18] and verification of matrix products [19]. Quantum algorithms have also been described to solve a variety of algebraic problems such as hidden subgroup problems [20, 21, 22, 23, 24], hidden shift problems [25, 26], and hidden nonlinear structure problems [27]. Finally, while in traditional quantum computation, computations are carried out by applying quantum operations to a system consisting of pure qubits (two level quantum systems), alternative models exist such as adiabatic quantum computing [28, 29, 30, 31], in which the solution to a relevant problem is encoded in the ground state of a Hamiltonian and the Hamiltonian of a system in a simple ground state is evolved slowly to the more complicated Hamiltonian; and the one clean qubit model of quantum computation [32] in which computations are carried out with all qubits except one in a mixed state. Several more complete surveys and reviews of quantum algorithms have been made [33, 34, 35, 36, 37]. The fact that quantum mechanical systems can perform some compu- tations exponentially faster than the fastest known classical systems invites the question of the origin of this computational speedup. The speedup must be caused by features of quantum mechanics that are inherently quan- tum mechanical and so are not reproducible in classical systems. Quantum entanglement is an natural candidate for such an effect, but it is still un- clear to what degree it is responsible for, or even necessary for, a speedup [38, 39, 40, 41, 42, 43, 44, 45, 46]. Some quantum processes have been found [47, 48, 49, 50] which exhibit some computational speedup over classical methods, but display fixed entanglement as the size of the quantum system increases. Besides entanglement, another measurement of quantum correla- tions is discord [51, 52], and there are suggestions that it may be required in order for a speedup to occur [53, 54, 55].