Skip to main content
IBM Quantum Platform

PolynomialPauliRotations

class qiskit.circuit.library.PolynomialPauliRotations(num_state_qubits=None, coeffs=None, basis='Y', name='poly')

GitHub

Bases: FunctionalPauliRotations

Um circuito que implementa rotações polinomiais de Pauli.

Para um polinômio p(x)p(x), um estado de base i|i\rangle e um qubit de destino 0|0\rangle, esse operador atua como:

i0cos(p(i)2)i0+sin(p(i)2)i1|i\rangle |0\rangle \mapsto \cos\left(\frac{p(i)}{2}\right) |i\rangle |0\rangle + \sin\left(\frac{p(i)}{2}\right) |i\rangle |1\rangle

Seja n o número de qubits que representam o estado, d o grau de p(x) e q_i os qubits, em que q_0 é o qubit menos significativo. Então, para

x=i=0n12iqi,x = \sum_{i=0}^{n-1} 2^i q_i,

podemos escrever

p(x)=j=0j=dcjxjp(x) = \sum_{j=0}^{j=d} c_j x^j

em que cc são os coeficientes de entrada, coeffs.

Parâmetros

  • num_state_qubits (int | None) – O número de qubits que representam o estado.
  • coeffs (list[float] | None) – Os coeficientes do polinômio. coeffs[i] é o coeficiente da i-ésima potência de x. O padrão é linear: [0, 1].
  • basis (str) – O tipo de rotação Pauli ("X", "Y", "Z").
  • name (str) – O nome do circuito.

Atributos

coeffs

Os coeficientes do polinômio.

coeffs[i] é o coeficiente da i-ésima potência da entrada da função xx, o que significa que os ângulos de rotação são baseados no valor dos coeficientes, de acordo com a fórmula

cjxj,j=0,...,dc_j x^j , j=0, ..., d

em que dd é o grau do polinômio p(x)p(x) e cc são os coeficientes coeffs.

Retorna

Os coeficientes do polinômio.

degree

Retorna o grau do polinômio, igual ao número de coeficientes menos 1.

Retorna

O grau do polinômio. Se os coeficientes não tiverem sido definidos, retorne 0.

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.