Langkau ke kandungan utama

Prosedur anggaran fasa

Seterusnya, kita akan bincangkan prosedur anggaran fasa, iaitu satu algoritma kuantum untuk menyelesaikan masalah anggaran fasa.

Kita akan mulakan dengan pemanasan ketepatan rendah, yang menerangkan beberapa intuisi asas di sebalik kaedah ini. Kemudian kita akan bincangkan transformasi Fourier kuantum, iaitu operasi kuantum penting yang digunakan dalam prosedur anggaran fasa, serta implementasi litar kuantumnya. Setelah kita memahami transformasi Fourier kuantum, kita akan huraikan prosedur anggaran fasa secara penuh dan menganalisis prestasinya.

Pemanasan: menganggar fasa dengan ketepatan rendah

Kita akan mulakan dengan beberapa versi mudah prosedur anggaran fasa yang memberikan penyelesaian ketepatan rendah kepada masalah anggaran fasa. Ini berguna untuk menerangkan intuisi di sebalik prosedur umum yang akan kita lihat sebentar lagi dalam pelajaran ini.

Menggunakan fasa kickback

Pendekatan mudah kepada masalah anggaran fasa, yang membolehkan kita mempelajari sesuatu tentang nilai θ\theta yang kita cari, adalah berdasarkan fenomena phase kick-back. Seperti yang akan kita lihat, ini pada dasarnya adalah versi satu-qubit prosedur anggaran fasa umum yang akan dibincangkan kemudian dalam pelajaran ini.

Sebagai sebahagian daripada input kepada masalah anggaran fasa, kita mempunyai litar kuantum bersatu untuk operasi U.U. Kita boleh menggunakan huraian litar ini untuk mencipta litar bagi operasi controlled-UU, yang boleh digambarkan seperti yang dicadangkan oleh rajah ini (dengan operasi U,U, dilihat sebagai get kuantum, di sebelah kiri dan operasi controlled-UU di sebelah kanan).

Versi tidak dikawal dan dikawal bagi operasi bersatu

Kita boleh mencipta litar kuantum untuk operasi controlled-UU dengan terlebih dahulu menambah qubit kawalan pada litar untuk U,U, kemudian menggantikan setiap get dalam litar untuk UU dengan versi dikawal bagi get tersebut — jadi satu qubit kawalan baru kita secara efektif mengawal setiap get tunggal dalam litar untuk U.U. Ini memerlukan kita mempunyai versi dikawal bagi setiap get dalam litar kita, tetapi kita sentiasa boleh membina litar untuk operasi terkawal ini sekiranya ia tidak disertakan dalam set get kita.

Sekarang pertimbangkan litar berikut, di mana keadaan input ψ\vert\psi\rangle bagi semua qubit kecuali yang paling atas adalah vektor eigenvector keadaan kuantum bagi U.U.

litar satu-qubit untuk anggaran fasa

Kebarangkalian keputusan pengukuran untuk litar ini bergantung pada eigenvalue bagi UU yang sepadan dengan eigenvector ψ.\vert\psi\rangle. Mari kita analisis litar secara terperinci untuk menentukan bagaimana tepatnya.

Keadaan litar satu-qubit untuk anggaran fasa

Keadaan awal litar adalah

π0=ψ0\vert\pi_0\rangle = \vert\psi\rangle \vert 0\rangle

dan get Hadamard pertama mengubah keadaan ini kepada

π1=ψ+=12ψ0+12ψ1.\vert\pi_1\rangle = \vert\psi\rangle \vert +\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle.

Seterusnya, operasi controlled-UU dilaksanakan, yang menghasilkan keadaan

π2=12ψ0+12(Uψ)1.\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \bigl(U \vert\psi\rangle\bigr) \vert 1\rangle.

Menggunakan andaian bahawa ψ\vert\psi\rangle adalah eigenvector bagi UU dengan eigenvalue λ=e2πiθ,\lambda = e^{2\pi i\theta}, kita boleh mengungkapkan keadaan ini secara alternatif seperti berikut.

π2=12ψ0+e2πiθ2ψ1=ψ(120+e2πiθ21)\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle = \vert\psi\rangle \otimes \left( \frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle\right)

Di sini kita memerhati fenomena phase kickback. Ia sedikit berbeza kali ini berbanding dengan algoritma Deutsch dan algoritma Deutsch-Jozsa kerana kita tidak bekerja dengan get pertanyaan — tetapi ideanya adalah serupa.

Akhirnya, get Hadamard kedua dilaksanakan. Selepas sedikit penyederhanaan, kita memperoleh ungkapan ini untuk keadaan tersebut.

π3=ψ(1+e2πiθ20+1e2πiθ21)\vert\pi_3\rangle = \vert\psi\rangle \otimes \left( \frac{1+ e^{2\pi i \theta}}{2} \vert 0\rangle + \frac{1 - e^{2\pi i \theta}}{2} \vert 1\rangle\right)

Oleh itu, pengukuran menghasilkan keputusan 00 dan 11 dengan kebarangkalian berikut:

p0=1+e2πiθ22=cos2(πθ)p1=1e2πiθ22=sin2(πθ).\begin{aligned} p_0 &= \left\vert \frac{1+ e^{2\pi i \theta}}{2} \right\vert^2 = \cos^2(\pi\theta)\\[1mm] p_1 &= \left\vert \frac{1- e^{2\pi i \theta}}{2} \right\vert^2 = \sin^2(\pi\theta). \end{aligned}

Berikut adalah plot kebarangkalian untuk dua keputusan yang mungkin, 00 dan 1,1, sebagai fungsi θ.\theta.

Kebarangkalian keputusan daripada phase kickback

Secara semula jadi, kedua-dua kebarangkalian sentiasa berjumlah 1.1. Perhatikan bahawa apabila θ=0,\theta = 0, keputusan pengukuran sentiasa 0,0, dan apabila θ=1/2,\theta = 1/2, keputusan pengukuran sentiasa 1.1. Jadi, walaupun keputusan pengukuran tidak mendedahkan nilai tepat θ,\theta, ia memberikan kita sedikit maklumat tentangnya — dan jika kita dijanjikan bahawa sama ada θ=0\theta = 0 atau θ=1/2,\theta = 1/2, kita boleh mengetahui dari litar mana satu yang betul tanpa ralat.

Secara intuitif, kita boleh menganggap keputusan pengukuran litar sebagai tekaan untuk θ\theta dengan "satu bit ketepatan." Dengan kata lain, jika kita menulis θ\theta dalam notasi binari dan membulatkannya kepada satu bit, kita akan mempunyai nombor seperti ini:

