Hu, T., Ye, G., Tang, Z. et al. (4 more authors) (2024) UPBEAT: Test Input Checks of Q# Quantum Libraries. In: ISSTA 2024: Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis. 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis, 16-20 Sep 2024, Vienna, Austria. ACM , New York, NY , pp. 186-198. ISBN 979-8-4007-0612-7
Abstract
High-level programming models like Q# significantly simplify the complexity of programming for quantum computing. These models are supported by a set of foundation libraries for code development. However, errors can occur in the library implementation, and one common root cause is the lack of or incomplete checks on properties like values, length, and quantum states of inputs passed to user-facing subroutines. This paper presents Upbeat, a fuzzing tool to generate random test cases for bugs related to input checking in Q# libraries. Upbeat develops an automated process to extract constraints from the API documentation and the developer implemented input-checking statements. It leverages open-source Q# code samples to synthesize test programs. It frames the test case generation as a constraint satisfaction problem for classical computing and a quantum state model for quantum computing to produce carefully generated subroutine inputs to test if the input-checking mechanism is appropriately implemented. Under 100 hours of automated test runs, Upbeat has successfully identified 16 bugs in API implementations and 4 documentation errors. Of these, 14 have been confirmed, and 12 have been fixed by the library developers.
Metadata
Item Type: | Proceedings Paper |
---|---|
Authors/Creators: |
|
Copyright, Publisher and Additional Information: | This item is protected by copyright. This is an author produced version of a conference paper accepted for publication in Proceedings of ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA) 2024, made available under the terms of the Creative Commons Attribution License (CC-BY), which permits unrestricted use, distribution and reproduction in any medium, provided the original work is properly cited. |
Keywords: | Quantum computing, Fuzzing, Software testing |
Dates: |
|
Institution: | The University of Leeds |
Academic Units: | The University of Leeds > Faculty of Engineering & Physical Sciences (Leeds) > School of Computing (Leeds) > Distributed Systems & Services |
Depositing User: | Symplectic Publications |
Date Deposited: | 08 Apr 2024 10:04 |
Last Modified: | 01 Oct 2024 08:10 |
Published Version: | https://dl.acm.org/doi/10.1145/3650212.3652120 |
Status: | Published |
Publisher: | ACM |
Identification Number: | 10.1145/3650212.3652120 |
Related URLs: | |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:211224 |