Q1 Etwas ist anders! - Qubit-Algorithmen

Muss ich Quantenphysik kennen, oder verstehen, wie Quantencomputer funktionieren, um mich mit  sog. Quanten-Algorithmen zu beschäftigen?

Sicher nicht! Lass uns deshalb lieber von Qubit-Algorithmen, oder kurz Q-Algorithmen sprechen.  Die Idee der Qubit-Algorithmen gab es schon, bevor die ersten Quantencomputer nutzbar wurden.

Nicht anders als bei den Bit-Algorithmen, den herkömmlichen Algorithmen, die für "normale" Computer programmiert werden. Auch hier verstehen die Wenigsten die zugrunde liegende Physik und viele auch nicht, wie normale Computer funktionieren. Hauptsache, man kann spielen, chatten, Musik hören - ja, und manchmal sogar programmieren.

Allerdings - etwas ist anders bei Q-Algorithmen. Was darauf zurückzuführen ist, dass irgendwo doch die Quantenphysik schon im Hinterkopf war, als  Qubits und Qubit-Algorithmen "erfunden" wurden. Das wollen wir hier heraus finden.

Und es ist echt spannend, dass man heute reale, programmierbare Quantencomputer im Internet (als Cloud Service) frei verwenden kann, z.B. von IBM oder Google. Es ist schon ein etwas anderes Gefühl, ein eigenes kleines Q-Programm auf einem realen Q-Computer laufen zu lassen. Einfacher geht es übrigens mit Q-Computer-Simulatoren, also "Modellen" von Quantencomputern, die auf normalen Computern laufen und so tun, als wären sie QCs. Zum Ausprobieren von Q-Algorithmen perfekt.

Es wird heutzutage in den Medien viel Wunderliches über QCs und Qubit-Algorithmen geschrieben. Wie super-schnell sie sind - genauer, in Zukunft sein werden, welche geheimnisvollen Objekte Qubits sind, die gleichzeitig verschiedene Zustände haben können. Dann ist da von "Schrödingers Katze" die Rede, die gleichzeitig tot und lebendig sein soll - also wohl ein Zombie? (Jedenfalls solange, bis man nachschaut - dann ist sie entweder tot oder lebendig!) Und dass ein Quantencomputer daher doppelt so schnell Lösungen errechnet, wenn man nur ein Qubit hinzufügt. Es ist von der  "Supremacy" von Quantencomputern die Rede, ein Wort, das ausdrücken soll, dass wir bald QCs haben werden, die - bei bestimmten Rechnungen - schneller sein werden als der schnellste Supercomputer.  Und damit z.B. die stärksten heute verwendeten Verschlüsselungen im Nu knacken können.

Wenn wir uns mit Bits und Qubits und Qubit-Algorithmen näher beschäftigen, werden wir sehen, was davon zu halten ist und was dahinter steckt. Wenn man es selbst ausprobiert hat, wird man den Zauber schon verstehen. Wenn man die Katze streichelt, merkt man schon, wie lebendig sie ist.

Als nächstes wollen wir sehen, was ein Qubit bedeutet - oder wir schauen uns erst einmal ein einfaches Beispiel eines Q-Algorithmus an, um einen Eindruck zu bekommen, aber ohne es schon verstehen zu müssen. Am liebsten beides gleichzeitig? Mal sehen, wie die Entscheidung ausfällt.

Fortsetzung folgt - Stay tuned

Übrigens, wer Lust hat, kann Fragen, Ideen, Kommentare oder Diskussionen direkt ins Kommentarfeld unter dem Blog schreiben.

Und hier geht's weiter.


Q2 Etwas ist anders! - Hello Qubit World

Schauen wir uns also als erstes einmal an, wie so ein Qubit-Algorithmus aussieht - auch ohne den schon zu verstehen.

Bekanntlich ist in der Welt der Informatiker, Programmierer, Hacker das erste, was man ausprobiert bei einem neuen System oder einer neuen Programmiersprache, ein "Hello World" zu erzeugen. Das allgemein anerkannte "Hello World" für Quantencomputer sieht allerdings schon etwas ungewöhnlich aus. Es liefert auch nicht die Grußformel, sondern ist nur so etwas wie das einfachste Qubit-Programm. (Natürlich kann man das Ergebnis daraus in der "normalen" Programmierwelt in ein "Hello World" umwandeln.) Wir werden sehen.

Und so sieht es aus, das "Hello World"  der Qubit-Welt:

Sieht eher aus wie ein Ausschnitt aus einer Partitur moderner Musik? Der Vergleich ist gar  nicht so unpassend. Dieser Ausschnitt "orchestriert"  quasi die "Instrumente" eines Quantencomputers, die Qubits.

Am liebsten würde man das Bild sofort erklärt bekommen, aber das heben wir uns für später auf. Man sieht erst mal, ein Q-Algorithmus wird ganz anders dargestellt als üblich. Und dies ist eine einfache Möglichkeit einen Q-Algorithmus als Qubit-Programm grafisch zu beschreiben. (Das ist so ähnlich wie bei Scratch oder Roberta, wo man ein Programm visuell aus einzelnene Bausteinen zusammensetzen kann.) Natürlich kann man statt in der grafischen Form einen Q-Algorithmus auch in Worten beschreiben, wobei man aber sorgfältig mit der Sprache umgehen muss. Oder durch eine Programmiersprache, z.B. Python. Wir probieren das nachher mal.

Versuchen wir mal zu erraten, was die Grafik bedeutet, quasi als Partitur: Es gibt offenbar 2 Instrumente, q1 und q2. Die haben ihre eigene "Linie", auf denen etwas passiert. Klar, das sollen zwei Qubits sein - wobei wir erst in einem späteren Blog erklären, was Qubits sein sollen. Auf den Linien geschieht etwas, nacheinander, mit den jeweiligen Qubits. Was auch immer H macht, es macht es nur mit q1. Danach kommt etwas, dass offenbar q1 und q2 zusammen betrifft.

Am Ende jeder Qubit-Zeile steht eine Art Anzeige-Symbol, wie bei einem Messgerät, mit einem Pfeil nach unten auf die Doppel-Linie C. Tatsächlich, hier wird ein Qubit "gemessen". Und das Messergebnis wird an die C-Linie übertragen. Das "C" steht übrigens für "classical" - nein, nicht "klassische Musik", sondern "klassiches Bit", im Gegensatz zum Quanten-Bit oder Qubit. Danach kommt nichts mehr, es ist Schluß, das "Musikstück" zuende.

Was bedeuten die Zahlen unten auf der C-Linie? Das ist einfach zu erraten: die 2 besagt, dass C die "Messwerte" von 2 Qubits aufnimmt. Die 0, klar, steht für: "Hier kommt der Messwert von Qubit q0." Und die 1 für Messwert von q1 - falls es in einer größeren "Partitur" mal unübersichtlich werden sollte. Und da das C für "classical bit" steht, kann man schon schließen, dass die Messergebnisse herkömmliche Bits sind.

Jetzt wissen wir, was die Teile bedeuten, aber immer noch nicht, was der ganze Qubit-Schaltkreis macht (so nennt man das Gebilde in Anlehnung an herkömmliche elektronische Schaltkreise).

Das liegt daran, dass wir nicht wissen was die beiden blauen Symbole machen. Mal sehen, ob wir das auch noch verstehen können, z.B. indem wir den Hello Qubit World Algorithmus in normaler Sprache formulieren.

Aber jetzt ist es erst mal genug. Pause. Dann weiter lesen.

Cliff-Hanger - Stay tuned

Und hier geht's weiter.