Table of Contents
Fetching ...

Bug-locating Method based on Statistical Testing for Quantum Programs

Naoto Sato, Ryota Katsube

TL;DR

Experimental results indicating that the proposed bug-locating method can reduce bug-locating cost, represented as the number of executed quantum gates, compared with naive methods that do not use the four approaches are presented.

Abstract

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.

Bug-locating Method based on Statistical Testing for Quantum Programs

TL;DR

Experimental results indicating that the proposed bug-locating method can reduce bug-locating cost, represented as the number of executed quantum gates, compared with naive methods that do not use the four approaches are presented.

Abstract

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.
Paper Structure (30 sections, 3 equations, 4 figures, 12 tables, 2 algorithms)

This paper contains 30 sections, 3 equations, 4 figures, 12 tables, 2 algorithms.

Figures (4)

  • Figure 1: Quantum circuit to create Bell state
  • Figure 2: Example of quantum program divided into segments
  • Figure 3: Categorical distribution representing expected output state of $s_1$
  • Figure 4: Example of cost-based binary search tree