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 Circuit 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 Circuit kuantum bersatu untuk operasi U.U. Kita boleh menggunakan huraian Circuit ini untuk mencipta Circuit bagi operasi controlled-UU, yang boleh digambarkan seperti yang dicadangkan oleh rajah ini (dengan operasi U,U, dilihat sebagai Gate kuantum, di sebelah kiri dan operasi controlled-UU di sebelah kanan).

Versi tidak dikawal dan dikawal bagi operasi bersatu

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

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

Circuit satu-Qubit untuk anggaran fasa

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

Keadaan Circuit satu-Qubit untuk anggaran fasa

Keadaan awal Circuit adalah

βˆ£Ο€0⟩=∣ψ⟩∣0⟩\vert\pi_0\rangle = \vert\psi\rangle \vert 0\rangle

dan Gate 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⟩=βˆ£ΟˆβŸ©βŠ—(12∣0⟩+e2Ο€iΞΈ2∣1⟩)\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 Gate pertanyaan β€” tetapi ideanya adalah serupa.

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

βˆ£Ο€3⟩=βˆ£ΟˆβŸ©βŠ—(1+e2Ο€iΞΈ2∣0⟩+1βˆ’e2Ο€iΞΈ2∣1⟩)\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ΞΈ2∣2=cos⁑2(πθ)p1=∣1βˆ’e2Ο€iΞΈ2∣2=sin⁑2(πθ).\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 Circuit mana satu yang betul tanpa ralat.

Secara intuitif, kita boleh menganggap keputusan pengukuran Circuit 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 Gate Hadamard dalam prosedur ini:

  • Gate 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.

  • Gate Hadamard kedua membolehkan kita mempelajari sesuatu tentang nombor ΞΈ\theta melalui fenomena interferens. Sebelum Gate Hadamard kedua, keadaan Qubit atas adalah

    12∣0⟩+e2Ο€iΞΈ2∣1⟩,\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 Gate Hadamard kedua, kita menyebabkan nombor ΞΈ\theta mempengaruhi kebarangkalian output.

Menggandakan fasa​

Circuit 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 Circuit kita dengan dua salinan operasi ini, seperti dalam Circuit 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 Circuit 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.a2a3β‹―2\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 Circuit 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 Circuit seperti ini.

Persediaan awal untuk anggaran fasa dengan dua Qubit

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

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

Keadaan untuk anggaran fasa dengan dua Qubit

Kita boleh menulis keadaan βˆ£Ο€1⟩\vert\pi_1\rangle seperti ini:

βˆ£Ο€1⟩=βˆ£ΟˆβŸ©βŠ—12βˆ‘a0=01βˆ‘a1=01∣a1a0⟩.\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⟩=βˆ£ΟˆβŸ©βŠ—12βˆ‘a0=01βˆ‘a1=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.

Gate 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⟩=βˆ£ΟˆβŸ©βŠ—12βˆ‘a0=01βˆ‘a1=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⟩=βˆ£ΟˆβŸ©βŠ—12βˆ‘x=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⟩=12βˆ‘x=03e2Ο€ix(y4)∣x⟩=12βˆ‘x=03e2Ο€ixy4∣x⟩\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⟩=12∣0⟩+12∣1⟩+12∣2⟩+12∣3βŸ©βˆ£Ο•1⟩=12∣0⟩+i2∣1βŸ©βˆ’12∣2βŸ©βˆ’i2∣3βŸ©βˆ£Ο•2⟩=12∣0βŸ©βˆ’12∣1⟩+12∣2βŸ©βˆ’12∣3βŸ©βˆ£Ο•3⟩=12∣0βŸ©βˆ’i2∣1βŸ©βˆ’12∣2⟩+i2∣3⟩\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 Circuit kuantum, kita boleh terlebih dahulu mendefinisikan operasi uniter VV yang mengubah keadaan asas standard menjadi empat keadaan yang disenaraikan di atas.

V∣00⟩=βˆ£Ο•0⟩V∣01⟩=βˆ£Ο•1⟩V∣10⟩=βˆ£Ο•2⟩V∣11⟩=βˆ£Ο•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(11111iβˆ’1βˆ’i1βˆ’11βˆ’11βˆ’iβˆ’1i)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(11111iβˆ’1βˆ’i1βˆ’11βˆ’11βˆ’iβˆ’1i)\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 Circuit kuantum yang melakukan ini.

Anggaran fasa dengan dua Qubit

Untuk merumuskan, jika kita menjalankan Circuit 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.