0.a={0a=012a=1.0.a = \begin{cases} 0 & a = 0\\ \frac{1}{2} & a = 1. \end{cases}

Keputusan pengukuran boleh dilihat sebagai tekaan untuk bit a.a. Apabila θ\theta bukan 00 mahupun 1/2,1/2, terdapat kebarangkalian bukan sifar bahawa tekaan akan salah — tetapi kebarangkalian membuat ralat semakin kecil apabila kita semakin hampir kepada 00 atau 1/2.1/2.

Adalah wajar untuk bertanya apakah peranan dua get Hadamard dalam prosedur ini:

  • get Hadamard pertama menetapkan qubit kawalan kepada superposisi seragam 0\vert 0\rangle dan 1,\vert 1\rangle, supaya apabila phase kickback berlaku, ia berlaku untuk keadaan 1\vert 1\rangle dan bukan keadaan 0\vert 0\rangle, mewujudkan perbezaan fasa relatif yang mempengaruhi keputusan pengukuran. Jika kita tidak melakukan ini dan phase kickback menghasilkan fasa global, ia tidak akan memberi kesan pada kebarangkalian mendapat keputusan pengukuran yang berbeza.

  • get Hadamard kedua membolehkan kita mempelajari sesuatu tentang nombor θ\theta melalui fenomena interferens. Sebelum get Hadamard kedua, keadaan qubit atas adalah

    120+e2πiθ21,\frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle,

    dan jika kita mengukur keadaan ini, kita akan memperoleh 00 dan 11 masing-masing dengan kebarangkalian 1/2,1/2, yang tidak memberitahu kita apa-apa tentang θ.\theta. Namun dengan melaksanakan get Hadamard kedua, kita menyebabkan nombor θ\theta mempengaruhi kebarangkalian output.

Menggandakan fasa

litar di atas menggunakan fenomena phase kickback untuk menganggar θ\theta dengan ketepatan satu bit. Satu bit ketepatan mungkin cukup dalam sesetengah situasi — tetapi untuk pemfaktoran kita akan memerlukan jauh lebih banyak ketepatan daripada itu. Soalan yang wajar adalah, bagaimana kita boleh mempelajari lebih lanjut tentang θ?\theta?

Satu perkara yang sangat mudah yang boleh kita lakukan adalah menggantikan operasi controlled-UU dalam litar kita dengan dua salinan operasi ini, seperti dalam litar ini:

Anggaran fasa satu-bit yang digandakan

Dua salinan operasi controlled-UU bersamaan dengan operasi controlled-U2U^2. Jika ψ\vert\psi\rangle adalah eigenvector bagi UU dengan eigenvalue λ=e2πiθ,\lambda = e^{2\pi i \theta}, maka keadaan ini juga merupakan eigenvector bagi U2,U^2, kali ini dengan eigenvalue λ2=e2πi(2θ).\lambda^2 = e^{2\pi i (2\theta)}.

Jadi, jika kita menjalankan versi litar ini, kita pada dasarnya menjalankan pengiraan yang sama seperti sebelumnya, kecuali nombor θ\theta digantikan dengan 2θ.2\theta. Berikut adalah plot yang menggambarkan kebarangkalian output apabila θ\theta berkisar dari 00 ke 1.1.

Kebarangkalian keputusan daripada double-phase kickback

Melakukan ini memang boleh memberikan kita beberapa maklumat tambahan tentang θ.\theta. Jika perwakilan binari θ\theta adalah

θ=0.a1a2a3\theta = 0.a_1 a_2 a_3\cdots

maka menggandakan θ\theta secara efektif menggeser titik binari satu kedudukan ke kanan:

2θ=a1.a2a32\theta = a_1. a_2 a_3\cdots

Dan kerana kita menyamakan θ=1\theta = 1 dengan θ=0\theta = 0 semasa kita bergerak di sekitar bulatan unit, kita nampak bahawa bit a1a_1 tidak mempengaruhi kebarangkalian kita, dan kita pada dasarnya memperoleh tekaan untuk bit kedua selepas titik binari jika kita membulatkan θ\theta kepada dua bit. Sebagai contoh, jika kita mengetahui lebih awal bahawa θ\theta adalah sama ada 00 atau 1/4,1/4, maka kita boleh sepenuhnya mempercayai keputusan pengukuran untuk memberitahu kita mana satu.

Namun tidak jelas, bagaimana anggaran ini harus diselaraskan dengan apa yang kita pelajari dari litar phase kickback asal (yang tidak digandakan) untuk memberikan maklumat paling tepat yang mungkin tentang θ.\theta. Jadi mari kita ambil langkah ke belakang dan fikirkan cara untuk meneruskan.

Anggaran fasa dua-qubit

Daripada mempertimbangkan dua pilihan yang dihuraikan di atas secara berasingan, mari kita gabungkan keduanya dalam satu litar seperti ini.

Persediaan awal untuk anggaran fasa dengan dua qubit

get Hadamard selepas operasi terkawal telah dibuang dan tiada pengukuran di sini lagi. Kita akan menambah lagi pada litar apabila kita mempertimbangkan pilihan kita untuk mempelajari sebanyak mungkin tentang θ.\theta.

Jika kita menjalankan litar ini apabila ψ\vert\psi\rangle adalah eigenvector bagi U,U, keadaan qubit bawah akan kekal sebagai ψ\vert\psi\rangle sepanjang keseluruhan litar, dan fasa akan "ditendang" ke dalam keadaan dua qubit atas. Mari kita analisis litar dengan teliti, melalui rajah berikut.

Keadaan untuk anggaran fasa dengan dua qubit

Kita boleh menulis keadaan π1\vert\pi_1\rangle seperti ini:

π1=ψ12a0=01a1=01a1a0.\vert\pi_1\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 \vert a_1 a_0 \rangle.

Apabila operasi controlled-UU pertama dilaksanakan, eigenvalue λ=e2πiθ\lambda = e^{2\pi i\theta} ditendang ke dalam fasa apabila a0a_0 (qubit atas) bersamaan 1,1, tetapi tidak apabila ia 0.0. Jadi, kita boleh mengungkapkan keadaan yang dihasilkan seperti ini:

π2=ψ12a0=01a1=01e2πia0θa1a0.\vert\pi_2\rangle = \vert\psi\rangle \otimes \frac{1}{2} \sum_{a_0=0}^1 \sum_{a_1=0}^1 e^{2 \pi i a_0 \theta} \vert a_1 a_0 \rangle.

get controlled-UU kedua dan ketiga melakukan sesuatu yang serupa, kecuali untuk a1a_1 dan bukan a0,a_0, dan dengan θ\theta digantikan oleh 2θ.2\theta. Kita boleh mengungkapkan keadaan yang dihasilkan seperti ini:

π3=ψ12a0=01a1=01e2πi(2a1+a0)θa1a0.\vert\pi_3\rangle = \vert\psi\rangle\otimes\frac{1}{2}\sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 e^{2\pi i (2 a_1 + a_0)\theta} \vert a_1 a_0 \rangle.

Jika kita menganggap rentetan binari a1a0a_1 a_0 sebagai mewakili integer x{0,1,2,3}x \in \{0,1,2,3\} dalam notasi binari, iaitu x=2a1+a0,x = 2 a_1 + a_0, kita boleh mengungkapkan keadaan ini secara alternatif seperti berikut.

π3=ψ12x=03e2πixθx\vert\pi_3\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x \theta} \vert x \rangle

Matlamat kita adalah untuk mengekstrak sebanyak mungkin maklumat tentang θ\theta daripada keadaan ini.

Pada ketika ini kita akan mempertimbangkan kes khas, di mana kita dijanjikan bahawa θ=y4\theta = \frac{y}{4} untuk sesetengah integer y{0,1,2,3}.y\in\{0,1,2,3\}. Dengan kata lain, kita mempunyai θ{0,1/4,1/2,3/4},\theta\in \{0, 1/4, 1/2, 3/4\}, jadi kita boleh mengungkapkan nombor ini dengan tepat menggunakan notasi binari dengan dua bit, sebagai .00,00, .01,01, .10,10, atau .11.11. Secara umum, θ\theta mungkin bukan salah satu daripada empat nilai ini, tetapi memikirkan kes khas ini akan membantu kita mengetahui cara paling berkesan untuk mengekstrak maklumat tentang θ\theta secara umum.

Pertama kita akan mendefinisikan vektor keadaan dua-qubit untuk setiap nilai yang mungkin y{0,1,2,3}.y \in \{0, 1, 2, 3\}.

ϕy=12x=03e2πix(y4)x=12x=03e2πixy4x\vert \phi_y\rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x (\frac{y}{4})} \vert x \rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i \frac{x y}{4}} \vert x \rangle

Selepas menyederhanakan eksponen, kita boleh menulis vektor-vektor ini seperti berikut.

ϕ0=120+121+122+123ϕ1=120+i21122i23ϕ2=120121+122123ϕ3=120i21122+i23\begin{aligned} \vert\phi_0\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle + \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_1\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle - \frac{i}{2} \vert 3 \rangle \\[3mm] \vert\phi_2\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle - \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_3\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle + \frac{i}{2} \vert 3 \rangle \end{aligned}

Vektor-vektor ini adalah ortogon: jika kita memilih mana-mana pasangan daripada mereka dan mengira hasil darab dalam mereka, kita mendapat 0.0. Setiap satunya juga merupakan vektor unit, jadi {ϕ0,ϕ1,ϕ2,ϕ3}\{\vert\phi_0\rangle, \vert\phi_1\rangle, \vert\phi_2\rangle, \vert\phi_3\rangle\} adalah asas ortonormal. Oleh itu kita tahu serta-merta bahawa terdapat pengukuran yang boleh membezakan mereka dengan sempurna — bermakna, jika kita diberi salah satu daripadanya tetapi kita tidak tahu yang mana, maka kita boleh mengetahui yang mana tanpa ralat.

Untuk melaksanakan perbezaan sedemikian dengan litar kuantum, kita boleh terlebih dahulu mendefinisikan operasi uniter VV yang mengubah keadaan asas standard menjadi empat keadaan yang disenaraikan di atas.

V00=ϕ0V01=ϕ1V10=ϕ2V11=ϕ3\begin{aligned} V \vert 00 \rangle & = \vert\phi_0\rangle \\ V \vert 01 \rangle & = \vert\phi_1\rangle \\ V \vert 10 \rangle & = \vert\phi_2\rangle \\ V \vert 11 \rangle & = \vert\phi_3\rangle \end{aligned}

Untuk menulis VV sebagai matriks 4×4,4\times 4, ia hanyalah perkara mengambil lajur VV sebagai keadaan ϕ0,,ϕ3.\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle.

V=12(11111i1i11111i1i)V = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Ini adalah matriks khas, dan berkemungkinan sesetengah pembaca pernah menemuinya sebelum ini: ia adalah matriks yang berkaitan dengan transformasi Fourier diskret 44-dimensi. Memandangkan fakta ini, mari kita panggil ia dengan nama QFT4\mathrm{QFT}_4 dan bukan V.V. Nama QFT\mathrm{QFT} adalah singkatan bagi transformasi Fourier kuantum — yang pada dasarnya hanyalah transformasi Fourier diskret, dilihat sebagai operasi uniter. Kita akan bincangkan transformasi Fourier kuantum dengan lebih terperinci dan keumuman tidak lama lagi.

