Skip to main content
QUICK REVIEW

[論文レビュー] CertiQ: A Mostly-automated Verification of a Realistic Quantum Compiler

Yunong Shi, Runzhou Tao|arXiv (Cornell University)|Aug 23, 2019
Quantum Computing Algorithms and Architecture参考文献 30被引用数 10
ひとこと要約

CertiQ は、量子回路計算式を用いて回路同値性検査を SMT 問題に変換することで、Qiskit の実世界の量子コンパイラパスのほとんど自動化された検証フレームワークである。最小限の手動アノテーションで 30 個中 26 個の Qiskit コンパイラパスの形式的検証を可能にし、3 つのバグを発見し、性能を維持したまま正しさを保証する。

ABSTRACT

We present CertiQ, a verification framework for writing and verifying compiler passes of Qiskit, the most widely-used quantum compiler. To our knowledge, CertiQ is the first effort enabling the verification of real-world quantum compiler passes in a mostly-automated manner. Compiler passes written in the CertiQ interface with annotations can be used to generate verification conditions, as well as the executable code that can be integrated into Qiskit. CertiQ introduces the quantum circuit calculus to enable the efficient checking of equivalence of quantum circuits by encoding such a checking procedure into an SMT problem. CertiQ also provides a verified library of widely-used data structures, transformation functions for circuits, and conversion functions for different quantum data representations. This verified library not only enables modular verification but also sheds light on future quantum compiler design. We have re-implemented and verified 26 (out of 30) Qiskit compiler passes in CertiQ, during which three bugs are detected in the Qiskit implementation. Our verified compiler pass implementations passed all of Qiskit's regression tests without showing noticeable performance loss.

研究の動機と目的

  • 近い将来の量子コンputing において、バグが何百万回もの実行で結果を損なう可能性があるため、信頼性の高い量子コンパイラ検証のニーズに対処する。
  • 既存の形式的検証ツールには、手作業で行う必要があり、複雑で、Qiskit のような急速に進化する量子コンパイラには不適切であるという限界を克服する。
  • 証明アシスタントの深い専門知識を必要とせず、スケーラブルで自動化された実世界の量子コンパイラ最適化の検証を可能にする。
  • 意味を保存するモジュラーな量子回路変換の検証済みライブラリを提供し、合成的検証を支援する。
  • パフォーマンスに影響を与えることなく、Qiskit に検証済みのコンパイラパスを直接統合し、レグレッションテスト全体で正しさを保証する。

提案手法

  • 量子回路計算式を導入し、量子回路の記号的表現と実行を可能にし、SMT エンコードを介した効率的な同値性検査を実現する。
  • 検証条件を、記号実行の結果と検証済み変換から抽出した書き換え規則を用いて SMT 公式にエンコードする。
  • 証明のモジュラー化と検証負荷の低減を可能にする、高水準で意味を保存する量子回路変換の検証済みライブラリを採用する。
  • ループ不変条件と外部関数の契約のみにアノテーションを適用し、手動指定の負荷を最小限に抑えることで、「ほとんど自動化された」検証を実現する。
  • 最先端の SMT ソルバー(例:Z3)を活用し、行列表現を完全に使用しないことで、指数的オーバーヘッドを回避し、回路同値性の検査を効率的かつ実用的にする。
  • 同じ CertiQ 検証済みソースコードから、実行可能で最適化された Qiskit パスと機械検証可能な証明を生成する。

実験結果

リサーチクエスチョン

  • RQ1実世界の量子コンパイラパスの形式的検証を、最小限の手動作業で達成できるか。これにより、実用的なスケーラビリティが実現可能か。
  • RQ2完全な意味論的解釈に依存せずに、SMT を用いた量子回路同値性検査を、コンパイラ検証において効率的かつ実用的に行えるか。
  • RQ3検証済みの量子回路変換ライブラリが、複雑なコンパイラパスのモジュラーかつ合成的検証を可能にするか。
  • RQ4Qiskit のような本番環境コンパイラに検証済みパスを統合する際、パフォーマンスの低下が生じないか。
  • RQ5形式的検証が、従来検出されなかった実際のバグを、既存の量子コンパイラ実装で発見できるか。

主な発見

  • CertiQ は、30 個中 26 個の Qiskit コンパイラパスを正常に検証し、実世界の量子コンパイラ検証の実現可能性を示した。
  • 検証プロセス中に、元の Qiskit 実装でこれまで発見されていなかった 3 つのバグが発見された。
  • 検証済みのすべてのコンパイラパスが、Qiskit の完全なレグレッションテストスイートに合格し、実際の動作の正しさが確認された。
  • 高水準な変換関数を用いたパスの検証は数秒で完了したが、低水準なルールベースのパスは 1 分未満で完了した。
  • 実行ベンチマークにおいて、検証済みパスは元の Qiskit 実装と比較して顕著なパフォーマンス低下を示さなかった。
  • このフレームワークにより、最小限のアノテーションでほとんど自動化された検証が可能となり、量子コンパイラ開発者の証明負荷が顕著に低減された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。