Das Phasenabschätzungsverfahren
Als nächstes besprechen wir das Phasenabschätzungsverfahren, einen Quantenalgorithmus zur Lösung des Phasenabschätzungsproblems.
Wir beginnen mit einer Aufwärmübung mit niedriger Genauigkeit, die die grundlegende Intuition hinter der Methode vermittelt. Anschließend sprechen wir über die Quantenfouriertransformation, eine wichtige Quantenoperation, die im Phasenabschätzungsverfahren verwendet wird, sowie über ihre Implementierung als Quantenschaltkreis. Sobald wir die Quantenfouriertransformation verstanden haben, beschreiben wir das Phasenabschätzungsverfahren in voller Allgemeinheit und analysieren seine Leistung.
Aufwärmübung: Phasen mit niedriger Genauigkeit annähern
Wir beginnen mit ein paar einfachen Varianten des Phasenabschätzungsverfahrens, die Lösungen mit niedriger Genauigkeit für das Phasenabschätzungsproblem liefern. Dies hilft dabei, die Intuition hinter dem allgemeinen Verfahren zu erklären, das wir etwas später in der Lektion kennenlernen werden.
Den Phase-Kickback nutzen
Ein einfacher Ansatz für das Phasenabschätzungsproblem, mit dem wir etwas über den gesuchten Wert erfahren können, basiert auf dem Phase-Kickback-Phänomen. Wie wir sehen werden, handelt es sich dabei im Wesentlichen um eine Einzel-Qubit-Version des allgemeinen Phasenabschätzungsverfahrens, das später in der Lektion besprochen wird.
Als Teil der Eingabe für das Phasenabschätzungsproblem haben wir einen unitären Quantenschaltkreis für die Operation Wir können die Beschreibung dieses Schaltkreises nutzen, um einen Schaltkreis für eine kontrollierte--Operation zu erstellen, was die folgende Abbildung veranschaulicht (mit der Operation betrachtet als Quantengate, links und einer kontrollierten--Operation rechts).
Wir können einen Quantenschaltkreis für eine kontrollierte--Operation erstellen, indem wir zunächst dem Schaltkreis für ein Kontroll-Qubit hinzufügen und dann jedes Gate im Schaltkreis für durch eine kontrollierte Version dieses Gates ersetzen — unser neues Kontroll-Qubit kontrolliert also effektiv jedes einzelne Gate im Schaltkreis für Dies erfordert, dass wir eine kontrollierte Version jedes Gates in unserem Schaltkreis haben, aber wir können stets Schaltkreise für diese kontrollierten Operationen aufbauen, falls sie nicht in unserem Gate-Set enthalten sind.
Betrachten wir nun den folgenden Schaltkreis, bei dem der Eingangszustand aller Qubits außer dem obersten der Eigenvektor-Quantenzustand von ist.
Die Messausgangswahrscheinlichkeiten für diesen Schaltkreis hängen vom Eigenwert von ab, der dem Eigenvektor entspricht. Analysieren wir den Schaltkreis im Detail, um genau herauszufinden, wie.
Der Anfangszustand des Schaltkreises ist
und das erste Hadamard-Gate transformiert diesen Zustand zu
Als nächstes wird die kontrollierte--Operation ausgeführt, was zum Zustand führt
Unter der Annahme, dass ein Eigenvektor von mit dem Eigenwert ist, können wir diesen Zustand alternativ wie folgt ausdrücken.
Hier beobachten wir das Phase-Kickback-Phänomen. Es unterscheidet sich diesmal etwas von dem, was wir bei Deutschs Algorithmus und dem Deutsch-Jozsa-Algorithmus gesehen haben, da wir nicht mit einem Query-Gate arbeiten — aber die Idee ist ähnlich.
Schließlich wird das zweite Hadamard-Gate ausgeführt. Nach einer kleinen Vereinfachung erhalten wir folgenden Ausdruck für diesen Zustand.
Die Messung liefert daher die Ergebnisse und mit diesen Wahrscheinlichkeiten:
Hier ist ein Diagramm der Wahrscheinlichkeiten für die beiden möglichen Ergebnisse, und als Funktionen von
Naturgemäß ergeben die beiden Wahrscheinlichkeiten stets die Summe Beachte, dass wenn das Messergebnis immer ist, und wenn das Messergebnis immer ist. Obwohl das Messergebnis also nicht genau preisgibt, was ist, liefert es uns doch einige Informationen darüber — und wenn uns versprochen worden wäre, dass entweder oder gilt, könnten wir aus dem Schaltkreis fehlerfrei erfahren, welches der Fall ist.
Intuitiv lässt sich das Messergebnis des Schaltkreises als eine Schätzung von mit „einem Bit Genauigkeit" verstehen. Mit anderen Worten: Würden wir in Binärdarstellung schreiben und auf ein Bit runden, erhielten wir eine Zahl wie diese:
Das Messergebnis kann als Schätzung des Bits betrachtet werden. Wenn weder noch ist, besteht eine von null verschiedene Wahrscheinlichkeit, dass die Schätzung falsch ist — aber die Fehlerwahrscheinlichkeit wird immer kleiner, je näher wir oder kommen.
Es ist naheliegend zu fragen, welche Rolle die beiden Hadamard-Gates in diesem Verfahren spielen:
-
Das erste Hadamard-Gate versetzt das Kontroll-Qubit in eine gleichmäßige Superposition von und sodass der Phase-Kickback beim Zustand und nicht beim Zustand auftritt und eine relative Phasendifferenz erzeugt, die die Messergebnisse beeinflusst. Würden wir dies nicht tun und würde der Phase-Kickback eine globale Phase erzeugen, hätte er keinen Einfluss auf die Wahrscheinlichkeiten verschiedener Messergebnisse.
-
Das zweite Hadamard-Gate ermöglicht es uns, durch das Phänomen der Interferenz etwas über die Zahl zu erfahren. Vor dem zweiten Hadamard-Gate befindet sich das oberste Qubit im Zustand
und wenn wir diesen Zustand messen würden, erhielten wir und jeweils mit Wahrscheinlichkeit was uns nichts über verrät. Durch das zweite Hadamard-Gate bewirken wir jedoch, dass die Zahl die Ausgangswahrscheinlichkeiten beeinflusst.
Die Phase verdoppeln
Der obige Schaltkreis nutzt das Phase-Kickback-Phänomen, um auf ein einzelnes Bit Genauigkeit anzunähern. Ein Bit Genauigkeit mag in manchen Situationen ausreichen — aber für die Faktorisierung werden wir sehr viel mehr Genauigkeit benötigen. Eine naheliegende Frage ist: Wie können wir mehr über erfahren?
Eine sehr einfache Möglichkeit besteht darin, die kontrollierte--Operation in unserem Schaltkreis durch zwei Kopien dieser Operation zu ersetzen, wie in diesem Schaltkreis:
Zwei Kopien einer kontrollierten--Operation entsprechen einer kontrollierten--Operation. Wenn ein Eigenvektor von mit dem Eigenwert ist, dann ist dieser Zustand auch ein Eigenvektor von diesmal mit dem Eigenwert
Wenn wir diese Version des Schaltkreises ausführen, führen wir also effektiv dieselbe Berechnung wie zuvor durch, nur dass die Zahl durch ersetzt wird. Hier ist ein Diagramm, das die Ausgangswahrscheinlichkeiten zeigt, während von bis variiert.
Dies kann uns tatsächlich einige zusätzliche Informationen über liefern. Wenn die Binärdarstellung von lautet
dann verschiebt die Verdopplung von den Binärpunkt effektiv um eine Stelle nach rechts:
Da wir mit gleichsetzen, wenn wir uns auf dem Einheitskreis bewegen, hat das Bit keinen Einfluss auf unsere Wahrscheinlichkeiten, und wir erhalten effektiv eine Schätzung für das zweite Bit nach dem Binärpunkt, wenn wir auf zwei Bits runden. Wenn wir beispielsweise im Voraus wüssten, dass entweder oder ist, könnten wir dem Messergebnis vollständig vertrauen.
Es ist jedoch nicht unmittelbar klar, wie diese Schätzung mit dem, was wir aus dem ursprünglichen (nicht verdoppelten) Phase-Kickback-Schaltkreis gelernt haben, in Einklang gebracht werden sollte, um möglichst genaue Informationen über zu erhalten. Lass uns daher einen Schritt zurücktreten und überlegen, wie wir vorgehen sollten.
Zwei-Qubit-Phasenabschätzung
Anstatt die beiden oben beschriebenen Optionen getrennt zu betrachten, kombinieren wir sie in einem einzigen Schaltkreis wie folgt.
Die Hadamard-Gates nach den kontrollierten Operationen wurden entfernt, und es gibt hier noch keine Messungen. Wir werden den Schaltkreis erweitern, wenn wir unsere Optionen zur bestmöglichen Gewinnung von Informationen über abwägen.
Wenn wir diesen Schaltkreis ausführen, während ein Eigenvektor von ist, bleibt der Zustand der unteren Qubits während des gesamten Schaltkreises und Phasen werden in den Zustand der oberen zwei Qubits „gekickt". Analysieren wir den Schaltkreis sorgfältig anhand der folgenden Abbildung.
Wir können den Zustand wie folgt schreiben:
Wenn die erste kontrollierte--Operation ausgeführt wird, wird der Eigenwert in die Phase „gekickt", wenn (das oberste Qubit) gleich ist, aber nicht wenn es ist. Den resultierenden Zustand können wir so ausdrücken:
Die zweiten und dritten kontrollierten--Gates tun etwas Ähnliches, jedoch für anstatt und mit ersetzt durch Den resultierenden Zustand können wir so ausdrücken:
Wenn wir den Binärstring als eine ganze Zahl in Binärdarstellung betrachten, also können wir diesen Zustand alternativ wie folgt ausdrücken.
Unser Ziel ist es, aus diesem Zustand so viele Informationen wie möglich über zu gewinnen.
An diesem Punkt betrachten wir einen Sonderfall, in dem uns versprochen wird, dass für eine ganze Zahl gilt. Mit anderen Worten: sodass wir diese Zahl exakt in Binärdarstellung mit zwei Bits ausdrücken können, als $$.00,.01,.10.11.\theta\theta$ im Allgemeinen am effektivsten gewinnen können.
Zunächst definieren wir für jeden möglichen Wert einen Zwei-Qubit-Zustandsvektor.
Nach Vereinfachung der Exponentialterme können wir diese Vektoren wie folgt schreiben.