QFT4=12(11111i1i11111i1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Kita boleh melaksanakan songsangan operasi ini untuk pergi ke arah lain, untuk mengubah keadaan ϕ0,,ϕ3\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle menjadi keadaan asas standard 0,,3.\vert 0\rangle,\ldots,\vert 3\rangle. Jika kita melakukan ini, maka kita boleh mengukur untuk mengetahui nilai y{0,1,2,3}y\in\{0,1,2,3\} yang menghuraikan θ\theta sebagai θ=y/4.\theta = y/4. Berikut adalah gambar rajah litar kuantum yang melakukan ini.

Anggaran fasa dengan dua qubit

Untuk merumuskan, jika kita menjalankan litar ini apabila θ=y/4\theta = y/4 untuk y{0,1,2,3},y\in\{0,1,2,3\}, keadaan sejurus sebelum pengukuran berlaku akan menjadi ψy\vert \psi\rangle \vert y\rangle (untuk yy dikodkan sebagai rentetan binari dua-bit), jadi pengukuran akan mendedahkan nilai yy tanpa ralat.

litar ini dimotivasikan oleh kes khas bahawa θ{0,1/4,1/2,3/4}\theta \in \{0,1/4,1/2,3/4\} — tetapi kita boleh menjalankannya untuk mana-mana pilihan UU dan ψ,\vert \psi\rangle, dan oleh itu mana-mana nilai θ,\theta, yang kita inginkan. Berikut adalah plot kebarangkalian output yang dihasilkan litar untuk pilihan θ\theta yang sewenang-wenangnya.

Kebarangkalian keputusan daripada anggaran fasa dua-qubit

Ini adalah peningkatan yang jelas berbanding varian satu-qubit yang dihuraikan lebih awal dalam pelajaran ini. Ia tidak sempurna — ia boleh memberikan jawapan yang salah — tetapi jawapan sangat condong ke arah nilai yy yang y/4y/4 hampir dengan θ.\theta. Khususnya, keputusan paling mungkin sentiasa sepadan dengan nilai y/4y/4 yang paling hampir dengan θ\theta (menyamakan θ=0\theta = 0 dan θ=1\theta = 1 seperti sebelumnya), dan dari plot ia kelihatan bahawa nilai terdekat untuk xx ini sentiasa muncul dengan kebarangkalian sedikit di atas 40%.40\%. Apabila θ\theta tepat di antara dua nilai sedemikian, seperti θ=0.375\theta = 0.375 sebagai contoh, dua nilai yy yang sama-sama hampir adalah sama-sama mungkin.

Bersedia untuk menggeneralisasi kepada banyak qubit

Memandangkan peningkatan yang baru kita perolehi dengan menggunakan dua qubit kawalan berbanding satu, bersama dengan songsangan transformasi Fourier kuantum 44-dimensi, adalah wajar untuk mempertimbangkan generalisasinya lebih lanjut — dengan menambah lebih banyak qubit kawalan. Apabila kita melakukan ini, kita memperoleh prosedur anggaran fasa umum. Kita akan melihat bagaimana ini berfungsi tidak lama lagi, tetapi untuk menerangkannya dengan tepat kita perlu membincangkan transformasi Fourier kuantum dengan lebih keumuman, untuk melihat bagaimana ia ditakrifkan untuk dimensi lain dan bagaimana kita boleh mengimplementasikannya (atau songsangannya) dengan litar kuantum.

Transformasi Fourier kuantum

Transformasi Fourier kuantum adalah operasi uniter yang boleh ditakrifkan untuk sebarang dimensi positif integer N.N. Dalam bahagian ini, kita akan melihat bagaimana operasi ini ditakrifkan dan bagaimana ia boleh diimplementasikan dengan litar kuantum pada mm qubit dengan kos O(m2)O(m^2) apabila N=2m.N = 2^m.

Matriks yang menghuraikan transformasi Fourier kuantum diterbitkan daripada operasi analog pada vektor NN-dimensi yang dikenali sebagai transformasi Fourier diskret. Operasi ini boleh difikirkan dengan cara yang berbeza. Sebagai contoh, kita boleh memikirkan transformasi Fourier diskret dalam istilah abstrak dan matematik semata-mata sebagai pemetaan linear. Atau kita boleh memikirkannya dalam istilah pengkomputeran, di mana kita diberi vektor kompleks NN-dimensi (menggunakan notasi binari untuk mengodkan bahagian nyata dan khayalan entri, katakanlah) dan matlamatnya adalah untuk mengira vektor NN-dimensi yang diperoleh dengan menggunakan transformasi Fourier diskret. Fokus kita akan pada cara ketiga, iaitu melihat transformasi ini sebagai operasi uniter yang boleh dilaksanakan pada sistem kuantum.

Terdapat algoritma cekap untuk mengira transformasi Fourier diskret pada vektor input yang diberikan yang dikenali sebagai transformasi Fourier pantas. Ia mempunyai aplikasi dalam pemprosesan isyarat dan banyak bidang lain, dan dianggap oleh ramai sebagai salah satu algoritma terpenting yang pernah ditemui. Ternyata, implementasi transformasi Fourier kuantum apabila NN adalah kuasa 2 yang akan kita pelajari adalah berdasarkan tepat pada struktur asas yang sama yang menjadikan transformasi Fourier pantas mungkin.

Definisi transformasi Fourier kuantum

Untuk mendefinisikan transformasi Fourier kuantum, kita akan terlebih dahulu mendefinisikan nombor kompleks ωN,\omega_N, untuk setiap integer positif N,N, seperti ini:

ωN=e2πiN=cos(2πN)+isin(2πN).\omega_N = e^{\frac{2\pi i}{N}} = \cos\left(\frac{2\pi}{N}\right) + i \sin\left(\frac{2\pi}{N}\right).

Ini adalah nombor pada bulatan unit kompleks yang kita perolehi jika kita bermula pada 11 dan bergerak mengikut arah lawan jam pada sudut 2π/N2\pi/N radian, atau pecahan 1/N1/N lilitan bulatan. Berikut adalah beberapa contoh:

ω1=1ω2=1ω3=12+32iω4=iω8=1+i2ω16=2+22+222iω1000.998+0.063i\begin{gathered} \omega_1 = 1\\[1mm] \omega_2 = -1\\[1mm] \omega_3 = -\frac{1}{2} + \frac{\sqrt{3}}{2} i\\[2mm] \omega_4 = i\\[1mm] \omega_8 = \frac{1+i}{\sqrt{2}}\\[3mm] \omega_{16} = \frac{\sqrt{2 + \sqrt{2}}}{2} + \frac{\sqrt{2 - \sqrt{2}}}{2} i\\[2mm] \omega_{100} \approx 0.998 + 0.063 i \end{gathered}

Sekarang kita boleh mendefinisikan transformasi Fourier kuantum NN-dimensi, yang dihuraikan oleh matriks N×NN\times N yang baris dan lajurnya dikaitkan dengan keadaan asas standard 0,,N1.\vert 0\rangle,\ldots,\vert N-1\rangle. Kita hanya akan memerlukan operasi ini untuk apabila N=2mN = 2^m adalah kuasa 22 untuk anggaran fasa, tetapi operasi ini boleh ditakrifkan untuk sebarang integer positif N.N.

QFTN=1Nx=0N1y=0N1ωNxyxy\mathrm{QFT}_N = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \sum_{y = 0}^{N-1} \omega_N^{xy} \vert x \rangle\langle y\vert

Seperti yang telah dinyatakan, ini adalah matriks yang berkaitan dengan transformasi Fourier diskret NN-dimensi. Selalunya faktor pendahulu 1/N1/\sqrt{N} tidak disertakan dalam definisi matriks ini, tetapi kita perlu menyertakannya untuk mendapatkan matriks uniter.

Berikut adalah transformasi Fourier kuantum, ditulis sebagai matriks, untuk beberapa nilai kecil N.N.

QFT1=(1)\mathrm{QFT}_1 = \begin{pmatrix} 1 \end{pmatrix} QFT2=12(1111)\mathrm{QFT}_2 = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 1\\[1mm] 1 & -1 \end{pmatrix} QFT3=13(11111+i321i3211i321+i32)\mathrm{QFT}_3 = \frac{1}{\sqrt{3}} \begin{pmatrix} 1 & 1 & 1\\[2mm] 1 & \frac{-1 + i\sqrt{3}}{2} & \frac{-1 - i\sqrt{3}}{2}\\[2mm] 1 & \frac{-1 - i\sqrt{3}}{2} & \frac{-1 + i\sqrt{3}}{2} \end{pmatrix} QFT4=12(11111i1i11111i1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix} QFT8=122(1111111111+i2i1+i211i2i1i21i1i1i1i11+i2i1+i211i2i1i21111111111i2i1i211+i2i1+i21i1i1i1i11i2i1i211+i2i1+i2)\mathrm{QFT}_8 = \frac{1}{2\sqrt{2}} \begin{pmatrix} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\[2mm] 1 & \frac{1+i}{\sqrt{2}} & i & \frac{-1+i}{\sqrt{2}} & -1 & \frac{-1-i}{\sqrt{2}} & -i & \frac{1-i}{\sqrt{2}}\\[2mm] 1 & i & -1 & -i & 1 & i & -1 & -i\\[2mm] 1 & \frac{-1+i}{\sqrt{2}} & -i & \frac{1+i}{\sqrt{2}} & -1 & \frac{1-i}{\sqrt{2}} & i & \frac{-1-i}{\sqrt{2}}\\[2mm] 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\[2mm] 1 & \frac{-1-i}{\sqrt{2}} & i & \frac{1-i}{\sqrt{2}} & -1 & \frac{1+i}{\sqrt{2}} & -i & \frac{-1+i}{\sqrt{2}}\\[2mm] 1 & -i & -1 & i & 1 & -i & -1 & i\\[2mm] 1 & \frac{1-i}{\sqrt{2}} & -i & \frac{-1-i}{\sqrt{2}} & -1 & \frac{-1+i}{\sqrt{2}} & i & \frac{1+i}{\sqrt{2}}\\[2mm] \end{pmatrix}

Perhatikan, khususnya, bahawa QFT2\mathrm{QFT}_2 adalah nama lain untuk operasi Hadamard.

Keuniterian

Mari kita semak bahawa QFTN\mathrm{QFT}_N adalah uniter, untuk sebarang pilihan N.N. Salah satu cara untuk melakukan ini adalah dengan menunjukkan bahawa lajur-lajurnya membentuk asas ortonormal. Kita boleh mendefinisikan vektor yang sepadan dengan lajur nombor y,y, bermula dari y=0y = 0 hingga y=N1,y = N-1, seperti ini:

ϕy=1Nx=0N1ωNxyx.\vert\phi_y\rangle = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \omega_N^{xy} \vert x \rangle.

Mengambil hasil darab dalam antara mana-mana dua vektor ini memberikan kita ungkapan ini:

ϕzϕy=1Nx=0N1ωNx(yz)\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \sum_{x = 0}^{N-1} \omega_N^{x (y - z)}

Kita boleh menilai jumlah seperti ini menggunakan formula berikut untuk jumlah NN sebutan pertama siri geometri.

1+α+α2++αN1={αN1α1if α1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Khususnya, kita boleh menggunakan formula ini apabila α=ωNyz.\alpha = \omega_N^{y-z}. Apabila y=z,y = z, kita mempunyai α=1,\alpha = 1, jadi menggunakan formula dan membahagi dengan NN memberikan

ϕyϕy=1.\langle \phi_y \vert \phi_y \rangle = 1.

Apabila yz,y\neq z, kita mempunyai α1,\alpha \neq 1, jadi formula mendedahkan ini:

ϕzϕy=1NωNN(yz)1ωNyz1=1N11ωNyz1=0.\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \frac{\omega_N^{N(y-z)} - 1}{\omega_N^{y-z} - 1} = \frac{1}{N} \frac{1 - 1}{\omega_N^{y-z} - 1} = 0.

Ini berlaku kerana ωNN=e2πi=1,\omega_N^N = e^{2\pi i} = 1, jadi ωNN(yz)=1yz=1,\omega_N^{N(y-z)} = 1^{y-z} = 1, menjadikan pengangka sifar, manakala penyebut bukan sifar kerana ωNyz1.\omega_N^{y-z} \neq 1. Secara intuitif, apa yang kita lakukan adalah menjumlahkan sekumpulan titik yang diedarkan di sekitar bulatan unit, dan mereka saling menghapuskan dan meninggalkan 00 apabila dijumlahkan.

Dengan itu kita telah membuktikan bahawa {ϕ0,,ϕN1}\{\vert\phi_0\rangle,\ldots,\vert\phi_{N-1}\rangle\} adalah set ortonormal,

ϕzϕy={1y=z0yz,\langle \phi_z \vert \phi_y \rangle = \begin{cases} 1 & y=z\\ 0 & y\neq z, \end{cases}

yang mendedahkan bahawa QFTN\mathrm{QFT}_N adalah uniter.

get fasa terkawal

Untuk mengimplementasikan transformasi Fourier kuantum dengan litar kuantum, kita perlu menggunakan get fasa terkawal. Ingat bahawa operasi fasa adalah operasi uniter satu-qubit berbentuk

Pα=(100eiα)P_{\alpha} = \begin{pmatrix} 1 & 0\\[1mm] 0 & e^{i\alpha} \end{pmatrix}

untuk sebarang nombor nyata α.\alpha. Versi terkawal get ini mempunyai matriks berikut:

CPα=(100001000010000eiα)CP_{\alpha} = \begin{pmatrix} 1 & 0 & 0 & 0\\[1mm] 0 & 1 & 0 & 0\\[1mm] 0 & 0 & 1 & 0\\[1mm] 0 & 0 & 0 & e^{i\alpha} \end{pmatrix}

Untuk get terkawal ini, sebenarnya tidak kira qubit mana yang menjadi kawalan dan mana yang menjadi sasaran kerana kedua-dua kemungkinan adalah setara. Kita boleh menggunakan mana-mana simbol berikut untuk mewakili get ini dalam gambar rajah litar kuantum.

Perwakilan gambar rajah litar kuantum untuk get fasa terkawal

Untuk bentuk ketiga, label α\alpha juga kadangkala diletakkan di sisi garis kawalan atau di bawah kawalan bawah apabila itu lebih sesuai.

Untuk melaksanakan transformasi Fourier kuantum apabila N=2mN = 2^m dan m2,m\geq 2, kita perlu melaksanakan operasi pada mm qubit yang tindakannya pada keadaan asas standard boleh dihuraikan sebagai

yaω2mayya,\vert y \rangle \vert a \rangle \mapsto \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle,

di mana aa adalah bit dan y{0,,2m11}y \in \{0,\ldots,2^{m-1} - 1\} adalah nombor yang dikodkan dalam notasi binari sebagai rentetan m1m-1 bit. Ini boleh dilakukan menggunakan get fasa terkawal dengan menggeneralisasi contoh berikut, untuk m=5.m=5.

Gambar rajah litar kuantum untuk suntikan fasa

Secara umum, untuk pilihan sewenang-wenang m2,m\geq 2, qubit atas yang sepadan dengan bit aa boleh dilihat sebagai kawalan, dengan get fasa PαP_{\alpha} berkisar dari α=π/2m1\alpha = \pi/2^{m-1} pada qubit yang sepadan dengan bit paling tidak signifikan bagi yy ke α=π2\alpha = \frac{\pi}{2} pada qubit yang sepadan dengan bit paling signifikan bagi y.y. Semua get fasa terkawal ini bolak-balik antara satu sama lain dan boleh dilaksanakan dalam sebarang urutan.

Implementasi litar bagi QFT

Sekarang kita akan melihat bagaimana kita boleh mengimplementasikan transformasi Fourier kuantum dengan litar apabila dimensi N=2mN = 2^m adalah kuasa 2.2. Sebenarnya, terdapat pelbagai cara untuk mengimplementasikan transformasi Fourier kuantum, tetapi ini boleh dibilang kaedah paling mudah yang diketahui. Setelah kita mengetahui cara mengimplementasikan transformasi Fourier kuantum dengan litar kuantum, adalah mudah untuk mengimplementasikan songsangannya: kita boleh menggantikan setiap get dengan songsangannya (atau, secara setara, konjugat transpose) dan menggunakan get dalam urutan terbalik. Setiap litar kuantum yang terdiri daripada get uniter sahaja boleh disongsangkan dengan cara ini.

Implementasi ini bersifat rekursif, jadi itulah cara paling semula jadi untuk menerangkannya. Kes asas adalah m=1,m=1, dalam kes ini transformasi Fourier kuantum adalah operasi Hadamard.

Untuk melaksanakan transformasi Fourier kuantum pada mm qubit apabila m2,m \geq 2, kita boleh melaksanakan langkah-langkah berikut, yang tindakannya akan kita huraikan untuk keadaan asas standard berbentuk xa,\vert x \rangle \vert a\rangle, di mana x{0,,2m11}x\in\{0,\ldots,2^{m-1} - 1\} adalah integer yang dikodkan sebagai m1m-1 bit menggunakan notasi binari dan aa adalah satu bit.

  1. Pertama terapkan transformasi Fourier kuantum 2m12^{m-1}-dimensi kepada m1m-1 qubit bawah/paling kiri untuk mendapatkan keadaan ini:

    (QFT2m1x)a=12m1y=02m11ω2m1xyya.\Bigl(\mathrm{QFT}_{2^{m-1}} \vert x \rangle\Bigr) \vert a\rangle = \frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \vert y \rangle \vert a \rangle.

    Ini dilakukan dengan menerapkan secara rekursif kaedah yang dihuraikan untuk satu qubit lebih sedikit, menggunakan operasi Hadamard pada satu qubit sebagai kes asas.

  2. Gunakan qubit atas/paling kanan sebagai kawalan untuk menyuntik fasa ω2my\omega_{2^m}^y untuk setiap keadaan asas standard y\vert y\rangle bagi m1m-1 qubit yang tinggal (seperti yang dihuraikan di atas) untuk mendapatkan keadaan ini:

    12m1y=02m11ω2m1xyω2mayya.\frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle.
  3. Laksanakan get Hadamard pada qubit atas/paling kanan untuk mendapatkan keadaan ini:

    12my=02m11b=01(1)abω2m1xyω2mayyb.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert b \rangle.
  4. Permutasikan susunan qubit supaya bit paling tidak signifikan menjadi bit paling signifikan, dengan semua yang lain digeser ke atas/kanan:

    12my=02m11b=01(1)abω2m1xyω2mayby.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b \rangle \vert y \rangle.

Sebagai contoh, berikut adalah litar yang kita perolehi untuk N=32=25.N = 32 = 2^5. Dalam gambar rajah ini, qubit diberi nama yang sepadan dengan vektor asas standard xa\vert x\rangle \vert a\rangle (untuk input) dan by\vert b\rangle \vert y\rangle (untuk output) untuk kejelasan.

Gambar rajah litar kuantum untuk transformasi Fourier kuantum 32-dimensi

Analisis

Formula utama yang kita perlukan untuk mengesahkan bahawa litar yang baru dihuraikan mengimplementasikan transformasi Fourier kuantum 2m2^m-dimensi adalah ini:

(1)abω2m1xyω2may=ω2m(2x+a)(2m1b+y).(-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} = \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)}.

Formula ini berfungsi untuk sebarang pilihan integer a,a, b,b, x,x, dan y,y, tetapi kita hanya memerlukannya untuk a,b{0,1}a,b\in\{0,1\} dan x,y{0,,2m11}.x,y\in\{0,\ldots,2^{m-1}-1\}. Ia boleh disemak dengan mengembangkan hasil darab dalam eksponen pada bahagian kanan,

ω2m(2x+a)(2m1b+y)=ω2m2mxbω2m2xyω2m2m1abω2may=(1)abω2m1xyω2may, \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} = \omega_{2^m}^{2^m xb} \omega_{2^m}^{2xy} \omega_{2^m}^{2^{m-1}ab} \omega_{2^m}^{ay} = (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay},

