Operasi ApproximatelyMultiplexPauli

Peringatan

Dokumentasi ini mengacu pada QDK Klasik, yang telah digantikan oleh Modern QDK.

Silakan lihat https://aka.ms/qdk.api dokumentasi API untuk QDK Modern.

Namespace: Microsoft.Quantum.Canon

Paket: Microsoft.Quantum.Standard

Menerapkan rotasi Pauli yang dikondisikan pada array kubit, memotong sudut rotasi kecil sesuai dengan toleransi tertentu.

operation ApproximatelyMultiplexPauli (tolerance : Double, coefficients : Double[], pauli : Pauli, control : Microsoft.Quantum.Arithmetic.LittleEndian, target : Qubit) : Unit is Adj + Ctl

Deskripsi

Ini menerapkan operasi uniter multiply controlled yang melakukan rotasi dengan sudut $\theta_j$ tentang operator Pauli qubit tunggal $P$ ketika dikontrol oleh status angka $$-qubit $n $\ket{j}$. Secara khusus, tindakan operasi ini diwakili oleh uniter

$$ \begin{align} U = \sum^{2^n - 1}_{j=0} \ket{j}\bra{j} \otimes e^{i P \theta_j}. \end{align}

Input

toleransi : Ganda

Toleransi di bawah koefisien kecil mana yang terpotok.

koefisien : Double[]

Array hingga $2^n$ koefisien $\theta_j$. Koefisien $j$th mengindeks status angka $\ket{j}$ yang dikodekan dalam format little-endian.

pauli : Pauli

Operator Pauli $P$ yang menentukan sumbu rotasi.

control : LittleEndian

$n$-qubit control register yang mengodekan angka menyatakan $\ket{j}$ dalam format little-endian.

target : Qubit

Register qubit tunggal yang diputar oleh $e^{i P \theta_j}$.

Output : Unit

Keterangan

coefficients akan diisi dengan elemen $\theta_j = 0,0$ jika kurang dari $2^n$ ditentukan.

Lihat juga