DEV Community

Cover image for Quantencomputing verständlich erklärt — Episode 2
Christian Ahrweiler
Christian Ahrweiler

Posted on Originally published at Medium

Quantencomputing verständlich erklärt — Episode 2

QuantencomputingQuantengatter, Superposition und Amplituden

In Episode 1 haben wir einen Quantencomputer mit einem gewöhnlichen Computer verglichen:

Klassischer ComputerQuantencomputerBitQubitMaschinenbefehlQuantengatterProgrammFolge von QuantengatternErgebnis auslesenQubits messen

Ein Quantengatter entspricht ungefähr einem Maschinenbefehl. Es verändert den Zustand eines Qubits nach einer festgelegten Regel.

Aber was bedeutet „Zustand“ bei einem Qubit? Und warum erhalten wir bei derselben Berechnung nicht immer dasselbe Messergebnis?

Das X-Gatter

Vor einer Berechnung setzen wir das Qubit auf einen bekannten Eingangswert. Wir beginnen mit 0. In der Quanteninformatik schreibt man dafür |0⟩.

Das X-Gatter entspricht ungefähr einem klassischen NOT-Befehl:

|0⟩ → X → |1⟩
|1⟩ → X → |0⟩Unser erstes Quantenprogramm lautet:

Qubit auf 0 setzen
↓
X-Gatter anwenden
↓
Qubit messenDie Messung liefert sicher 1. Bis hierhin verhält sich der Ablauf wie ein klassisches Programm: Eingangswert und Befehl bestimmen den Ausgangswert eindeutig.

Das H-Gatter

Interessanter wird es mit dem Hadamard-Gatter, kurz H-Gatter:

Qubit auf 0 setzen
↓
H-Gatter anwenden
↓
Qubit messenBei einer einzelnen Ausführung erhalten wir entweder 0 oder 1.

Um zu erkennen, was dabei passiert, wiederholen wir den vollständigen Ablauf. Vor jeder Ausführung setzen wir das Qubit erneut auf 0, wenden dasselbe H-Gatter an und messen anschließend:

auf 0 setzen → H → messen: 0
auf 0 setzen → H → messen: 1
auf 0 setzen → H → messen: 1
auf 0 setzen → H → messen: 0Nach sehr vielen Ausführungen erhalten wir ungefähr:

50 % der Messungen ergeben 0
50 % der Messungen ergeben 1Die konkrete Reihenfolge der Ergebnisse ist nicht charakteristisch. Sie könnte 0101, 1100 oder ganz anders aussehen. Charakteristisch ist nur das ungefähre Verhältnis von Nullen und Einsen.

Dieses Verhältnis nennen wir die Wahrscheinlichkeitsverteilung der Messergebnisse.

Nach dem H-Gatter befindet sich das Qubit in einem neuen, genau festgelegten Zustand. Dieser Zustand heißt Superposition.

Eine Superposition ist ein bestimmter Zustand während einer Quantenberechnung. Sie ist weder ein unbekannter klassischer Wert noch ein schnelles Umschalten zwischen 0 und 1.### Wie lässt sich dieser Zustand vorstellen?

Ein klassisches Bit lässt sich mit einem einzelnen Wert beschreiben. Für den Zustand eines Qubits benötigen wir zwei Zahlen. Eine Zahl ordnen wir der Messmöglichkeit 0 zu, die andere der Messmöglichkeit 1.

Diese beiden Zahlen heißen Amplituden.

Wir können sie uns zunächst als Koordinaten vorstellen:

x = Amplitude für 0
y = Amplitude für 1Beide Koordinaten zusammen bestimmen einen Punkt — oder anschaulicher: die Richtung eines Pfeils in einem Koordinatensystem.

  • Zeigt der Pfeil vollständig entlang der x-Achse, haben wir den Zustand 0.
  • Zeigt er vollständig entlang der y-Achse, haben wir den Zustand 1.
  • Zeigt er schräg zwischen die Achsen, haben wir eine Superposition. Das Qubit schwingt dabei nicht zwischen 0 und 1. Der schräge Pfeil beschreibt einen eigenen, eindeutig bestimmten Zustand.