di mana kesamaan kedua menggunakan pemerhatian bahawa

ω2m2mxb=(ω2m2m)xb=1xb=1.\omega_{2^m}^{2^m xb} = \bigl(\omega_{2^m}^{2^m}\bigr)^{xb} = 1^{xb} = 1.

Transformasi Fourier kuantum 2m2^m-dimensi ditakrifkan seperti berikut untuk setiap u{0,,2m1}.u\in\{0,\ldots,2^m - 1\}.

QFT2mu=12mv=02m1ω2muvv\mathrm{QFT}_{2^m} \vert u\rangle = \frac{1}{\sqrt{2^m}} \sum_{v = 0}^{2^m - 1} \omega_{2^m}^{uv} \vert v\rangle

Jika kita menulis uu dan vv sebagai

u=2x+av=2m1b+y\begin{aligned} u & = 2x + a\\ v & = 2^{m-1}b + y \end{aligned}

untuk a,b{0,1}a,b\in\{0,1\} dan x,y{0,,2m11},x,y\in\{0,\ldots,2^{m-1} - 1\}, kita memperoleh

QFT2m2x+a=12my=02m11b=01ω2m(2x+a)(2m1b+y)b2m1+y=12my=02m11b=01(1)abω2m1xyω2mayb2m1+y.\begin{aligned} \mathrm{QFT}_{2^m} \vert 2x + a\rangle & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} \vert b 2^{m-1} + y\rangle\\[2mm] & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b 2^{m-1} + y\rangle. \end{aligned}

