ODER
class qiskit.circuit.library.OR(num_variable_qubits, flags=None, mcx_mode='noancilla')
Basen: QuantumCircuit
Ein Schaltkreis, der die logische ODER-Verknüpfung mit einer Anzahl von Qubits durchführt.
Für die ODER-Verknüpfung wird der Zustand als True interpretiert. Das Ergebnis-Qubit wird geflippt, wenn der Zustand eines beliebigen variablen Qubits True ist. Die ODER-Verknüpfung wird mit Hilfe eines mehrfach geöffneten X-Gatters realisiert (d. h. es wird umgeschaltet, wenn der Zustand ist) und ein X-Gatter auf das Ergebnis-Qubit angewendet. Mit Hilfe einer Liste von Flags können Qubits übersprungen oder negiert werden.
Das ODER-Gatter ohne spezielle Merker:

Mit Flaggen können wir Qubits negieren oder überspringen. Wenn wir zum Beispiel 5 Qubits haben und True zurückgeben wollen, wenn das erste Qubit False oder eines der letzten beiden True ist, verwenden wir die Flags [-1, 0, 0, 1, 1].

Die Klasse qiskit.circuit.library.boolean_logic.quantum_or.OR ist ab Qiskit 2.1 veraltet. Sie wird in Qiskit 3.0 entfernt. Verwenden Sie stattdessen qiskit.circuit.library.OrGate.
Parameter
- num_variable_qubits (int) – Die Qubits, aus denen das ODER berechnet wird. Das Ergebnis wird in ein zusätzliches Ergebnis-Qubit geschrieben.
- flags (list[int] | None) – Eine Liste von +1/0/-1-Markierungen, die Negationen oder Auslassungen von Qubits darstellen.
- mcx_mode (str) – Der Modus, der für die Implementierung des mehrfach gesteuerten X-Gatters verwendet wird.
Attribute
name
Typ: str
Ein von Menschen lesbarer Name für den Stromkreis.
Beispiel
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit