Kode Shor 9-Qubit
Sekarang kita beralih ke kode Shor 9-Qubit, yang merupakan kode koreksi kesalahan kuantum yang diperoleh dengan menggabungkan dua kode yang dipertimbangkan di bagian sebelumnya: kode repetisi 3-bit untuk Qubit, yang memungkinkan koreksi satu kesalahan bit-flip, dan versi yang dimodifikasi dari kode tersebut, yang memungkinkan koreksi satu kesalahan phase-flip.
Deskripsi kodeβ
Kode Shor 9-Qubit adalah kode yang kita peroleh dengan menggabungkan dua kode dari bagian sebelumnya. Ini berarti kita pertama menerapkan satu encoding, yang meng-encode satu Qubit menjadi tiga, dan kemudian kita menerapkan encoding lainnya ke masing-masing dari tiga Qubit yang digunakan untuk encoding pertama, menghasilkan sembilan Qubit secara total.
Lebih tepatnya, meskipun kita bisa menerapkan dua kode dalam urutan mana pun dalam kasus khusus ini, kita akan memilih untuk pertama menerapkan versi yang dimodifikasi dari kode repetisi 3-bit (yang mendeteksi kesalahan phase-flip), dan kemudian kita meng-encode masing-masing dari tiga Qubit yang dihasilkan secara independen menggunakan kode repetisi 3-bit asli (yang mendeteksi kesalahan bit-flip). Berikut adalah representasi diagram Circuit dari encoding ini.
Seperti yang disarankan oleh gambar, kita akan memikirkan sembilan Qubit dari kode Shor sebagai dikelompokkan menjadi tiga blok tiga Qubit, di mana setiap blok diperoleh dari langkah encoding kedua (yang merupakan kode repetisi 3-bit biasa). Kode repetisi 3-bit biasa, yang di sini diterapkan tiga kali secara independen, disebut kode dalam dalam konteks ini, sedangkan kode luar adalah kode yang digunakan untuk langkah encoding pertama, yaitu versi yang dimodifikasi dari kode repetisi 3-bit yang mendeteksi kesalahan phase-flip.
Kita bisa secara alternatif menentukan kode dengan mendeskripsikan bagaimana dua keadaan basis standar untuk Qubit asli kita di-encode.
Begitu kita mengetahui ini, kita bisa menentukan dengan linieritas bagaimana vektor keadaan Qubit sembarangan di-encode.
Mengoreksi kesalahan bit-flip dan phase-flipβ
Kesalahan dan gate CNOTβ
Untuk menganalisis bagaimana kesalahan dan mempengaruhi encoding Qubit, baik untuk kode Shor 9-Qubit maupun kode lainnya, akan berguna untuk mengamati beberapa hubungan sederhana antara kesalahan-kesalahan ini dan gate CNOT. Saat kita mulai menganalisis kode Shor 9-Qubit, ini adalah momen yang tepat untuk berhenti sejenak dan melakukan ini.
Diagram Circuit berikut mengilustrasikan tiga hubungan dasar antara gate dan gate CNOT. Khususnya, menerapkan gate ke Qubit target sebelum CNOT setara dengan menukar urutan dan melakukan CNOT terlebih dahulu, tetapi menerapkan gate ke Qubit kontrol sebelum CNOT setara dengan menerapkan gate ke kedua Qubit setelah CNOT. Akhirnya, menerapkan gate ke kedua Qubit sebelum CNOT setara dengan melakukan CNOT terlebih dahulu dan kemudian menerapkan gate ke Qubit kontrol. Hubungan-hubungan ini bisa diverifikasi dengan melakukan perkalian matriks yang diperlukan atau menghitung efek Circuit pada keadaan basis standar.
Situasinya serupa untuk gate , kecuali bahwa peran Qubit kontrol dan target bertukar. Khususnya, kita memiliki tiga hubungan yang digambarkan oleh Circuit kuantum berikut.
Mengoreksi kesalahan bit-flipβ
Sekarang kita akan mempertimbangkan bagaimana kesalahan bisa dideteksi dan dikoreksi menggunakan kode Shor 9-Qubit, dimulai dengan kesalahan bit-flip β yang umumnya akan kita sebut kesalahan mulai sekarang demi keringkasan.
Untuk mendeteksi dan mengoreksi kesalahan , kita cukup memperlakukan masing-masing dari tiga blok dalam encoding secara terpisah. Setiap blok adalah encoding Qubit menggunakan kode repetisi 3-bit, yang melindungi terhadap kesalahan β sehingga dengan melakukan pengukuran sindrom dan koreksi kesalahan yang sudah dijelaskan sebelumnya ke setiap blok, kita bisa mendeteksi dan mengoreksi hingga satu kesalahan per blok. Khususnya, jika ada paling banyak satu kesalahan pada sembilan Qubit encoding, kesalahan ini akan dideteksi dan dikoreksi oleh prosedur ini.
Singkatnya, mengoreksi kesalahan bit-flip adalah hal yang sederhana untuk kode ini, karena kode dalam mengoreksi kesalahan bit-flip.
Mengoreksi kesalahan phase-flipβ
Selanjutnya kita akan mempertimbangkan kesalahan phase-flip, atau kesalahan untuk keringkasan. Kali ini tidak begitu jelas apa yang harus kita lakukan karena kode luar adalah yang mendeteksi kesalahan , tetapi kode dalam tampaknya entah bagaimana "menghalangi", membuat deteksi dan koreksi kesalahan ini sedikit lebih sulit.
Misalkan kesalahan terjadi pada salah satu dari 9 Qubit kode Shor, seperti yang ditunjukkan dalam diagram ini.
Kita sudah mengamati apa yang terjadi ketika kesalahan terjadi saat kita menggunakan kode repetisi 3-bit β ini setara dengan kesalahan yang terjadi sebelum encoding. Dalam konteks kode Shor 9-Qubit, ini berarti bahwa kesalahan pada salah satu dari tiga Qubit dalam satu blok selalu memiliki efek yang sama, yang setara dengan kesalahan yang terjadi pada Qubit yang bersesuaian sebelum kode dalam diterapkan.
Misalnya, diagram Circuit di atas setara dengan diagram berikut. Ini bisa dibuktikan menggunakan hubungan antara gate dan CNOT yang dijelaskan di atas, atau cukup dengan mengevaluasi Circuit pada keadaan Qubit sembarangan
Ini menyarankan satu pilihan untuk mendeteksi dan mengoreksi kesalahan , yaitu men-decode kode dalam, meninggalkan kita dengan tiga Qubit yang digunakan untuk encoding luar beserta enam Qubit workspace yang sudah diinisialisasi. Kita kemudian bisa memeriksa tiga Qubit kode luar ini untuk kesalahan , dan akhirnya kita bisa meng-encode ulang menggunakan kode dalam, untuk membawa kita kembali ke encoding 9-Qubit yang kita dapatkan dari kode Shor. Jika kita mendeteksi kesalahan , kita bisa mengoreksinya sebelum re-encoding dengan kode dalam, atau kita bisa mengoreksinya setelah re-encoding, dengan menerapkan gate ke salah satu Qubit dalam blok tersebut.
Berikut adalah diagram Circuit yang mencakup Circuit encoding dan kesalahan yang disarankan di atas bersama dengan langkah-langkah yang baru saja dijelaskan (tetapi bukan langkah koreksi yang sebenarnya).
Dalam contoh khusus ini, pengukuran sindrom adalah yang menempatkan kesalahan sebagai telah terjadi pada salah satu Qubit di blok tengah.
Salah satu keuntungan mengoreksi kesalahan setelah langkah re-encoding daripada sebelumnya adalah bahwa kita bisa menyederhanakan Circuit di atas. Circuit berikut setara, tetapi membutuhkan empat gate CNOT lebih sedikit.
Sekali lagi, sindrom tidak menunjukkan Qubit mana yang telah terpengaruh oleh kesalahan , melainkan blok mana yang mengalami kesalahan , dengan efek yang sama terlepas dari Qubit mana dalam blok yang terpengaruh. Kita kemudian bisa mengoreksi kesalahan dengan menerapkan gate ke salah satu dari tiga Qubit dari blok mana pun yang terpengaruh.
Sebagai catatan sampingan, di sini kita melihat contoh degenerasi dalam kode koreksi kesalahan kuantum, di mana kita bisa mengoreksi kesalahan tertentu (kesalahan dalam kasus ini) tanpa bisa mengidentifikasinya secara unik.
Kesalahan bit-flip dan phase-flip secara bersamaanβ
Kita sekarang telah melihat bagaimana kesalahan dan bisa dideteksi dan dikoreksi menggunakan kode Shor 9-Qubit, dan khususnya bagaimana paling banyak satu kesalahan atau paling banyak satu kesalahan bisa dideteksi dan dikoreksi. Sekarang misalkan kesalahan bit-flip dan phase-flip terjadi, mungkin pada Qubit yang sama. Ternyata, tidak ada yang berbeda yang perlu dilakukan dalam situasi ini dari apa yang sudah dibahas β kode ini mampu mendeteksi dan mengoreksi hingga satu kesalahan dan satu kesalahan secara bersamaan, tanpa modifikasi lebih lanjut.
Lebih tepatnya, kesalahan dideteksi dengan menerapkan pengukuran sindrom kode repetisi 3-bit biasa, yang dilakukan secara terpisah pada masing-masing dari tiga blok tiga Qubit; dan kesalahan dideteksi melalui prosedur yang dijelaskan tepat di atas, yang setara dengan mendekode kode dalam, melakukan pengukuran sindrom untuk kode repetisi 3-bit yang dimodifikasi untuk phase-flip, dan kemudian meng-encode ulang. Dua langkah deteksi kesalahan ini β serta koreksi yang bersesuaian β bisa dilakukan sepenuhnya secara independen satu sama lain, dan bahkan tidak masalah urutan mana yang dilakukan.
Untuk memahami mengapa ini terjadi, perhatikan contoh yang digambarkan dalam diagram Circuit berikut, di mana kesalahan dan telah mempengaruhi Qubit terbawah dari blok tengah.
Mari kita pertama-tama amati bahwa urutan kesalahan tidak masalah, dalam arti bahwa membalik posisi kesalahan dan menghasilkan Circuit yang setara. Untuk lebih jelasnya, dan tidak komut, mereka anti-komut:
Ini berarti bahwa Circuit berikut setara dengan yang baru saja di atas hingga faktor fase global
Kita sekarang bisa memindahkan kesalahan seperti sebelumnya untuk mendapatkan Circuit setara lainnya.
Pada titik ini jelas bahwa jika prosedur untuk mendeteksi dan mengoreksi kesalahan dilakukan terlebih dahulu, kesalahan akan dikoreksi, setelah itu prosedur untuk mendeteksi dan mengoreksi kesalahan bisa dilakukan untuk menghilangkan kesalahan seperti sebelumnya.
Atau, prosedur untuk mendeteksi dan mengoreksi kesalahan bisa dilakukan terlebih dahulu. Fakta bahwa prosedur ini berfungsi seperti yang diharapkan, bahkan dengan adanya satu atau lebih kesalahan , mengikuti dari fakta bahwa gate pada salah satu dari sembilan Qubit yang digunakan untuk encoding komut dengan semua gate dalam Circuit yang disederhanakan kita untuk mengukur sindrom untuk kesalahan . Dengan demikian, pengukuran sindrom ini akan tetap mengidentifikasi dengan benar blok mana yang telah terpengaruh oleh kesalahan . Fakta bahwa kesalahan pada blok mana pun dikoreksi dengan menerapkan gate ke Qubit mana pun dari blok tersebut, bahkan jika kesalahan juga terjadi, mengikuti dari argumen yang sama di atas mengenai urutan gate dan yang memberikan Circuit setara hingga fase global.
Dengan demikian, kode Shor 9-Qubit bisa mengoreksi kesalahan , kesalahan , atau keduanya, pada salah satu dari sembilan Qubit yang digunakan untuk kode ini. Bahkan, kita bisa mengoreksi lebih banyak kesalahan dari itu, termasuk beberapa kesalahan (selama berada di blok yang berbeda) atau beberapa kesalahan (selama paling banyak satu blok mengalami jumlah ganjil dari mereka) β tetapi ke depannya, yang paling relevan untuk tujuan pelajaran ini adalah bahwa kita bisa mengoreksi kesalahan , kesalahan , atau keduanya pada satu Qubit mana pun.
Pengurangan kesalahan untuk kesalahan acakβ
Sebelum kita beralih ke bagian terakhir pelajaran, yang berkaitan dengan kesalahan kuantum sembarangan, mari kita secara singkat mempertimbangkan kinerja kode Shor 9-Qubit ketika kesalahan yang direpresentasikan oleh matriks Pauli terjadi secara acak pada Qubit.
Lebih konkretnya, mari kita pertimbangkan model noise sederhana di mana kesalahan terjadi secara independen pada Qubit, dengan setiap Qubit mengalami kesalahan dengan probabilitas , dan tanpa korelasi antara kesalahan pada Qubit yang berbeda β sejalan dengan channel simetris biner untuk bit klasik. Kita bisa menetapkan probabilitas yang berbeda untuk kesalahan dan yang terjadi, tetapi untuk menjaga semuanya sesederhana mungkin, kita akan mempertimbangkan skenario terburuk untuk kode Shor 9-Qubit, yaitu bahwa kesalahan terjadi pada setiap Qubit yang terpengaruh. Omong-omong, kesalahan setara (hingga faktor fase global yang tidak relevan) dengan kesalahan dan yang terjadi pada Qubit yang sama, mengingat bahwa Ini menjelaskan pengabaian kesalahan yang tampak hingga titik ini.
Sekarang, misalkan adalah Qubit dalam beberapa keadaan tertentu yang ingin kita lindungi dari kesalahan, kita bisa mempertimbangkan pilihan untuk menggunakan kode Shor 9-Qubit. Pertanyaan yang wajar untuk diajukan adalah, "Haruskah kita menggunakannya?"
Jawabannya tidak selalu "ya." Jika terlalu banyak noise, artinya dalam konteks ini bahwa terlalu besar, menggunakan kode Shor sebenarnya bisa memperburuk keadaan β sama seperti kode repetisi 3-bit lebih buruk daripada tidak ada kode ketika lebih besar dari setengah. Tetapi, jika cukup kecil, maka jawabannya adalah "ya," kita harus menggunakan kode, karena akan mengurangi kemungkinan keadaan yang di-encode menjadi rusak. Mari kita lihat mengapa ini terjadi, dan apa artinya terlalu besar atau cukup kecil untuk kode ini.
Kode Shor mengoreksi kesalahan Pauli mana pun pada satu Qubit, termasuk kesalahan tentu saja, tetapi tidak mengoreksi dengan benar dua atau lebih kesalahan . Untuk lebih jelasnya, kita mengasumsikan bahwa kita menggunakan koreksi kesalahan dan yang dijelaskan sebelumnya dalam bagian. (Tentu saja, jika kita tahu sebelumnya bahwa kita hanya perlu khawatir tentang kesalahan , kita akan secara alami memilih koreksi yang berbeda β tetapi itu curang terhadap model noise, dan kita selalu bisa mengubah model dengan memilih kesalahan Pauli yang berbeda untuk membuat pilihan koreksi baru ini gagal setiap kali dua atau lebih Qubit terpengaruh oleh kesalahan.)
Jadi, kode melindungi selama paling banyak satu dari sembilan Qubit yang terpengaruh oleh kesalahan, yang terjadi dengan probabilitas
Jika tidak, dengan probabilitas
kode gagal melindungi
Khususnya, yang dimaksud dalam konteks ini adalah bahwa, hingga fase global, operasi Pauli non-identitas akan diterapkan ke Qubit kita (sebagai Qubit logis). Artinya, jika kesalahan dan dideteksi dan dikoreksi untuk kode Shor seperti yang dijelaskan sebelumnya dalam pelajaran, kita akan dibiarkan dengan encoding keadaan yang setara, hingga fase global, dengan encoding operasi Pauli non-identitas yang diterapkan ke keadaan asli Cara yang lebih ringkas untuk mengatakan ini adalah bahwa kesalahan logis telah terjadi. Itu mungkin atau tidak berpengaruh pada keadaan asli β atau dengan kata lain Qubit logis yang telah kita encode dengan sembilan Qubit fisik β tetapi, demi analisis ini, kita menganggap peristiwa ini sebagai kegagalan.
Di sisi lain, jika kita tidak repot menggunakan kode, satu-satunya Qubit kita akan mengalami nasib serupa (berupa operasi Pauli non-identitas yang diterapkan) dengan probabilitas Kode membantu ketika probabilitas pertama lebih kecil dari yang kedua:
Berikut adalah plot yang mengilustrasikan, untuk nilai yang sangat kecil, bahwa kode memberikan keuntungan, dengan titik impas terjadi pada sekitar
Jika lebih kecil dari titik impas ini, maka kode membantu; pada titik impas probabilitasnya sama, sehingga kita hanya membuang-buang waktu beserta 8 Qubit jika kita menggunakan kode; dan melewati titik impas kita sebaiknya sama sekali tidak menggunakan kode ini karena meningkatkan peluang kesalahan logis pada
Tiga dan seperempat persen atau lebih mungkin tidak terlihat seperti titik impas yang sangat bagus, terutama bila dibandingkan dengan yang merupakan titik impas analogi untuk kode repetisi 3-bit untuk informasi klasik. Perbedaan ini, sebagian besar, karena informasi kuantum lebih rapuh dan lebih sulit dilindungi daripada informasi klasik. Tetapi juga β sambil mengakui bahwa kode Shor 9-Qubit merupakan penemuan brilian, sebagai kode koreksi kesalahan kuantum pertama di dunia β harus diakui bahwa sebenarnya ini bukan kode yang sangat bagus dari segi praktis.