Akhirnya, dengan memikirkan keadaan asas standard xa\vert x \rangle \vert a\rangle dan by\vert b \rangle \vert y \rangle sebagai pengekodan binari integer dalam julat {0,,2m1},\{0,\ldots,2^m-1\},

xa=2x+aby=2m1b+y,\begin{aligned} \vert x \rangle \vert a\rangle & = \vert 2x + a \rangle\\ \vert b \rangle \vert y \rangle & = \vert 2^{m-1}b + y\rangle, \end{aligned}

kita melihat bahawa litar di atas mengimplementasikan operasi yang diperlukan. Jika kaedah untuk melaksanakan transformasi Fourier kuantum ini kelihatan luar biasa, itu kerana ia memang begitu: ia pada dasarnya adalah transformasi Fourier pantas dalam bentuk litar kuantum.

Akhirnya, mari kita kira berapa banyak get yang digunakan dalam litar yang baru dihuraikan. get fasa terkawal tidak berada dalam set get standard yang kita bincangkan dalam pelajaran sebelumnya, tetapi untuk memulakan kita akan mengabaikan ini dan mengira setiap satunya sebagai satu get.

Katakan sms_m menandakan bilangan get yang kita perlukan untuk setiap pilihan mm yang mungkin. Jika m=1,m=1, transformasi Fourier kuantum hanyalah operasi Hadamard, jadi

s1=1.s_1 = 1.

Jika m2,m\geq 2, maka dalam litar di atas kita memerlukan sm1s_{m-1} get untuk transformasi Fourier kuantum pada m1m-1 qubit, ditambah m1m-1 get fasa terkawal, ditambah satu get Hadamard, ditambah m1m-1 get swap, jadi

sm=sm1+(2m1).s_m = s_{m-1} + (2m - 1).

Kita boleh mendapatkan ungkapan bentuk tertutup dengan menjumlahkan:

sm=k=1m(2k1)=m2.s_m = \sum_{k = 1}^m (2k - 1) = m^2.

