Bug-locating Method based on Statistical Testing for Quantum Programs
<|reference_start|>Bug-locating Method based on Statistical Testing for Quantum Programs: When a bug is detected by testing a quantum program on a quantum computer, we want to determine its location to fix it. To locate the bug, the quantum program is divided into several segments, and each segment is tested. However, to prepare a quantum state that is input to a segment, it is necessary to execute all the segments ahead of that segment in a quantum computer. This means that the cost of testing each segment depends on its location. We can also locate a buggy segment only if it is confirmed that there are no bugs in all segments ahead of that buggy segment. Since a quantum program is tested statistically on the basis of measurement results, there is a tradeoff between testing accuracy and cost. These characteristics are unique to quantum programs and complicate locating bugs. We propose an efficient bug-locating method consisting of four approaches, cost-based binary search, early determination, finalization, and looking back, which take these characteristics into account. We present experimental results that indicate that the proposed method can reduce the bug-locating cost, represented as the number of executed quantum gates, compared to naive methods that do not use the four approaches. The limitation and usefulness of the proposed method are also discussed from the experimental results.<|reference_end|>
@article{sato2024bug-locating,
    title={Bug-locating Method based on Statistical Testing for Quantum Programs},
    author={Naoto Sato and Ryota Katsube},
    journal={arXiv preprint arXiv:2409.20011},
    year={2024},
    archivePrefix={arXiv},
    eprint={2409.20011},
    primaryClass={cs.SE quant-ph}
}