Verloren im Labyrinth der IT-Begriffe? Hier finden Sie Definitionen und Basiswissen zu Rechenzentrums-IT und -Infrastruktur.

Das Dreigespann CNOT, Hadarmard und Phasenschieber Was sind Quantengatter?

Autor / Redakteur: M.A. Jürgen Höfling / Ulrike Ostler

Gatterstrukturen sind wie in der Mikroelektronik auch bei einem Quantenrechner die Basis des Computings. Allerdings sind die Operationen, die auf den Quantengattern ausgeführt werden, um einiges komplexer als die Boolesche Algebra in der klassischen Computerei.

Firma zum Thema

Auch in der Natur ist das Ganze oft mehr als die Summe seiner Teile
Auch in der Natur ist das Ganze oft mehr als die Summe seiner Teile
(Bild: Rudolpho_Duba_pixelio.de)

Am Anfang aller elektronischen Rechnerei steht die Boolesche Algebra, mit deren logischen Operatoren und den damit möglichen Verknüpfungen ein binärer „Wahr-Falsch-Raum“ aufgespannt wird, der sich elegant in elektronische Schaltungen umsetzen lässt: Mit den UND-, ODER-, Exklusiv-ODER-, NICHT-Gattern sowie deren Äquivalenten mit jeweils negiertem Ausgang (NAND, NOR XNOR) ist die logische Struktur logischer Schaltkreise vorgegeben.

Die logische Struktur eines NAND-Gatters beispielsweise lässt sich in allen gängigen Technologien der Mikroelektronik realisieren. Von traditioneller Transistor-Transistor-Logik mit in Reihe geschalteten Transistoren, deren Ausgang auf Masse (logisch 0) liegt, wenn auf allen Eingängen Strom fließt, und in deren Ausgang Strom fließt, wenn wenigstens ein Schalter im Eingang ausgeschaltet ist, über NMOS-Realisierungen bis zu den heute üblichen CMOS-Umsetzungen.

Das NAND-Gatter wurde hier nicht ohne tieferen Grund als Beispiel ausgewählt, hat es doch in der traditionellen Mikroelektronik einen universellen Status. Das heißt, man kann rein logisch allein auf der Basis von NAND-Gattern einen Computer aufbauen. Die Funktion X UND Y zum Beispiel ist äquivalent mit (X NAND y) NAND (X NAND Y) oder X ODER Y ist logisch gleichbedeutend mit (X NAND X) NAND (Y NAND Y). Und so weiter. Das Niederschreiben der übrigen Äquivalenzen sei dem Leser überlassen.

In der Praxis wird man aber keinen Mikroelektronik-Schaltkreis oder auch kompletten Rechner nur mit NAND-Gattern aufbauen, das wäre Zeit- und Materialverschwendung, aber logisch ginge es.

Lineare Algebra und heikle Messprozesse

Wie stellt sich die Sache nun in einem Quantencomputer dar? Eine gute Frage. Die Antwort ist einfach und kompliziert zugleich. Auch im Quantencomputer wird ebenso wie in einem klassischen Rechner eine Gatterarchitektur aufgebaut. Solche Quantengatter werden benötigt, um die Basiseinheiten der Quantenrechnerei, die Quantenbits (Qubits), gezielt in den jeweils gewünschten Zustand versetzen zu können, sprich: um mit den Qubits rechnen zu können.

Alles klingt ähnlich wie in der klassischen elektronischen Rechentechnik. Ob die Ähnlichkeit der Begriffe nur auf Analogien beruht oder „im Wesen“ ähnlich ist, das ist im Grunde ziemlich egal. Wichtig ist, dass das in der Quantenrechnerei benutzte Begriffsinstrumentarium („Quantengatter, Qubit, Quanten-Assembler etc.) durch seine Ähnlichkeit mit dem Mikroelektronik-Vokabular dabei hilft, den Quantencomputer durch diesen „Touch des Wiedererkennens“ vielen Informatiker vertraut zu machen.