Circuit 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 Circuit 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 Circuit 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 Circuit 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+2βˆ’22iΟ‰100β‰ˆ0.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⟩,…,∣Nβˆ’1⟩.\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=1Nβˆ‘x=0Nβˆ’1βˆ‘y=0Nβˆ’1Ο‰Nxy∣x⟩⟨y∣\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(111βˆ’1)\mathrm{QFT}_2 = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 1\\[1mm] 1 & -1 \end{pmatrix} QFT3=13(1111βˆ’1+i32βˆ’1βˆ’i321βˆ’1βˆ’i32βˆ’1+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(11111iβˆ’1βˆ’i1βˆ’11βˆ’11βˆ’iβˆ’1i)\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+i2iβˆ’1+i2βˆ’1βˆ’1βˆ’i2βˆ’i1βˆ’i21iβˆ’1βˆ’i1iβˆ’1βˆ’i1βˆ’1+i2βˆ’i1+i2βˆ’11βˆ’i2iβˆ’1βˆ’i21βˆ’11βˆ’11βˆ’11βˆ’11βˆ’1βˆ’i2i1βˆ’i2βˆ’11+i2βˆ’iβˆ’1+i21βˆ’iβˆ’1i1βˆ’iβˆ’1i11βˆ’i2βˆ’iβˆ’1βˆ’i2βˆ’1βˆ’1+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=Nβˆ’1,y = N-1, seperti ini:

βˆ£Ο•y⟩=1Nβˆ‘x=0Nβˆ’1Ο‰Nxy∣x⟩.\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⟩=1Nβˆ‘x=0Nβˆ’1Ο‰Nx(yβˆ’z)\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+β‹―+Ξ±Nβˆ’1={Ξ±Nβˆ’1Ξ±βˆ’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 Ξ±=Ο‰Nyβˆ’z.\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 y≠z,y\neq z, kita mempunyai α≠1,\alpha \neq 1, jadi formula mendedahkan ini:

βŸ¨Ο•zβˆ£Ο•y⟩=1NΟ‰NN(yβˆ’z)βˆ’1Ο‰Nyβˆ’zβˆ’1=1N1βˆ’1Ο‰Nyβˆ’zβˆ’1=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(yβˆ’z)=1yβˆ’z=1,\omega_N^{N(y-z)} = 1^{y-z} = 1, menjadikan pengangka sifar, manakala penyebut bukan sifar kerana Ο‰Nyβˆ’zβ‰ 1.\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⟩,…,βˆ£Ο•Nβˆ’1⟩}\{\vert\phi_0\rangle,\ldots,\vert\phi_{N-1}\rangle\} adalah set ortonormal,

βŸ¨Ο•zβˆ£Ο•y⟩={1y=z0yβ‰ z,\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.

Gate fasa terkawal​

Untuk mengimplementasikan transformasi Fourier kuantum dengan Circuit kuantum, kita perlu menggunakan Gate 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 Gate 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 Gate 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 Gate ini dalam gambar rajah Circuit kuantum.

Perwakilan gambar rajah Circuit kuantum untuk Gate 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 mβ‰₯2,m\geq 2, kita perlu melaksanakan operasi pada mm Qubit yang tindakannya pada keadaan asas standard boleh dihuraikan sebagai

∣y⟩∣aβŸ©β†¦Ο‰2may∣y⟩∣a⟩,\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,…,2mβˆ’1βˆ’1}y \in \{0,\ldots,2^{m-1} - 1\} adalah nombor yang dikodkan dalam notasi binari sebagai rentetan mβˆ’1m-1 bit. Ini boleh dilakukan menggunakan Gate fasa terkawal dengan menggeneralisasi contoh berikut, untuk m=5.m=5.

Gambar rajah Circuit kuantum untuk suntikan fasa

Secara umum, untuk pilihan sewenang-wenang mβ‰₯2,m\geq 2, Qubit atas yang sepadan dengan bit aa boleh dilihat sebagai kawalan, dengan Gate fasa PΞ±P_{\alpha} berkisar dari Ξ±=Ο€/2mβˆ’1\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 Gate fasa terkawal ini bolak-balik antara satu sama lain dan boleh dilaksanakan dalam sebarang urutan.

Implementasi Circuit bagi QFT​

Sekarang kita akan melihat bagaimana kita boleh mengimplementasikan transformasi Fourier kuantum dengan Circuit 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 Circuit kuantum, adalah mudah untuk mengimplementasikan songsangannya: kita boleh menggantikan setiap Gate dengan songsangannya (atau, secara setara, konjugat transpose) dan menggunakan Gate dalam urutan terbalik. Setiap Circuit kuantum yang terdiri daripada Gate 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 mβ‰₯2,m \geq 2, kita boleh melaksanakan langkah-langkah berikut, yang tindakannya akan kita huraikan untuk keadaan asas standard berbentuk ∣x⟩∣a⟩,\vert x \rangle \vert a\rangle, di mana x∈{0,…,2mβˆ’1βˆ’1}x\in\{0,\ldots,2^{m-1} - 1\} adalah integer yang dikodkan sebagai mβˆ’1m-1 bit menggunakan notasi binari dan aa adalah satu bit.

  1. Pertama terapkan transformasi Fourier kuantum 2mβˆ’12^{m-1}-dimensi kepada mβˆ’1m-1 Qubit bawah/paling kiri untuk mendapatkan keadaan ini:

    (QFT2mβˆ’1∣x⟩)∣a⟩=12mβˆ’1βˆ‘y=02mβˆ’1βˆ’1Ο‰2mβˆ’1xy∣y⟩∣a⟩.\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 mβˆ’1m-1 Qubit yang tinggal (seperti yang dihuraikan di atas) untuk mendapatkan keadaan ini:

    12mβˆ’1βˆ‘y=02mβˆ’1βˆ’1Ο‰2mβˆ’1xyΟ‰2may∣y⟩∣a⟩.\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 Gate Hadamard pada Qubit atas/paling kanan untuk mendapatkan keadaan ini:

    12mβˆ‘y=02mβˆ’1βˆ’1βˆ‘b=01(βˆ’1)abΟ‰2mβˆ’1xyΟ‰2may∣y⟩∣b⟩.\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:

    12mβˆ‘y=02mβˆ’1βˆ’1βˆ‘b=01(βˆ’1)abΟ‰2mβˆ’1xyΟ‰2may∣b⟩∣y⟩.\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 Circuit yang kita perolehi untuk N=32=25.N = 32 = 2^5. Dalam gambar rajah ini, Qubit diberi nama yang sepadan dengan vektor asas standard ∣x⟩∣a⟩\vert x\rangle \vert a\rangle (untuk input) dan ∣b⟩∣y⟩\vert b\rangle \vert y\rangle (untuk output) untuk kejelasan.

Gambar rajah Circuit kuantum untuk transformasi Fourier kuantum 32-dimensi

Analisis​

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

(βˆ’1)abΟ‰2mβˆ’1xyΟ‰2may=Ο‰2m(2x+a)(2mβˆ’1b+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,…,2mβˆ’1βˆ’1}.x,y\in\{0,\ldots,2^{m-1}-1\}. Ia boleh disemak dengan mengembangkan hasil darab dalam eksponen pada bahagian kanan,

Ο‰2m(2x+a)(2mβˆ’1b+y)=Ο‰2m2mxbΟ‰2m2xyΟ‰2m2mβˆ’1abΟ‰2may=(βˆ’1)abΟ‰2mβˆ’1xyΟ‰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,…,2mβˆ’1}.u\in\{0,\ldots,2^m - 1\}.

