qiskit_noise_learning.sequences.InstructionSequence
class qiskit_noise_learning.sequences.InstructionSequence(start_fragment: Iterable[T], repeatable_fragment: Iterable[T], end_fragment: Iterable[T], fragment_depth: int | None = None)
ベース: BaseSequence[Instruction]
一連の命令。
パラメーター
- start_fragment – シーケンスの開始位置。
- repeatable_fragment – シーケンスの繰り返し可能な中間部分。
- end_fragment – シーケンスの終わり。
- fragment_depth – 繰り返し可能なフラグメントの繰り返し回数。
__init__
__init__(start_fragment: Iterable[T], repeatable_fragment: Iterable[T], end_fragment: Iterable[T], fragment_depth: int | None = None)
方法
コラム「 1 」 | コラム「 2 」 |
|---|---|
__init__(start_fragment,...[, fragment_depth]) | |
bind_at(fragment_depth) | フラグメント深度にバインドされた同じフラグメントを持つ新しいインスタンスを返します。 |
complete() | すべての命令の実行が完了している点を self 除き、データが と同じである新しいインスタンスを返します。 |
is_mergeable_with(その他) | この命令シーケンスが、別の命令シーケンスとマージ可能かどうかを確認してください。 |
merge(その他) | この命令シーケンスを、別の命令シーケンスと結合してください。 |
unbind() | 同じフラグメントを持つが、フラグメントの深さが に設定された新しいインスタンスを返します None。 |
属性
コラム「 1 」 | コラム「 2 」 |
|---|---|
end_fragment | 最後の断片。 |
fragment_depth | 繰り返し可能なフラグメントの繰り返し回数。 |
gate_key | この命令シーケンスに含まれるゲート適用に関する、ハッシュ可能な要約。 |
is_complete | 含まれるすべての命令が完全に指定されているかどうか。 |
is_unbound | そのシーケンスがバインドされていないかどうか。 |
repeatable_fragment | 反復される断片。 |
start_fragment | 冒頭の断片。 |
structure_key | このシーケンスの命令構造に関する、ハッシュ可能な要約。 |
is_complete
種類: bool
含まれるすべての命令が完全に指定されているかどうか。
complete
complete() → Self
すべての命令の実行が完了している点を self 除き、データが と同じである新しいインスタンスを返します。
戻り値
新しい InstructionSequence インスタンス。
gate_key
種類: Hashable
この命令シーケンスに含まれるゲート適用に関する、ハッシュ可能な要約。
2つの命令シーケンスのゲートキーが等しいのは、それらのフラグメント深度が同じであり、かつそれぞれのフラグメントが同じゲートを同じ順序で適用している場合に限り、それ以外の点では異なっていてもよい。ゲートの適用ではない命令はすべて無視される。 値自体は不透明であり、等価性とハッシュ可能性のみが保証されています。
structure_key
種類: Hashable
このシーケンスの命令構造に関する、ハッシュ可能な要約。
このキーには、以下の保証が付いています:
- 2つの命令シーケンスのキーが異なる場合、それらをマージすることはできません。
- 2つの命令シーケンスが同じキーを持つ場合、それらのフラグメント深度は同じであり、それぞれのフラグメントには、同じ量子ビット上で同じ順序の命令タイプが含まれています。
昇給
TypeError – この命令シーケンスに、命令ではないオブジェクトが含まれている場合。
is_mergeable_with
is_mergeable_with(other: Self) → bool
この命令シーケンスが、別の命令シーケンスとマージ可能かどうかを確認してください。
2つの命令シーケンスは、フラグメント深度が互換性があり、かつそれらのフラグメントが要素単位でマージ可能である場合に、マージ可能です。
パラメーター
その他 – その他 InstructionSequence。
戻り値
このインスタンスが別のインスタンスとマージ可能かどうか。
merge
merge(other: Self) → Self
この命令シーケンスを、別の命令シーケンスと結合してください。
このインスタンスが とマージ可能であると仮定すると other、返されるマージ後のシーケンスは、対応する各フラグメントを要素単位でマージすることによって構築されます。
パラメーター
その他 – これをマージする対象となる命令シーケンス。
戻り値
自己と他者の融合した連続体。
昇給
ValueError – シーケンスがマージできない場合。