Cara yang paling sederhana secara konseptual untuk menghasilkan keadaan W agak analog dengan pengambilan sampel reservoir klasik , karena melibatkan serangkaian operasi lokal yang pada akhirnya menciptakan efek yang seragam.
Pada dasarnya, Anda melihat setiap qubit secara bergantian dan mempertimbangkan "berapa banyak amplitudo yang tersisa di status all-0s, dan berapa banyak yang ingin saya transfer ke status just-this-qubit-is-ON?". Ternyata keluarga rotasi yang Anda butuhkan adalah apa yang saya sebut "gerbang peluang" yang memiliki matriks berikut:
M(p:q)=1p+q−−−−−√[p–√−q√q√p–√]
Dengan menggunakan gerbang ini, Anda bisa mendapatkan status W dengan urutan operasi yang semakin terkontrol:
Rangkaian ini agak tidak efisien. Ini memiliki biaya mana adalah jumlah qubit dan adalah ketepatan absolut yang diinginkan (karena, dalam konteks kesalahan yang dikoreksi, kemungkinan gerbang bukan asli dan harus diperkirakan).O(N2+Nlg(1/ϵ))Nϵ
Kita dapat meningkatkan efisiensi dengan beralih dari strategi "transfer dari apa yang tertinggal" ke strategi "transfer dari apa yang bepergian". Ini menambahkan sapuan fixup pada akhirnya, tetapi hanya membutuhkan kontrol tunggal pada setiap operasi. Ini mengurangi biaya menjadi :O(Nlg(1/ϵ))
Masih mungkin untuk melakukan yang lebih baik, tetapi mulai menjadi rumit. Pada dasarnya, Anda dapat menggunakan langkah parsial Grover tunggal untuk mendapatkan amplitudo sama dengan tetapi mereka akan dikodekan ke dalam register biner (kami ingin register satu-panas dengan set bit tunggal). Untuk memperbaikinya, diperlukan sirkuit konversi biner ke unary. Alat yang diperlukan untuk melakukan ini tercakup dalam "Pengkodean Spektrum Elektronik dalam Sirkuit Quantum dengan Kompleksitas T Linear" ). Berikut adalah angka-angka yang relevan.N1/N−−−−√
Langkah grover parsial:
Cara melakukan operasi yang diindeks (well ... semacam. Angka terdekat memiliki akumulator yang tidak tepat untuk kasus ini):
Menggunakan pendekatan yang lebih rumit ini mengurangi biaya dari ke .O(Nlg(1/ϵ))O(N+lg(1/ϵ))