QFT2m∣u⟩=12mβˆ‘v=02mβˆ’1Ο‰2muv∣v⟩\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=2mβˆ’1b+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,…,2mβˆ’1βˆ’1},x,y\in\{0,\ldots,2^{m-1} - 1\}, kita memperoleh

QFT2m∣2x+a⟩=12mβˆ‘y=02mβˆ’1βˆ’1βˆ‘b=01Ο‰2m(2x+a)(2mβˆ’1b+y)∣b2mβˆ’1+y⟩=12mβˆ‘y=02mβˆ’1βˆ’1βˆ‘b=01(βˆ’1)abΟ‰2mβˆ’1xyΟ‰2may∣b2mβˆ’1+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 ∣x⟩∣a⟩\vert x \rangle \vert a\rangle dan ∣b⟩∣y⟩\vert b \rangle \vert y \rangle sebagai pengekodan binari integer dalam julat {0,…,2mβˆ’1},\{0,\ldots,2^m-1\},

∣x⟩∣a⟩=∣2x+a⟩∣b⟩∣y⟩=∣2mβˆ’1b+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 Circuit 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 Circuit kuantum.

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

Katakan sms_m menandakan bilangan Gate 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 mβ‰₯2,m\geq 2, maka dalam Circuit di atas kita memerlukan smβˆ’1s_{m-1} Gate untuk transformasi Fourier kuantum pada mβˆ’1m-1 Qubit, ditambah mβˆ’1m-1 Gate fasa terkawal, ditambah satu Gate Hadamard, ditambah mβˆ’1m-1 Gate swap, jadi

