Pasti! Bayangkan Anda memiliki K= 2k salinan dari oracle pencarian US yang dapat Anda gunakan. Biasanya, Anda akan mencari dengan iterasi aksi
H⊗ n( Sayan- 2 | 0 ⟩ ⟨ 0 |⊗ n) H⊗ nUS,
mulai dari keadaan awal (H|0⟩)⊗n . Ini membutuhkan waktu Θ(N−−√). (Saya menggunakanInuntuk menunjukkanmatriks identitas2n×2n.)
Anda bisa mengganti ini dengan 2k salinan paralel, masing-masing diindeks oleh x∈{0,1}k , menggunakan
(Ik⊗H⊗(n−k))Ik⊗(In−k−2|0⟩⟨0|⊗(n−k))(Ik⊗H⊗(n−k))US
dan mulai dari keadaan|x⟩(H|0⟩)⊗(n−k)
Waktu yang diperlukan untuk menjalankan ini akan berkurang menjadiO(N/K−−−−√), dengan biaya membutuhkanKkali lebih banyak ruang.
Dalam pengertian skala, orang mungkin menganggap ini sebagai hasil yang tidak relevan. Jika Anda memiliki jumlah oracle yang tetap, K , maka Anda mendapatkan fix ( K−−√Peningkatan K ) (seperti halnya jika Anda memilikiinti klasikKparalel, peningkatan terbaik yang bisa Anda dapatkan adalah faktorK), dan itu tidak mengubah penskalaan. Tapi itu mengubah waktu berjalan yang mendasar. Kita tahu bahwa algoritma Grover tepat optimal. Dibutuhkan waktu minimum absolut yang mungkin dengan satu oracle. Jadi, mengetahui bahwa Anda mendapatkanK−−√Peningkatan waktu K berguna sehubungan dengan tolok ukur waktu berjalan tertentu pada nilaiN.