Quantum computers are able to effectively solve certain types of problems being intractable by classical computers, including tasks from linear optimization, machine learning and simulation of natural phenomena. The counter-intuitive behavior of quantum algorithms makes it particularly important to develop practical techniques and tools to support the analysis and quality assurance of quantum programs. For classical programs, software testing is today one of the most effective and easy-to-use quality-assurance techniques. However, many postulates of quantum physics like superposition, entanglement and non-cloneability of qubit states as well as the probabilistic outcome and destructive effects of qubit measurements obstruct any straight-forward adaptation of classical testing techniques to quantum programs. Recent works either treat quantum programs as black-box components with classical interfaces to apply end-to-end testing or shift the focus of quality assurance to formal verification of quantum programs. In this paper, we instead propose a model-based framework for testing quantum computations at the level of execution traces. Our approach is independent of the quantum programming language and hardware used and utilizes probabilistic transition systems as abstract test model for both the specification and implementation to be tested. In our model, we carefully distinguish between controllable and observable as well as between nondeterministic and probabilistic test steps. Our framework makes quantum program testing a partly reactive process that can be complemented by statistical approaches for identifying erroneous qubit states by repeated measurements.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Model-Based Testing of Quantum Computations

  • Malte Lochau,
  • Ina Schaefer

摘要

Quantum computers are able to effectively solve certain types of problems being intractable by classical computers, including tasks from linear optimization, machine learning and simulation of natural phenomena. The counter-intuitive behavior of quantum algorithms makes it particularly important to develop practical techniques and tools to support the analysis and quality assurance of quantum programs. For classical programs, software testing is today one of the most effective and easy-to-use quality-assurance techniques. However, many postulates of quantum physics like superposition, entanglement and non-cloneability of qubit states as well as the probabilistic outcome and destructive effects of qubit measurements obstruct any straight-forward adaptation of classical testing techniques to quantum programs. Recent works either treat quantum programs as black-box components with classical interfaces to apply end-to-end testing or shift the focus of quality assurance to formal verification of quantum programs. In this paper, we instead propose a model-based framework for testing quantum computations at the level of execution traces. Our approach is independent of the quantum programming language and hardware used and utilizes probabilistic transition systems as abstract test model for both the specification and implementation to be tested. In our model, we carefully distinguish between controllable and observable as well as between nondeterministic and probabilistic test steps. Our framework makes quantum program testing a partly reactive process that can be complemented by statistical approaches for identifying erroneous qubit states by repeated measurements.