ET
class qiskit.circuit.library.AND(num_variable_qubits, flags=None, mcx_mode='noancilla')
Bases : QuantumCircuit
Circuit mettant en œuvre l'opération logique ET sur un certain nombre de qubits.
Pour l'opération ET, l'état est interprété comme True. Le qubit de résultat est retourné si l'état de tous les qubits variables est True. Dans ce format, l'opération AND équivaut à une porte X multi-contrôlée, qui est contrôlée sur tous les qubits variables. En utilisant une liste de drapeaux, les qubits peuvent être ignorés ou annulés. En pratique, les drapeaux permettent de sauter des contrôles ou d'appliquer des portes pré- et post-X aux qubits niés.
La porte ET sans drapeaux spéciaux équivaut à la porte X multicontrôlée :

Les drapeaux permettent d'annuler des qubits ou de les ignorer. Par exemple, si nous avons 5 qubits et que nous voulons renvoyer True si le premier qubit est False et les deux derniers True , nous utilisons les drapeaux [-1, 0, 0, 1, 1].

La classe qiskit.circuit.library.boolean_logic.quantum_and.AND est obsolète depuis Qiskit 2.1. Elle sera supprimée à Qiskit 3.0. Utilisez plutôt qiskit.circuit.library.AndGate.
Paramètres
- num_variable_qubits (int) – Les qubits pour lesquels l'ET est calculé. Le résultat sera inscrit dans un qubit de résultat supplémentaire.
- flags (list[int] | None) – Une liste de négations ou d'omissions de qubits marquant +1/0/-1.
- mcx_mode (str) – Le mode à utiliser pour mettre en œuvre la porte X multicommandée.
Attributs
name
Type : str
Un nom lisible par l'homme pour le circuit.
Exemple
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit