Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Quantencomputer und Quantenberechnungen – ein neuer Buzzword, das in unseren Informationsraum zusammen mit künstlicher Intelligenz, maschinellem Lernen und weiteren hochmodernen Begriffen eingeführt wurde. Dennoch ist es mir nicht gelungen, im Internet Material zu finden, das das Puzzle mit dem Titel „wie Quantencomputer funktionieren“zusammenfügt. Ja, es gibt viele hervorragende Arbeiten, einschließlich auf Habré (siehe Ressourcenliste), deren Kommentare, wie es oft der Fall ist, noch informativer und nützlicher sind, aber das Bild im Kopf, so sagt man, fügte sich nicht zusammen.

Vor kurzem kamen Kollegen zu mir und fragten: „Verstehst du, wie ein Quantencomputer funktioniert? Kannst du uns darüber erzählen?“ Da wurde mir klar, dass das Problem, ein ganzheitliches Bild im Kopf zu erstellen, nicht nur mir begegnete.

In der Folge wurde der Versuch unternommen, Informationen über Quantencomputer in einem konsistenten logischen Schema zu kompilieren, in dem auf grundlegendem Niveau, ohne tiefgreifende Mathematik und das Struktur des Quantenuniversums, erklärt wird, was ein Quantencomputer ist, auf welchen Prinzipien er basiert und welche Probleme Wissenschaftler bei seiner Entwicklung und Nutzung haben.


Inhaltsverzeichnis

Haftungsausschluss

(zum Inhaltsverzeichnis)

Der Autor ist kein Spezialist für Quantenberechnungen, und die Zielgruppe des Artikels sind ebenso IT-Spezialisten, keine Quantenexperten, die ebenfalls versuchen, sich das Bild mit dem Titel „Wie Quantencomputer funktionieren“ zusammenzustellen. Daher wurden viele Begriffe im Artikel absichtlich vereinfacht, um ein besseres Verständnis der Quanten-Technologien auf „grundlegendem“ Niveau zu ermöglichen, jedoch ohne zu starke Vereinfachungen, die zu einem Verlust an Informationsgehalt und Angemessenheit führen..

Im Artikel werden an einigen Stellen Materialien aus anderen Quellen verwendet, deren Liste am Ende des Artikels aufgeführt ist.. Überall, wo es möglich war, wurden direkte Links und Hinweise auf den Originaltext, Tabellen oder Abbildungen eingefügt. Falls ich irgendetwas (oder jemanden) vergessen habe, schreibt mir – ich werde es korrigieren.

Einführung

(zum Inhaltsverzeichnis)

In diesem Kapitel werden wir kurz betrachten, wie die Quantenära begann, was der Auslöser für die Idee des Quantencomputers war, welche Länder und Unternehmen derzeit die führenden Akteure auf diesem Gebiet sind und wir werden auch kurz über die wichtigsten Entwicklungen der Quantenberechnungen sprechen.

Wie alles begann

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Als Ausgangspunkt der Quantenära gilt das Jahr 1900, als M. Planck zum ersten Mal die Hypothese aufstellte, dass Energie nicht kontinuierlich, sondern in einzelnen Quanten (Paketen) emittiert und absorbiert wird. Diese Idee wurde von vielen herausragenden Wissenschaftlern dieser Zeit – Bohr, Einstein, Heisenberg, Schrödinger – aufgegriffen und weiterentwickelt, was schließlich zur Schaffung und Entwicklung der Wissenschaft der Quantenphysik. Im Internet gibt es viele gute Materialien über die Entstehung der Quantenphysik als Wissenschaft, in diesem Artikel wollen wir jedoch nicht ausführlich darauf eingehen. Es war jedoch notwendig, das Datum anzugeben, an dem wir in eine neue Quantenära eingetreten sind.

Die Quantenphysik hat viele Erfindungen und Technologien in unser alltägliches Leben gebracht, ohne die es heute schwer vorstellbar wäre, die Welt um uns herum zu begreifen. Zum Beispiel den Laser, der heute überall verwendet wird, von Haushaltsgeräten (Laser-Nivellierer und mehr) bis hin zu hochmodernen Systemen (Laser zur Sehkorrigierung, hallo meklon ). Es wäre logisch anzunehmen, dass früher oder später jemand die Idee äußern würde, Quanten Systeme für Berechnungen zu nutzen. Und das geschah im Jahr 1980.

Wikipedia weist darauf hin, dass unser Wissenschaftler Yuri Manin 1980 als Erster die Idee der Quantenberechnungen äußerte. Aber erst 1981 wurde wirklich darüber gesprochen, als der bekannte R. Feynman in einem Bericht auf der ersten Konferenz über Berechnungsphysik, die am Massachusetts Institute of Technology stattfand,feststellte, dass es unmöglich ist, die Evolution eines Quantensystems auf einem klassischen Computer effizient zu modellieren. Er schlug ein einfaches Modell eines Quantencomputersvor, der in der Lage wäre, eine solche Modellierung durchzuführen.

Im Internet gibt es solch eine Arbeit, in der die Chronologie der Entwicklung der Quantenberechnungen Es wird akademisch und detailliert betrachtet, wir machen jedoch einen kurzen Überblick:

Wichtige Meilensteine in der Geschichte der Quantencomputer:

Wie Sie sehen, vergingen 17 Jahre (von 1981 bis 1998) von der Idee bis zur ersten Umsetzung in einem Computer mit 2 Qubits, und 21 Jahre (von 1998 bis 2019), bis die Anzahl der Qubits auf 53 gesteigert wurde. Es dauerte 11 Jahre (von 2001 bis 2012), um das Ergebnis der Ausführung des Shor-Algorithmus (wir werden ihn gleich detaillierter behandeln) von der Zahl 15 auf 21 zu verbessern. Auch erst vor drei Jahren kamen wir zu dem Punkt, über das zu realisieren, was Feynman angesprochen hat, und lernten, einfache physikalische Systeme zu modellieren.

Die Entwicklung der Quantenberechnungen erfolgt langsam. Vor Wissenschaftlern und Ingenieuren stehen sehr komplexe Aufgaben, die quantenmechanischen Zustände sind sehr flüchtig und zerbrechlich, und um sie lange genug für Berechnungen zu erhalten, müssen Sarkophage für zig Millionen Dollar gebaut werden, in denen die Temperatur nur leicht über dem absoluten Nullpunkt gehalten wird und die maximal gegen äußere Einflüsse geschützt sind. Im Folgenden werden wir ausführlicher über diese Aufgaben und Probleme sprechen.

Wichtige Akteure

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Die Folien für diesen Abschnitt stammen aus dem Artikel Quantencomputer: Ein großes Spiel um Fortschritt. Vortrag bei Yandex, vom wissenschaftlichen Mitarbeiter des Russischen Quantenzentrums Alexej Fjodorow. Ich erlaube mir, direkte Zitate zu verwenden:

Alle technologisch erfolgreicher Länder sind momentan aktiv mit der Entwicklung von Quantentechnologien beschäftigt. In diese Forschungen wird eine enorme Summe investiert, spezielle Förderprogramme für Quanten-technologien werden erstellt.

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

An der Quantenrennbahn sind nicht nur Staaten beteiligt, sondern auch private Unternehmen. Insgesamt haben Google, IBM, Intel und Microsoft zuletzt etwa 0,5 Milliarden Dollar in die Entwicklung von Quantencomputern investiert, große Labore und Forschungszentren geschaffen.
Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Auf Habré und im Netz gibt es zahlreiche Artikel, zum Beispiel hier, hier und hier, die den aktuellen Stand der Entwicklungen im Bereich der Quanten-Technologien in verschiedenen Ländern genauer betrachten. Für uns ist derzeit das Wichtigste, dass alle führenden technologisch entwickelten Länder und Akteure enorme Mittel in die Forschung in diesem Bereich investieren, was Hoffnung auf einen Ausbruch aus der aktuellen technologischen Sackgasse gibt.

Entwicklungsrichtungen

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Aktuell (ich kann mich irren, korrigiert mich) konzentrieren sich die Hauptanstrengungen (und mehr oder weniger signifikante Ergebnisse) aller führenden Akteure auf zwei Richtungen:

  • Spezialisierte Quantencomputer, die darauf abzielen, eine ganz bestimmte spezifische Aufgabe zu lösen, zum Beispiel das Optimierungsproblem. Ein Beispiel für ein Produkt sind die Quantencomputer von D-Wave.
  • Universelle Quantencomputer — die in der Lage sind, beliebige Quantenalgorithmen (Shor, Grover usw.) auszuführen. Implementierungen von IBM, Google.

Andere Entwicklungspfade, die uns die Quantenphysik bietet, wie:

stehen ebenfalls auf der Liste der Forschungsrichtungen, aber derzeit scheint es noch keine mehr oder weniger signifikanten Ergebnisse zu geben.

Zusätzlich kann man lesen die Roadmap zur Entwicklung von Quanten-Technologien, und googelt "Entwicklung von Quanten-Technologien", beispielsweise, hier, hier und hier.

Grundlagen. Quantenobjekt und Quantensysteme

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Das Wichtigste, was man aus diesem Abschnitt verstehen muss, ist, dass

Ein Quantencomputer (im Gegensatz zu einem herkömmlichen) Informationen in Form von Quantenobjektenspeichert, und zur Durchführung von Berechnungen müssen die Quantenobjekte in einem Quantensystem.

verbunden sein. Was ist also ein Quantenobjekt?

Ein Quantenobjekt ist ein Objekt der Mikrowelt (der Quantenwelt), das Quanten-Eigenschaften aufweist:

  • Hat einen bestimmten Zustand mit zwei Grenzebenen
  • Befindet sich bis zum Zeitpunkt der Messung in einer Überlagerung seines Zustands
  • Verschränkt sich mit anderen Objekten zur Bildung von Quantensystemen
  • Führt das Theorem des Klonverbots aus (der Zustand eines Objekts kann nicht kopiert werden)

Lassen Sie uns jede Eigenschaft detaillierter betrachten:

Hat einen bestimmten Zustand mit zwei Grenzwerten (endgültiger Zustand)

Ein klassisches Beispiel aus der realen Welt – eine Münze. Sie hat den Zustand „Seite“, der zwei Grenzwerte – „Kopf“ und „Zahl“ – annehmen kann.

Befindet sich bis zum Zeitpunkt der Messung in einer Überlagerung seines Zustands

Wir haben die Münze geworfen, sie fliegt und dreht sich. Während sie sich dreht, ist es unmöglich zu sagen, in welchem der Grenzwerte sich ihr Zustand „Seite“ befindet. Aber wenn wir sie zuschlagen und das Ergebnis betrachten, kollabiert die Superposition der Zustände sofort in einen der beiden Grenzwerte – „Kopf“ und „Zahl“. Das Zuschlagen der Münze ist in unserem Fall die Messung.

Verschränkt sich mit anderen Objekten zur Bildung von Quantensystemen

Es ist schwierig mit der Münze, aber wir probieren es. Stellen Sie sich vor, wir haben drei Münzen geworfen, so dass sie sich aneinander festhalten und jonglieren. In jedem Moment der Zeit befindet sich nicht nur jede von ihnen in einer Superposition von Zuständen, sondern diese Zustände beeinflussen sich gegenseitig (die Münzen kollidieren schließlich).

Führt das Theorem des Klonverbots aus (der Zustand eines Objekts kann nicht kopiert werden)

Solange die Münzen fliegen und sich drehen, können wir auf keine Weise eine von der Systemkopie des rotierenden Zustands einer beliebigen Münze erstellen. Das System lebt in sich selbst und ist sehr eifersüchtig darauf, irgendwelche Informationen nach außen preiszugeben.

Ein paar Worte zum Begriff selbst „Superposition“, fast in allen Artikeln wird die Superposition erklärt als „in allen Zuständen gleichzeitig“ , was natürlich stimmt, aber manchmal übermäßig verwirrend ist. Man kann sich die Superposition von Zuständen auch so vorstellen, dass in jedem Moment der Zeit ein Quantenobjekt bestimmte Wahrscheinlichkeiten hat, in jeden seiner Grenzwerte zu kollabieren, und die Summe dieser Wahrscheinlichkeiten ist natürlich gleich 1. Bei der Betrachtung des Qubits werden wir dies ausführlicher behandeln.

Für die Münzen kann man sich das visuell vorstellen – je nach Anfangsgeschwindigkeit, Wurfwinkel und Zustand der Umgebung, in der die Münze fliegt, ist die Wahrscheinlichkeit, „Kopf“ oder „Zahl“ zu erhalten, zu jedem Zeitpunkt unterschiedlich. Und, wie bereits gesagt, kann der Zustand einer solchen fliegenden Münze so dargestellt werden, dass sie „in all ihren Grenzzuständen gleichzeitig ist, jedoch mit unterschiedlichen Wahrscheinlichkeiten ihrer Realisierung“.

Jedes Objekt, das die oben genannten Eigenschaften erfüllt und das wir erstellen und verwalten können, kann als Informationsträger in einem Quantencomputer verwendet werden.

Ein wenig später werden wir über den aktuellen Stand der physikalischen Realisierung von Qubits als quantenmechanische Objekte sprechen und was derzeit von Wissenschaftlern in diesem Zusammenhang verwendet wird.

Das dritte Merkmal besagt, dass Quantenobjekte sich miteinander verknüpfen können, um Quantensysteme zu schaffen. Was ist also ein Quantensystem?

Quantensystem — ein System von verwobenen Quantenobjekten mit folgenden Eigenschaften:

  • Das Quantensystem befindet sich in einer Überlagerung aller möglichen Zustände der Objekte, aus denen es besteht.
  • Der Zustand des Systems kann bis zum Zeitpunkt der Messung nicht ermittelt werden.
  • Im Moment der Messung realisiert das System eine der möglichen Varianten seiner Grenzzustände.

(und um ein wenig vorzugreifen)

Folge für Quantenprogramme:

  • Ein Quantenprogramm hat einen definierten Zustand des Systems am Eingang, eine Überlagerung innerhalb und eine Überlagerung am Ausgang.
  • Am Ausgang des Programms haben wir nach der Messung eine probabilistische Realisierung eines der möglichen Endzustände des Systems (nebst möglichen Fehlern).
  • Jedes Quantenprogramm hat eine Architektur in Form eines Schornsteins (Eingang -> Ausgang. Es gibt keine Schleifen, man kann den Zustand des Systems nicht mitten im Prozess ansehen.)

Vergleich von Quantencomputer und herkömmlichen Computern

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Lassen Sie uns nun einen herkömmlichen Computer mit einem Quantencomputer vergleichen.

Herkömmlicher ComputerEin Quantencomputer

Logik

0 / 1`a|0> + b|1>, a^2+b^2=1`

Physik

HalbleitertransistorEin Quantenobjekt

Träger von Informationen

SpannungsniveausPolarisation, Spin,…

Operationen

NOT, AND, OR, XOR über BitsGatter: CNOT, Hadamard,…

Zusammenhang

HalbleiterchipVerschränkung untereinander

Algorithmen

Standard (siehe Knuth)Spezial (Shor, Grover)

Prinzip

Digital, deterministischAnalog, probabilistisch

Logische Ebene
Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

In einem herkömmlichen Computer ist dies ein Bit. Gut bekannt und klar definiert. deterministisches Bit. Es kann entweder 0 oder 1 annehmen. Es erfüllt hervorragend die Rolle einer logischen Einheit für einen herkömmlichen Computer, eignet sich jedoch überhaupt nicht zur Beschreibung des Zustands eines Quantenobjekts, das, wie wir bereits gesagt haben, sich in der Natur in einerÜberlagerung seiner Grenzzustände befindet..

Dafür wurde der Qubiterfunden. In seinen Grenzzuständen realisiert er Zustände, die 0 und 1 ähneln. |0> und |1>, und in Superposition stellt es eine Wahrscheinlichkeitsverteilung über seine Grenzzustände dar |0> und |1>:

 a|0> + b|1>, so dass a^2+b^2=1

a und b sind dabei Wahrscheinlichkeitsamplituden, und die Quadrate ihrer Beträge sind tatsächlich die Wahrscheinlichkeiten, genau diese Werte der Grenzzustände zu erhalten |0> und |1>, wenn man den Qubit jetzt durch Messung zusammenfaltet.

Physikalische Schicht

Auf dem aktuellen technologischen Entwicklungsstand ist die physische Realisierung eines Bits für einen herkömmlichen Computer ein Halbleitertransistor, für einen Quantencomputer, wie wir bereits gesagt haben, irgendein Quantenobjekt. Im nächsten Abschnitt werden wir darüber sprechen, was derzeit als physische Träger von Qubits verwendet wird.

Informationsspeicher

Für einen herkömmlichen Computer ist es elektrischer Strom — Spannungsniveaus, Vorhandensein oder Abwesenheit von Strom usw., für Quanten — genau der Zustand des Quantenobjekts (Polarisation, Spin usw.), der sich in einem Zustand der Superposition befinden kann.

Operationen

Für die Umsetzung logischer Schaltungen auf einem herkömmlichen Computer werden uns gut bekannte logische Operationen, für Operationen an Qubits musste ein völlig anderes System von Operationen erfunden werden, das als quantum gatesbezeichnet wird. Die Tore sind einqubit und zweiqubit, je nachdem, über wie viele Qubits die Transformation durchgeführt wird.

Beispiele für Quanten-Gatter:
Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Es gibt das Konzept eines universellen Gatter-Satzes, das ausreicht, um jede Quantenberechnung durchzuführen. Zum Beispiel umfasst ein universeller Satz das Hadamard-Gatter, das Phasenschieber-Gatter, das CNOT-Gatter und das π⁄8-Gatter. Mit ihnen kann jede Quantenberechnung auf beliebigen Qubits durchgeführt werden.

In diesem Artikel werden wir nicht detailliert auf das System der Quanten-Gatter eingehen, mehr darüber und über logische Operationen an Qubits kann man zum Beispiel lesen, hier. Das Wichtigste, was man sich merken muss:

  • Operationen an Quantenobjekten erfordern die Schaffung neuer logischer Operatoren (Quanten-Gatter)
  • Quanten-Gatter sind einqubit und zweiqubit
  • Es gibt universelle Gatter-Sätze, mit denen jede Quantenberechnung durchgeführt werden kann.

