Bugs in Quantum Computing Platforms and How to Detect them Automatically

16/09/2022

Speaker

Michael Pradel

Abstract

The interest in quantum computing is growing, and with it, the importance of software platforms to develop quantum programs. Ensuring the correctness of such platforms is important, and it requires a thorough understanding of the bugs they typically suffer from, as well as ways to automatically detect these bugs. This talk presents two contributions. First, we present an empirical study of 223 real-world bugs from 18 open-source quantum computing platforms. Our study shows that a significant fraction of these bugs (39.9%) are quantum-specific, and we present a hierarchy of recurrent bug patterns. Second and motivated by the study, we present MorphQ, which is the first metamorphic testing approach for quantum computing platforms. The approach is enabled by a novel program generator that creates a large and diverse set of valid (i.e., non-crashing) quantum programs, along with a set of program transformations that exploit quantum-specific metamorphic relationships to alleviate the oracle problem. Evaluating MorphQ by testing the popular Qiskit platform reveals 13 bugs, nine of which have already been confirmed. Overall, our work helps tool builders to create a reliable software stack for this increasingly important field.More information: Upcoming OOPSLA'22 paper (Arxiv)

Bio

Michael Pradel is a full professor at the University of Stuttgart, which he joined after a PhD at ETH Zurich, a post-doc at UC Berkeley, an assistant professorship at TU Darmstadt, and a sabbatical at Facebook. His research interests span software engineering, programming languages, security, and machine learning, with a focus on tools and techniques for building reliable, efficient, and secure software. In particular, he is interested in dynamic program analysis, test generation, concurrency, performance profiling, JavaScript-based web applications, and machine learning-based program analysis. Michael has been awarded the Software Engineering Award of the Ernst-Denert-Foundation for his dissertation, the Emmy Noether grant by the German Research Foundation (DFG), and an ERC Starting Grant.