Skip to main content
IBM Quantum Platform

ET

class qiskit.circuit.library.AND(num_variable_qubits, flags=None, mcx_mode='noancilla')

GitHub

Bases : QuantumCircuit

Circuit mettant en œuvre l'opération logique ET sur un certain nombre de qubits.

Pour l'opération ET, l'état 1|1\rangle 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 :

Schéma illustrant le circuit décrit précédemment.

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].

Schéma illustrant le circuit décrit précédemment.
Déclassé depuis la version 2.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
Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.