Kita sebenarnya tidak memerlukan sebanyak get swap seperti yang dihuraikan kaedah ini. Jika kita menyusun semula get sedikit, kita boleh menolak semua get swap ke kanan dan mengurangkan bilangan get swap yang diperlukan kepada m/2.\lfloor m/2\rfloor. Secara asimptotik ini bukan peningkatan besar: kita masih mendapat litar bersaiz O(m2)O(m^2) untuk melaksanakan QFT2m.\mathrm{QFT}_{2^m}.

Jika kita ingin mengimplementasikan transformasi Fourier kuantum menggunakan hanya get daripada set get standard kita, kita perlu sama ada membina atau menganggar setiap get fasa terkawal dengan get dari set kita. Bilangan yang diperlukan bergantung pada berapa banyak ketepatan yang kita perlukan, tetapi sebagai fungsi mm jumlah kos kekal kuadratik.

Malah, adalah mungkin untuk menganggar transformasi Fourier kuantum dengan sangat tepat menggunakan bilangan get sub-kuadratik dengan menggunakan fakta bahawa PαP_{\alpha} sangat hampir dengan operasi identiti apabila α\alpha sangat kecil — yang bermakna kita boleh meninggalkan kebanyakan get fasa terkawal tanpa mengalami terlalu banyak kehilangan dari segi ketepatan.

Prosedur umum dan analisis

Sekarang kita akan meneliti prosedur anggaran fasa secara umum. Ideanya adalah untuk memperluaskan versi dua-qubit bagi anggaran fasa yang kita pertimbangkan di atas, mengikut cara yang dicadangkan oleh rajah berikut.

Prosedur anggaran fasa

Perhatikan bahawa, bagi setiap qubit kawalan baru yang ditambah di bahagian atas, kita menggandakan bilangan kali operasi uniter UU dilaksanakan. Ini ditunjukkan dalam rajah melalui kuasa pada UU bagi setiap operasi uniter terkawal.

Cara paling mudah untuk melaksanakan operasi UkU^k terkawal bagi sesuatu pilihan kk ialah dengan hanya mengulangi operasi UU terkawal sebanyak kk kali. Jika inilah metodologi yang digunakan, perlu diakui bahawa penambahan qubit kawalan menyumbang secara ketara kepada saiz litar: jika kita mempunyai mm qubit kawalan, seperti yang digambarkan dalam rajah, sejumlah 2m12^m - 1 salinan operasi UU terkawal diperlukan. Ini bermakna kos pengiraan yang besar ditanggung apabila mm meningkat — tetapi seperti yang akan kita lihat, ia juga menghasilkan penghampiran θ\theta yang jauh lebih tepat.

Namun penting untuk diingat bahawa bagi sesetengah pilihan UU, mungkin terdapat cara untuk mencipta litar yang melaksanakan operasi UkU^k bagi nilai kk yang besar dengan cara yang lebih cekap daripada sekadar mengulangi litar untuk UU sebanyak kk kali. Kita akan melihat contoh khusus ini dalam konteks pemfaktoran integer kemudian dalam pelajaran ini, di mana algoritma cekap untuk pemangkinan modular yang dibincangkan dalam pelajaran sebelumnya datang menyelamatkan.

Sekarang mari kita analisis litar yang baru diterangkan. Keadaan sejurus sebelum jelmaan Fourier kuantum songsang kelihatan seperti ini:

12mx=02m1(Uxψ)x=ψ12mx=02m1e2πixθx.\frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \bigl( U^x \vert\psi\rangle \bigr) \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i x\theta} \vert x\rangle.

Kes khas

Selaras dengan apa yang kita lakukan dalam kes m=2m=2, kita akan mempertimbangkan dahulu kes khas di mana θ=y/2m\theta = y/2^m untuk y{0,,2m1}.y\in\{0,\ldots,2^m-1\}. Dalam kes ini, keadaan sebelum jelmaan Fourier kuantum songsang boleh ditulis semula seperti ini:

ψ12mx=02m1e2πixy2mx=ψ12mx=02m1ω2mxyx=ψQFT2my.\vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i \frac{xy}{2^m}} \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \omega_{2^m}^{xy} \vert x\rangle = \vert\psi\rangle \otimes \mathrm{QFT}_{2^m} \vert y\rangle.

Jadi, apabila jelmaan Fourier kuantum songsang digunakan, keadaan menjadi

ψy\vert\psi\rangle \vert y\rangle

dan pengukuran mendedahkan yy (dikodkan dalam perduaan).

Membatasi kebarangkalian

Bagi nilai θ\theta yang lain, iaitu yang tidak berbentuk y/2my/2^m untuk integer yy, hasil pengukuran tidak akan pasti, tetapi kita boleh membuktikan batas ke atas kebarangkalian bagi hasil yang berbeza. Seterusnya, mari kita pertimbangkan pilihan θ\theta sembarangan yang memenuhi 0θ<1.0\leq \theta < 1.

Setelah jelmaan Fourier kuantum songsang dilaksanakan, keadaan litar adalah:

ψ12my=02m1x=02m1e2πix(θy/2m)y.\vert \psi \rangle \otimes \frac{1}{2^m} \sum_{y=0}^{2^m - 1} \sum_{x=0}^{2^m-1} e^{2\pi i x (\theta - y/2^m)} \vert y\rangle.

Jadi, apabila pengukuran ke atas mm qubit teratas dilakukan, kita melihat setiap hasil yy dengan kebarangkalian

py=12mx=02m1e2πix(θy/2m)2.p_y = \left\vert \frac{1}{2^m} \sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} \right\vert^2.

Untuk memahami kebarangkalian ini dengan lebih baik, kita akan menggunakan formula yang sama seperti sebelum ini, untuk jumlah bahagian awal siri geometri.

1+α+α2++αN1={αN1α1if α1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Kita boleh memudahkan jumlah yang muncul dalam formula untuk pyp_y dengan mengambil α=e2πi(θy/2m).\alpha = e^{2\pi i (\theta - y/2^m)}. Inilah yang kita perolehi.

x=02m1e2πix(θy/2m)={2mθ=y/2me2πi(2mθy)1e2πi(θy/2m)1θy/2m\sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} = \begin{cases} 2^m & \theta = y/2^m\\[2mm] \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1} & \theta\neq y/2^m \end{cases}

Jadi, dalam kes θ=y/2m\theta = y/2^m, kita dapati py=1p_y = 1 (seperti yang sudah kita ketahui daripada kes khas ini), dan dalam kes θy/2m\theta \neq y/2^m, kita dapati bahawa

py=122me2πi(2mθy)1e2πi(θy/2m)12.p_y = \frac{1}{2^{2m}} \left\vert \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1}\right\vert^2.

Kita boleh mengetahui lebih lanjut tentang kebarangkalian ini dengan memikirkan hubungan antara panjang lengkok dan panjang perentas pada bulatan unit. Berikut adalah rajah yang menggambarkan hubungan yang diperlukan untuk sebarang nombor nyata δ[12,12].\delta\in \bigl[ -\frac{1}{2},\frac{1}{2}\bigr].

