MidCircuitReset
class MidCircuitReset(name='reset_2', label=None)
ベース: Instruction
別の「名前付き」リセットの定義。
この命令は、別の「名前付き」リセット定義(1量子ビット)を実装するものであり、その名前を用いて、ハードウェア上の対応する回路内リセット命令の実装にマッピングすることができる。
パラメータ duration および は、Qiskit 1.3 以降で非推奨 unit となっており、 2.0 以降で削除される予定です。 命令の実行時間は、バックエンドのTargetオブジェクトで定義されます。
パラメーター
- name (str) – 命令名
- num_qubits (int) – 命令の量子ビット幅
- num_clbits (int) – 命令のCLBIT幅
- params (list[int|float|complex|str|ndarray|list|ParameterExpression]) – パラメータ一覧
- label (str or None) – その命令を識別するためのオプションのラベル。
昇給
- CircuitError – レジスタの形式が正しくない場合。
- TypeError – オプションのラベルが指定されているが、それが文字列ではない場合。
属性
base_class
この命令の基底クラスを取得します。 これは、の継承ツリーに含まれていることが確実です self。
命令の「基底クラス」とは、そのオブジェクトが、あらゆる回路用途において完全に互換性があると見なされるべき、継承ツリーの中で最下位のクラスを指します。 これは通常、サブクラスが基底クラスに比べてプログラマーにとって何らかの利便性を提供するためにのみ定義されており、行動の観点からは基底クラスこそが「真の」クラスであることを意味します。 特に、代替の測定戦略や、完全なパラメータ化ゲート Target と区別するために特定のパラメータセットを持つパラメータ化ゲートのバージョンなど、ハードウェアによって異なる方法で実装される命令のカスタムバージョンを定義する場合は base_class* 、これをオーバーライドしてはなりません。*
これは、標準ライブラリの命令のシングルトンインスタンスの場合を除き type(obj)、多くの場合、これとまったく同等です。 これらのシングルトンインスタンスは、その基底クラスの特別なサブクラスであり、このプロパティはその基底クラスを返します。 例:
>>> isinstance(XGate(), XGate)
True
>>> type(XGate()) is XGate
False
>>> XGate().base_class is XGate
True一般的に、命令の正確なクラスに依存すべきではありません。特定の回路内においては、ほとんどの場合、の方がより適切な判別基準とな Instruction.name ることが想定されます。
decompositions
SessionEquivalenceLibrary から、その命令の分解情報を取得します。
definition
他の基本ゲートを用いて定義を導出せよ。
label
リターン命令ラベル
mutable
このインスタンスは、変更可能な一意のインスタンスであるかどうか。
この属性が の場合、ゲートインスタンス False は共有シングルトンであり、変更不可です。
name
その名前を返す。
num_clbits
clbits の数を返します。
num_qubits
量子ビットの数を返す。
params
このパラメータは Instruction…… 理想的には、これらはゲート角度となるはずです。
方法
add_decomposition
add_decomposition(decomposition)
SessionEquivalenceLibrary に、その命令の分解情報を追加してください。
broadcast_arguments
broadcast_arguments(qargs, cargs)
議論の妥当性の検証。
パラメーター
- qargs (List) – 量子ビットに関する議論の一覧。
- cargs (List) – 古典的なビット引数のリスト。
生成数
タプル(リスト, リスト) – 引数が1つのタプル。
昇給
CircuitError – 入力が無効な場合。 たとえば、引数の数がゲートの期待値と一致していません。
copy
copy(name=None)
説明書の写し。
パラメーター
name (str) – コピーした回路に付ける名前。もし の場合 None 、名前はそのままになります。
戻り値
現在の指示書の写し(名前が指定されていた場合は、その名前を反映したもの)
戻りの型
inverse
inverse(annotated=False)
この指示を逆にしてください。
annotated が False の場合、逆の命令は、再帰的に反転された定義を持つ新しい命令として実装されます。
annotated が True の場合、逆演算命令は として実装され AnnotatedOperation、指定された命令に「逆演算修飾子」が付加されたものに対応します。
Instruction から継承する特殊な命令は、独自の逆関数を実装することができます(例:T および Tdg、Barrier など) 特に、引数の扱い方を自由に選択することができ、その annotated 処理方法には、引数を無視し、逆関数が標準ゲートとして定義されている場合には常に具体的なゲートクラスを返すようにすることも含まれます。
パラメーター
annotated (bool) – True に設定すると、出力の反転ゲートが. として返されます AnnotatedOperation。
戻り値
逆演算。
昇給
CircuitError – その命令が複合命令ではなく、かつその逆命令が実装されていない場合。
is_parameterized
is_parameterized()
にコンパイル時パラメータが含ま Instruction れているかどうかを返す。
repeat
repeat(n)
を self 回繰り返す命令を作成します。
パラメーター
n (int) – 指示を繰り返す回数
戻り値
定義が含まれています。
戻りの型
昇給
CircuitError – n < 1 の場合。
reverse_ops
reverse_ops()
複合命令の場合は、構成命令の順序を逆にしてください。
これは、すべての子命令を再帰的に逆順にすることで行われます。 どのゲートも反転させません。
戻り値
新しい命令で
サブ命令の順序が逆になっています。
戻りの型
soft_compare
soft_compare(other)
ゲート間のソフト比較。 それらの名前、量子ビット数、および古典ビット数は一致していなければなりません。 パラメータの数は一致している必要があります。 各パラメータが比較されます。 ParameterExpression である場合は、考慮されません。
パラメーター
other (instruction) – その他の指示。
戻り値
パラメータ式に至るまでは、自己と他者は等しい。
戻りの型
ブール値
to_mutable
to_mutable()
このゲートの変更可能なコピーを返します。
このメソッドは、このゲートインスタンスの新しい変更可能なコピーを返します。 シングルトンインスタンスが使用されている場合、これは変更可能な新しい一意のインスタンスとなります。 インスタンスがすでに変更可能な状態である場合、そのインスタンスのディープコピーが作成されます。
validate_parameter
validate_parameter(parameter)
命令パラメータには、検証や正規化が行われていません。