Implementasi Qiskit operator Q implementasi Brassard Amplitude
Dalam Brassard dkk. kerja, itu$Q$ operator didefinisikan sebagai
$$ Q =-\mathcal{A}\mathcal{S_0}\mathcal{A}^{-1}\mathcal{S_\chi}$$
Saya bertanya-tanya bagaimana tanda negatif di sisi paling kiri diimplementasikan dalam operator di sirkuit kuantum? Saya sudah memiliki realisasi untuk$S_\chi$, $S_0$ dan $\mathcal{A}$. Saya dapat menganggapnya sebagai flip tanda dasar menggunakan operator satu qubit dengan -1 di diagonal tetapi saya tidak yakin apakah itu implementasi yang benar.
Jawaban
Tanda minus adalah fase global. Ini dapat dihilangkan dalam kasus operator$Q$ sendiri, bagaimanapun, itu harus dimasukkan dalam versi terkontrol dari operator.
Fase global terkontrol diimplementasikan oleh gerbang (saya berasumsi lingkungan Q IBM) $U1 \otimes I$, dimana $U1$ gerbang bertindak pada qubit kontrol dan operator identitas pada qubit target.
$U1$ gerbang diberikan oleh matriks $$ \begin{pmatrix} 1 & 0 \\ 0 & \mathrm{e}^{i\varphi} \end{pmatrix} $$
Dalam kasus Anda $\varphi = \pi$ yang mengarah ke gerbang $$ \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix}, $$ yang sebenarnya $Z$ gerbang.
Singkatnya: Anda tidak perlu repot-repot masuk dalam kasus operator $Q$ sendiri, dalam kasus operator yang dikendalikan $Q$, sederhananya $Z$ gerbang pada qubit kontrol.
Sesuai uraian di kertas Brassard halaman 5 "... Operator S x secara kondisional mengubah tanda amplitudo status baik .... sedangkan operator S 0 mengubah tanda amplitudo jika dan hanya jika statusnya adalah keadaan nol | 0>. ... "
Amplitudo dikalikan dengan e iƟ -> S x (Ɵ = φ) dan S 0 (Ɵ = ϕ) .. seperti yang diberikan dalam Teorema 4 lebih lanjut dipertimbangkan dalam Lemma 5, untuk memilih φ = ϕ = π yang mengarah ke gerbang Z
Ini dijelaskan dengan baik di https://qiskit.org/textbook/ch-algorithms/grover.html Brassard adalah versi umum dari Grover.