sm=smβˆ’1+(2mβˆ’1).s_m = s_{m-1} + (2m - 1).

Kita boleh mendapatkan ungkapan bentuk tertutup dengan menjumlahkan:

sm=βˆ‘k=1m(2kβˆ’1)=m2.s_m = \sum_{k = 1}^m (2k - 1) = m^2.

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

Jika kita ingin mengimplementasikan transformasi Fourier kuantum menggunakan hanya Gate daripada set Gate standard kita, kita perlu sama ada membina atau menganggar setiap Gate fasa terkawal dengan Gate 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 Gate sub-kuadratik dengan menggunakan fakta bahawa PΞ±P_{\alpha} sangat hampir dengan operasi identiti apabila Ξ±\alpha sangat kecil β€” yang bermakna kita boleh meninggalkan kebanyakan Gate 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 Circuit: jika kita mempunyai mm Qubit kawalan, seperti yang digambarkan dalam rajah, sejumlah 2mβˆ’12^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 Circuit yang melaksanakan operasi UkU^k bagi nilai kk yang besar dengan cara yang lebih cekap daripada sekadar mengulangi Circuit 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 Circuit yang baru diterangkan. Keadaan sejurus sebelum jelmaan Fourier kuantum songsang kelihatan seperti ini:

12mβˆ‘x=02mβˆ’1(Ux∣ψ⟩)∣x⟩=βˆ£ΟˆβŸ©βŠ—12mβˆ‘x=02mβˆ’1e2Ο€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,…,2mβˆ’1}.y\in\{0,\ldots,2^m-1\}. Dalam kes ini, keadaan sebelum jelmaan Fourier kuantum songsang boleh ditulis semula seperti ini:

βˆ£ΟˆβŸ©βŠ—12mβˆ‘x=02mβˆ’1e2Ο€ixy2m∣x⟩=βˆ£ΟˆβŸ©βŠ—12mβˆ‘x=02mβˆ’1Ο‰2mxy∣x⟩=βˆ£ΟˆβŸ©βŠ—QFT2m∣y⟩.\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 Circuit adalah:

βˆ£ΟˆβŸ©βŠ—12mβˆ‘y=02mβˆ’1βˆ‘x=02mβˆ’1e2Ο€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=∣12mβˆ‘x=02mβˆ’1e2Ο€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+β‹―+Ξ±Nβˆ’1={Ξ±Nβˆ’1Ξ±βˆ’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=02mβˆ’1e2Ο€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=122m∣e2Ο€i(2mΞΈβˆ’y)βˆ’1e2Ο€i(ΞΈβˆ’y/2m)βˆ’1∣2.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Ξ΄βˆ’1βˆ£β‰€2Ο€βˆ£Ξ΄βˆ£.\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Ξ΄βˆ’1∣β‰₯4∣δ∣.\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,…,2mβˆ’1}y\in \{0,\ldots,2^m-1\} memenuhi

    βˆ£ΞΈβˆ’y2mβˆ£β‰€2βˆ’(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 (yβˆ’1)/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ΞΈβˆ’yβˆ£β‰€1/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)βˆ’1∣β‰₯4∣2mΞΈβˆ’y∣=4β‹…2mβ‹…βˆ£ΞΈβˆ’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)βˆ’1βˆ£β‰€2Ο€βˆ£ΞΈβˆ’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

    pyβ‰₯122m16β‹…22m4Ο€2=4Ο€2β‰ˆ0.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,…,2mβˆ’1}y\in \{0,\ldots,2^m-1\} memenuhi

    2βˆ’mβ‰€βˆ£ΞΈβˆ’y2mβˆ£β‰€12.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)βˆ’1βˆ£β‰€2,\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)βˆ’1∣β‰₯4βˆ£ΞΈβˆ’y2m∣β‰₯4β‹…2βˆ’m.\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

    py≀122m416β‹…2βˆ’2m=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 2βˆ’m2^{-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 Circuit, kita mendapat penghampiran mm-bit terbaik kepada ΞΈ\theta dengan kebarangkalian lebih daripada 40%40\%, manakala kebarangkalian tersasar lebih daripada 2βˆ’m2^{-m} dibatasi oleh 25%.25\%. Jika kita menjalankan Circuit 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

Source: IBM Quantum docs β€” updated 15 Jan 2026
English version on doQumentation β€” updated 7 Mei 2026
This translation based on the English version of approx. 26 Mac 2026