Tatsächlich handelt es sich bei Qubits und Quantengattern nicht um eindeutig definierte physikalische Zustände wie das bei Bits und Logikgattern in der traditionellen Mikroelektronik der Fall ist, sondern um Zustände, die den (wahrscheinlichkeitstheoretisch definierten) Gesetzmäßigkeiten der Quantenphysik unterworfen sind. Quantencomputing, das sind einerseits Theoreme und Rechenregeln der linearen Algebra und andererseits heikle Messvorgänge, die im Zuge der Rechenvorgänge ständig durchgeführt und interpretiert werden müssen. Schon ersteres ist keine leichte Sache, letzteres aber noch eine Nummer härter, wenn man es einmal so burschikos formulieren darf.

Algorithmen mit Quantengattern

Um mit einem Quantencomputer rechnen zu können, müssen die quantenphysikalischen Zustände gezielt verändert werden beziehungsweise zunächst einmal ein stabiler Anfangszustand erreicht werden. Darüber hinaus muss man berechnete Werte auslesen können. All das zu gewährleisten ist keine triviale Aufgabe. Und in diesem Zusammenhang spielt es auch keine große Rolle, ob die Qubits quantenphysikalisch als elektrische Schwingungen in einem Supraleiter, als Fehlstellen in einem Diamanten oder als gefangene Ionen realisiert werden.

Manipuliert werden die Qubits in aller Regel durch exakt kalibriertes Laserlicht. Dieses hebt beispielsweise im Falle von Ionenfallen-Quantenrechner die Elementarteilchen kurzzeitig auf ein höheres Energieniveau oder regt Zerfallsprozesse an, so dass die Ionen daraufhin in einem anderen Zustand landen. Ionen auf einem höheren Niveau (Bitzustand “1“) senden bei einem Zerfallsprozess Licht aus, das durch einen Photonen-Detektor aufgefangen und sichtbar gemacht werden kann. Dauer und Phase der Anregung bestimmen die Parameter eines Ein-Qubit-Gatters.

