Mengawal perambatan ralat
Pengkomputeran kuantum toleran ralat umpama perlumbaan antara ralat dan pembetulan ralat. Jika bilangan ralat cukup kecil, pembetulan ralat akan berjaya membetulkannya; tetapi jika terlalu banyak ralat, pembetulan ralat akan gagal.
Atas sebab ini, perhatian yang mencukupi mesti diberikan kepada cara pengiraan kuantum dilakukan dalam pelaksanaan litar yang toleran ralat, untuk mengawal perambatan ralat. Iaitu, ralat pada satu Qubit berpotensi merambat ke pelbagai Qubit melalui tindakan Gate dalam litar kuantum, yang boleh menyebabkan bilangan ralat meningkat secara drastik. Ini adalah kebimbangan utama, kerana jika kita gagal mengawal perambatan ralat, usaha pembetulan ralat kita akan cepat dilimpahi oleh ralat. Sebaliknya, jika kita mampu mengawal perambatan ralat, maka pembetulan ralat berpeluang untuk berjalan seiring, membolehkan ralat dibetulkan pada kadar yang cukup tinggi agar pengiraan kuantum berfungsi seperti yang dimaksudkan.
Titik permulaan untuk perbincangan teknikal isu ini ialah pengiktirafan bahawa Gate dua Qubit (atau Gate berbilang Qubit secara amnya) boleh merambatkan ralat, walaupun apabila ia berfungsi dengan sempurna. Sebagai contoh, pertimbangkan Gate controlled-NOT, dan andaikan bahawa ralat berlaku pada Qubit kawalan sebelum Gate controlled-NOT dilakukan. Seperti yang telah kita perhatikan dalam pelajaran "Membetulkan ralat kuantum", ini bersamaan dengan ralat berlaku pada kedua-dua Qubit selepas Gate controlled-NOT dilakukan. Dan situasinya serupa untuk ralat yang bertindak pada sasaran berbanding kawalan sebelum Gate controlled-NOT dilakukan.
Ini adalah perambatan ralat, kerana lokasi yang malang bagi ralat atau sebelum Gate controlled-NOT secara efektifnya menjadikannya dua ralat selepas Gate controlled-NOT. Ini berlaku walaupun Gate controlled-NOT adalah sempurna, dan kita tidak boleh lupa bahawa Gate controlled-NOT yang diberikan mungkin sendirinya mengandungi hingar, yang boleh mewujudkan ralat yang berkorelasi pada dua Qubit.
Menambah kebimbangan kita ialah fakta bahawa Gate dua Qubit berikutnya mungkin merambatkan ralat ini lebih jauh lagi, seperti yang dicadangkan oleh rajah berikut.
Dalam erti kata tertentu, kita tidak pernah boleh mengelakkan ini; selagi kita menggunakan Gate berbilang Qubit, akan selalu ada potensi untuk perambatan ralat. Namun, seperti yang akan kita bincangkan dalam subseksyen berikut, langkah-langkah boleh diambil untuk mengehadkan kerosakan yang ditimbulkannya, membolehkan ralat yang merambat diuruskan.
Pelaksanaan Gate transversalβ
Cara paling mudah yang diketahui untuk mengurangkan perambatan ralat dalam litar kuantum toleran ralat ialah melaksanakan Gate secara transversal, yang bermaksud membina gadget untuknya yang mempunyai bentuk mudah tertentu. Khususnya, gadget mestilah berupa hasil darab tensor operasi (atau, dalam erti kata lain, litar kuantum kedalaman satu), di mana setiap operasi hanya boleh bertindak pada satu kedudukan Qubit tunggal dalam setiap blok kod yang disentuhnya. Ini mungkin paling mudah dijelaskan melalui beberapa contoh.
Contoh pelaksanaan Gate transversalβ
Pertimbangkan rajah berikut, yang menunjukkan pelaksanaan transversal Gate CNOT. (Pelaksanaan tertentu ini, di mana CNOT dilakukan Qubit demi Qubit, hanya berfungsi untuk kod CSS β tetapi ia memang berfungsi untuk semua kod CSS.)
Terdapat dua blok kod dalam rajah ini, masing-masing digambarkan terdiri daripada lima Qubit (walaupun boleh lebih, seperti yang telah dicadangkan). Litar di sebelah kanan mempunyai kedalaman satu, dan setiap Gate CNOT bertindak pada satu kedudukan Qubit dalam setiap blok: kawalan dan sasaran untuk CNOT pertama adalah Qubit paling atas (iaitu, Qubit 0 menggunakan konvensyen penomboran Qiskit), kawalan dan sasaran untuk CNOT kedua adalah Qubit kedua dari atas (iaitu, Qubit 1), dan seterusnya. Oleh itu, ini adalah gadget transversal.
Untuk contoh kedua β sebenarnya kelas contoh β pertimbangkan mana-mana Gate Pauli. Gate Pauli sentiasa boleh dilaksanakan secara transversal, untuk mana-mana kod penstabil, dengan membina gadget yang terdiri daripada operasi Pauli. Khususnya, setiap operasi Pauli pada Qubit logik yang dikodkan oleh kod penstabil boleh dilaksanakan secara transversal dengan memilih operasi Pauli yang sesuai pada Qubit fizikal yang digunakan untuk pengekodan. Ini konsisten dengan fakta yang disebutkan secara sambil lewa dalam pelajaran "Formalisme penstabil": sehingga fasa global, operasi Pauli yang bertukar dengan setiap penjana penstabil kod penstabil bertindak seperti operasi Pauli pada Qubit atau Qubit yang dikodkan oleh kod tersebut.
Sebagai contoh khusus, pertimbangkan kod Shor -Qubit, di mana keadaan asas piawai boleh dikodkan seperti berikut.
Gate pada Qubit logik yang dikodkan oleh kod ini boleh dilaksanakan secara transversal oleh operasi Pauli -Qubit
manakala Gate pada Qubit logik boleh dilaksanakan secara transversal oleh operasi Pauli -Qubit
Kedua-dua operasi Pauli ini mempunyai berat iaitu berat minimum yang diperlukan. (Kod Shor -Qubit mempunyai jarak jadi mana-mana operasi Pauli bukan identiti dengan berat atau kurang dikesan sebagai ralat.)
Dan, untuk contoh ketiga, kod Steane -Qubit (dan memang setiap kod warna) membenarkan pelaksanaan transversal bagi semua Gate Clifford. Kita sudah melihat bagaimana Gate CNOT dilaksanakan secara transversal untuk mana-mana kod CSS, jadi tinggal lagi untuk mempertimbangkan Gate dan . Gate Hadamard yang digunakan pada semua Qubit kod Steane bersamaan dengan yang digunakan pada Qubit logik yang dikodkannya, manakala Gate (berbanding Gate ) yang digunakan pada semua Qubit bersamaan dengan Gate logik.
Perambatan ralat untuk gadget transversalβ
Kini kita tahu apa itu pelaksanaan transversal Gate, mari kita bincangkan hubungannya dengan perambatan ralat.
Untuk pelaksanaan transversal Gate satu Qubit, kita hanya mempunyai hasil darab tensor Gate satu Qubit dalam gadget kita, yang bertindak pada blok kod Qubit fizikal untuk kod pembetulan ralat kuantum yang dipilih. Walaupun mana-mana Gate ini boleh gagal dan memperkenalkan ralat, tidak akan ada perambatan ralat kerana tiada Gate berbilang Qubit yang terlibat. Sejurus selepas gadget digunakan, pembetulan ralat dilakukan; dan jika bilangan ralat yang diperkenalkan oleh gadget (atau semasa gadget sedang dilakukan) cukup kecil, ralat akan dibetulkan. Jadi, jika kadar ralat yang diperkenalkan oleh Gate yang rosak cukup kecil, pembetulan ralat berpeluang baik untuk berjaya.
Untuk pelaksanaan transversal Gate dua Qubit pula, terdapat potensi untuk perambatan ralat β memang tidak ada cara untuk mengelakkan ini, seperti yang telah kita perhatikan. Perkara penting, bagaimanapun, ialah gadget transversal tidak pernah boleh menyebabkan perambatan ralat dalam satu blok kod tunggal.
Sebagai contoh, mempertimbangkan pelaksanaan transversal Gate CNOT untuk kod CSS yang diterangkan di atas, ralat boleh berlaku pada Qubit paling atas blok kod atas sejurus sebelum gadget dilakukan, dan CNOT pertama dalam gadget akan merambatkan ralat tersebut ke Qubit paling atas dalam blok bawah. Namun, dua ralat yang terhasil kini berada dalam blok kod yang berasingan. Jadi, dengan mengandaikan kod kita boleh membetulkan ralat , langkah pembetulan ralat yang berlaku selepas gadget akan membetulkan dua ralat secara berasingan β kerana hanya satu ralat berlaku dalam setiap blok kod. Sebaliknya, jika perambatan ralat berlaku di dalam blok kod yang sama, ia boleh mengubah ralat berat rendah menjadi ralat berat tinggi yang tidak dapat dikendalikan oleh kod.
Bukan-keuniversalan Gate transversalβ
Untuk dua kod penstabil yang berbeza, mungkin saja Gate tertentu boleh dilaksanakan secara transversal dengan satu kod tetapi tidak dengan yang lain. Sebagai contoh, walaupun tidak mungkin melaksanakan Gate secara transversal menggunakan kod Steane -Qubit, terdapat kod lain yang memungkinkan ini.
Malangnya, tidak pernah mungkin, untuk mana-mana kod pembetulan ralat kuantum yang tidak trivial, melaksanakan set Gate universal secara transversal. Fakta ini dikenali sebagai teorem Eastin-Knill.
Bukti teorem ini tidak akan dijelaskan di sini. (Ia bukan bukti yang rumit, tetapi memerlukan pengetahuan asas tentang kumpulan Lie dan aljabar Lie, yang bukan antara prasyarat siri ini.) Namun, idea asasnya boleh disampaikan dalam istilah intuitif: Keluarga tak terhingga operasi transversal tidak mungkin kekal dalam ruang kod bagi kod tidak trivial kerana perbezaan halus dalam operasi transversal dihampiri dengan baik oleh operasi Pauli berat rendah, yang dikesan oleh kod sebagai ralat.
Ringkasnya, gadget transversal menawarkan pelaksanaan Gate yang mudah dan secara inheren toleran ralat β tetapi untuk mana-mana pilihan kod pembetulan ralat kuantum yang munasabah, tidak akan pernah ada set Gate universal yang boleh dilaksanakan dengan cara ini, yang memerlukan penggunaan gadget alternatif.
Keadaan ajaibβ
Memandangkan tidak mungkin, untuk mana-mana pilihan kod pembetulan ralat kuantum yang tidak trivial, melaksanakan set Gate kuantum universal secara transversal, kita perlu mempertimbangkan kaedah lain untuk melaksanakan Gate secara toleran ralat. Satu kaedah yang terkenal berdasarkan gagasan keadaan ajaib, iaitu keadaan kuantum Qubit yang membolehkan pelaksanaan toleran ralat bagi Gate tertentu.
Melaksanakan Gate dengan keadaan ajaibβ
Mari mulakan dengan mempertimbangkan Gate dan , yang mempunyai penerangan matriks seperti berikut.
Mengikut definisi, adalah operasi Clifford, manakala tidak; tidak mungkin melaksanakan Gate dengan litar yang terdiri daripada Gate Clifford (Gate , Gate , dan Gate CNOT).
Namun, adalah mungkin untuk melaksanakan Gate (sehingga fasa global) dengan litar yang terdiri daripada Gate Clifford jika, selain itu, kita mempunyai salinan keadaan
dan kita membenarkan pengukuran asas piawai dan Gate yang dikawal secara klasik. Khususnya, litar berikut menunjukkan satu cara untuk melakukan ini. Fenomena yang dipaparkan di sini adalah contoh yang agak dipermudahkan bagi teleportasi Gate kuantum.
Untuk memeriksa bahawa litar ini berfungsi dengan betul, kita boleh terlebih dahulu mengira tindakan Gate CNOT pada input.
Pengukuran oleh itu memberikan hasil dan dengan kebarangkalian yang sama. Jika hasilnya Gate tidak dilakukan, dan keadaan output adalah dan jika hasilnya Gate dilakukan, dan keadaan output adalah
Keadaan dipanggil keadaan ajaib dalam konteks ini, walaupun ia tidak unik dalam hal ini: keadaan lain juga dipanggil keadaan ajaib apabila ia boleh digunakan dengan cara yang serupa (untuk Gate yang mungkin berbeza dan menggunakan litar yang berbeza). Sebagai contoh, menggantikan keadaan dengan keadaan dan menggantikan Gate dalam litar di atas dengan Gate melaksanakan Gate β yang berpotensi berguna untuk pengkomputeran kuantum toleran ralat menggunakan kod yang tidak dapat melaksanakan Gate secara transversal.
Gadget toleran ralat daripada keadaan ajaibβ
Mungkin tidak jelas bahawa menggunakan keadaan ajaib untuk melaksanakan Gate berguna untuk toleransi ralat. Untuk pelaksanaan Gate yang diterangkan di atas, sebagai contoh, nampaknya kita masih perlu menggunakan Gate pada keadaan untuk mendapatkan keadaan ajaib, yang kemudian kita gunakan untuk melaksanakan Gate . Jadi apakah kelebihan menggunakan pendekatan ini untuk toleransi ralat?
Berikut adalah tiga perkara penting yang memberikan jawapan kepada soalan ini.
-
Penciptaan keadaan ajaib tidak memerlukan penggunaan Gate yang cuba kita laksanakan pada keadaan tertentu. Sebagai contoh, menggunakan Gate pada keadaan bukan satu-satunya cara untuk mendapatkan keadaan .
-
Penciptaan keadaan ajaib boleh dilakukan secara berasingan daripada pengiraan di mana ia digunakan. Ini bermakna ralat yang timbul dalam proses penciptaan keadaan ajaib tidak akan merambat ke pengiraan sebenar yang sedang dilakukan.
-
Jika Gate individu dalam litar yang melaksanakan Gate yang dipilih menggunakan keadaan ajaib boleh dilaksanakan secara toleran ralat, dan kita mengandaikan ketersediaan keadaan ajaib, kita mendapatkan pelaksanaan toleran ralat bagi Gate yang dipilih.
Untuk memudahkan perbincangan yang berikut, mari kita fokus pada Gate khusus β dengan mengingat bahawa metodologi boleh dilanjutkan ke Gate lain. Pelaksanaan toleran ralat Gate menggunakan keadaan ajaib mengambil bentuk yang dicadangkan oleh rajah berikut.
Qubit dalam litar Gate asal sepadan dengan Qubit logik dalam gambar rajah ini, yang dikodkan oleh kod yang kita gunakan untuk toleransi ralat. Input dan output dalam gambar rajah oleh itu perlu difahami sebagai pengekodan keadaan-keadaan ini. Ini bermakna, khususnya, kita sebenarnya tidak hanya memerlukan keadaan ajaib β kita memerlukan keadaan ajaib yang dikodkan. Gate dalam litar Gate asal di sini digantikan oleh gadget, yang kita andaikan adalah toleran ralat.
Rajah tertentu ini oleh itu menunjukkan bahawa kita sudah mempunyai gadget toleran ralat untuk Gate CNOT dan Gate . Untuk kod warna, gadget ini boleh bersifat transversal; untuk kod permukaan (atau mana-mana kod CSS lain), CNOT boleh dilakukan secara transversal, manakala gadget Gate mungkin sendirinya dilaksanakan menggunakan keadaan ajaib, seperti yang dicadangkan sebelum ini adalah mungkin. (Rajah ini juga menunjukkan bahawa kita mempunyai gadget toleran ralat untuk melakukan pengukuran asas piawai, yang telah kita abaikan setakat ini. Ini sebenarnya boleh menjadi cabaran untuk beberapa kod yang dipilih untuk membuatnya demikian, tetapi untuk kod CSS ia adalah soal mengukur setiap Qubit fizikal diikuti dengan pemprosesan pasca secara klasik.)
Pelaksanaan ini oleh itu toleran ralat, dengan mengandaikan kita mempunyai pengekodan keadaan ajaib Tetapi, kita masih belum menangani isu bagaimana kita mendapatkan pengekodan keadaan ini. Satu cara untuk mendapatkan keadaan ajaib yang dikodkan (atau, mungkin lebih tepat, untuk menjadikannya lebih baik) adalah melalui proses yang dikenali sebagai penyulingan keadaan ajaib. Gambar rajah berikut menggambarkan bagaimana proses ini kelihatan pada peringkat tertinggi.
Dalam kata-kata, sekumpulan keadaan ajaib yang dikodkan dengan hingar dimasukkan ke dalam jenis litar khas yang dikenali sebagai penyuling. Semua blok output kecuali satu diukur β bermaksud Qubit logik diukur dengan pengukuran asas piawai. Jika mana-mana hasil pengukuran adalah proses gagal dan mesti dimulakan semula. Namun, jika setiap hasil pengukuran adalah keadaan yang terhasil bagi blok kod atas akan menjadi keadaan ajaib yang dikodkan dengan hingar yang lebih sedikit. Keadaan ini kemudian boleh bergabung dengan empat lagi sebagai input ke dalam penyuling lain, atau digunakan untuk melaksanakan Gate jika ia dianggap cukup dekat dengan keadaan ajaib yang dikodkan sebenar. Sudah tentu, proses mesti bermula dari suatu tempat, dengan satu kemungkinan ialah menyediakannya secara tidak toleran ralat.
Terdapat cara berbeza yang diketahui untuk membina penyuling itu sendiri, tetapi tidak akan dijelaskan atau dianalisis di sini. Pada peringkat logik, pendekatan tipikal β secara luar biasa dan agak kebetulan β adalah menjalankan litar pengekodan untuk kod penstabil secara terbalik! Ini sebenarnya boleh menjadi kod penstabil yang berbeza daripada yang digunakan untuk pembetulan ralat. Sebagai contoh, seseorang boleh berpotensi menggunakan kod permukaan atau warna untuk pembetulan ralat, tetapi menjalankan pengekod untuk kod -Qubit secara terbalik bagi tujuan penyulingan keadaan ajaib. Litar pengekodan untuk kod penstabil hanya memerlukan Gate Clifford, yang memudahkan pelaksanaan toleran ralat penyuling. Sebenarnya, spesifik bergantung pada kod yang digunakan.
Ringkasnya, bahagian ini bertujuan untuk memberikan perbincangan peringkat tinggi yang sangat asas tentang keadaan ajaib, dengan niat hanya memberikan idea asas tentang cara ia berfungsi. Kadangkala dituntut bahawa overhead untuk menggunakan keadaan ajaib bagi melaksanakan Gate secara toleran ralat mengikut garis ini akan sangat tinggi, dengan sebahagian besar kerja pergi ke dalam proses penyulingan. Namun, ini sebenarnya tidak begitu jelas β terdapat banyak cara berpotensi untuk mengoptimumkan proses-proses ini. Selain itu, terdapat pendekatan alternatif untuk membina gadget toleran ralat bagi Gate yang tidak boleh dilaksanakan secara transversal. Sebagai contoh, perubahan bentuk kod dan penukaran kod adalah kata kunci yang berkaitan dengan beberapa skim ini β dan cara-cara baru terus dibangunkan dan diperhalusi.
Pembetulan ralat toleran ralatβ
Selain daripada pelaksanaan pelbagai gadget yang diperlukan untuk pelaksanaan toleran ralat bagi litar kuantum yang diberikan, terdapat isu penting lain yang perlu diakui: pelaksanaan langkah pembetulan ralat itu sendiri. Ini kembali kepada idea bahawa apa sahaja yang melibatkan maklumat kuantum terdedah kepada ralat β termasuk litar yang sendirinya bertujuan untuk membetulkan ralat.
Pertimbangkan, sebagai contoh, jenis litar yang diterangkan dalam pelajaran "Formalisme penstabil" untuk mengukur penjana penstabil secara tidak merosakkan menggunakan anggaran fasa. Litar-litar ini jelas tidak toleran ralat kerana ia boleh menyebabkan ralat merambat dalam blok kod yang beroperasi ke atasnya. Ini mungkin kelihatan cukup bermasalah, tetapi terdapat pelbagai cara yang diketahui untuk melakukan pembetulan ralat secara toleran ralat dengan cara yang tidak menyebabkan ralat merambat dalam blok kod yang sedang dibetulkan.
Satu kaedah dikenali sebagai pembetulan ralat Shor, kerana ia pertama kali ditemui oleh Peter Shor. Ideanya ialah melakukan pengukuran sindrom menggunakan apa yang dipanggil keadaan kucing, iaitu keadaan -Qubit dalam bentuk
di mana dan merujuk kepada rentetan semua-sifar dan semua-satu dengan panjang Sebagai contoh, ini adalah keadaan apabila dan keadaan GHZ apabila tetapi secara amnya, pembetulan ralat Shor memerlukan keadaan seperti ini untuk yang merupakan berat penjana penstabil yang sedang diukur.
Sebagai contoh, litar yang ditunjukkan di sini mengukur penjana penstabil dalam bentuk
Ini memerlukan pembinaan keadaan kucing itu sendiri, dan untuk menjadikannya berfungsi dengan boleh dipercayai dengan kehadiran ralat dan Gate yang berpotensi rosak, kaedah ini sebenarnya memerlukan litar seperti ini dijalankan berulang kali untuk membuat inferens tentang di mana ralat yang berbeza mungkin telah berlaku semasa proses berlangsung.
Kaedah alternatif dikenali sebagai pembetulan ralat Steane. Kaedah ini berfungsi secara berbeza, dan ia hanya berfungsi untuk kod CSS. Ideanya ialah kita sebenarnya tidak melakukan pengukuran sindrom pada keadaan kuantum yang dikodkan dalam litar yang cuba kita jalankan, tetapi sebaliknya kita sengaja merambatkan ralat ke sistem ruang kerja, dan kemudian mengukur sistem itu dan mengesan ralat secara klasik. Gambar rajah litar berikut menggambarkan bagaimana ini boleh dilakukan untuk mengesan ralat dan , masing-masing.
Kaedah berkaitan yang dikenali sebagai pembetulan ralat Knill melanjutkan kaedah ini ke kod penstabil sewenang-wenangnya menggunakan teleportasi.