*Die Amplituden sind keine sichtbaren Ausschläge im Qubit. Sie sind die Koordinaten, mit denen wir seinen Zustand mathematisch beschreiben.*Für unsere ersten Beispiele genügen zwei gewöhnliche reelle Koordinaten. Die vollständige Quantenmechanik verwendet komplexe Zahlen; das benötigen wir für den grundlegenden Zusammenhang noch nicht.

Was verändert ein Quantengatter?

Ein Quantengatter verändert den Zustand des Qubits. In unserem Koordinatenbild bedeutet das:

*Das Gatter berechnet aus den bisherigen Amplituden neue Amplituden.*Das X-Gatter vertauscht beispielsweise die Koordinaten für 0 und 1. Dadurch wird aus dem Zustand 0 der Zustand 1 und umgekehrt.

Das H-Gatter verwendet eine andere, ebenfalls festgelegte Rechenregel. Es bringt den Pfeil aus dem Zustand 0 in eine bestimmte schräge Richtung.

Wichtig ist die Trennung:

  • Das Qubit besitzt einen Zustand.
  • Die Amplituden sind die Koordinaten, mit denen wir diesen Zustand beschreiben.
  • Das Gatter ist eine festgelegte Rechenregel für diese Koordinaten. Nicht das Gatter besitzt ein Amplitudenmuster. Es verändert die Amplituden des Zustands, den es als Eingabe erhält.

Von den Amplituden zur Messung

Solange weitere Gatter folgen, rechnet der Quantencomputer mit den Amplituden weiter.

Erst wenn wir messen, benötigen wir eine klassische Antwort. Bei einem Qubit kann diese Messung nur 0 oder 1 ergeben.

Die beiden Amplituden bestimmen, mit welcher Wahrscheinlichkeit das jeweilige Ergebnis entsteht:

Amplitude x für 0 → Wahrscheinlichkeit für das Ergebnis 0
Amplitude y für 1 → Wahrscheinlichkeit für das Ergebnis 1Die konkrete Regel lautet:

Wahrscheinlichkeit für 0 = x²
Wahrscheinlichkeit für 1 = y²Nehmen wir einen Zustand mit diesen Amplituden:

x = 0,8
y = 0,6Dann gilt für eine Messung:

0: 0,8² = 0,64 = 64 %
1: 0,6² = 0,36 = 36 %Wenn wir denselben Eingang vorbereiten, dieselben Gatter anwenden und anschließend messen, erhalten wir bei vielen vollständigen Durchläufen ungefähr 64 % Nullen und 36 % Einsen.

Das ist die Verteilung, von der wir sprechen. Sie ist nicht der Zustand des Qubits. Sie beschreibt die erwartete Häufigkeit der Messergebnisse bei vielen Wiederholungen.

Damit ist der vollständige Zusammenhang:

Eingangszustand
↓
Quantengatter verändern die Amplituden
↓
die Amplituden bestimmen die Messwahrscheinlichkeiten
↓
die Messung ergibt einen klassischen Wert: 0 oder 1### Warum ergibt derselbe Zustand unterschiedliche Messwerte?

Das Gatter arbeitet nach einer festen Regel:

gleicher Eingang + gleiches Gatter
= gleiche AmplitudenDie Amplituden legen jedoch nicht fest, welches einzelne Messergebnis erscheint. Sie legen die Wahrscheinlichkeiten der möglichen Ergebnisse fest:

gleiche Amplituden
= gleiche Wahrscheinlichkeiten
≠ zwangsläufig gleiches einzelnes MessergebnisBei einer Superposition liest die Messung also keinen bereits vorhandenen klassischen Wert aus. Erst bei der Messung entsteht ein klassisches Ergebnis: 0 oder 1.

Dass eine einzelne Messung nur probabilistisch vorhergesagt werden kann, ist keine Ungenauigkeit des Computers. Es ist eine experimentell bestätigte Grundregel der Quantenmechanik.

Ein Quantenprogramm besteht deshalb aus zwei grundsätzlich verschiedenen Arten von Operationen:

  • Quantengatter verändern den Zustand und damit seine Amplituden nach festen Regeln.
  • Die Messung erzeugt aus diesem Zustand ein klassisches Ergebnis gemäß den daraus folgenden Wahrscheinlichkeiten. ### Woher kommt beim H-Gatter die Zahl 0,707?