Während der Zustand eines Bits in der Mikroelektronik nur 0 oder 1 sein kann, ist der Zustand eines Qubits viel komplexer. Wegen dieser Komplexität sind Quantengatter auch dann interessant, wenn diese nur ein einzelnes Qubit betreffen. Mathematisch gesehen sind „Quantengatter eine unitäre Transformation U, die auf einem Zustand Psi der Qubits angewendet wird und den Zustand U-Psi erzeugt […. Dabei lässt sich jede […auf dem Quantencomputer mögliche Qubit-Manipulation als Produkt zweier Gatter darstellen.

Aus den Basisoperationen kann man komplexere Logikgatter und schließlich ganze Algorithmen zusammenstellen („kompilieren“)“, schreiben die Quantenphysiker Norbert Linke und Markus Müller in einem Artikel über Ionenfallen-Quantencomputer von 2020. (1)

Ein großes Manko beim Arbeiten mit Quantengattern, sprich: dem gezielten Steuern von Qubits, besteht darin, dass die Zustandspräparierung des jeweils genutzten quantenphysikalischen Systems (Anfangszustand stabil halten, gezielte Energieniveau-Änderung, Auslesen etc.)

Rauschen erzeugt, das heißt: Die Rechenergebnisse können unter Umständen derart „ausfransen“, dass sie nicht mehr sinnvoll interpretierbar sind. Die Herstellung wenig oder gar nicht verrauschter Qubits und Quantengatter ist deshalb eine zentrale Aufgabe der Forschung.

Das CNOT-Gatter als ein zentrales Gatter des Quantencomputings

Wie oben schon erwähnt, werden auch im Quantencomputing - wie in der Mikroelektronik - aus einfachen Gatterstrukturen komplexere Gatterstrukturen gebildet und für deren Programmierung eine Art Quanten-Assembler geschaffen. Und wie in der Mikroelektronik hat auch die Quantencomputerei ihr „NAND-Gatter“, also ein zentrales Gatter, das rein logisch (fast) die Basis für einen ganzen Rechner bilden kann.

In der Quantencomputerei ist das so genannte kontrollierte NOT-Gatter (CNOT-Gatter) ein solches zentrales Gatter. Mit dem CNOT-Gatter können alle denkbaren Wechselwirkungen zwischen Qubits dargestellt werden.

Das hängt damit zusammen, dass die Zustände der beiden im CNOT-Gatter involvierten Qubits verschränkt sind, das heißt der Zustand des zweiten Qubits beziehungsweise die Wahrscheinlichkeiten dieses Zustands ist völlig abhängig vom Zustand des ersten. Wenn beispielsweise das kontrollierende Qubit nur mit 35 Prozent Wahrscheinlichkeit im Zustand „1“ ist, dann hat auch die Negation dieses Zustands beim kontrollierten Qubit nur eine Wahrscheinlichkeit von 35 Prozent. Mitgefangen – Mitgehangen!

Verschränkte Qubits sind Ausdruck der inhärenten Parallelität von Quantencomputing und damit der eigentliche Vorteil dieses Rechnertyps gegenüber klassischer Rechentechnik. Der Clou ist dabei, dass die Verschränkung von Qubits prinzipiell auch über weite Strecken funktioniert.

Die Verschränkung kann auch wieder aufgehoben werden, indem man beispielsweise drei CNOT-Gatter in Reihe schaltet und ein so genanntes SWAP-Gatter erzeugt. Letzteres überträgt alle Eigenschaften des ersten Qubits auf das zweite und umgekehrt.

Das universelle Quantengatter-Dreigespann

Gemeinsam mit dem „2-Qubit“-CNOT-Gatter bilden zwei „Ein-Qubit-Gatter“ (das Hadamard-Gatter und das Phasen-(schieber-)Gatter) ein Dreigespann, auf dessen Basis ein vollständiger Quantenrechner aufgebaut werden kann. Ebenso wie der reine NAND-Gatter-Rechner in der Mikroelektronik ist ein solcher Quantenrechner aber lediglich als mathematische Möglichkeit interessant.

Sowohl Hadamard-Gatter als auch das Phasenschieber-Gatter verändern die Zustände eines einzelnen Qubits. Das Hadamard-Gatter schottet eine Qubit-Information nach außen hin ab, eine zweite Anwendung deckt sie wieder auf. Das Phasenschieber-Gatter verschiebt den Phasenwinkel der komplexen Zahl, mit der das Qubit beschrieben wird.

Mit Hadamard-Gatter und Phasenschieber-Gatter lässt sich ein echtes NOT-Gatter bilden. Dieses NOT-Gatter ist im Gegensatz zum oben erwähnten CNOT-Gatter nicht vom Zustand eines zweiten Qubits abhängig.

Auf dem Weg zu einer intuitiven Quanten-Programmiersprache

Alle diese Gatter werden mit Termen und Rechenoperationen der Linearen Algebra, die die mathematische Basis der Quantenphysik bildet, formal dargestellt. Insgesamt ist das alles sehr viel komplexer als die Abbildung der Booleschen Algebra in der Mikroelektronik. Vor allem die in der Quantenelektronik ständig erforderlichen Laser-Kalibrierungen und Messprozesse sind schwierig. Dafür gibt es aber als großen Pluspunkt die inhärente Parallelität, die all die Anstrengungen irgendwann einmal lohnen könnte.

Um dem Programmieren eines Quantencomputers den Physiklabor-Touch (Kalibrieren von Lasern, Auslesen und Interpretieren von Messergebnissen etc.) zu nehmen, ist ein Quanten-Assembler ein erster wichtiger Schritt. Und wer Cloud-Strukturen eines Quantencomputers nutzen will, wie sie beispielsweise in „Microsoft Azure“ zur Verfügung gestellt werden, kommuniziert in solch einem Assembler mit der verfügbaren Quantenrechnerkapazität in der Cloud.

Höhere Programmiersprachen im Abstraktionsgrad von Java oder C++ gibt es in der Quantenrechnerei noch nicht beziehungsweise nur in ersten rudimentären Ansätzen. So haben kürzlich Physiker und Informatiker der ETH Zürich mit der Programmiersprache Silq einen Schritt auf eine höhere Abstraktionsebene vermeldet.

Intuitive Quantencomputer-Sprachen sind absolut notwendig, um den Quantencomputer „in die Breite“ zu bringen, sprich weg vom „Physiklabor“ und hin zum Programmierbildschirm der Informatiker.

(1)Norbert M. Linke, Markus Müller, Mit Ionen ist zu rechnen, Physik unserer Zeit, 4/2020 (51), S. 168- 175

(ID:47115774)

Über den Autor