Zusammenhang

Ein einzelner Transistor ist für uns völlig nutzlos; um Berechnungen durchzuführen, müssen wir viele Transistoren miteinander verbinden, das heißt, einen Halbleiterchip aus Millionen von Transistoren erstellen, auf denen dann logische Schaltungen aufgebaut werden können. ALU und letztendlich einen modernen Prozessor in seiner klassischen Form erhalten.

Ein einzelnes Qubit ist ebenfalls völlig nutzlos (nun, zumindest im akademischen Sinne),

um Berechnungen durchzuführen, benötigen wir ein System von Qubits (quantenmechanischen Objekten),

das, wie wir bereits gesagt haben, durch Verschränkung der Qubits miteinander geschaffen wird, sodass Veränderungen in ihren Zuständen kohärent erfolgen.

Algorithmen

Die Standardalgorithmen, die die Menschheit bis zu diesem Zeitpunkt angesammelt hat, sind völlig ungeeignet für die Implementierung auf einem Quantencomputer. Tatsächlich ist das auch gar nicht nötig. Quantencomputer, die auf der Gatterlogik über Qubits basieren, erfordern die Schaffung völlig anderer Algorithmen, quantenmechanischer Algorithmen. Zu den bekanntesten quantenmechanischen Algorithmen gehören drei:

Prinzip

Und das wichtigste Unterscheidungsmerkmal ist das Arbeitsprinzip. Bei einem Standardcomputer handelt es sich um einen digitalen, streng deterministischen Ansatz,der auf der Annahme basiert, dass, wenn wir einen bestimmten Anfangszustand des Systems festgelegt haben und ihn durch einen bestimmten Algorithmus geleitet haben, das Ergebnis der Berechnungen dasselbe sein wird, egal wie oft wir diese Berechnung durchführen. Tatsächlich ist ein solches Verhalten genau das, was wir von einem Computer erwarten.

Ein Quantencomputer arbeitet nach einem analogen, probabilistischen Prinzip.Das Ergebnis der Ausführung eines bestimmten Algorithmus bei einem bestimmten Anfangszustand stellt eine Stichprobe aus einer Wahrscheinlichkeitsverteilung endlich realisierbarer Algorithmen plus möglicher Fehler dar.

Diese probabilistische Natur quantenmechanischer Berechnungen ist der probabilistischen Essenz der Quantenwelt geschuldet. „Gott würfelt nicht mit dem Universum“, sagte der alte Einstein, aber alle Experimente und Beobachtungen bestätigen bis jetzt (im aktuellen wissenschaftlichen Paradigma) das Gegenteil.

Physikalische Realisierungen von Qubits

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Wie bereits erwähnt, kann ein Qubit als quantenmechanisches Objekt dargestellt werden, das heißt, als ein physikalisches Objekt, das die oben beschriebenen quantenmechanischen Eigenschaften realisiert. Grob gesagt, kann jeder physikalische Objekt, das zwei Zustände hat und sich in einem Zustand der Superposition befindet, zur Konstruktion eines Quantencomputers verwendet werden.

„Wenn wir einen Atom in zwei verschiedene Energieniveaus bringen und sie steuern können, dann haben wir ein Qubit. Wenn wir das mit einem Ion machen können, haben wir ein Qubit. Dasselbe gilt für den Strom. Wenn wir ihn gleichzeitig im Uhrzeigersinn und gegen den Uhrzeigersinn leiten, dann haben wir ein Qubit.“ (C)

Ja wunderbarer Kommentar zu Artikel, in dem die aktuelle Vielfalt der physikalischen Realisierungen von Qubits detaillierter betrachtet wird. Wir werden einfach die bekanntesten und verbreitetsten aufzählen:

Von all dieser Vielfalt ist die am weitesten entwickelte Methode zur Gewinnung von Qubits die erste, die auf Supraleitern basiert.. Google, IBM, Intel Und andere führende Akteure nutzen genau diese Methode zum Aufbau ihrer Systeme.

Und lesen Sie auch Überblick mögliche physikalische Realisierungen von Qubits von Andrew Daley, 2014.

Grundlagen. Funktionsweise eines Quantencomputers

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Die Materialien für diesen Abschnitt (Aufgabe und Bilder) stammen aus dem Artikel „Einfach über Komplexes. Wie funktioniert ein Quantencomputer?“.

Nehmen wir an, wir haben die folgende Aufgabe:

Es gibt eine Gruppe von drei Personen: (A)ndrey, (B)olya und (S)ergey.Es gibt zwei Taxis (0 und 1)..

Es ist auch bekannt, dass:

  • (A)ndrey und (B)olya — Freunde
  • (A)ndrey und (S)ergey — Feinde
  • (B)olya und (S)ergey — Feinde

Aufgabe: Die Personen in den Taxis so anzuordnen, dass Max(Freunde) und Min(Feinde)

Bewertung: L = (Anzahl der Freunde) — (Anzahl der Feinde) für jede mögliche Anordnung

WICHTIG: Angenommen, es gibt keine Heuristiken, keine optimale Lösung. In diesem Fall wird die Aufgabe nur durch vollständiges Durchprobieren der Optionen gelöst.

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Lösung auf einem herkömmlichen Computer.

Wie man diese Aufgabe auf einem herkömmlichen (Super-)Computer (oder Cluster) löst — es ist klar, dass alle möglichen Optionen in einer Schleife durchgegangen werden müssen.Wenn wir ein Multiprozessorsystem haben, können wir die Berechnung der Lösungen auf mehrere Prozessoren parallelisieren und dann die Ergebnisse zusammenführen.

Wir haben 2 mögliche Anordnungen (Taxi 0 und Taxi 1) und 3 Personen. Der Lösungsraum. 2^3 = 8. Man kann sogar mit einem Taschenrechner 8 Varianten durchspielen, das ist kein Problem. Aber jetzt machen wir die Aufgabe komplizierter – wir haben 20 Personen und zwei Busse, der Lösungsraum 2^20 = 1 048 576. Auch nichts Schwieriges. Wir erhöhen die Anzahl der Menschen um das 2,5-Fache – nehmen wir 50 Personen und zwei Züge, der Lösungsraum ist jetzt 2^50 = 1,12 x 10^15. Einem normalen (Super-)Computer beginnen ernsthafte Probleme. Wenn wir die Anzahl der Menschen verdoppeln, ergeben 100 Personen bereits 1,2 x 10^30 mögliche Varianten.

Alles, in einem angemessenen Zeitraum lässt sich diese Aufgabe nicht berechnen.

Wir schalten den Supercomputer ein

Der derzeit leistungsstärkste Computer ist Nummer 1 aus Top500, das ist Summit, mit einer Leistung von 122 Pflops. Angenommen, dass wir für die Berechnung einer Variante 100 Operationen benötigen, würden wir für die Lösung der Aufgabe für 100 Personen benötigen:

(1,2 x 10^30 100) / 122×10^15 / (606024365) = 3 x 10^37 Jahre.

Wie wir sehen, wächst der Lösungsraum beim Erhöhen der Dimensionen der Ausgangsdaten nach einem Potenzgesetz, allgemein haben wir für N Bits 2^N mögliche Lösungsmöglichkeiten, die bei relativ kleinen N (100) uns einen nicht berechenbaren (auf dem derzeitigen technologischen Stand) Lösungsraum geben.

Gibt es Alternativen? Wie Sie bereits vermutet haben, ja, die gibt es.

Aber bevor wir darauf eingehen, wie und warum Quantencomputer solche Aufgaben effizient lösen können, lassen Sie uns kurz erinnern, was eine Wahrscheinlichkeitsverteilungist. Keine Sorge, der Artikel ist allgemein gehalten, es wird keine strengen mathematischen Berechnungen geben, wir beschränken uns auf das klassische Beispiel mit einem Sack und Kugeln.

Ein wenig Kombinatorik, Wahrscheinlichkeitstheorie und ein seltsamer Experimentator

Nehmen wir einen Sack und legen wir hinein 1000 weiße und 1000 schwarze Kugeln. Wir werden ein Experiment durchführen – eine Kugel herausnehmen, die Farbe notieren, die Kugel zurück in den Sack legen und die Kugeln im Sack mischen.

Wir haben das Experiment 10 Mal durchgeführt, 10 schwarze Kugeln gezogen.Ist das möglich? Sicher. Gibt uns diese Stichprobe eine angemessene Vorstellung von der tatsächlichen Verteilung im Sack? Offensichtlich nicht. Was müssen wir tun – richtig, wirmüssen das Experiment eine Million Mal wiederholen und die Häufigkeiten des Auftretens schwarzer und weißer Kugeln berechnen. Wir erhalten zum Beispiel 49,95 % schwarze und 50,05 % weiße.In diesem Fall ist die Struktur der Verteilung, aus der wir sampeln (eine Kugel ziehen), bereits mehr oder weniger verständlich.

Das Wichtigste, was man verstehen muss, ist, dass das Experiment eine probabilistische Natur hat., mit einer einzelnen Stichprobe (Ball) können wir die wahre Struktur der Verteilung nicht erkennen, wir müssen das Experiment mehrfach wiederholen, und die Ergebnisse mitteln.

Fügen wir in unseren Sack 10 rote und 10 grüne Bälle (Fehler). Wir wiederholen das Experiment 10 Mal. Inzogen wir 5 rote und 5 grüne. Möglich? Ja. Können wir etwas über die wirkliche Verteilung sagen — Nein. Was müssen wir tun — nun, das habt ihr verstanden.

Um ein Verständnis für die Struktur der Wahrscheinlichkeitsverteilung zu erhalten, müssen wir wiederholt einzelne Ergebnisse aus dieser Verteilung ziehen und die Ergebnisse mitteln.

Wir verbinden Theorie mit Praxis.

Jetzt nehmen wir anstelle von schwarzen und weißen Bällen Billardkugeln und legen in den Sack 1000 Kugeln mit der Nummer 2, 1000 mit der Nummer 7 und 10 Kugeln mit anderen Nummern.Stellen wir uns einen Experimentator vor, der in einfachen Handlungen ausgebildet ist (Ball herausnehmen, Nummer aufschreiben, Ball zurück in den Sack legen, die Bälle im Sack mischen) und das in 150 Mikrosekunden schafft. So ein Experimentator ist wie ein Speedfreak (keine Drogenwerbung!!!). Dann kann er in 150 Sekunden unser Experiment 1 Million Mal durchführen und uns die Ergebnisse des Mittelwerts liefern.

Wir setzten den Experimentator hin, gaben ihm den Sack, wandten uns ab, warteten 150 Sekunden — erhielten:

Nummer 2 — 49,5%, Nummer 7 — 49,5%, alle anderen Nummern zusammen — 1%.

Ja, das ist richtig, unser Sack ist ein Quantencomputer mit einem Algorithmus, der unser Problem löst,, und die Kugeln sind mögliche Lösungsvarianten. Da es zwei richtige Lösungen gibt, wird der Quantencomputer uns jede dieser möglichen Lösungen gleichwahrscheinlich liefern, und 0,5% (10/2000) Fehler, über die wir später sprechen werden.

Um das Ergebnis der Arbeit eines Quantencomputers zu erhalten, muss man den Quantenalgorithmus mehrfach mit demselben Datensatz ausführen und das Ergebnis mitteln.

Skalierbarkeit des Quantencomputers

Stellen wir uns nun vor, dass bei einer Aufgabe, an der 100 Personen beteiligt sind (Lösungsraum 2^100 , daran erinnern wir uns), auch nur zwei richtige Lösungen existieren. Wenn wir dann 100 Qubits nehmen und einen Algorithmus schreiben, der unsere Zielfunktion (L, siehe oben) über diese Qubits berechnet, erhalten wir einen Sack mit 1000 Kugeln mit der Nummer der ersten richtigen Antwort, 1000 mit der Nummer der zweiten richtigen Antwort und 10 Kugeln mit anderen Nummern. Und unser Experimentator wird uns in denselben 150 Sekunden eine Bewertung der Wahrscheinlichkeitsverteilung der richtigen Antworten liefern..

Die Ausführungszeit des Quantenalgorithmus (unter einigen Annahmen) kann als konstant O(1) in Bezug auf die Dimension des Lösungsraums (2^N) angesehen werden.

Und genau diese Eigenschaft des Quantencomputers — die Konstanz der Ausführungszeit in Bezug auf die exponentiell wachsende Komplexität des Lösungsraums ist entscheidend.

Qubit und parallele Welten

Wie geschieht das? Was ermöglicht es dem Quantencomputer, so schnell Berechnungen durchzuführen? Es liegt an der quantenmechanischen Natur des Qubits.

Sehen Sie, wir haben gesagt, dass das Qubit als quantenmechanisches Objekt einen seiner beiden Zustände bei der Beobachtung realisiert, aber in der „lebendigen Natur“ befindet es sich in einer Überlagerung von Zuständen, das heißt, es ist gleichzeitig in beiden Grenzzuständen (mit einer gewissen Wahrscheinlichkeit).

Nehmen wir (A)ndrey und stellen wir seinen Zustand (in welchem Verkehrsmittel er sich befindet — 0 oder 1) als Qubit dar. Dann entstehen im quantenmechanischen Raum zwei parallele Welten, in einer (A) sitzt im Taxi 0, in der anderen Welt — im Taxi 1. Gleichzeitig in zwei Taxis, aber mit einer gewissen Wahrscheinlichkeit, ihn in jedem von ihnen bei der Beobachtung zu finden.

Nehmen wir (V)olodya und auch seinen Zustand als Qubit darstellen. Es entstehen zwei weitere parallele Welten. Aber während diese Paare von Welten (A) und (V) nicht interagieren. Was müssen wir tun, um ein verknüpftes System zu schaffen? Richtig, wir müssen diese Qubits verbinden (verschränken).Wir nehmen und verschnüren (A) mit (V) — wir erhalten ein quantenmechanisches System aus zwei Qubits (A, V), das innerhalb von sich vier wechselseitig abhängigen parallelen Welten realisiert. Fügen wir (S)ergey hinzu und erhalten ein System von drei Qubits (ABC), das acht wechselseitig abhängigen parallele Welten realisiert.

Die Essenz des Quantencomputings (der Ausführung einer Kette von Quanten-Gattern über ein System von verbundenen Qubits) ist die Tatsache, dass die Berechnungen in all diesen parallelen Welten gleichzeitig erfolgen.

Und es ist irrelevant, wie viele wir haben, 2^3 oder 2^100, der Quantenalgorithmus wird in endlicher Zeit über all diese parallelen Welten ausgeführt und liefert uns ein Ergebnis, das ein Sample aus der Wahrscheinlichkeitsverteilung der Antworten des Algorithmus darstellt.

Um es besser zu verstehen, kann man sich vorstellen, dass Ein Quantencomputer führt auf quantenmechanischer Ebene 2^N parallele Lösungsprozesse aus, von denen jeder an einer möglichen Variante arbeitet, anschließend werden die Ergebnisse gesammelt — und gibt uns die Antwort in Form einer Überlagerung der Lösungen (Wahrscheinlichkeitsverteilung der Antworten), aus der wir jedes Mal (bei jedem Experiment) eine Probe entnehmen.

Merken Sie sich die Zeit, die unser Experimentator benötigt (150 µs) , um das Experiment durchzuführen; das wird uns später nützlich sein, wenn wir über die Hauptprobleme von Quantencomputern und über die Dekohärenzzeit sprechen.

Quantenalgorithmen

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Wie bereits erwähnt, sind herkömmliche Algorithmen, die auf binärer Logik basieren, für Quantencomputer, die Quantenlogik (quantenmechanische Tore) verwenden, nicht anwendbar. Für sie mussten neue Algorithmen entwickelt werden, die das in der quantenmechanischen Natur der Berechnungen vorhandene Potenzial vollständig nutzen.

Die bekanntesten Algorithmen sind:

Im Unterschied zu klassischen Computern sind Quantencomputer nicht universell.
Bisher wurden nur eine geringe Anzahl von Quantenalgorithmen gefunden.(C)

Danke oxoron für den Link zu Quantum Algorithm Zoo, ein Ort, wo, laut dem Autor („Stephen Jordan“), die besten Vertreter der quanten algorithmischen Welt gesammelt werden und weiterhin gesammelt werden.

In diesem Artikel werden wir nicht im Detail auf Quantenalgorithmen eingehen; es gibt im Internet viele hervorragende Materialien für jedes Schwierigkeitslevel, aber wir sollten dennoch kurz über die drei bekanntesten sprechen.

Shor-Algorithmus.

(zum Inhaltsverzeichnis)

Der bekannteste Quantenalgorithmus ist der Shor-Algorithmus (entwickelt 1994 von dem englischen Mathematiker Peter Shor), der darauf abzielt, das Problem der Faktorisierung von Zahlen in Primfaktoren zu lösen (das Faktorisierungsproblem, diskreter Logarithmus).

Gerade dieser Algorithmus wird als Beispiel genannt, wenn darüber gesprochen wird, dass Ihre Banksysteme und Passwörter bald gehackt werden könnten. Angesichts der Tatsache, dass die heute verwendeten Schlüssel mindestens 2048 Bit lang sind, ist die Zeit für das „Hacker“-Fest noch nicht gekommen.

Bis heute Ergebnisse sind mehr als bescheiden. Die besten Ergebnisse der Faktorisierung mit dem Shor-Algorithmus sind Zahlen 15 und 21, was weit weniger als 2048 Bit ist. Für die anderen Ergebnisse aus der Tabelle wurde eine andere Algorithmus Berechnungsmethode verwendet, aber sogar das beste Ergebnis dieses Algorithmus (291311) ist weit entfernt von einer realen Anwendung.

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Mehr über den Shor-Algorithmus kann man zum Beispiel lesen, hier. Zur praktischen Umsetzung — hier.

