
Research Collection Doctoral Thesis Development of Quantum Applications Author(s): Heim, Bettina Publication Date: 2020 Permanent Link: https://doi.org/10.3929/ethz-b-000468201 Rights / License: In Copyright - Non-Commercial Use Permitted This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use. ETH Library diss. eth no. 27053 DEVELOPMENTOFQUANTUMAPPLICATIONS A thesis submitted to attain the degree of doctor of sciences of eth zurich (Dr. Sc. ETH Zurich) presented by bettina heim M. Sc. ETH Zurich born on 2 July 1989 citizen of Switzerland accepted on the recommendation of Prof. Dr. M. Troyer, examiner Prof. Dr. R. Renner, co-examiner Prof. Dr. H. Katzgraber, co-examiner 2020 To my husband and family. ABSTRACT The aim of this thesis is to identify practical applications where quantum computing could have an advantage over what is achievable with conventional means of computing, and what advances are needed in order to actualize that potential. We investigate the possibilities on both quantum annealing devices (analogue quantum computers) as well as on gate-based devices (digital quantum computers). Quantum annealing devices in particular have grown in size and capabilities over the last decade. While they are natural candidates for providing improved solvers for NP-complete optimization problems, the number of qubits, accuracies and available couplings are still limited and their aptitude has yet to be confirmed. We use Monte Carlo methods and conceive an adaptive annealing schedule to assess the options to leverage them for the construction of satisfiability filters. We furthermore investigate their prospective as heuristic solvers for the traveling salesman problem, and what future enhancements in terms of geometries and couplings would be beneficial for that. Based on our simulations there is no reason to expect any benefits to leveraging analogue quantum computers over state-of-the-art classical methods. However, we see an implementation of annealing schemes on future digital devices as a promising approach that doesn’t suffer from the same issues that impede performance on analogue devises. To that effect, we construct and implement an efficient quantization of the Metropolis-Hastings algorithm. Opposed to following the common way of quantization à la Szegedy that is usually defined with respect to an oracle, we reformulate the walk to closely mimic the classical algorithm and thus circumvent having to rely on costly quantum arithmetics. Our proposed realization thereby can lead to substantial savings. While theoretical arguments promise a quadratic speedup in the asymptotic limit, we numerically confirm that a polynomial speedup in terms of minimal total time to solution can be achieved for pragmatic use. We explore the prospects of using quantum walks in a heuristic setting and estimate the gate times the would be required to outperform a classical supercomputer. Finally, we elaborate on the role of programming languages, and how software tools can accelerate the advancement of the field. We discuss unique aspects of quantum programming and the purpose of Q# in particular, and conclude by highlighting what developments are needed for quantum computing to live up to its potential. iii ZUSAMMENFASSUNG Das Ziel dieser Dissertation ist es praktische Anwendungen zu identifizieren, bei denen Quantencomputer einen Vorteil gegenüber herkömmlichen Methoden erbrin- gen, sowie welche Fortschritte nötig sind, um dieses Potential umzusetzen. Wir untersuchen die Möglichkeiten dafür im Bezug auf analoge Quantencomputer sowie digitale. Insbesondere analoge Hardware ist im Laufe des letzten Jahrzehnts grösser und fähiger geworden und ist ein naheliegender Kandidat zur Lösung von NP-kompletten Problemen. Jedoch sind die Anzahl von Qubits, deren Genauigkeit und die verfügbaren Kopplungen limitiert, sodass ihre Eignung erst noch bestä- tigt werden muss. Wir verwenden Monte Carlo Methoden und entwickeln einen adaptiven Prozess um ihre Nützlichkeit für die Konstruktion von SAT-Filtern abzuschätzen. Ebenso evaluieren wir ob sie als besonders gute heuristische Löser für das Rundreiseproblem fungieren können, und welche zukünftigen Entwicklun- gen bezüglich Geometrie und Kopplungen der Machinen dafür vorteilhaft sind. Basierend auf unseren Simulationen schliessen wir, dass es keinen Grund gibt anzunehmen, dass solche anologe Hardware klassischen Methoden überlegen sind. Eine Implementierung dieses Prozesses auf digitaler Hardware hingegen könnte vielversprechend sein. Wir entwickeln daher eine effiziente Quantisierung des Metropolis-Hastings Algorithmus die mittels digitalen Quantencomputern einge- setzt werden kann. Im Gegensatz zu einer Quantisierung gemäss Szegedy, welche im Üblichen ein Orakel benutzt, erreichen wir es mit unserer Formulierung kostspie- lige Quanten Arithmetik zu vermeiden. Die präsentierte Umsetzung erweist sich damit als wesentlich kostensparender. Theoretische Argumente basierend auf dem asymptotischen Limit versprechen, dass ein quadratischer Geschwindigkeitsvorteil mittels Quantisierung erreicht werden kann. Wir bestätigen mit einer numerischen Studie eine polinomiale Überlegenheit für die heuristische Anwendung und geben die nötigen Geschwindigkeiten für die Ausführung von Instruktionen an, um einen klassischen Supercomputer zu übertreffen. Letztendlich diskutieren wir die Rolle von Programmiersprachen und wie geeignete Software die Ausarbeitung von Quantenapplikationen beschleunigen kann. Wir erklären die einzigartigen Aspekte beim Programmieren von Quantencomputern und den Zweck der Sprache Q#. Abschliessend heben wir die Entwicklungen hervor, die stattfinden müssen damit Quantencomputing seinem Potential gerecht wird. iv ACKNOWLEDGEMENTS I would like to thank my husband Stefan Baumann, without whose support this work would not have been possible. I would like to thank my parents whose unwavering faith in me has always pushed me to be a better person. I would like to thank Matthias Troyer who not only has been a fantastic mentor but is also a true inspiration. Furthermore, I would like to thank the collaborators that contributed to the work discussed in this thesis. First and foremost, I would like to thank the co-authors of the papers that served as the basis for this thesis (in alphabetical order): Alan Geller, Andres Paz, Christopher Granade, Daniel Herr, Dave Wecker, David Poulin, Ethan Brown, Guglielmo Mazzola, Jessica Lemieux, John Azariah, Krysta Svore, Mariia Mykhailova, Mario Könz, Marlon Azinovi, Martin Roetteler, Mathias Soeken, Matthias Troyer, Sarah Marshall, and Vadym Kliuchnikov. Thanks go to Ilia Zintchenko for providing the translation of a k-SAT prob- lem to an Ising spin glass problem, and to Alex Kosenkov, Ilia Zintchenko, and Ethan Brown for providing and supporting the whiplash framework for easier management of measurement data. I thank Andreas Elsener, Donjan Rodic, Guang Hao Low, Guiseppe Carleo, Guillaume Duclos-Cianci, Jeongwan Haah, José Luis Hablützel Aceijas, Matt Hastings, and Thomas Häner for stimulating discussions. I thank Ali Javadi-Abhari, Julien Ross, Margaret Martonosi, and Peter Selinger for sharing their insights and input on quantum programming languages. Last but not least, I would like to express my gratitude the work of the people who set up and maintain the spinglass server [1] that was used for the calculation of ground state energies. v CONTENTS List of Figures ix List of Tablesx List of Programs xi 1 introduction1 1.1 Quantum states and qubits . 2 1.2 Analogue quantum computing . 4 1.3 Digital quantum computing . 5 2 traveling salesman problem 10 2.1 Mapping the TSP to an annealing problem . 11 2.1.1 Transition probabilities in quantum annealing . 11 2.1.2 Encoding as permutation matrix . 12 2.1.3 An improved encoding . 15 2.2 Numerical results . 17 2.3 Digital quantum annealing . 20 3 sat filters 22 3.1 Set membership problem and filter construction . 23 3.2 Quality metrics for filters . 25 3.2.1 False positive rate . 25 3.2.2 Filter efficiency . 26 3.3 Obtaining independent solutions . 26 3.3.1 Using annealing . 27 3.3.2 Using SAT-solvers . 30 3.4 Numerical results . 30 3.4.1 Diversity of solutions . 31 3.4.2 Quality of solutions . 32 3.4.3 Scaling with problem size . 37 3.5 Possible improvements . 38 4 annealing schedules 39 4.1 Adaptive schedule . 39 4.2 Calculation of observables . 42 vi contents vii 4.3 Numerical results . 43 5 quantum walks 47 5.1 Szegedy’s quantum walk . 48 5.1.1 Eigenvectors and eigenvalues . 49 5.1.2 Adiabatic state preparation . 50 5.2 Quantization for Metropolis-Hastings algorithm . 51 5.2.1 Construction of Szegedy’s walk oracle . 53 5.2.2 Alternative walk . 54 5.3 Optimization heuristics . 59 5.3.1 Algorithm based on the quantum Zeno effect . 60 5.3.2 Algorithm based on a unitary walk . 61 5.4 Numerical results . 62 5.5 Irreversible parallel walk . 65 6 quantum programming 69 6.1 Domain-specific concepts . 70 6.2 Quantum algorithms . 72 6.3 Quantum model of computation . 74 6.4 Quantum software frameworks today . 76 6.4.1 Use cases . 78 6.4.2 Tools . 79 6.4.3 Ecosystems . 81 7 quantum programming languages 84 7.1 Purpose of programming languages . 84 7.2 Languages and ecosystems overview . 86 7.2.1 Q# .............................. 88 7.2.2 OpenQASM and Qiskit . 92 7.2.3 Cirq.............................. 98 7.2.4 Quipper . 102 7.2.5 Scaffold . 105 8 domain-specific language q# 108 8.1 Design principles . 108 8.2 Program structure and execution . 109 8.3 Global constructs . 113 8.3.1 Type declarations . 113 8.3.2 Callable declarations . 114 8.3.3 Specialization declarations . 116 viii contents 8.4 Statements . 121 8.4.1 Quantum memory management . 123 8.4.2 Variable declarations and updates . 124 8.4.3 Returns and termination . 126 8.4.4 Conditional branching . 127 8.4.5 Loops and iterations . 129 8.4.6 Call statements . 130 8.4.7 Other quantum-specific patterns . 132 8.5 Expressions . 134 8.5.1 Operators, modifiers, and combinators . 134 8.5.2 Conditional expressions . 140 8.5.3 Partial applications . 144 8.5.4 Copy-and-update expressions . 145 8.5.5 Item access for user defined types .
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages203 Page
-
File Size-