Skip to main content
IBM Quantum Platform

MCX再帰的

class qiskit.circuit.library.MCXRecursive(num_ctrl_qubits=None, label=None, ctrl_state=None, *, _base_label=None)

GitHub

ベース: MCXGate

再帰を使用してマルチ制御Xゲートを実装する。

単一のクリーンなアンシラ量子ビットを用いて、マルチ制御Xゲートは4つのサブレジスタに分割され、それぞれのサブレジスタはVチェーン法を用いている。

この方法は、 [1の] Lemma 7.3 で最初に示された [2の] Lemma 9に基づいている。

参考文献

  1. バレンコら 1995. https://arxiv.org/pdf/quant-ph/9503016.pdf
  2. 伊天ら、 2015. https://arxiv.org/abs/1501.06911

新しいMCXゲートを作る。


方法

パラメーター

  • num_ctrl_qubits (int | None)
  • label (str | None)
  • ctrl_state (int |str | None)

get_num_ancilla_qubits

static get_num_ancilla_qubits(num_ctrl_qubits, mode='recursion')

GitHub

必要なアンシラ量子ビットの数を取得する。

パラメーター

  • num_ctrl_qubits (int)
  • mode (str)

inverse

inverse(annotated=False)

GitHub

このゲートを反転させる。 MCXはその逆である。

パラメーター

annotated (bool) – True にセットされた場合、これは通常、具体的な修飾子の代わりに逆修飾子がセットされた AnnotatedOperation を返すために使われます。 Gate. しかし、このクラスでは、このゲートは自己逆であるため、この議論は無視される。

戻り値

インバースゲート(セルフインバース)。

戻りの型

MCXRecursive

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。