Skip to main content
IBM Quantum Platform

PolynomialPauliRotations

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

GitHub

Basi: FunctionalPauliRotations

Un circuito che implementa rotazioni Pauli polinomiali.

basis="Y"Per un polinomio pp, uno stato di base i|i\rangle del registro di stato e un qubit di destinazione inizializzato in 0|0\rangle, questo operatore applica al qubit di destinazione una rotazione di Pauli di angolo p(i)p(i). Per l'impostazione predefinita, l'operatore agisce come segue:

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

Per basis="X", l'azione sul qubit bersaglio è:

0icos(p(i)2)0iisin(p(i)2)1i|0\rangle |i\rangle \mapsto \cos\left(\frac{p(i)}{2}\right) |0\rangle |i\rangle - i\sin\left(\frac{p(i)}{2}\right) |1\rangle |i\rangle

Per basis="Z", l'azione sul qubit bersaglio è:

0ieip(i)/20i|0\rangle |i\rangle \mapsto e^{-i p(i) / 2} |0\rangle |i\rangle

Sia nn il numero di qubit che rappresentano lo stato, dd il grado di pp e qiq_i i qubit, dove q0q_0 è il qubit meno significativo. Quindi, per

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

possiamo scrivere

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

dove cc sono i coefficienti di ingresso, coeffs.

Parametri

  • num_state_qubits (int | None) – Il numero di qubit che rappresentano lo stato.
  • coeffs (list[float] | None) – I coefficienti del polinomio. coeffs[i] è il coefficiente di " xix^i ". Il valore predefinito è "linear": [0, 1].
  • basis (str) – Il tipo di rotazione di Pauli ("X", "Y", "Z").
  • name (str) – Il nome del circuito.

Attributi

coeffs

I coefficienti del polinomio.

coeffs[i] è il coefficiente della potenza i-esima della funzione in ingresso xx, il che significa che gli angoli di rotazione si basano sul valore dei coefficienti, secondo la formula

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

dove dd è il grado del polinomio p(x)p(x) e cc sono i coefficienti coeffs.

Risultati

I coefficienti del polinomio.

degree

Restituisce il grado del polinomio, pari al numero di coefficienti meno 1.

Risultati

Il grado del polinomio. Se i coefficienti non sono stati impostati, restituisce 0.

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.