Eine der aktuellen Einschätzungen der Komplexität und der erforderlichen Leistung zur Faktorisierung einer 2048-Bit-Zahl ist ein Computer mit 20 Millionen Qubits. Schlafen Sie ruhig.

Grover-Algorithmus

(zum Inhaltsverzeichnis)

Grover-AlgorithmusDer Quantenalgorithmus für die Problemlösung bei der Suche, also dem Finden der Lösung der Gleichung F(X) = 1, wobei F eine boolesche Funktion ab n von Variablen ist. Er wurde 1996 von dem amerikanischen Mathematiker Lov Grover in vorgestellt..

Der Grover-Algorithmus kann verwendet werden, um die Median und des arithmetischen Mittels einer Zahlenreihe zu finden. Darüber hinaus kann er zur Lösung von NP-vollständigen Problemen durch exhaustives Suchen unter einer Vielzahl möglicher Lösungen eingesetzt werden. Dies könnte zu einer erheblichen Geschwindigkeitssteigerung im Vergleich zu klassischen Algorithmen führen, auch wenn es kein „polynomielles Ergebnis“ im allgemeinen Sinne bietet..(C)

Weitere Informationen sind hier zu finden hier, oder hierAußerdem hier gibt es eine gute Erklärung des Algorithmus anhand von Kästen und einem Ball, aber leider kann ich aus Gründen, die von niemandem abhängen, diese Website aus Russland nicht öffnen. Wenn bei Ihnen diese Website auch blockiert ist, hier eine kurze Zusammenfassung:

Der Grover-Algorithmus. Stellen Sie sich vor, Sie haben N nummerierte geschlossene Kästen. Sie sind alle leer, außer einem, in dem sich ein Ball befindet. Ihre Aufgabe: herauszufinden, welche Kiste die Nummer hat, in der sich der Ball befindet (diese unbekannte Nummer wird oft mit w bezeichnet).
Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Wie lösen Sie dieses Problem? Auf die einfachste Art, indem Sie nacheinander die Kästen öffnen, dann stoßen Sie irgendwann auf den Kasten mit dem Ball. Und wie viele Kästen müssen im Durchschnitt geöffnet werden, bevor der Kasten mit dem Ball gefunden wird? Im Durchschnitt müssen etwa die Hälfte der Kästen N/2 geöffnet werden. Das Wichtige ist, dass wenn wir die Anzahl der Kästen um das 100-Fache erhöhen, dann wird auch die durchschnittliche Anzahl der Kästen, die geöffnet werden müssen, um das 100-Fache steigen.

Jetzt machen wir noch eine Klarstellung. Angenommen, wir öffnen die Kisten nicht selbst mit den Händen und überprüfen, ob sich ein Ball in jeder befindet, sondern es gibt einen Vermittler, den wir Oracle nennen. Wir sagen zum Oracle: „Überprüfe Kiste Nummer 732“, und das Oracle prüft ehrlich und antwortet: „In der Kiste Nummer 732 befindet sich kein Ball.“ Anstatt also darüber zu sprechen, wie viele Kisten wir im Durchschnitt öffnen müssen, sagen wir: „Wie oft müssen wir im Durchschnitt zum Oracle gehen, um die Kistennummer mit dem Ball zu finden?“

Es stellt sich heraus, dass, wenn man diese Aufgabe mit Kisten, Ball und Oracle in die Quantensprache übersetzt, ein bemerkenswertes Ergebnis herauskommt: Um die Kistennummer mit dem Ball unter N Kisten zu finden, müssen wir das Oracle nur etwa SQRT(N) Mal stören!

Das bedeutet, dass die Schwierigkeit des Problems bei der Verwendung des Grover-Algorithmus um die Quadratwurzel verringert wird.

Deutsch-Josch-Algorithmus

(zum Inhaltsverzeichnis)

Der Deutsch-Jozsa-Algorithmus (auch als Deutsch-Jozsa-Algorithmus bezeichnet) ist ein [quantitativer Algorithmus](https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9Algorithm), vorgeschlagen David Deutsch und Richard Jozsa in im Jahr 1992, und wurde zu einem der ersten Beispiele für Algorithmen, die für die Ausführung auf Quantencomputern. _

entwickelt wurden. Die Aufgabe des Deutsch-Jozsa-Algorithmus besteht darin, zu bestimmen, ob eine Funktion mehrerer binärer Variablen F(x1, x2, … xn) konstant ist (entweder den Wert 0 oder 1 für alle Argumente annimmt) oder ausgewogen ist (für die Hälfte des Definitionsbereichs den Wert 0 annimmt und für die andere Hälfte 1). Dabei wird angenommen, dass die Funktion entweder konstant oder ausgewogen ist. (C)

Man kann auch lesen hier. Eine einfachere Erklärung:

Der Deutsch-Algorithmus (Deutsch-Jozsa) basiert auf der Überprüfung, ermöglicht es jedoch, dies schneller als gewöhnlich zu tun. Stellen Sie sich vor, auf dem Tisch liegt eine Münze und es muss festgestellt werden, ob sie gefälscht ist oder nicht. Dazu müssen Sie zweimal auf die Münze schauen und bestimmen: „Kopf“ und „Zahl“ – die echte, zwei „Köpfe“, zwei „Zahlen“ – die gefälschte. Wenn Sie jedoch den quantenmechanischen Deutsch-Algorithmus verwenden, lässt sich diese Bestimmung mit einem Blick – einer Messung – durchführen. (C)

Probleme der Quantencomputer

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Bei der Planung und dem Betrieb von Quantencomputern stehen Wissenschaftler und Ingenieure vor einer Vielzahl von Problemen, die heute mit unterschiedlichem Erfolg gelöst werden. Laut Forschung (und noch hier) können folgende Probleme hervorgehoben werden:

  • Sensitivität gegenüber der Umgebung und Interaktion mit der Umgebung
  • Fehlerakkumulation bei Berechnungen
  • Schwierigkeiten bei der initialen Einrichtung der Zustände der Qubits
  • Schwierigkeiten beim Aufbau von Mehr-Qubit-Systemen

Ich empfehle dringend, den Artikel "Merkmale von Quantencomputernzu lesen, insbesondere die Kommentare dazu.

Lassen Sie uns alle Hauptprobleme in drei große Gruppen organisieren und jede von ihnen näher betrachten:

Dekohärenz

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Beschreibung von N+1.

Quantenstatus eine sehr fragile Angelegenheit, Qubits in einem verschlungenen Zustand sind extrem instabil, jedes externe Einwirken kann diese Verbindung zerstören (und tut es auch). Eine Temperaturänderung um einen winzigen Bruchteil eines Grades, Druck, ein zufällig vorbeifliegender Photon – all dies destabilisiert unser System.

Um dieses Problem zu lösen, werden Niedertemperatur-Sarkophage gebaut, in denen die Temperatur (−273,14 Grad Celsius) nur wenig über dem absoluten Nullpunkt liegt, mit maximaler Isolierung der inneren Kammer mit dem Prozessor von allen (möglichen) Einwirkungen der Außenwelt.

Die maximale Lebensdauer eines quantenmechanischen Systems aus mehreren verschlungenen Qubits, in der es seine quantenmechanischen Eigenschaften behält und für Berechnungen verwendet werden kann, wird als Dekohärenzzeit bezeichnet.

Derzeit beträgt die Dekohärenzzeit in den besten Quantenlösungen etwa Zehntel und Hundert mikrosekunden.

Es gibt eine großartige Webseite, die man sich ansehen kann Vergleichstabellen der Parameter aller geschaffenen Quantensysteme. In diesem Artikel werden zur Veranschaulichung nur zwei Spitzenprozessoren – von IBM IBM Q System One und von Google Sycamore. Wie wir sehen, übersteigt die Dekohärenzzeit (T2) nicht 200 µs.

Ich habe keine genauen Daten zu Sycamore gefunden, aber im Artikel über Quantenüberlegenheit werden zwei Zahlen angegeben – 1 Million Berechnungen in 200 Sekunden , an anderer Stelle – in130 Sekunden ohne Verluste durch Steuersignale und dergleichen. In jedem Fall ergibt uns daseine Dekohärenzzeit von etwa 150 µs. Erinnern Sie sich an unserenExperimentator mit dem Sack Computer Name? Ну так вот он.

N QubitsMax. gekoppeltT2 (µs)Was droht uns die Dekohärenz?
IBM Q System One20670
Google Sycamore534~150-200

Das Hauptproblem besteht darin, dass unser Berechnungssystem aus N verschlungenen Qubits nach 150 µs anstelle einer Wahrscheinlichkeitsverteilung korrekter Lösungen – ein zufälliges weißes Rauschen ausgeben wird.

Das bedeutet, wir müssen:

Das System der Qubits initialisieren

  • Eine Berechnung durchführen (Operationen in einer Kette von Toren)
  • Berechnen (Kette von Schaltvorgängen)
  • Das Ergebnis zählen

Und all das in 150 µs erledigen. Wenn das nicht gelingt, verwandelt sich das Ergebnis in einen Kürbis.

Aber das ist noch nicht alles…

