Skip to main content
IBM Quantum Platform

qiskit_noise_learning.circuit_generator.ExecutorCircuitGenerator

class qiskit_noise_learning.circuit_generator.ExecutorCircuitGenerator(gate_set: QiskitGateSet, creg_prefix: str = 'meas', local_clifford_ref_prefix: str = 'c', pass_manager: PassManager | None = None)

GitHub

基底: CircuitGenerator[QuantumProgram, QuantumProgramResult]

QiskitゲートのシーケンスをSamplex項目に変換する回路ジェネレータ。

パラメーター

  • gate_set – このジェネレータが生成を行う対象となるQiskitのゲートセット。
  • creg_prefix – 命令シーケンスの測定で使用されるすべてのcreg名に割り当てられるプレフィックス。 デフォルトは "meas". です。
  • local_clifford_ref_prefix – テンプレート回路内のすべてのローカル・クリフォードパラメータ参照に割り当てられるプレフィックス。 デフォルトは "c". です。
  • pass_manager – によって生成されるすべてのテンプレート回路に適用 PassManager するオプションです ExecutorCircuitGenerator.generate()。 パスマネージャーは、既存の回路の詳細(例えば、量子ビットの順序変更や測定名の変更など)を変更してはならない。

命令シーケンスの先頭にある純粋な準備ゲート(演算が含まれて prep_idxs いないゲート)は、テンプレート回路において明示的にボックスとして含まれません。 その代わりに、準備状態に関連する単一量子ビットゲート(例えば、基底回転)は、後続のボックスの「左ドレッシング」に組み込まれる。

__init__

__init__(gate_set: QiskitGateSet, creg_prefix: str = 'meas', local_clifford_ref_prefix: str = 'c', pass_manager: PassManager | None = None)


方法

コラム「 1 」
コラム「 2 」
__init__(gate_set[, creg_prefix, ...])
collect(結果)特定の実行フレームワークからのデータを、標準形式に変換する。
generate(実験)指定された実験から、新しい実験タスクを生成します。
generate_samplex_item(instruction_sequences,...)同じ構造を持つ命令シーケンスから、サンプレックス項目を生成します。
generate_samplex_items(...)命令シーケンスからサンプレックス項目を生成する。
partition(シーケンス)同一の生成出力を共有できる命令シーケンスの位置を分割する。

属性

コラム「 1 」
コラム「 2 」
gate_setこのジェネレータが構築するゲートセット。

gate_set

種類: QiskitGateSet

このジェネレータが構築するゲートセット。

collect

static collect(result)

特定の実行フレームワークからのデータを、標準形式に変換する。

generate

generate(experiment)

指定された実験から、新しい実験タスクを生成します。

generate_samplex_items

generate_samplex_items(instruction_sequences: list[InstructionSequence], num_randomizations: int) → tuple[list[SamplexItem], ExecutorDataMapper]

命令シーケンスからサンプレックス項目を生成する。

パラメーター

  • instruction_sequences – 回路を生成する対象となる命令シーケンス。
  • num_randomizations – シーケンスごとのランダム化の回数。

戻り値

samplex 項目のタプルとデータマッパー。

generate_samplex_item

generate_samplex_item(instruction_sequences: list[InstructionSequence], num_randomizations: int) → tuple[SamplexItem, list[str], dict[str, ndarray[int]]]

同じ構造を持つ命令シーケンスから、サンプレックス項目を生成します。

すべてのツイールされたボックスは左ドレッシングでなければならない。蓄積された値は、各ボックスの左ドレッシングの局所クリフォードとして放出される PartialPauliPermutation ため、右ドレッシングのツイールはサポートされず、例外が発生する。

パラメーター

  • instruction_sequences – 生成する類似の命令シーケンス。
  • num_randomizations – シーケンスごとのランダム化の回数。

戻り値

引数の順序が instruction_sequences、creg名の順序付きリストと、creg名を各古典ビットに測定された物理量子ビットのインデックスに、古典ビット順で対応付ける辞書に対応するsamplex項目。

昇給

  • ValueError – instruction_sequences が空の場合。
  • ValueError – 命令シーケンスのいずれかが不完全な場合。
  • ValueError – 命令シーケンスのいずれかの構造が異なる場合。
  • ValueError – ツイールされたボックスが左揃えでない場合。
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。