Qiskit Bosons
qiskit-bosons は、ボソン系を扱うためのツールで Qiskit SDK を拡張します。その対象範囲において、次の機能を提供します。
-
ボソン演算子の表現と操作のための効率的なデータ構造
-
共有されるレベルエンコーディング(射影演算子ありまたはなしのユナリ、標準バイナリ、グレイ)を中心に構築された、ボソンから量子ビットへのエンコーディングを実装するためのフレームワークと、一般的なマッパーのライブラリ
-
ボソン回路を表現するためのフレームワークとゲートのライブラリ
-
Qiskit トランスパイラープロセスと統合され、ボソン回路を量子ビットベースの回路に合成するトランスパイレーションパイプライン
はじめに
このパッケージは、ボソン演算子から量子ビット回路までの全過程をカバーします。Qiskit のマルチ表現トランスパイラーパイプラインに組み込む打ち切りとボソンから量子ビットへのエンコーディングを選択する前に、演算子表現と回路表現の両方でボソンの領域で作業できます。
これらの機能はすべて、複数のガイドで説明されており、ご利用の開始に役立ちます。エンドツーエンドの概要については、ボース・ハバードのガイドから始めてください。
技術的な解説
設計意図
このパッケージは、意図的に Qiskit と整合するように設計されています。Rust で実装されたコアの上に構築され、Python 向けのファーストパーティ言語バインディングを提供します。その API は、Qiskit のプログラミング経験があるユーザーのワークフローにシームレスに統合できるよう、Qiskit と類似するように意図されています。現時点では C API は存在しませんが、将来必要になった場合に備えて、アーキテクチャはそれをサポートできるように設計されています。また、このパッケージのアーキテクチャは、qiskit-fermions のものと意図的に類似させています。
qiskit-bosons の設計における中核的な原則は、ボソン回路表現とその量子ビット化された形式を切り離すことでした。より正確に言うと、ボソン回路はそれ自体で意味を持ち、解釈するために量子ビット空間へのマッピングを必要としません。さらに、ボソン回路表現は、後で適用される打ち切りやボソンから量子ビットへのエンコーディングについて、いかなる仮定も置くことができません。どちらもトランスパイル時にのみ入力されます。
非推奨ポリシー
私たちはセマンティックバージョニングに従い、Qiskit の非推奨ポリシーの原則に基づいています。ユーザーエクスペリエンスを向上させるために、破壊的変更を行うことがあります。可能な場合は、新しいインターフェースと共存できる限り、古いインターフェースを維持し、非推奨としてマークします。実質的な改善、破壊的変更、非推奨は、それぞれリリースノートに記載されます。
コントリビューション
ソースコードは GitHub で入手できます。
開発者ガイドは、このプロジェクトのリポジトリのルートにある CONTRIBUTING.md にあります。参加する際は、Qiskit の行動規範を守っていただくことになります。
リクエストやバグの追跡には、GitHub issues を使用しています。
このパッケージを引用する
研究でこのパッケージを使用する場合は、このプロジェクトのリポジトリにある CITATION.bib ファイルを使用して、適切な文献を引用してください。