Ilustrasi hubungan antara panjang lengkok dan perentas

Pertama, panjang perentas (dilukis dalam biru) tidak mungkin lebih besar daripada panjang lengkok (dilukis dalam ungu):

e2πiδ12πδ.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \leq 2\pi\vert\delta\vert.

Menghubungkan panjang-panjang ini dari arah sebaliknya, kita lihat bahawa nisbah panjang lengkok kepada panjang perentas adalah paling besar apabila δ=±1/2\delta = \pm 1/2, dan dalam kes ini nisbahnya ialah separuh lilitan bulatan dibahagikan dengan diameter, iaitu π/2.\pi/2. Oleh itu, kita mempunyai

2πδe2πiδ1π2,\frac{2\pi\vert\delta\vert}{\bigl\vert e^{2\pi i \delta} - 1\bigr\vert} \leq \frac{\pi}{2},

dan oleh itu

e2πiδ14δ.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \geq 4\vert\delta\vert.

Analisis berdasarkan hubungan ini mendedahkan dua fakta berikut.

  1. Andaikan θ\theta adalah nombor nyata dan y{0,,2m1}y\in \{0,\ldots,2^m-1\} memenuhi

    θy2m2(m+1).\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq 2^{-(m+1)}.

    Ini bermakna y/2my/2^m sama ada merupakan penghampiran mm-bit terbaik kepada θ\theta, atau ia berada tepat di tengah-tengah antara y/2my/2^m dengan sama ada (y1)/2m(y-1)/2^m atau (y+1)/2m(y+1)/2^m, jadi ia adalah salah satu daripada dua penghampiran terbaik kepada θ.\theta.

    Kita akan buktikan bahawa pyp_y mestilah agak besar dalam kes ini. Berdasarkan andaian yang kita pertimbangkan, ia mengikut bahawa 2mθy1/2,\vert 2^m \theta - y \vert \leq 1/2, jadi kita boleh menggunakan pemerhatian kedua di atas tentang panjang lengkok dan perentas untuk menyimpulkan bahawa

    e2πi(2mθy)142mθy=42mθy2m.\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \geq 4 \vert 2^m \theta - y \vert = 4 \cdot 2^m \cdot \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Kita juga boleh menggunakan pemerhatian pertama tentang panjang lengkok dan perentas untuk menyimpulkan bahawa

    e2πi(θy/2m)12πθy2m.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \leq 2\pi \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Menggunakan kedua-dua ketaksamaan ini pada pyp_y mendedahkan

    py122m1622m4π2=4π20.405.p_y \geq \frac{1}{2^{2m}} \frac{16 \cdot 2^{2m}}{4 \pi^2} = \frac{4}{\pi^2} \approx 0.405.

    Ini menjelaskan pemerhatian kita bahawa hasil terbaik berlaku dengan kebarangkalian lebih daripada 40%40\% dalam versi m=2m=2 bagi anggaran fasa yang dibincangkan sebelum ini. Bukan benar-benar 40%40\%, ia adalah 4/π24/\pi^2, dan sebenarnya batas ini berlaku untuk setiap pilihan m.m.

  2. Sekarang andaikan y{0,,2m1}y\in \{0,\ldots,2^m-1\} memenuhi

    2mθy2m12.2^{-m} \leq \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq \frac{1}{2}.

    Ini bermakna terdapat penghampiran yang lebih baik z/2mz/2^m kepada θ\theta di antara θ\theta dan y/2m.y/2^m.

    Kali ini kita akan buktikan bahawa pyp_y tidak boleh terlalu besar. Kita boleh mulakan dengan pemerhatian mudah bahawa

    e2πi(2mθy)12,\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \leq 2,

    yang terhasil daripada fakta bahawa mana-mana dua titik pada bulatan unit boleh berbeza dalam nilai mutlak sebanyak-banyaknya 2.2.

    Kita juga boleh menggunakan pemerhatian kedua tentang panjang lengkok dan perentas dari atas, kali ini bekerja dengan penyebut pyp_y dan bukannya pengangka, untuk menyimpulkan

    e2πi(θy/2m)14θy2m42m.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \geq 4\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \geq 4 \cdot 2^{-m}.

    Menggabungkan kedua-dua ketaksamaan mendedahkan

    py122m41622m=14.p_y \leq \frac{1}{2^{2m}} \frac{4}{16 \cdot 2^{-2m}} = \frac{1}{4}.

    Perlu diingat bahawa walaupun batas ini cukup baik untuk tujuan kita, ia agak kasar — kebarangkalian biasanya jauh lebih rendah daripada 1/4.1/4.

Kesimpulan penting daripada analisis ini ialah penghampiran yang sangat dekat kepada θ\theta cenderung berlaku — kita akan mendapat penghampiran mm-bit terbaik dengan kebarangkalian lebih daripada 40%40\% — manakala penghampiran yang tersasar lebih daripada 2m2^{-m} kurang cenderung berlaku, dengan kebarangkalian dibatasi oleh 25%.25\%.

Memandangkan jaminan ini, adalah mungkin untuk meningkatkan keyakinan kita dengan mengulangi prosedur anggaran fasa beberapa kali, untuk mengumpul bukti statistik tentang θ.\theta. Penting untuk diingat bahawa keadaan ψ\vert\psi\rangle bagi koleksi qubit bahagian bawah tidak berubah melalui prosedur anggaran fasa, jadi ia boleh digunakan untuk menjalankan prosedur sebanyak yang kita suka. Khususnya, setiap kali kita menjalankan litar, kita mendapat penghampiran mm-bit terbaik kepada θ\theta dengan kebarangkalian lebih daripada 40%40\%, manakala kebarangkalian tersasar lebih daripada 2m2^{-m} dibatasi oleh 25%.25\%. Jika kita menjalankan litar beberapa kali dan mengambil hasil yang paling kerap muncul, maka sangat berkemungkinan hasil yang paling kerap muncul bukanlah hasil yang berlaku paling banyak 25%25\% daripada masa. Akibatnya, kita akan sangat berkemungkinan memperolehi penghampiran y/2my/2^m yang berada dalam jarak 1/2m1/2^m daripada nilai θ.\theta. Sememangnya, peluang kecil bahawa kita tersasar lebih daripada 1/2m1/2^m berkurangan secara eksponen dengan bilangan kali prosedur dijalankan.

Berikut adalah dua plot yang menunjukkan kebarangkalian bagi tiga nilai berturutan yy apabila m=3m = 3 dan m=4m=4 sebagai fungsi θ.\theta. (Hanya tiga hasil ditunjukkan untuk kejelasan. Kebarangkalian untuk hasil lain diperoleh dengan menggeser secara berkitar fungsi pendasar yang sama.)

Plot menunjukkan kebarangkalian hasil untuk anggaran fasa tiga-qubit

Plot menunjukkan kebarangkalian hasil untuk anggaran fasa empat-qubit