Skip to main content
IBM Quantum Platform

OPPURE

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

GitHub

Basi: QuantumCircuit

Un circuito che implementa l'operazione di OR logico su un certo numero di qubit.

Per l'operazione OR lo stato 1|1\rangle viene interpretato come True. Il qubit risultato viene capovolto se lo stato di un qubit variabile è True. L'OR è implementato utilizzando un gate X controllato da più aperture (cioè si capovolge se lo stato è 0|0\rangle ) e applicando un gate X sul qubit risultato. Utilizzando un elenco di flag, i qubit possono essere saltati o annullati.

La porta OR senza flag speciali:

Schema che illustra il circuito precedentemente descritto.

Utilizzando i flag possiamo negare i qubit o saltarli. Ad esempio, se abbiamo 5 qubit e vogliamo restituire True se il primo qubit è False o uno degli ultimi due è True , usiamo i flag [-1, 0, 0, 1, 1].

Schema che illustra il circuito precedentemente descritto.
Deprecato dalla versione 2.1

La classe qiskit.circuit.library.boolean_logic.quantum_or.OR è deprecata a partire da Qiskit 2.1. Verrà rimosso in Qiskit 3.0. Utilizzare invece qiskit.circuit.library.OrGate.

Parametri

  • num_variable_qubits (int) – I qubit di cui viene calcolato l'OR. Il risultato sarà scritto in un ulteriore qubit di risultato.
  • flags (list[int] | None) – Un elenco di segni +1/0/-1 che indicano negazioni o omissioni di qubit.
  • mcx_mode (str) – La modalità da utilizzare per implementare la porta X multicontrollata.

Attributi

name

Tipo: str

Un nome leggibile per il circuito.

Esempio

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit
Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.