UND
class qiskit.circuit.library.AND(num_variable_qubits, flags=None, mcx_mode='noancilla')
Basen: QuantumCircuit
Ein Schaltkreis, der die logische UND-Verknüpfung einer Anzahl von Qubits durchführt.
Für die UND-Verknüpfung wird der Zustand als True interpretiert. Das Ergebnis-Qubit wird geflippt, wenn der Zustand aller variablen Qubits True ist. In diesem Format entspricht die UND-Verknüpfung einem mehrfach gesteuerten X-Gatter, das auf allen variablen Qubits gesteuert wird. Mit Hilfe einer Liste von Flags können jedoch Qubits übersprungen oder negiert werden. In der Praxis ermöglichen die Flaggen das Überspringen von Kontrollen oder die Anwendung von Pre- und Post-X-Gates auf die negierten Qubits.
Das UND-Gatter ohne spezielle Merker entspricht dem mehrfach gesteuerten X-Gatter:

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 und die letzten beiden True sind, verwenden wir die Flags [-1, 0, 0, 1, 1].

Die Klasse qiskit.circuit.library.boolean_logic.quantum_and.AND ist ab Qiskit 2.1 veraltet. Sie wird in Qiskit 3.0 entfernt. Verwenden Sie stattdessen qiskit.circuit.library.AndGate.
Parameter
- num_variable_qubits (int) – Die Qubits, aus denen das UND errechnet wird. Das Ergebnis wird in ein zusätzliches Ergebnis-Qubit geschrieben.
- flags (list[int] | None) – Eine Liste von +1/0/-1, die Negationen oder Auslassungen von Qubits kennzeichnet.
- 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