Für den Zustand eines Qubits müssen die beiden Messwahrscheinlichkeiten zusammen 100 % ergeben.

Da die Wahrscheinlichkeiten aus den Quadraten der beiden Amplituden entstehen, gilt in unserem Koordinatenbild:

x² + y² = 1Das ist dieselbe Beziehung wie beim Satz des Pythagoras. Der Pfeil, der den Zustand beschreibt, besitzt immer die Länge 1.

Das H-Gatter erzeugt aus dem Zustand 0 eine Superposition, bei der beide Messergebnisse gleich wahrscheinlich sind. Der Pfeil liegt daher genau zwischen den beiden Achsen und beide Koordinaten sind gleich groß:

x = yWelche zwei gleichen Koordinaten ergeben zusammen einen Pfeil der Länge 1?

x² + y² = 1
x = y

2 × x² = 1
x² = 0,5
x = √0,5 ≈ 0,707Deshalb beschreibt man diesen Zustand vereinfacht mit:

Amplitude für 0: +0,707
Amplitude für 1: +0,707Bei der Messung werden daraus:

0: 0,707² ≈ 0,5 = 50 %
1: 0,707² ≈ 0,5 = 50 %Die Zahl 0,707 wurde also nicht willkürlich gewählt. Sie ist die Koordinate eines Pfeils der Länge 1, der genau zwischen den beiden Achsen liegt.

Das Vorzeichen einer Amplitude

Wie in einem gewöhnlichen Koordinatensystem können auch die Amplituden positiv oder negativ sein.

Das H-Gatter setzt die Amplituden abhängig vom Eingangszustand unterschiedlich:

|0⟩ → H → Superposition A
|1⟩ → H → Superposition BFür den Eingangswert 0 erhalten wir:

Superposition A: (+0,707, +0,707)Für den Eingangswert 1 erhalten wir:

Superposition B: (+0,707, −0,707)Das Minuszeichen ändert die Wahrscheinlichkeit einer sofortigen Messung nicht:

(+0,707)² = 0,5
(−0,707)² = 0,5Beide Zustände ergeben daher bei einer sofortigen Messung ungefähr 50 % Ergebnis 0 und 50 % Ergebnis 1.

Für das nächste Gatter macht das Vorzeichen jedoch einen Unterschied. Ein zweites H-Gatter verändert die Amplituden genau so zurück, wie sie durch das erste H-Gatter gesetzt wurden:

|0⟩ → H → Superposition A → H → |0⟩
|1⟩ → H → Superposition B → H → |1⟩Das Vorzeichen hat also keinen Einfluss darauf, wie häufig unmittelbar danach 0 oder 1 gemessen wird. Es beeinflusst aber, wie das nächste Gatter den Zustand verändert.

Erst hier hilft die Analogie zur Welle

Ein einzelnes Paar von Amplituden ist kein Wellenverlauf über die Zeit. Das Qubit schwingt nicht ständig zwischen 0 und 1.

Die Wellenanalogie beschreibt nur, was geschieht, wenn ein Gatter aus vorhandenen Amplituden neue Amplituden berechnet:

  • Zwei positive Amplituden können addiert und dadurch größer werden.
  • Eine positive und eine negative Amplitude können sich bei der Addition gegenseitig aufheben. Dieses Verhalten ähnelt der Überlagerung von Wasserwellen. Zwei gleichgerichtete Wellenberge verstärken sich; ein Wellenberg und ein Wellental können sich aufheben.

Beim zweiten H-Gatter lässt sich diese Verstärkung und Aufhebung konkret nachrechnen.

Das H-Gatter berechnet aus den beiden vorhandenen Amplituden x und y zwei neue Amplituden:

neue Amplitude für 0 = (x + y) ÷ √2
neue Amplitude für 1 = (x − y) ÷ √2Für Superposition A gilt:

x = +0,707
y = +0,707Das zweite H-Gatter berechnet daraus:

für 0: (0,707 + 0,707) ÷ 1,414 = 1
für 1: (0,707 − 0,707) ÷ 1,414 = 0Die Addition verstärkt also die neue Amplitude für 0. Bei der Subtraktion heben sich die beiden gleichen Werte vollständig auf.

