Quantum Program Testing Through Commuting Pauli Strings on IBM's Quantum Computers
<|reference_start|>Quantum Program Testing Through Commuting Pauli Strings on IBM's Quantum Computers: The most promising applications of quantum computing are centered around solving search and optimization tasks, particularly in fields such as physics simulations, quantum chemistry, and finance. However, the current quantum software testing methods face practical limitations when applied in industrial contexts: (i) they do not apply to quantum programs most relevant to the industry, (ii) they require a full program specification, which is usually not available for these programs, and (iii) they are incompatible with error mitigation methods currently adopted by main industry actors like IBM. To address these challenges, we present QOPS, a novel quantum software testing approach. QOPS introduces a new definition of test cases based on Pauli strings to improve compatibility with different quantum programs. QOPS also introduces a new test oracle that can be directly integrated with industrial APIs such as IBM's Estimator API and can utilize error mitigation methods for testing on real noisy quantum computers. We also leverage the commuting property of Pauli strings to relax the requirement of having complete program specifications, making QOPS practical for testing complex quantum programs in industrial settings. We empirically evaluate QOPS on 194,982 real quantum programs, demonstrating effective performance in test assessment compared to the state-of-the-art with a perfect F1-score, precision, and recall. Furthermore, we validate the industrial applicability of QOPS by assessing its performance on IBM's three real quantum computers, incorporating both industrial and open-source error mitigation methods.<|reference_end|>
@article{muqeet2024quantum,
    title={Quantum Program Testing Through Commuting Pauli Strings on IBM's Quantum
  Computers},
    author={Asmar Muqeet, Shaukat Ali, Paolo Arcaini},
    journal={arXiv preprint arXiv:2408.00501},
    year={2024},
    archivePrefix={arXiv},
    eprint={2408.00501},
    primaryClass={cs.SE}
}