Fehler

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Wie wir bereits gesagt haben, haben quantenprozesse und quantenberechnungen eine probabilistische Natur, wir können uns nicht zu 100 % sicher sein, sondern nur mit einer bestimmten Wahrscheinlichkeit. Die Situation wird noch komplizierter durch die Tatsache, dass Quantenberechnungen anfällig für Fehler sind. Die Haupttypen von Fehlern bei Quantenberechnungen sind:

  • Dekohärenzfehler, die aus der Komplexität des Systems und der Wechselwirkung mit der Außenwelt resultieren
  • Betriebsfehler der Tore (bedingt durch die quantenmechanische Natur der Berechnungen)
  • Fehler beim Auslesen des endgültigen Zustands (Ergebnis)

Fehler, die mit Dekohärenz verbunden sind, treten sofort auf, sobald wir unsere Qubits verworren haben und mit den Berechnungen beginnen. Je mehr Qubits wir verworren, desto komplexer ist das System, und desto einfacher ist es, es zu zerstören. Niedrigtemperatur-Sarkophage, geschützte Kammern, all diese technologischen Tricks sollen gerade die Anzahl der Fehler verringern und die Dekohärenzzeit verlängern.

Betriebsfehler der Tore – jede Operation (Tor) an Qubits kann mit einer bestimmten Wahrscheinlichkeit fehlerhaft abgeschlossen werden, und um den Algorithmus umzusetzen, müssen wir Hunderte von Toren ausführen. Stellen Sie sich vor, was wir am Ende unserer Berechnung erhalten. Die klassische Antwort auf die Frage – "Wie hoch ist die Wahrscheinlichkeit, einem Dinosaurier im Aufzug zu begegnen?" – ist 50:50, entweder trifft man ihn oder nicht.

Das Problem wird verschärft durch die Tatsache, dass die Standardmethoden zur Fehlerkorrektur (duplizieren von Berechnungen und Mittelwertbildung) in der Quantenwelt aufgrund des Klonierverbots nicht funktionieren. Für die Fehlerkorrektur in Quantenberechnungen mussten quantenbasierte Korrekturmethode entwickelt werden. Grob gesagt nehmen wir N gewöhnliche Qubits und machen aus ihnen 1 logisches Qubit mit einer geringeren Fehlerquote.

Doch hier entsteht ein weiteres Problem – die Gesamtzahl der Qubits. Angenommen, wir haben einen Prozessor mit 100 Qubits, von denen 80 der Fehlerkorrektur zugeteilt sind, bleiben uns für die Berechnungen nur 20.

Fehler beim Auslesen des endgültigen Ergebnisses – wie wir uns erinnern, wird das Ergebnis der Quantenberechnungen in Form eines Wahrscheinlichkeitsverteilung der Antworten. Aber das Auslesen des endgültigen Zustands kann ebenfalls fehlerhaft sein.

Zur gleichen Zeit Website gibt es Vergleichstabellen von Prozessoren bezüglich der Fehlerraten. Zum Vergleich nehmen wir die gleichen Prozessoren wie im vorherigen Beispiel – IBM IBM Q System One und Google Sycamore:

Computer1-Qubit-Gatter-Fidelität2-Qubit-Gatter-FidelitätLese-Fidelität
IBM Q System One99.96%98.31%
Google Sycamore99.84%99.38%96.2%

Hier Fidelität ist ein Maß für die Ähnlichkeit zweier quantenmechanischer Zustände. Der Fehlerwert kann grob als 1-Fidelität dargestellt werden. Wie wir sehen, sind die Fehler bei 2-Qubit-Gattern und die Lese-Fehler das Haupthindernis für die Durchführung komplexer und längerer Algorithmen auf bestehenden Quantencomputern.

Man kann auch lesen Roadmap von 2016 des NQIT zur Lösung des Problems der Fehlerkorrektur.

Architektur des Prozessors

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

In der Theorie bauen wir und arbeiten mit Schaltungen aus Dutzenden von verschränkten Qubits, in der Realität jedoch ist alles komplizierter. Alle bestehenden Quantenchips (Prozessoren) sind so aufgebaut, dass sie eine reibungslose Verschränkung eines Qubits nur mit seinen Nachbarn unterstützen, von denen es nicht mehr als sechs gibt.

Wenn wir jedoch das 1. Qubit beispielsweise mit dem 12. Qubit verschränken möchten, müssen wir eine Kette zusätzlicher quantenmechanischer Operationen aufbauen, zusätzliche Qubits und anderes einbeziehen, was die allgemeine Fehlerrate erhöht. Ja, und vergessen Sie nicht über Dekohärenzzeit, möglicherweise ist die Zeit abgelaufen, wenn Sie mit dem Verknüpfen der Qubits in der von Ihnen benötigten Schaltung fertig sind, und die gesamte Schaltung wird zu einem hübschen Generator für weißen Rauschen.

Vergessen Sie auch nicht, dass die Architektur aller Quantenprozessoren unterschiedlich ist, und das Programm, das im Emulator im Modus „Vernetzung aller mit allen“ geschrieben wurde, muss in die Architektur des jeweiligen Chips „rekompiliert“ werden. Es gibt sogar spezielle Optimierungsprogramme für diese Operation.

Maximale Vernetzung und maximale Anzahl von Qubits für die gleichen Spitzenchips:

N QubitsMax. gekoppeltT2 (µs)Was droht uns die Dekohärenz?
IBM Q System One20670
Google Sycamore534~150-200

Und zur Vergleich eine Tabelle mit Daten der vorherigen Generation von Prozessoren. Vergleichen Sie die Anzahl der Qubits, die Dekohärenzzeit und den Fehlersatz mit dem, was wir jetzt in der neuen Generation haben. Der Fortschritt bewegt sich immerhin langsam vorwärts.

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Also:

  • Derzeit gibt es keine voll vernetzten Architekturen mit mehr als 6 Qubits
  • Um auf einem echten Prozessor das Qubit 0 beispielsweise mit dem 15. Qubit zu verschränken, können mehrere Dutzend zusätzliche Operationen erforderlich sein.
  • Mehr Operationen -> mehr Fehler -> stärkere Auswirkung der Dekohärenz

Ergebnisse

(zum Inhaltsverzeichnis)

Dekohärenz ist das Prokrustes-Bett der modernen Quantenberechnungen. In 150 µs müssen wir alles unterbringen:

  • Initialisierung des Anfangszustands der Qubits
  • Berechnung der Aufgabe unter Verwendung quantenlogischer Gatter
  • Fehlerkorrekturen durchführen, um ein sinnvolles Ergebnis zu erhalten
  • Das erhaltene Ergebnis erfassen

Bis jetzt sind die Ergebnisse enttäuschend, obwohl hier sie von 0,5 s Kohärenzzeit auf einem quantenbasierten Computer berichten, der auf ionischen Fallen basiert:

Wir messen eine Qubit-Kohärenzzeit von über 0,5 s, und mit magnetischen Abschirmungen erwarten wir, dass sich dies auf mehr als 1000 s verbessert

Zu dieser Technologie kann man noch lesen hier oder zum Beispiel, hier.

Die Situation wird noch dadurch komplizierter, dass bei komplexen Berechnungen Quantenschaltkreise zur Fehlerkorrektur eingesetzt werden müssen, was ebenfalls Zeit und verfügbare Qubits in Anspruch nimmt.

Und schließlich ermöglichen moderne Architekturen nicht, mit minimalen Aufwendungen komplexere Verschränkungsschemata als 1 zu 4 oder 1 zu 6 zu realisieren.

Lösungsansätze

(zum Inhaltsverzeichnis)

Um die oben genannten Probleme zu lösen, werden derzeit folgende Ansätze und Methoden verwendet:

  • Verwendung von Kryokammern mit niedrigen Temperaturen (10 mK (–273,14 °C))
  • Verwendung von maximal geschützt vor äußeren Einflüssen Prozessorblöcken
  • Verwendung von Systemen zur quantenmäßigen Fehlerkorrektur (Logischer Qubit)
  • Einsatz von Optimierern bei der Programmierung von Schaltkreisen für spezifische Prozessoren

Es werden auch Forschungen unternommen, um die Dekohärenzzeit zu erhöhen, neue (und bekannte) physikalische Realisierungen quantenmechanischer Objekte zu finden und die Schaltungskorrektur zu optimieren und vieles mehr. Es gibt Fortschritte (siehe oben die Eigenschaften früherer und derzeit führender Chips), aber bisher geschieht dies langsam, sehr, sehr langsam.

D-Wave

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

2000-Qubit-Computer D-Wave 2000Q. Quelle: D-Wave Systems

Im Kontext der Ankündigung von Google über den Erhalt von quantenmechanischer Überlegenheit unter Verwendung eines Prozessors mit 53 Qubits, verwirren Computer und Ankündigungen des Unternehmens D-Wave, bei denen die Anzahl der Qubits in Tausenden gemessen wird, etwas. Wenn 53 Qubits quantenmechanische Überlegenheit erreichen konnten, was ist dann der Computer mit 2048 Qubits fähig? Aber es ist nicht alles so gut...

Kurz gesagt (aus der Wiki entnommen):

