Operasi PrepareArbitraryState

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.Preparation

Paket: Microsoft.Quantum.Standard

Peringatan

PrepareArbitraryState tidak digunakan lagi. Gunakan operasi PrepareArbitraryStateCP sebagai gantinya.

Mengingat satu set koefisien dan register kuantum yang dikodekan little-endian, menyiapkan status pada register yang dijelaskan oleh koefisien yang diberikan.

operation PrepareArbitraryState (coefficients : Microsoft.Quantum.Math.ComplexPolar[], qubits : Microsoft.Quantum.Arithmetic.LittleEndian) : Unit is Adj + Ctl

Deskripsi

Operasi ini menyiapkan status kuantum arbitrer $\ket{\psi}$ dengan koefisien kompleks $r_j e^{i t_j}$ dari status dasar komputasi $n$-qubit $\ket{0 \cdots 0}$. Secara khusus, tindakan operasi ini dapat disimulasikan oleh transformasi uniter $U$ yang bertindak pada status all-zeros sebagai

$$ \begin{align} U\ket{0...0} & = \ket{\psi} \\ & = \frac{ \sum_{j=0}^{2^n-1} r_j e^{i t_j} \ket{j} }{ \sqrt{\sum_{j=0}^{2^n-1} |r_j|^2} }. \end{align} $$

Input

koefisien : ComplexPolar[]

Array koefisien kompleks hingga $2^n$ yang diwakili oleh nilai absolut dan fasenya $(r_j, t_j)$. Koefisien $j$th mengindeks status angka $\ket{j}$ yang dikodekan dalam format little-endian.

qubits : LittleEndian

Qubit mendaftarkan status nomor pengodean dalam format little-endian. Ini diharapkan diinisialisasi dalam status dasar komputasi $\ket{0...0}$.

Output : Unit

Keterangan

Koefisien input negatif $r_j < 0$ akan diperlakukan seolah-olah positif dengan nilai $|r_j|$. coefficients akan diisi dengan elemen $(r_j, t_j) = (0,0, 0,0)$ jika kurang dari $2^n$ ditentukan.

Referensi

Lihat juga