Wie funktioniert Feedback in einem einfachen Grovers-Algorithmus? $n=4$?
In diesem Beispiel Implementierung des Grovers-Algorithmus aus dem Qiskit-Lehrbuch, der a löst $2\times 2$ Sudoku-Puzzle:
https://qiskit.org/textbook/ch-algorithms/grover.html
Die Schaltung iteriert zweimal (siehe Bild)
Meine Frage ist:
Wie sind die Daten in der $c_0 - c_3$ und out0 Qubits verwendet.
Für mich sieht es so aus $c_0 - c_3$ und raus werden nie zurück in die $v_0 - v_3$ Qubits und $v_0 - v_3$ sind die einzigen, die am Ende gemessen werden.
Ich bin mir nicht sicher, ob ich falsch interpretiert habe, wie Verschränkung hier funktioniert oder wie die CX-Gates funktionieren.

Antworten
Das Quantenregister c
kann als Ancilla angesehen werden. Für den ersten Teil jeder Iteration (vor dem CCCC-NOT
) werden jeweils zwei cx
verglichen, wenn der Zustand der beiden Qubits identisch ist. Wenn nicht, wird eine Ancilla in den Zustand konvertiert$|1\rangle$. Die CCCC-NOT
prüft, ob die vier Ancillae alle sind$|1\rangle$In diesem Fall wird eine Phasenumkehroperation implementiert.
Der zweite Teil jeder Iteration (zwischen CCCC-NOT
und der Diffusionseinheit) wandelt die Ancillae in ihren ursprünglichen Zustand um ($|0000\rangle$zur Reversibilität). Die Wirkung der einheitlichen Diffusion sollte Ihnen vertraut sein.
Das Einführen von Ancilla in die Quantenschaltung erhöht sicherlich die Schwierigkeit der klassischen Simulation, kann jedoch die Schwierigkeit beim Entwerfen eines Algorithmus verringern (manchmal ist es unmöglich, das Ziel ohne Ancilla zu erreichen).