Computer D-Wave arbeiten auf dem Prinzip der quantenmechanischen Entspannung (quantum annealing), können nur sehr begrenzte Unterklassen von Optimierungsproblemen lösen und sind nicht für die Implementierung traditioneller quantenmechanischer Algorithmen und Quantenlogikgatter geeignet.

Detaillierte Informationen können zum Beispiel hier gelesen werden, hier, hier (vorsichtig, könnte aus Russland nicht geöffnet werden), oder bei Scott Aaronson in Artikel aus seinem Blogs. Übrigens empfehle ich, seinen Blog insgesamt zu lesen, dort gibt es viele gute Beiträge.

Seit den ersten Ankündigungen gab es in der Wissenschaftsgemeinschaft Fragen zu den D-Wave Computern. Zum Beispiel stellte IBM 2014 die Tatsache in Frage, dass D-Wave quantenmechanische Effekte nutzt. Es kam so weit, dass Google 2015 zusammen mit NASA einen dieser Quantencomputer kaufte und nach Untersuchungen bestätigt, dass dieser tatsächlich funktioniert und die Aufgabe schneller rechnet als ein normaler Computer. Weitere Informationen zur Aussage von Google können gelesen werden hier und zum Beispiel, hier.

Das Wichtigste ist, dass D-Wave Computer, mit ihren Hunderten und Tausenden von Qubits, nicht für die Berechnung und Ausführung von quantenmechanischen Algorithmen verwendet werden können. Man kann beispielsweise den Shor-Algorithmus nicht auf ihnen ausführen. Alles, was sie können, ist, bestimmte Optimierungsprobleme mit spezifischen quantenmechanischen Mechanismen zu lösen. Man kann sagen, D-Wave ist eine Art Quanten-ASIC für eine bestimmte Aufgabe.

Ein wenig über die Emulation von Quantencomputern

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Quantenberechnungen können auf einem normalen Computer emuliert werden. Schließlich, sehen Sie:

  • Der Zustand eines Qubits kann dargestellt werden als komplexe Zahl, die von 2^32 bis 2^64 Bit (8-16 Bytes) je nach Prozessorarchitektur benötigt.
  • Der Zustand von N verbundenen Qubits kann als 2^N komplexe Zahlen dargestellt werden, d.h. 2^(3+N) für 32-Bit-Architektur und 2^(4+N) für 64-Bit.
  • Eine Quantenoperation an N Qubits kann als 2^N x 2^N Matrix dargestellt werden.

Dann:

  • Zur Speicherung der emulierten Zustände von 10 Qubits werden 8 KB benötigt.
  • Zur Speicherung der Zustände von 20 Qubits werden 8 MB benötigt.
  • Zur Speicherung der Zustände von 30 Qubits werden 8 GB benötigt.
  • Zur Speicherung der Zustände von 40 Qubits werden 8 Terabyte benötigt.
  • Zur Speicherung der Zustände von 50 Qubits werden 8 Petabyte benötigt, usw.

(C)

Zum Vergleich, Summit (Top-1 der Top-500) hat nur 2,8 Petabyte Speicher.

Der aktuelle Rekord für Simulationen – 49 Qubits, die im letzten Jahr auf dem größten chinesischen Supercomputer (Sunway Taihu Light)

Die Grenze der Simulation eines Quantencomputers auf klassischen Systemen wird durch die Menge an RAM bestimmt, die benötigt wird, um den Zustand der Qubits zu speichern.

Ich empfehle auch, diesen Kommentar hierzu lesen. Daraus:

Für die exakte Emulation eines Schaltplans mit 49 Qubits werden 39 "Takte" (unabhängige Schichten von Toren) benötigt. ungefähr acht Monate! Diesmal wurde die offizielle Information von der Weltgesundheitsorganisation innerhalb von sieben Tagen erhalten. „Wir freuen uns über Chinas ernsthaften Umgang mit diesem Ausbruch… einschließlich der Bereitstellung von Daten und Ergebnissen der genetischen Sequenzierung des Virus“ – 2^63 komplexe Multiplikationen – 4 Pflopps des Supercomputers über einen Zeitraum von 4 Stunden

Die Emulation eines Quantencomputers mit über 50 Qubits auf klassischen Systemen gilt als in angemessener Zeit unmöglich. Aufgrund dieser Tatsache hat Google für sein Experiment zur Quantenüberlegenheit einen Prozessor mit 53 Qubits verwendet.

Quantenüberlegenheit.

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Die Wikipedia gibt uns die folgende Definition der Quantencomputationalen Überlegenheit:

Quantenüberlegenheit – die Fähigkeit quantencomputationaler Geräte, Probleme zu lösen, die klassische Computer praktisch nicht lösen können.

Tatsächlich bedeutet das Erreichen der Quantenüberlegenheit, dass beispielsweise die Faktorisierung großer Zahlen mit dem Shor-Algorithmus in angemessener Zeit gelöst werden kann oder komplexe chemische Moleküle auf Quantenebene emuliert werden können und so weiter. Das heißt, eine neue Ära hat begonnen.

Aber in der Formulierung der Definition gibt es eine gewisse Hintertür, “die klassische Computer praktisch nicht lösen können”. Tatsächlich bedeutet dies, dass, wenn ein Quantencomputer mit über 50 Qubits erstellt und auf ihm ein gewisses Quantenprogramm ausgeführt wird, das Ergebnis dieser Ausführung, wie wir oben betrachtet haben, auf einem herkömmlichen Computer nicht emuliert werden kann. Das bedeutet, dass ein klassischer Computer das Ergebnis dieser Ausführung nicht reproduzieren kann..

Ob ein solches Ergebnis echte Quantenüberlegenheit darstellt oder nicht, ist eine eher philosophische Frage. Aber es ist wichtig zu verstehen, was Google getan hat und auf welchem seine kürzliche Erklärung zur Erreichung der Quantenüberlegenheit mit seinem neuen Sycamore-Prozessor basiert muss.

Die Erklärung von Google zur Erreichung der Quantenüberlegenheit

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen
54-Qubit-Prozessor Sycamore

Also veröffentlichten die Entwickler von Google im Oktober 2019 einen Artikel in der wissenschaftlichen Zeitschrift Nature mit dem Titel „Quantenüberlegenheit unter Verwendung eines programmierbaren supraleitenden Prozessors“. Die Autoren kündigten die erstmalige historisch erreichte Quantenüberlegenheit durch den 54-Qubit-Prozessor „Sycamore“ an.

In den Artikeln wird oft von Sycamore gesprochen, sowohl als 54-Qubit-Prozessor als auch als 53-Qubit-Prozessor. Die Wahrheit ist, dass der Prozessor physisch aus 54 Qubits besteht, aber eines von ihnen nicht funktionsfähig ist und außer Betrieb genommen wurde. Daher haben wir in der Realität einen 53-Qubit-Prozessor. Originalartikelim Netz sofort.

Im Netz wurde sofort darüber diskutiert. Dieser Beitrag ist eine Zusammenstellung von Beiträgen aus meinem Kanal vom Dezember unter dem Tag #Analyse. Die vorherige Ausgabe finden Sie eine Vielzahl von Materialien zu diesem Thema, deren Grad variierte von begeisterten bis skeptischen.

Später erklärten Mitarbeiter der Abteilung für Quantenberechnungen von IBM, dass Google fälschlicherweise über den Erreichens von Quantenüberlegenheit berichtete. Das Unternehmen behauptet, dass ein herkömmlicher Computer diese Aufgabe im schlimmsten Fall in 2,5 Tagen bewältigen kann und das erhaltene Ergebnis dabei genauer sein wird als das eines Quantencomputers. Diese Schlussfolgerung wurde nach einem theoretischen Analyse diverser Optimierungsmethoden gezogen.

Nun ja, und natürlich, Scott Aaronson in seinem Blog konnte dies nicht unbeachtet lassen. Sein 13. Alles liegt in Ihren Händen… nebst all den Links und Scott’s Supreme Quantum Supremacy FAQ! wie gewohnt, sind es wert, dass man seine Zeit dafür investiert. Auf Habré gibt es eine Übersetzung dieses FAQ, und unbedingt die Kommentare lesen, dort gibt es Links zu vorläufigen Dokumenten, die vor der offiziellen Ankündigung ins Netz gelangten.

Was hat Google also tatsächlich gemacht? Für ein detailliertes Verständnis lesen Sie Aaronson, und kurz gesagt:

