Der Grund für die Entwicklung der Quanteninformatik liegt nicht nur im Erreichen einer höheren Rechenkapazität, sondern auch darin, Quantensysteme richtig simulieren und numerisch untersuchen zu können. Es ist immer noch nicht klar, was die Gesamtheit aller Berechnungsaufgaben für Quantennetzwerke ist und welche Aufgaben mit einem Quantencomputer gelöst werden müssen oder vorzugsweise gelöst werden. Ziel dieses Kapitels ist es, ein Verständnis für die zentralen Quantenideen zu vermitteln, die zu den Standard-Must-Do-Themen in der Quantenberechnung gehören und die ihre Anwendung in Quantennetzwerken finden könnten.
Anzeige
Bitte loggen Sie sich ein, um Zugang zu Ihrer Lizenz zu erhalten.
Klassische Computer haben sich so weit entwickelt, dass sogar die höheren Befehlssätze kommerzieller Prozessoren (x86, ARM usw.) standardisiert wurden.
Im Gegensatz zu klassischen Operationen können Quantenoperationen nicht exakt mit einer endlichen oder abzählbaren Anzahl von Gattern implementiert werden, da die Menge der Operationen auf einer beliebigen Anzahl von Qubits kontinuierlich ist. Das Einzige, worauf wir hoffen können, ist, eine dichte Teilmenge zu erzeugen, so wie die natürlichen Zahlen die dichte Menge der rationalen Zahlen in den reellen Zahlen erzeugen. Selbst wenn eine exakte Umsetzung möglich wäre, ist eine einfache Annäherung die physikalisch relevante Bedingung, da aufgrund der Unmöglichkeit, in der Praxis exakte Operationen und Messungen durchzuführen, das Ergebnis einer realen Quantenberechnung nur mit einer kleinen, aber von Null verschiedenen Fehlerwahrscheinlichkeit ermittelt werden kann.
Einige Gründe sind im Folgenden aufgelistet: Algorithmen sind auch dann noch zeitaufwendig, wenn die Komplexität ein Polynom hohen Grades ist. In der Praxis kommen unterschiedliche Kostenfaktoren ins Spiel, wobei einige Grundoperationen viel teurer sein können als andere (Multiplikation vs. Addition) und der Speicherzugriff berücksichtigt werden muss (Cache vs. RAM-Operationen). Manchmal können die versteckten Konstanten so groß sein, dass der Skalierungsvorteil unpraktisch und der Algorithmus unbrauchbar wird. Für die Multiplikation von n × n Matrizen sind beispielsweise mindestens n2 Skalarmultiplikationen (die Anzahl der Ausgabewerte) erforderlich, und die Implementierung der Definition ohne Optimierung erfordert n3 Multiplikationen. Es wurde bewiesen, dass die Matrixmultiplikation eine Komplexität von höchstens n2,4 aufweist [CW90] Der gefundene Algorithmus ist jedoch unpraktisch und bringt auf den heutigen Computern keinen Vorteil [Ili89]. Es gibt einen praktischen Algorithmus, der n∼2,7 Multiplikationen verwendet [Str69].
Dies gilt allgemein für jeden normalen Operator K. K†K = KK† ist zudem erfüllt, was bedeutet, dass der hermitesche und der antihermitesche Teil K ± K† gleichzeitig diagonalisiert werden können und somit K mit einem komplexen Spektrum diagonalisiert werden kann. Mit anderen Worten: Jeder normale Operator kann gemessen werden, indem man gleichzeitig seinen hermiteschen und seinen antihermiteschen Teil misst.
Die Probleme, die effizient gelöst werden können, bilden die Komplexitätsklasse P. Die Probleme, für die eine behauptete Lösung effizient überprüft werden kann, bilden die Komplexitätsklasse NP, die P und die meisten praktisch relevanten Probleme enthält. Eine Möglichkeit, Probleme zu konstruieren, die nicht in NP sind, ist der Versuch, die Lösungen von Problemen in NP oder sogar P zu zählen [Val79].
Atome und Moleküle haben unendlich viele Energieniveaus, aber nur endlich viele können simuliert werden. Das simulierte Molekül wird eine theoretische Annäherung mit endlich vielen Energieniveaus sein.