Skip to main content
IBM Quantum Platform

トランスパイラ・パス・プラグイン

この F2QSynthesis トランスパイラ・パスは、プラグイン・インターフェース(参照 F2QSynthesisPlugin)を提供しており、これを通じて、フェルミオンベースの命令を量子ビットベースの命令にマッピングする実装を登録することができます。

利用可能なプラグインは、によって管理されています F2QSynthesisPluginManager。 合成プラグインの適切な組み合わせを選ぶことは極めて重要ですが、トランスパイラ F2QSynthesis 処理ではデフォルトのプラグインが一切定義されていません! これについては、トランスパイラーを参照してください presets。

コラム「 1 」
コラム「 2 」
F2QSynthesisPlugin(*args, **kwargs)F2QSynthesis トランスパイラ・パスへのプラグインに関するプロトコル。
F2QSynthesisPluginManager()インストール済みのフェルミオンからクビットへの合成プラグインを管理するシンプルなツールです。

実行時に使用するプラグインは、 属性 F2QSynthesis.methods に登録する必要があります。 これは、から使用するプラグインを指定 F2QSynthesis する の引数 config を通じて簡単に実行できるほか F2QSynthesisPluginManager 、 に直接 F2QSynthesis.methods 記述することで手動で行うこともできます。

以下の表は、組み込みの合成プラグインを、それらが作用する対象 FermionicGate ごとに分類してまとめたものです:

コラム「 1 」
コラム「 2 」
GivensDecompositionOrbitalRotationSynthesis()Givens回転 OrbitalRotation へのトランスパイルを行う F2QSynthesisPlugin ためのA。
GivensDecompositionSlaterDeterminantSynthesis(*)A:トランスパイル用 F2QSynthesisPluginPrepareSlaterDeterminant 。
MapperFnEvolutionSynthesis(mapper_fn[,...] )カスタムマッピング Evolution によるトランスパイルを行う F2QSynthesisPlugin ための A。
TrivialOccupationInitializeModesSynthesis()A:占有率がごくわずかなトランス InitializeModes パイル用 F2QSynthesisPlugin 。

その他のヘルパー関数

マッパー関数が生成するパウリ項の順序は、合成の過程を通じて維持されます。これは、積の式が項を受け取った順序通りに合成するためです。 これらのアダプタは、その順序を選択するためのマッパー関数をラップしています:

コラム「 1 」
コラム「 2 」
group_wise(mapper_fn)マッパー関数をラップし、演算子を1グループずつマッピングするようにします。
simplify(mapper_fn)マッパー関数をラップし、その関数が返す演算子を簡略化するようにします。
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。