Skip to main content
IBM Quantum Platform

IntegerComparator

class qiskit.circuit.library.IntegerComparator(num_state_qubits=None, value=None, geq=True, name='cmp')

GitHub

Bases: BlueprintCircuit

Comparador de enteros.

El operador compara los estados base in|i\rangle_n con un entero dado clásicamente LL de valor fijo y voltea un qubit objetivo si iLi \geq L (o << dependiendo del parámetro geq):

in0iniL|i\rangle_n |0\rangle \mapsto |i\rangle_n |i \geq L\rangle

Esta operación se basa en la implementación del complemento a dos de la resta binaria, pero sólo utiliza bits de acarreo y no bits de resultado real. Si el bit de acarreo más significativo (el bit de resultados) es 1, la condición \geq es True de lo contrario es False.

Parámetros

  • num_state_qubits (int | None) – Número de qubits de estado. Si se establece, determinará el número de qubits necesarios para el circuito.
  • value (int | None) – El valor fijo con el que comparar.
  • geq (bool) – Si es True, evalúa una condición >= , si no <.
  • name (str) – Nombre del circuito.

Atributos

geq

Devuelve si el comparador compara mayor o menor igual.

Devuelve

Verdadero, si el comparador compara >=, Falso si <.

num_state_qubits

El número de qubits que codifican el estado para la comparación.

Devuelve

El número de qubits de estado.

value

Valor con el que se compara el registro qubit.

Devuelve

Valor con el que se compara el valor del registro qubit.

name

Tipo: str

Un nombre legible para el circuito.

Ejemplo

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit
¿Le ha resultado útil esta página?
Informe de un error, de una errata o solicite contenido en GitHub.