A4/Rechnen mit Quanten

Aus QuaNTH
Wechseln zu: Navigation, Suche

A4

Rechnen
Einführung

Lektionen


Abb. 4 Schematische Eingliederung des Quantenprozessors in die von Neumann-Architektur.
Abb. 5 Beispiel für die Wirkung eines Quantengatters: Drehung der Zustände in der Blochkugel.

Wir haben bisher das Prinzip eines klassischen Rechners kennengelernt, sowie die Frage erörtert, wann wir eine Aufgabe als leicht oder schwierig einstufen. Nun wollen wir uns damit beschäftigen, wie ein Quantenrechner aussehen kann, für den bestimmte Aufgaben einfach werden, die klassisch schwierig sind. Wir weisen an dieser Stelle darauf hin, dass wir natürlich nur die grobe Idee des Quantenrechnens präsentieren können, detailliertere Informationen folgen in den fortgeschrittenen Kapiteln dieses Kursstrangs.


Verbindung zur von Neumann-Architektur

Der Speicher eines klassischen Rechners besteht aus vielen, einzeln ansprechbaren Bits als Speicherstellen, auf denen dann Operationen ausgeführt werden. Ein Quantenrechner besteht ebenfalls aus einem Speicher aus vielen Qubits, auf denen Quantenoperationen ausgeführt werden. Wir stellen uns hierbei den Quantenrechner immer als Teil einer größeren Architektur vor (siehe Abb. 4). Insbesondere nehmen wir immer an, dass die Eingabe und Ausgabe des Computers klassische Informationen sind und dass ein klassischer Rechner im Hintergrund für die Kontrolloperationen genutzt werden kann.

Konkret bedeutet dies, dass eine Frage (bzw. die Beschreibung eines Algorithmus) in klassischer Information vorliegt, welche dann an den Computer gegeben wird. Dieser trennt die benötigten Operationen in den Teil, der effizient klassisch zu erledigen ist und den Teil, für den Quantenrechnen Vorteile hat. Dann wird der Quantenteil des Algorithmus so kodiert, dass der Quantenprozessor ihn verarbeiten kann und die Operation im Quantenprozessor durchgeführt wird. Diese Operation wird immer mit einer Messung beendet, nach der wieder klassische Information vorliegt, welche vom klassischen Rechner interpretiert und ausgewertet wird.

Diese Sichtweise hat zwei Vorteile: Zum einen macht es die Beschreibung einfacher, da man sich nicht um die klassische Verarbeitung kümmern muss. Zum anderen ist üblicherweise die Quanteninformation die "teure" Ressource, während die klassische Information die "billige" Ressource darstellt, so dass man immer versucht, so viel Rechnung wie möglich klassisch durchzuführen, um die teure Ressource zu sparen. Insbesondere wäre es eine Verschwendung, den Quantenprozessor für Aufgaben zu verwenden, die auch auf einem klassischen Computer einfach zu lösen sind.

Grundidee des Quantenrechnens

Wir wollen zunächst allgemein die Grundidee des Quantenrechnens darlegen, bevor wir zu einem Beispiel kommen. Kurz gefasst bietet Quantencomputing zusätzliche Möglichkeiten, die beim rein klassischen Rechnen nicht vorkommen. Wir hatten in Kapitel A.1 bereits gesehen, dass es eine Eigenschaft der Quantenmechanik ist, dass beim Zusammensetzen von Systemen im Vergleich zur klassischen Physik mehr Freiheitsgrade entstehen. Diese zusätzlichen Freiheitsgrade möchte man nun beim Quantencomputing ausnutzen.

Wir kennen bis heute verschiedene Algorithmen (oder besser: Klassen von Algorithmen), bei der die Verwendung von Quantensystemen einen Vorteil bringt. Ohne technischen Mehraufwand können wir hier jedoch nur ein einfaches Beispiel ohne praktische Relevanz präsentieren. Den wohl wichtigsten Quanten-Algorithmus, den Shor-Algorithmus, werden wir im Kurs B.4 besprechen.

Quantengatter

Ein einfaches Modell für das Rechnen mit Quanten ist das Quanten-Gattermodell. Dieses Rechenmodell ist in Analogie mit seinem klassischen Pendant über Leitungen und Gatter definiert. Jede Leitung stellt in diesem Fall ein Qubit dar, jedes Gatter eine Operation auf Qubits.

Man definiert einen solchen Quanten-Schaltkreis normalerweise so, dass zunächst ein Quantenzustand gemäß einer klassischen Vorschrift erzeugt wird. Hierbei wird klassische Eingangsinformation in Quanteninformation umgesetzt. Dann wird die Quanteninformation durch Quantenoperationen verarbeitet und schließlich am Ende gemessen, was einer Übersetzung von Quanteninformation in klassische Information entspricht. Dies hat wiederum den Vorteil, dass die klassische Kontrolle direkt die Ein- und Ausgabe des Quantenspeichers verwalten kann. Im Allgemeinen könnte man sich auch weitere Messungen zur Laufzeit des Quantenschaltkreises vorstellen, jedoch kann man zeigen, dass es immer möglich ist, die Präparation an den Anfang und die Messungen ans Ende der Berechnung zu schieben.

Beispiele für Quantengatter

Betrachten wir zunächst wieder das Beispiel eines Qubits, welches als Polarisation von Licht kodiert ist: Der Zustand eines solchen Qubits (vgl. Abschnitt A.3) kann an der Blochkugel visualisiert werden. Ein einfaches Quantengatter könnte nun beispielsweise eine Drehung in der Blochkugel implementieren.

In Abb. 5 haben wir eine solche Drehung skizziert. In diesem Fall implementiert das Gatter eine Drehung um 90^\circ in der Blochkugel um die Achse, welche durch die +45^\circ und -45^\circ polarisierten Zustände verläuft. Sämtliche Zustände auf der Drehachse werden nicht verändert, die anderen Zustände entsprechend um 90^\circ gedreht. So wird aus vertikal polarisiertem Licht rechts-zirkular polarisiertes Licht und aus horizontal polarisiertem Licht links-zirkular polarisiertes Licht. Ein solches Bauteil nennt man in der Optik auch eine Verzögerungsplatte oder in diesem Fall eine \lambda/4-Platte. Die Bezeichnung stammt aus der klassischen Maxwell-Wellentheorie des Lichts. Hier entspricht der Unterschied zwischen linearer und zirkularer Polarisation gerade einem Gangunterschied (a.k.a. Phasenunterschied) zwischen der x- und der y-Komponente des elektrischen Feldes. Bei linear polarisiertem Licht schwingen die Felder in Phase, bei zirkular polarisiertem Licht schwingen sie gerade um eine viertel Wellenlänge gegenphasig. Würde man dieses Gatter viermal hintereinander anwenden, so wäre es äquivalent zum Nichtstun.

Möchte man nun Gatter zwischen mehreren Qubits betrachten, so verliert man eine einfache geometrische Anschauung. Während ein Qubit nur drei reelle Parameter zur Festlegung des Zustands benötigt, sind es bei zwei Qubits schon 15, dementsprechend gibt es hier keine einfache Visualisierung mehr. Ein Beispiel für ein Zwei-Qubit-Gatter ist ein Strahlteiler. Dieser hat zwei Eingänge und zwei Ausgänge und je nach Phasenlage der Eingänge wird das Licht nur auf einem der Ausgänge oder auf beiden transmittiert.