Pengukuran Pauli qubit tunggal dan multi-qubit
Saat Anda bekerja dengan Q#, Anda menemukan bahwa pengukuran Pauli adalah jenis pengukuran umum. Pengukuran Pauli menggeneralisasi pengukuran dasar komputasi untuk menyertakan pengukuran dalam basis lain dan paritas antara kubit yang berbeda. Dalam kasus seperti itu, adalah umum untuk membahas mengukur operator Pauli, yang merupakan operator seperti X,Y,Z atau Z Z\otimes, X\otimes X, X\otimes Y$, dan sebagainya$.$$ Untuk dasar-dasar pengukuran kuantum, lihat Qubit dan Beberapa qubit.
Membahas pengukuran dalam hal operator Pauli umum terjadi di subbidang koreksi kesalahan kuantum.
Q# panduan mengikuti konvensi serupa; artikel ini menjelaskan tampilan alternatif pengukuran ini.
Tip
Pada Q#operator multi-qubit Pauli umumnya diwakili oleh array jenis Pauli[]
.
Misalnya, untuk mewakili $X \otimes Z \otimes Y$, Anda dapat menggunakan array [PauliX, PauliZ, PauliY]
.
Sebelum mempelajari detail tentang cara memikirkan pengukuran Pauli, akan berguna untuk memikirkan apa yang dilakukan pengukuran satu qubit di dalam komputer kuantum terhadap keadaan kuantum. Bayangkan $ keadaan kuantum n-qubit$; kemudian mengukur satu qubit segera mengesampingkan setengah dari $ 2 ^ n$kemungkinan yang bisa terjadi. Dengan kata lain, pengukuran memproyeksikan keadaan kuantum ke salah satu dari dua setengah ruang. Anda dapat menggeneralisasi cara Anda berpikir tentang pengukuran untuk mencerminkan intuisi ini.
Untuk mengidentifikasi subruang ini secara ringkas, seseorang membutuhkan bahasa untuk mendeskripsikannya. Salah satu cara untuk mendeskripsikan dua subruang adalah dengan menspesifikasikannya melalui matriks yang hanya memiliki dua nilai eigen unik, yang menurut konvensi menjadi$\pm 1$. Untuk contoh sederhana menggambarkan subruang dengan cara ini, pertimbangkan $Z$:
$$\begin{\begin{align} Z & =\begin{bmatrix} 1 & 0 \\ 0 & -1 \end{bmatrix}. \end{align} $$
Dengan membaca elemen diagonal matriks Pauli-$Z$ orang dapat melihat bahwa, $ Z $, memiliki dua eigenvalues, $\ket{0}$ dan $\ket{1}$, dengan eigenvalues yang sesuai \pm 1$$.
Dengan demikian, jika pengukuran qubit menghasilkan Zero
(sesuai dengan status $\ket{0}$), diketahui bahwa status qubit adalah $+1$ eigenstate operator $Z$ .
Demikian pula, jika hasilnya adalah One
, diketahui bahwa status qubit adalah $-1$ eigenstate Z$$.
Proses ini disebut dalam bahasa pengukuran Pauli seperti mengutip&; mengukur Pauli $Z$,mengutip&; dan sepenuhnya setara dengan melakukan pengukuran dasar komputasi.
Setiap matriks $2\times 2$ yang merupakan transformasi kesatuan $ Z$ juga memenuhi kriteria ini. Artinya, seseorang juga dapat menggunakan matriks $A=U^\daggerZ U $tempat$U$adalah matriks kesatuan lainnya, untuk memberikan matriks yang mendefinisikan dua hasil pengukuran dalam $eigenvectors$\pm 1-nya. Notasi pengukuran Pauli merujuk pada kesetaraan kesatuan ini dengan mengidentifikasi pengukuran$X, Y, Z$ sebagai pengukuran setara yang dapat dilakukan seseorang untuk mendapatkan informasi dari qubit. Pengukuran ini diberikan di sini untuk kenyamanan.
Pengukuran Pauli | Transformasi kesatuan |
---|---|
$Z$ | $\mathbf{1}$ |
$X$ | $H$ |
$Y$ | $HS^{\dagger}$ |
Artinya, menggunakan bahasa ini, &kutip; mengukur $kuota Y$&; setara dengan menerapkan $HS^\dagger$ dan kemudian mengukur secara komputasi, di mana S
merupakan operasi kuantum intrinsik kadang-kadang disebut &kuota; gerbang fase,kuota&; dan dapat disimulasikan menggunakan matriks uniter
$$\begin{\begin{align}S =1 amp; 0 \\ 0 & i \end{bmatrix}.&\begin{bmatrix} \end{align} $$
Ini juga setara dengan menerapkan $HS ^\dagger$ ke vektor keadaan kuantum dan kemudian mengukur $Z$, sehingga operasi berikut setara denganMeasure([PauliY], [q])
:
operation MeasureY(qubit : Qubit) : Result {
mutable result = Zero;
within {
Adjoint S(q);
H(q);
} apply {
set result = M(q);
}
return result;
}
Status yang benar kemudian ditemukan dengan mengubah kembali ke dasar komputasi, yang jumlahnya menerapkan $SH$ ke vektor status kuantum; dalam cuplikan kode, transformasi kembali ke dasar komputasi ditangani secara otomatis dengan penggunaan within … apply
blok.
Dalam Q#, hasilnya--- adalah, informasi klasik yang diekstrak dari berinteraksi dengan status---diberikan menggunakan Result
nilai $j \in \{\texttt{Zero}, \texttt{One}\}$ yang menunjukkan apakah hasilnya dalam eigenspace (-1)^j$ dari operator Pauli diukur$.
Pengukuran multi-qubit
Pengukuran operator Pauli multi-qubit didefinisikan sama, seperti yang terlihat dari:
$$ Z\otimes Z =\begin{bmatrix}1 & 0 & 0& 0\\ 0&-1& 0& 0\\ 0& 0&-1& 0\\ 0& 0& 0& 1\end{bmatrix}. $$
Dengan demikian produk tensor dari dua operator Pauli-$Z$ membentuk matriks yang terdiri dari dua ruang yang terdiri dari eigenvalues. $+1$ dan $-1$. Seperti kasus qubit tunggal, keduanya membentuk setengah ruang yang berarti bahwa setengah dari ruang vektor yang dapat diakses adalah milik$+1$ eigenspace dan setengah sisanya ke eigenspace $-1$. Secara umum, mudah untuk melihat dari definisi produk tensor bahwa setiap produk tensor operator Pauli-$Z$ dan identitas juga mematuhi hal ini. Contohnya,
$$\begin{align}Z \otimes{1}\begin{bmatrix}\mathbf{=1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & -1 & 0 \\ 0 & 0 && -1 .\end{bmatrix} \end{align} $$
Seperti sebelumnya, setiap transformasi unitaris matriks tersebut juga menjelaskan dua setengah spasi berlabel $\pm 1$ eigenvalues. Misalnya, $X\otimes X = H\otimes H(Z\otimes Z)H\otimes H$ dari identitas bahwa $Z=HXH$. Mirip dengan kasus satu kubit, semua pengukuran Pauli dua qubit dapat ditulis sebagai U^\dagger (Z\otimes 1) U$ untuk $4 4$\times matriks $uniter U$.$ Transformasi disebutkan dalam tabel berikut.
Catatan
Dalam tabel ini, $\operatorname{SWAP}$ digunakan untuk menunjukkan\operatorname{&\begin{align}}$$ amp; =\left(\begin{matriks} 1 & 0 & 0 & 0 \\ 0 && 1 & 0 0 \\ & 1 & 0 & 0 \\ & 0 & 0 & 1 \end{matriks}\right) \end{align}$$ digunakan untuk mensimulasikan operasi SWAP
intrinsik .
Pengukuran Pauli | Transformasi kesatuan |
---|---|
$Z\otimes\mathbf{1}$ | $\mathbf{1}\otimes \mathbf{1}$ |
$X\otimes\mathbf{1}$ | $H\otimes \mathbf{1}$ |
$Y\otimes\mathbf{1}$ | $HS^\dagger\otimes\mathbf{1}$ |
$\mathbf{1}\otimes Z$ | $\operatorname{TUKAR}$ |
$\mathbf{1}\otimes X$ | $(H\otimes\mathbf{1})\operatorname{TUKAR}$ |
$\mathbf{1}\otimes Y$ | $(HS^\dagger\otimes\mathbf{1})\operatorname{TUKAR}$ |
$Z\otimes Z$ | $\operatorname{CNOT}_{10}$ |
$X\otimes Z$ | $\operatorname{CNOT}_{10}(H\otimes\mathbf{1})$ |
$Y\otimes Z$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes\mathbf{1})$ |
$Z\otimes X$ | $\operatorname{CNOT}_{10}(\mathbf{1}\otimes H)$ |
$X\otimes X$ | $\operatorname{CNOT}_{10}(H\otimes H)$ |
$Y\otimes X$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes H)$ |
$Z\otimes Y$ | $\operatorname{CNOT}_{10}(\mathbf{1}\otimes HS^\dagger)$ |
$X\otimes Y$ | $\operatorname{CNOT}_{10}(H\otimes HS^\dagger)$ |
$Y\otimes Y$ | $\operatorname{CNOT}_{10}(HS^\dagger\otimes HS^\dagger)$ |
Di sini, CNOT
operasi muncul karena alasan berikut.
Setiap pengukuran Pauli yang tidak menyertakan $\mathbf{1}$ matriks setara dengan satu kesatuan dengan $Z\otimes Z$ dengan penalaran sebelumnya.
Eigenvalues $Z\otimes Z$ hanya bergantung pada paritas qubit yang menyusun setiap vektor basis komputasi, dan operasi terkontrol-tidak berfungsi untuk menghitung paritas ini dan menyimpannya di bit pertama.
Kemudian setelah bit pertama diukur, seseorang dapat memulihkan identitas setengah ruang yang dihasilkan, yang setara dengan mengukur operator Pauli.
Selain itu, meskipun mungkin menggoda untuk berasumsi bahwa mengukur Z Z sama dengan mengukur $Z\otimes{1}$\mathbb{ secara berurutan dan kemudian $\mathbb{1}\otimes Z$, asumsi ini akan salah.$\otimes $ Alasannya adalah bahwa mengukur $Z\otimes Z$ memproyeksikan keadaan kuantum ke dalam $+1$ atau $-1$ eigenstate dari operator ini. Mengukur $Z\otimes\mathbb{1}$ dan kemudian$\mathbb{1}\otimesZ$ memproyeksikan vektor keadaan kuantum pertama ke setengah ruang $Z\otimes\mathbb{{1}$ dan kemudian ke setengah ruang $\mathbb{{1}\otimes Z$. Karena ada empat vektor basis komputasi, melakukan kedua pengukuran mengurangi status menjadi seperempat ruang dan karenanya menguranginya menjadi vektor basis komputasi tunggal.
Korelasi antara qubit
Cara lain untuk melihat pengukuran produk tensor matriks Pauli seperti $X\otimes$ atau $Z\otimes Z$ adalah bahwa pengukuran ini memungkinkan Anda melihat informasi yang disimpan dalam korelasi antara dua qubit. Mengukur $X\otimes 1$ memungkinkan Anda melihat informasi yang disimpan secara lokal di kubit pertama. Sementara kedua jenis pengukuran sama-sama berharga dalam komputasi kuantum, yang pertama menjelaskan kekuatan komputasi kuantum. Ini mengungkapkan bahwa dalam komputasi kuantum, seringkali informasi yang ingin Anda pelajari tidak disimpan dalam qubit tunggal, melainkan disimpan secara non-lokal di semua qubit sekaligus, dan oleh karena itu hanya dengan melihatnya melalui pengukuran bersama (mis. informasi $Z\otimes Z$) ini menjadi nyata.
Operator Pauli yang sewenang-wenang seperti $X\otimes Y \otimes Z \otimes\mathbf{1}$ juga dapat diukur. Semua produk tensor seperti itu dari operator Pauli hanya memiliki dua eigenvalues $\pm 1$ dan kedua eigenspaces merupakan setengah ruang dari seluruh ruang vektor. Dengan demikian, mereka bertepatan dengan persyaratan yang dinyatakan sebelumnya.
Pada Q#, pengukuran tersebut mengembalikan $j$ jika pengukuran menanguhkan eigenspace tanda $(-1)^j$. Memiliki pengukuran Pauli sebagai fitur Q# bawaan sangat membantu karena mengukur operator tersebut memerlukan rantai panjang gerbang CONTROLLED-NOT dan transformasi dasar untuk menggambarkan diagonalisasi $gerbang U$ yang diperlukan untuk mengekspresikan operasi sebagai produk $tensor Z$ dan $1$. Dengan dapat menentukan bahwa Anda ingin melakukan salah satu pengukuran yang telah ditentukan sebelumnya, Anda tidak perlu khawatir tentang bagaimana mengubah basis Anda sedemikian rupa sehingga pengukuran basis komputasi memberikan informasi yang diperlukan. Menangani Q# semua transformasi dasar yang diperlukan untuk Anda secara otomatis.
Teorema No-Cloning
Informasi Azure Quantum sangat kuat. Ini memungkinkan Anda untuk melakukan hal-hal luar biasa seperti nomor faktor secara eksponensial lebih cepat daripada algoritma klasik yang paling dikenal, atau secara efisien mensimulasikan sistem elektron berkorelasi yang secara klasik memerlukan biaya eksponensial untuk mensimulasikan secara akurat. Namun, ada keterbatasan pada kekuatan komputasi kuantum. Salah satu batasan tersebut diberikan oleh Teorema No-Cloning.
Teorema No-Cloning diberi nama tepat. Ini melarang kloning status kuantum generik oleh komputer kuantum. Bukti teorema ini sangat mudah. Meskipun bukti lengkap dari teorema tanpa kloning terlalu teknis untuk artikel ini, bukti dalam kasus tidak ada kubit tambahan tambahan dalam cakupan.
Untuk komputer kuantum seperti itu, operasi kloning harus dijelaskan dengan matriks unitaris. Pengukuran Azure Quantum dianulir, karena akan merusak keadaan kuantum untuk dikloning. Untuk mensimulasikan operasi kloning, matriks kesatuan yang digunakan perlu memiliki properti yang $$ U\ket{\psi}\ket{{0}=\ket{\psi}\ket{\psi}$$ untuk keadaan $\ket{\psi}$mana pun. Properti linearitas perkalian matriks kemudian menyiratkan bahwa untuk keadaan $\ket{\phi}$kuantum kedua mana pun,
$$\begin{\begin{align}U \left[ \frac{{1}{\sqrt{{2}}\left(\ket{\phi}+\ket{\psi}\right) \right] \ket{{0}& =\frac{1}{\sqrt{2}} U\ket{\phi}\ket{{0} + \frac{1}{\sqrt{{2}} U\ket{\psi}\ket{0}\\& =\frac{1}{\sqrt{2}}\left( \ket{\phi}\ket{\phi} + \ket{\psi}\ket{\psi}\right) \\& \ne\left( \frac{{2}}\left{1}{\sqrt{(\ket{\phi}+\ket{\psi}\right) \right) \otimes\left( \frac{1}{\sqrt{{2}}\left(\ket{\phi}+\ket{\psi}\right) \right). \end{align} $$
Ini memberikan intuisi mendasar di balik Teorema Tanpa Kloning: perangkat apa pun yang menyalin keadaan kuantum yang tidak diketahui harus menyebabkan kesalahan pada setidaknya beberapa keadaan yang disalinnya. Sementara asumsi kunci bahwa klon bekerja secara linier pada keadaan input dapat dilanggar melalui penambahan dan pengukuran qubit tambahan, interaksi tersebut juga membocorkan informasi tentang sistem melalui statistik pengukuran dan mencegah kloning yang tepat dalam kasus tersebut juga.
Teorema Tanpa Kloning penting untuk pemahaman kualitatif komputasi kuantum karena jika Anda dapat mengkloning keadaan kuantum dengan murah maka Anda akan diberikan kemampuan yang hampir ajaib untuk belajar dari keadaan kuantum. Memang, Anda bisa melanggar prinsip ketidakpastian kebanggaan Heisenberg. Atau, Anda dapat menggunakan kloning optimal untuk mengambil satu sampel dari distribusi kuantum yang kompleks dan mempelajari semua yang mungkin dapat Anda pelajari tentang distribusi tersebut hanya dari satu sampel. Ini akan seperti Anda membalik koin dan mengamati kepala dan kemudian memberi tahu teman tentang hasilnya meminta mereka merespons &kutipan; Ah distribusi koin itu harus Bernoulli dengan $p=0.512643\ldots$!&Quot; Pernyataan seperti itu tidak masuk akal karena satu bit informasi (hasil kepala) tidak dapat memberikan banyak bit informasi yang diperlukan untuk mengodekan distribusi tanpa informasi sebelumnya yang substansial. emikian pula, tanpa informasi sebelumnya, seseorang tidak dapat dengan sempurna mengkloning keadaan kuantum seperti halnya seseorang tidak dapat menyiapkan ansambel koin semacam itu tanpa mengetahui $p$.
Informasi tidak gratis dalam komputasi kuantum. Setiap qubit yang diukur memberikan sedikit informasi, dan Teorema No-Kloning menunjukkan bahwa tidak ada pintu belakang yang dapat dieksploitasi untuk menyiasati pertukaran mendasar antara informasi yang diperoleh tentang sistem dan gangguan yang ditimbulkan padanya.