Ich kann Ihnen natürlich sagen, aber ich fühle mich dabei etwas albern. Die Berechnung ist folgende: Der Experimentator generiert ein zufälliges Quanten-Schaltbild S (d. h. eine zufällige Folge von 1-Qubit- und 2-Qubit-Gattern – zwischen den nächsten Nachbarn –, mit einer Tiefe von zum Beispiel 20, welche auf einem 2D-Netzwerk von n=50-60 Qubits wirkt). Danach sendet der Experimentator S an den Quantencomputer und bittet ihn, S auf den Anfangszustand von 0 anzuwenden, das Ergebnis in der Basis {0,1} zu messen, die n-bit lange Beobachtungssequenz (Zeile) zurückzusenden und das Ganze mehrere Tausend oder Millionen Male zu wiederholen. Schließlich führt der Experimentator basierend auf seinem Wissen über S eine statistische Überprüfung des Ergebnisses im Hinblick auf die erwartete Ausgabe des Quantencomputers durch.

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Ganz kurz:

  • Ein zufälliges Schaltbild mit einer Länge von 20 aus 53 Qubits wird unter Verwendung von Gattern erstellt.
  • Das Schaltbild wird mit dem Anfangszustand [0…0] zur Ausführung gestartet.
  • Die Ausgabe des Schaltbildes besteht aus einer zufälligen Bitfolge (Sample).
  • Die Verteilung des Ergebnisses ist nicht zufällig (Interferenz).
  • Die Verteilung der erhaltenen Samples wird mit der erwarteten verglichen.
  • Es wird eine Schlussfolgerung über die Quantenüberlegenheit gezogen.

Das heißt, Google hat eine synthetische Aufgabe auf einem 53-Qubit-Prozessor realisiert und stützt seine Aussage über die Erreichung der Quantenüberlegenheit auf die Tatsache, dass eine Emulation eines solchen Prozessors auf Standard-Systemen in angemessener Zeit unmöglich ist.

Zur Klarstellung — in diesem Abschnitt wird die Leistung von Google in keiner Weise geschmälert,die Ingenieure sind wirklich großartig, und die Frage, ob man dies als echte Quantenüberlegenheit betrachten kann oder nicht, ist, wie bereits erwähnt, eher philosophisch als ingenieurtechnisch. Aber man muss verstehen, dass wir mit einer solchen rechnerischen Überlegenheit keinen Schritt näher daran sind, den Shor-Algorithmus auf 2048-Bit-Zahlen auszuführen.

Zusammenfassung

(zum Inhaltsverzeichnis)
Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Quantencomputer und Quantencomputing sind ein vielversprechendes, sehr junges und bislang nur begrenzt in der Industrie anwendbares Gebiet der Informationstechnologie.

Die Entwicklung des Quantencomputings wird es ermöglichen, Aufgaben zu lösen:

  • Modellierung komplexer physikalischer Systeme auf quantenmechanischer Ebene
  • Die aufgrund der Rechenkomplexität auf einem herkömmlichen Computer unlösbar sind

Die Hauptprobleme bei der Erstellung und dem Betrieb von Quantencomputern sind:

  • Dekohärenz
  • Fehler (Dekohärenz und Gatterfehler)
  • Architektur der Prozessoren (vollvernetzte Qubit-Schaltungen)

Der aktuelle Stand der Dinge:

  • Faktisch — ganz am Anfang F&E.
  • Echte kommerzielle Nutzung gibt es noch nicht (und es ist unklar, wann sie kommen wird)

Was helfen könnte:

  • Eine physikalische Entdeckung, die die Kosten für die Verkabelung und den Betrieb von Prozessoren senkt
  • Die Entdeckung von etwas, das die Dekohärenzzeit um eine Größenordnung erhöht und/oder die Anzahl der Fehler verringert

Meiner Meinung nach (rein persönliche Meinung), werden wir in der aktuellen wissenschaftlichen Wissensparadigma keine signifikanten Fortschritte in der Entwicklung von Quanten-technologien erreichen,da es eines qualitativ hochwertigen Durchbruchs in einem Bereich der Grundlagen- oder angewandten Wissenschaft bedarf, der neue Ideen und Methoden anstoßen kann.

Nun, bisher sammeln wir Erfahrung im Quantenprogramming, entwickeln und erstellen Quantenalgorithmen, testen Ideen und so weiter und so fort. Wir warten auf einen Durchbruch.

Fazit

(zum Inhaltsverzeichnis)

In diesem Artikel haben wir die wichtigsten Meilensteine der Entwicklung von Quantencomputern und Quantencomputing behandelt, den Prinzip ihrer Funktionsweise erläutert, die Hauptprobleme betrachtet, mit denen Ingenieure bei der Entwicklung und dem Betrieb von Quantenprozessoren konfrontiert sind, und auch untersucht, was die Multiqubit-Computer von D-Wave tatsächlich sind, sowie die jüngste Aussage von Google über das Erreichen des Quantenvorteils.

Die Fragen der Programmierung von Quantencomputern (Sprachen, Ansätze, Methoden usw.) und die Fragen, die mit der konkreten physikalischen Umsetzung der Prozessoren verbunden sind, wie die Steuerung von Qubits, deren Verknüpfung, Auslesung usw., blieben unerwähnt. Möglicherweise wird dies das Thema des nächsten Artikels oder der Artikel sein.

Vielen Dank für Ihre Aufmerksamkeit, ich hoffe, dieser Artikel wird jemandem nützlich sein.

(C) Kruegger

Dank

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

@Oxoron für das Korrekturlesen und die Anmerkungen zum ursprünglichen Text sowie für den Artikel „Merkmale von Quantencomputern“

@a5b für die informationsreichen Kommentare zu „Merkmale von Quantencomputern“, ja und nicht nur zu diesem, die mir in vielerlei Hinsicht geholfen haben, dieses Puzzle zu verstehen.

An alle Autoren von Artikeln und Veröffentlichungen, deren Materialien bei der Erstellung dieses Artikels verwendet wurden.

Ressourcenliste

(zum Inhaltsverzeichnis)

Wie Quantencomputer funktionieren. Puzzlestück zusammensetzen

Artikel über den aktuellen Stand von [The National Academies Press]

http://cs.brown.edu/courses/csci1800/sources/2018_NAE_QuantumComputing_ProgressAndProspects.pdf
https://www.nap.edu/catalog/25196/quantum-computing-progress-and-prospects

Artikel von Habr (in zufälliger Reihenfolge)

https://habr.com/ru/post/458450/
https://habr.com/ru/post/401315/
https://habr.com/ru/post/458134/
https://habr.com/ru/post/246483/
https://habr.com/ru/post/95428/
https://habr.com/ru/post/387761/
https://habr.com/ru/post/468911/
https://habr.com/ru/post/435560/
https://habr.com/ru/post/316810/
https://habr.com/ru/company/microsoft/blog/351624/
https://habr.com/ru/company/microsoft/blog/351628/
https://habr.com/ru/company/ua-hosting/blog/377533/
https://habr.com/ru/company/acronis/blog/455559/
https://habr.com/ru/company/yandex/blog/332106/
https://habr.com/ru/company/mailru/blog/350208/
https://habr.com/ru/company/mailru/blog/476444/
https://habr.com/ru/company/misis/blog/470445/
https://habr.com/ru/company/it-grad/blog/452424/
https://habr.com/ru/company/piter/blog/450480/

Nicht sortierte (aber nicht weniger interessante) Artikel aus dem Netz

http://homepages.spa.umn.edu/~duplij/publications/Duplij-Shapoval_TOPOLOGICAL-QUANTUM-COMPUTERS.pdf
https://quantum.country/qcvc
http://extremal-mechanics.org/wp-content/uploads/2015/07/RIFFEL.pdf
https://thecode.media/quantum/
https://naked-science.ru/article/nakedscience/quantum-computers
https://ru.ihodl.com/technologies/2018-10-29/prosto-o-slozhnom-kak-rabotaet-kvantovyj-kompyuter/
https://pikabu.ru/story/chto_takoe_kvantovyiy_kompyuter_5204054
https://nplus1.ru/search?q=%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D1%8F+%D0%B0%D0%B7%D0%B1%D1%83%D0%BA%D0%B0
https://www.scottaaronson.com/blog/?p=4372
https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80
https://quantumcomputingreport.com/scorecards/qubit-quality/
https://quantumcomputing.stackexchange.com/questions/2499/is-quantum-computing-just-pie-in-the-sky
https://quantumcomputing.stackexchange.com/questions/1289/how-does-a-quantum-computer-do-basic-math-at-the-hardware-level
https://www.extremetech.com/extreme/284306-how-quantum-computing-works
https://techno.nv.ua/it-industry/chto-takoe-kvantovyy-kompyuter-i-kvantovoe-prevoshodstvo-google-protiv-ibm-50049940.html
https://www.nature.com/articles/s41586-019-1666-5?utm_source=commission_junction&utm_medium=affiliate
https://petrimazepa.com/nemnogo_o_kvantovykh_kompyuterakh
https://www.forbes.ru/tehnologii/371669-ibm-protiv-d-wave-nastupila-li-era-kvantovyh-kompyuterov

Kurse und Vorlesungen

https://www.coursera.org/learn/kvantovyye-vychisleniya
https://www.youtube.com/watch?v=uPw9nkJAwDY&amp=&index=4&amp=&t=0s
https://courses.edx.org/courses/BerkeleyX/CS191x/2013_Spring/course/#
https://www.youtube.com/watch?v=xLfFWXUNJ_I&list=PLnbH8YQPwKbnofSQkZE05PKzPXzbDCVXv
https://cs269q.stanford.edu/syllabus.html
https://quantum-computing.ibm.com/support/guides/user-guide?section=5dcb2b45330e880045abccb0
https://gitlab.com/qkitchen/basics-of-quantum-computing

Quelle: habr.com

60GB SSD 8Gb DDR4