Skip to main content
IBM Quantum Platform

MCXRekursiv

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

GitHub

Basen: MCXGate

Implementierung des mehrfach gesteuerten X-Gatters durch Rekursion.

Unter Verwendung eines einzigen sauberen Ancilla-Qubits wird das mehrfach gesteuerte X-Gatter in vier Unterregister aufgeteilt, von denen jedes die V-Ketten-Methode verwendet.

Die Methode basiert auf Lemma 9 von [2], das zuerst in Lemma 7.3 von [1] gezeigt wurde.

Referenzen

  1. Barenco et al., 1995. https://arxiv.org/pdf/quant-ph/9503016.pdf
  2. Iten et al., 2015. https://arxiv.org/abs/1501.06911

Erstellen Sie ein neues MCX-Gate.


Methoden

Parameter

  • 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

Ermittelt die Anzahl der benötigten Ancilla-Qubits.

Parameter

  • num_ctrl_qubits (int)
  • mode (str)

inverse

inverse(annotated=False)

GitHub

Kehren Sie dieses Tor um. Der MCX ist sein eigenes Pendant.

Parameter

annotated (bool) – wenn sie auf True gesetzt ist, wird dies typischerweise verwendet, um eine AnnotatedOperation mit einem inversen Modifikator anstelle eines konkreten Gate. Für diese Klasse wird dieses Argument jedoch ignoriert, da dieses Tor selbstinvers ist.

Rückgabe

inverses Tor (selbstinvers).

Rückgabetyp

MCXRecursive

War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.