Nach dem zweiten H-Gatter gilt daher:

Amplitude für 0: 1
Amplitude für 1: 0Die anschließende Messung ergibt deshalb sicher 0:

Wahrscheinlichkeit für 0: 1² = 100 %
Wahrscheinlichkeit für 1: 0² = 0 %Dieses Verstärken und Aufheben von Amplituden heißt Interferenz.

Die Division durch √2 hält den Zustandspfeil auf der Länge 1. Sie verursacht weder die Verstärkung noch die Aufhebung. Dafür sind die Addition beziehungsweise die Subtraktion der beiden Amplituden verantwortlich.

Die Welle ist also nicht das Qubit und auch nicht die Folge gemessener Nullen und Einsen. Sie ist lediglich eine Analogie für das Addieren und Aufheben von Amplituden während der Berechnung.

Ein Quantenprogramm bleibt ein Programm

Auch ein Quantencomputer bekommt nicht einfach eine gewünschte Antwort vorgegeben.

Ein klassisches Additionsprogramm ist so aufgebaut, dass es die Eingaben 3 und 5 in die Ausgabe 8 überführt:

Eingabe: 3 und 5
↓
festgelegte Maschinenbefehle
↓
Ausgabe: 8Ein Quantenprogramm besteht ebenfalls aus festgelegten Operationen:

Eingabe vorbereiten
↓
festgelegte Folge von Quantengattern
↓
Amplituden bestimmen die Wahrscheinlichkeiten
↓
Ergebnis-Qubits messen
↓
klassische AusgabeDie Gatter werden so angeordnet, dass ihre festen Regeln die Amplituden Schritt für Schritt in den vorgesehenen Endzustand überführen. Bei einer korrekt aufgebauten Quantenaddition kann das Ergebnis 8 am Ende sogar mit 100 % Wahrscheinlichkeit gemessen werden.

Für eine gewöhnliche Addition bietet das keinen praktischen Vorteil. Eine klassische CPU berechnet 3 + 5 = 8 wesentlich einfacher. Quantencomputer werden erst für spezielle Probleme interessant, bei denen ein geeigneter Algorithmus Superposition und Interferenz sinnvoll nutzen kann.

Was wir jetzt eindeutig trennen können

  • Der Eingangswert ist der bekannte Zustand, mit dem die Berechnung beginnt.
  • Das Quantenprogramm ist eine festgelegte Folge von Quantengattern.
  • Ein Quantengatter verändert den Zustand nach einer festen Regel.
  • Die Amplituden sind die Koordinaten, mit denen dieser Zustand beschrieben wird.
  • Die Amplituden bestimmen die Wahrscheinlichkeiten der möglichen Messergebnisse.
  • Die Verteilung beschreibt, wie häufig diese Ergebnisse bei vielen vollständigen Wiederholungen auftreten.
  • Die Messung liefert in einem einzelnen Durchlauf einen klassischen Wert.
  • Die Wellenanalogie beschreibt nur, dass sich Amplituden bei der weiteren Berechnung addieren oder aufheben können. Der gesamte Ablauf lässt sich damit in einem Satz zusammenfassen:

Ein Quantenprogramm verändert mit festgelegten Gattern die Amplituden eines Quantenzustands; diese Amplituden bestimmen, mit welcher Wahrscheinlichkeit bei der abschließenden Messung die möglichen klassischen Ergebnisse entstehen.

Mit einem Missverständnis aufräumen

Missverständnis:* Eine Superposition bedeutet, dass das Qubit einen unbekannten klassischen Wert besitzt oder schnell zwischen 0 und 1 hin- und herschaltet.*Tatsächlich ist eine Superposition ein eindeutig bestimmter Quantenzustand. Seine Amplituden bestimmen die Wahrscheinlichkeiten, mit denen eine spätere Messung 0 beziehungsweise 1 ergibt.In Episode 3 erweitern wir das Beispiel von einem auf mehrere Qubits. Dann sehen wir, wie viele mögliche Messergebnisse ein gemeinsamer Quantenzustand besitzt — und warum das trotzdem nicht bedeutet, dass ein Quantencomputer einfach alle Lösungen parallel berechnet und anschließend die richtige ausliest.

Top comments (0)