Skip to main content
IBM Quantum Platform

OU

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

GitHub

Bases: QuantumCircuit

Um circuito que implementa a operação lógica OR em um número de qubits.

Para a operação OR, o estado 1|1\rangle é interpretado como True. O qubit resultante é invertido se o estado de qualquer qubit variável for True. O OR é implementado usando uma porta X controlada por várias aberturas (ou seja, inverte se o estado for 0|0\rangle ) e aplicando uma porta X no qubit resultante. Usando uma lista de sinalizadores, os qubits podem ser ignorados ou negados.

A porta OR sem sinalizadores especiais:

Diagrama que ilustra o circuito descrito anteriormente.

Usando sinalizadores, podemos negar qubits ou ignorá-los. Por exemplo, se tivermos 5 qubits e quisermos retornar True se o primeiro qubit for False ou se um dos dois últimos for True , usaremos os sinalizadores [-1, 0, 0, 1, 1].

Diagrama que ilustra o circuito descrito anteriormente.
Descontinuado desde a versão 2.1

A classe qiskit.circuit.library.boolean_logic.quantum_or.OR está obsoleta desde o Qiskit 2.1. Ele será removido no Qiskit 3.0. Em vez disso, use qiskit.circuit.library.OrGate.

Parâmetros

  • num_variable_qubits (int) – Os qubits dos quais o OR é computado. O resultado será gravado em um qubit de resultado adicional.
  • flags (list[int] | None) – Uma lista de marcações +1/0/-1 que indicam negações ou omissões de qubits.
  • mcx_mode (str) – O modo a ser usado para implementar a porta X multicontrolada.

Atributos

name

Tipo: str

Um nome legível por humanos para o circuito.

Exemplo

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit
Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.