[go: up one dir, main page]

WO2026012899A1 - Verfahren zur bestimmung einer abbildung eines logischen quantenschaltkreises auf eine qubitanordnung mittels eines symbolischen lösers, system und verfahren zum betreiben eines quantencomputers - Google Patents

Verfahren zur bestimmung einer abbildung eines logischen quantenschaltkreises auf eine qubitanordnung mittels eines symbolischen lösers, system und verfahren zum betreiben eines quantencomputers

Info

Publication number
WO2026012899A1
WO2026012899A1 PCT/EP2025/069017 EP2025069017W WO2026012899A1 WO 2026012899 A1 WO2026012899 A1 WO 2026012899A1 EP 2025069017 W EP2025069017 W EP 2025069017W WO 2026012899 A1 WO2026012899 A1 WO 2026012899A1
Authority
WO
WIPO (PCT)
Prior art keywords
qubit
qubits
quantum
physical
logical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/EP2025/069017
Other languages
English (en)
French (fr)
Inventor
Alexander Rausch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of WO2026012899A1 publication Critical patent/WO2026012899A1/de
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/80Quantum programming, e.g. interfaces, languages or software-development kits for creating or handling programs capable of running on quantum computers; Platforms for simulating or accessing quantum computers, e.g. cloud-based quantum computing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

Die Erfindung betrifft ein Verfahren (100) zur Bestimmung einer Abbildung eines logischen Quantenschaltkreises (101) auf eine Qubitanordnung, umfassend eine Anzahl physischer Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8), mittels eines symbolischen Lösers, wobei eine initiale Belegung mindestens einer der Variablen des symbolischen Lösers  unter Einhaltung der Randbedingungen,  unter Einhaltung von Konflikt-Nebenbedingungen und  unter Einhaltung der initialen Nebenbedingungen der physischen Qubits, sofern die initialen Nebenbedingungen der physischen Qubits mit den Randbedingungen und Konflikt-Nebenbedingungen vereinbar sind erfolgt.

Description

Beschreibung
Titel
Verfahren zur Bestimmung einer Abbildung eines logischen
Quantenschaltkreises auf eine Qubitanordnunq mittels eines
Lösers, System und Verfahren zum Betreiben eines Quanter
Stand der Technik
In „On the Qubit Routing Problem,“ (Cowtan et al., arXiv:1902.08091 v2, 2019) ist das Abbildungsproblem logischer Qubits auf eine physische Qubit-Plattform mit eingeschränkter Konnektivität beschrieben.
In „Tackling the Qubit Mapping Problem for NISQ-Era Quantum Devices“ (Li et al.; ASPLOS’19, April 13-17, 2019, Providence, RI, USA) ist ein Ansatz zur Lösung eines Qubit-Abbildungsproblems beschrieben, welcher eine heuristische Suche umfasst.
Kern und Vorteile der Erfindung
Bei der Abbildung eines logischen Quantenschaltkreises auf eine reale physische Quantencomputerplattform (im Folgenden kurz: Quantencomputer) wird jedem logischen Qubit (Quantenbit) des Quantenschaltkreises ein physisches Qubit der realen Quantencomputerplattform zugewiesen.
Derzeit stehen beispielsweise „noisy intermediate scale“ Quantencomputer (NISQ) ohne Fehlerkorrektur und mit moderater Anzahl von Qubits (-100) zur Verfügung. Ein NISQ-Computer umfasst meist eine geringe Anzahl Qubits, beispielsweise kleiner gleich 1000 Qubits, insbesondere zwischen 50 bis zu einigen hundert Qubits. Viele derzeit verfügbare Quantencomputer, insbesondere NISQ-Computer, verfügen nur über eine eingeschränkte Konnektivität der physischen Qubits, d.h. nicht jedes physische Qubit kann mit jedem anderen physischen Qubit wechselwirken. In anderen Worten können Quantenoperationen, insbesondere 2-Qubit-Gatter, nur zwischen bestimmten physischen Qubits ausgeführt werden.
Um die korrekte Ausführung des logischen Quantenschaltkreises zu ermöglichen, ist daher zu beachten, dass wenn zwei logische Qubits miteinander wechselwirken sollen, d. h. Teil einer gemeinsamen Quantenoperation (z. B. einem 2-Qubit-Gatter) sein sollen, diese sich auch auf physischen Qubits befinden, die miteinander in Wechselwirkung treten können. Sollten sich während der Ausführung eines Quantenschaltkreises nach einer initialen Abbildung der logischen Qubits herausstellen, dass eine Wechselwirkung zwischen zwei logischen Qubits stattfinden soll, die sich aktuell nicht auf physischen Qubits befinden, die wechselwirken können, können durch eine oder mehrere SWAP- Operationen die Zustände von physischen Qubits getauscht werden, bis eine Wechselwirkung zwischen den logischen Qubits auch auf der physischen Plattform möglich ist.
Die Qubits einer realen physischen Quantencomputerplattform unterscheiden sich oft in ihrer Qualität, insbesondere in Bezug auf ihre Rauschanfälligkeit. In anderen Worten umfasst die Qubitanordnung einer realen physischen Quantencomputerplattform beispielsweise physische Qubits mit unterschiedlichem Güten (engl. fidelities). Insbesondere kann ein Schwellwert festgelegt werden, um anzugeben, welche Güten für das Ausführen des Quantenschaltkreises noch tolerierbar sind und um physische Qubits mit geringer Güte zu ermitteln, welche vorzugsweise beim Ausführen des Quantenschaltkreises gemieden werden sollten.
Die Erfindung umfasst eine verbesserte Lösung zum Problem der Abbildung von logischen Quantenschaltkreisen auf Quantencomputer mit eingeschränkter Konnektivität, insbesondere NISQ-Computer. Insbesondere ermöglicht die Erfindung logische Quantenschaltkreise auf Quantencomputer mit eingeschränkter Konnektivität auszuführen und hierbei die Güten der Qubits derart zu berücksichtigen, dass das Erzeugen weniger fehlerbehafteter Ergebnisse auf dem Quantencomputer ermöglicht werden.
Die Erfindung betrifft ein Verfahren zur Bestimmung einer Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung mittels eines symbolischen Lösers, ein System, umfassend einen klassischen Computer und einen Quantencomputer, ein Computerprogrammprodukt und ein Verfahren zum Betreiben eines Quantencomputers.
Algorithmen und Anwendungen, die quantenmechanische Ressourcen nutzen, können einfach und effizient in der Sprache von logischen Quantenschaltkreisen geschrieben werden. Ein Quantenschaltkreis ist eine Rechenroutine, die aus kohärenten Quantenoperationen aufgebaut ist. Jede horizontale Linie oder Draht in einer Quantenschaltung stellt ein Qubit dar, wobei das linke Ende des Drahtes die ursprünglichen Quantendaten darstellt und das Rechte die endgültigen Quantendaten, die durch die Berechnung des Quantenschaltkreises erzeugt werden. Operationen auf Qubits werden durch Boxen dargestellt, die auf diesen Drähten platziert werden. Quantengatter sind die elementaren Operationen, die ein Quantencomputer auf seinen Qubits durchführen kann. Sie sind vergleichbar mit elektronischen Gattern, welche die elementaren Operationen eines klassischen Computers durchführen. Ein Quantengatter arbeitet jedoch mit quantenmechanischen Systemen wie beispielsweise dem Spin.
Quantenoperationen werden mathematisch durch Matrixmultiplikation mit unitären Matrizen realisiert. Unitäre Matrizen sind stets umkehrbar und somit können aus den Ausgabewerten eines Schaltkreises die Eingabewerte rekonstruiert werden. Für Quantengatter, die auf zwei Qubits arbeiten (2-Qubit- Gatter), ist eine Wechselwirkung zwischen den fraglichen physischen Qubits erforderlich. Bei Spin-Qubits kann dies unter anderem über die Austauschwechselwirkung geschehen. Atome in einer lonenfalle können beispielsweise Photonen austauschen. Bei Qubits basierend auf supraleitenden Schaltkreisen kann die Manipulation dieser Qubits über beispielsweise die angelegte Spannung, das Magnetfeld oder über die Kopplung an Mikrowellenresonatoren erfolgen. Quantencomputer, die mittels Quantenschaltkreisen programmiert werden, können im Prinzip aus jeder Quantentechnologie konstruiert werden, wenn diese Single- und Multi-Qubit-Gatter-Operationen realisieren kann. Derzeit werden aktiv Architekturen entwickelt, die beispielsweise auf superleitenden Schaltkreisen, lonenfallen, Halbleiterquantenpunkten, Photonen und neutralen Atomen basieren. Ein Quantencomputer umfasst eine Qubitanordnung, wobei die Qubitanordnung mehrere physische Qubits umfasst, welche vorzugsweise mittels entsprechend an die Technologie, mit der die Qubits realisiert sind, angepassten Vorrichtungen oder Einheiten zum Initialisieren (z. B. Initialisieren des Qubits in einem Basiszustand), zum Manipulieren (z. B. Anwenden von 1 -Qubit- und/oder 2-Qubit-Gattern) und/oder zum Auslesen der physischen Qubits versehen sein können.
Es existieren exakte Methoden/Lösungsansätze, welche die Optimalität einer Lösung des Abbildungsproblems garantieren bzw. beweisen können. Beispielsweise existieren Ansätze auf Basis eines pseudo-booleschen Entscheidbarkeitslöser (engl. Pseudo-Boolean satisfiability solver, PB-SAT solver) und eines Anwortmengenlöser (engl. answer set solver) aus der Domäne der Antwortmengenprorammierung (engl. answer set programming (ASP)).
Ein Vorteil der Erfindung mit den Merkmalen der unabhängigen Patentansprüche ist, dass eine verbesserte Lösung zur Reduzierung oder Vermeidung von Fehlern durch Rauschen bzw. verrauschte physische Qubits bei der Ausführung von Quantenalgorithmen auf Quantencomputern bereitgestellt werden kann.
Durch das vorliegende Verfahren wird es ermöglicht, logische Quantenschaltkreise auf Quantencomputer mit eingeschränkter Konnektivität auszuführen, welche die heterogene Rauschanfälligkeit der physischen Qubits berücksichtigt. Das Verfahren ermöglicht somit die Nutzbarmachung von Hardware, die zunächst nicht oder nur sehr eingeschränkt anwendbar ist.
Dies wird erreicht mit einem Verfahren nach Anspruch 1 zur Bestimmung einer Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung, umfassend eine Anzahl von physischen Qubits, mittels eines symbolischen Lösers. Ein symbolischer Löser ist ein Computerprogramm, das ein Erfüllbarkeits- oder Optimierungsproblem, formuliert in einer geeigneten Modellierungssprache (z.B. boolsche Variablen und aussagelogischen Formeln) (optimal) löst oder beweist das es keine gültige Lösung existiert. Die Abbildung des logischen Quantenschaltkreises auf die Qubitanordnung umfasst insbesondere eine initiale Abbildung des logischen Quantenschaltkreises auf die Qubitanordnung und einen ausführbaren Quantenschaltkreis.
Der ausführbare Quantenschaltkreis berücksichtigt die unterschiedlichen Güten der physischen Qubits, sowie beispielsweise durch das Einführen von SWAP- Operationen (SWAP-Gattern), die eingeschränkte Konnektivität der physischen Qubits der Hardware (Qubitanordnung des Quantencomputers). Diese Konnektivität der physischen Qubits wird durch einen hardwarespezifischen Konnektivitätsgraphen dargestellt. Insbesondere sind im ausführbaren Quantenschaltkreis die Operationen für die einzelnen physischen Qubits dargestellt (insbesondere entspricht jede horizontale Linie einem physischen Qubit, wobei im logischen Quantenschaltkreis vorzugsweise jede horizontale Linie einem logischen Qubit zugeordnet ist), wohingegen im logischen Quantenschaltkreis die Operationen für die einzelnen logischen Qubits dargestellt sind.
Das Verfahren nach Anspruch 1 umfasst die nachfolgenden Schritte:
• Bereitstellen von Eingabedaten, umfassend:
- einen hardwarespezifischen Konnektivitätsgraphen der physischen Qubits, den logischen Quantenschaltkreises und initiale Nebenbedingungen der physischen Qubits. Der Konnektivitätsgraph umfasst insbesondere Informationen über die Anzahl physischer Qubits, sowie deren Konnektivität. In anderen Worten umfasst der Konnektivitätsgraph Informationen darüber, welche physischen Qubits mit welchen anderen physischen Qubits wechselwirken können. Das Bereitstellen des hardwarespezifischen Konnektivitätsgraphen der physischen Qubits, des logischen Quantenschaltkreises und/oder der initialen Nebenbedingungen kann insbesondere durch Eingabe, durch Datenübermittlung bzw. kabellosen oder kabelgebundenen Datenübertragung oder durch Abrufen, beispielsweise aus einer Datenbank, einer bezüglich der das Verfahren ausführenden Vorrichtung (beispielsweise klassischer Computer) internen und/oder externen Speichervorrichtung (Cloud) erfolgen. Durch das Bereitstellen des hardwarespezifischen Konnektivitätsgraphen der physischen Qubits, des logischen Quantenschaltkreises und der initialen Nebenbedingungen werden insbesondere die für das Verfahren erforderlichen Informationen bezüglich der physischen Qubits, deren Konnektivität und sowie der anzuwendenden Quantenoperationen verfügbar gemacht. Insbesondere werden die physischen Qubits im hardwarespezifischen Konnektivitätsgraphen als Knoten dargestellt und Knoten physischer Qubits, die dazu eingerichtet sind miteinander wechselzuwirken, sind im hardwarespezifischen Konnektivitätsgraphen insbesondere durch Kanten miteinander verbunden.
Initiale Nebenbedingungen können insbesondere Informationen darüber umfassen, welche physischen Qubits bei der Ausführung des Quantenschaltkreises bevorzugt genutzt oder bevorzugt ungenutzt bleiben sollen. Diese Informationen können beispielsweise ermittelt werden, indem eine Testroutine auf dem Quantencomputer ausgeführt werden, die jedes physische Qubit charakterisiert. Das Ergebnis der Testroutine kann zur Erstellung der initialen Nebenbedingungen verwendet werden. Die erhaltene Charakterisierung kann beispielsweise entsprechend bevorzugter Kriterien/Metriken sortiert werden. Insbesondere werden durch initiale Nebenbedingungen keine physischen Qubits gänzlich bei der Ermittlung eines ausführbaren Quantenschaltkreises aus dem logischen Quantenschaltkreis ausgeschlossen, vielmehr dienen sie dazu, die Verwendung von physischen Qubits mit ungünstigeren Eigenschaften (z. B. stärker rauschbehaftete Qubits als andere physische Qubits der Qubitanordnung) zu vermeiden oder zumindest zu reduzieren, wo dies möglich ist. Insbesondere ist es mittels der initialen Nebenbedingungen möglich die Verwendung von weniger rauschbehafteten Qubits zu fördern, sodass beim Ausführen des Quantenschaltkreises die Fehleranfälligkeit gegenüber der Verwendung aller physischen Qubits unabhängig von ihrem Rauschverhalten, reduziert werden kann.
• Erstellen einer Aufgabe zur Abbildung des logischen Quantenschaltkreises auf die Qubitanordnung in einer Modellierungssprache des symbolischen Lösers. Insbesondere werden hierbei symbolische Variablen (im Folgenden auch kurz: Variablen genannt), welche vorzugsweise eine Belegung der physischen Qubits kodieren, und symbolische Ausdrücke, in Abhängigkeit der symbolischen Variablen, definiert. Insbesondere umfasst die Aufgabe mindestens eine aussagenlogische Formel, welche die Eingabedaten berücksichtigt. Es wird dann nach einer Belegung der an der mindestens einen aussagenlogischen Formel beteiligten Variablen mit den Werten wahr oder falsch gesucht, sodass die aussagenlogische Formel zu wahr ausgewertet wird. Eine aussagenlogische Formel besteht aus Variablen, Klammern und den aussagenlogischen Verknüpfungen Konjunktion („und“, oft notiert mit A), Disjunktion („oder“, v), Negation („nicht“, -1). Insbesondere kann das Erstellen der Aufgabe durch Bereitstellen, insbesondere durch Eingabe, Datenübermittlung, etc., der Aufgabe in der Modellierungssprache des symbolischen Lösers erfolgen. Insbesondere kann ein Nutzer die Aufgabe in die Modellierungssprache des symbolischen Lösers übertragen und für das Verfahren bereitstellen.
Das Erstellen der Aufgabe umfasst des Weiteren ein Erstellen von Randbedingungen basierend auf dem hardwarespezifischen Konnektivitätsgraphen und dem logischen Quantenschaltkreis, wobei die Aufgabe mehrere Variablen umfasst, wobei die Variablen eine Kodierung einer Belegung der physischen Qubits repräsentieren; In anderen Worten wird die aussagenlogische Formel insbesondere auf Basis des Konnektivitätsgraphen und des logischen Quantenschaltkreises erstellt, da diese die Möglichkeiten der Verwendung der physischen Qubits beschränken. Insbesondere kann die Aufgabe als SAT-Problem (=engl. Boolean satisfiability problem) formuliert werden. Das Erfüllbarkeitsproblem (SAT-Problem) umfasst insbesondere, eine zufriedenstellende Zuordnung für eine gegebene Formel in konjunktiver Normalform (CNF) zu finden.
• Ausführen der nachfolgend aufgezählten Schritte 1) bis 3), bis alle Variablen belegt sind. In anderen Worten sind die Variablen insbesondere zunächst nicht belegt oder zumindest unabhängig von den Eingabedaten belegt. Vorzugsweise werden die Variablen mit beliebigen Werten initialisiert, welche den „unbelegten Zustand“ der Variablen repräsentieren. Insbesondere basieren die nachfolgenden Schritte auf dem Konzept des konfliktgesteuerten Nebenbedingungen Lernens (engl. conflict-driven constraint learning (CDCL)). Allerdings wird gemäß Anspruch 1 hierbei zusätzlich Domänenwissen (insb. Wissen über das Rauschverhalten der jeweiligen physischen Qubits) eingesetzt, wodurch diese im Grundsatz erstmal nicht-deterministische Subroutine deterministisch wird. Ausgangspunkt ist hier vom Anwender formuliertes Domänenwissen (im vorliegenden Fall, welche physischen Qubits vorzugsweise nicht benutzt werden sollten und/oder welche physischen Qubits vorzugsweise benutzt werden sollen), welches insoweit berücksichtigt wird, dass es in keinem Konflikt zu anderen (gelernten) Konflikt-Nebenbedingungen des zu Grunde liegenden Abbildungsproblems stehen darf.
1) Initiale Belegung mindestens einer der Variablen des symbolischen Lösers
■ unter Einhaltung der Randbedingungen; In den Randbedingungen ist insbesondere kodiert, welche physischen Qubits miteinander wechselwirken können und welche Operation gemäß dem logischen Quantenschaltkreis ausgeführt werden soll.
■ unter Einhaltung von Konflikt-Nebenbedingungen, wobei die Konflikt- Nebenbedingungen keine Nebenbedingung, eine Nebenbedingung oder mehr als eine Nebenbedingung umfassen kann. Die Einhaltung der Konflikt- Nebenbedingungen hat Priorität gegenüber der Einhaltung der initialen Nebenbedingungen.
■ unter Einhaltung der initialen Nebenbedingungen der physischen Qubits, sofern die initialen Nebenbedingungen der physischen Qubits mit den Randbedingungen und Konflikt-Nebenbedingungen vereinbar sind, wobei die initialen Nebenbedingungen insbesondere mindestens eine initiale Nebenbedingung umfasst;
Bei der Belegung der ersten Variablen gibt es normalerweise noch keine Konflikt- Nebenbedingungen. Diese ergeben sich, wenn überhaupt, erst bei der Belegung weiterer Variablen, insbesondere, wenn eine bereits belegte Variable zum Erfüllen einer ersten Aussage (d.h., dass eine Aussage zu wahr ausgewertet wird) mit „wahr“ und zum Erfüllen einer weiteren Aussage mit „falsch“ belegt werden müsste. Die initialen Nebenbedingungen, welche Informationen darüber umfassen, ob das jeweilige physische Qubit bevorzugt bei der Ausführung des Quantenschaltkreises genutzt oder nicht genutzt werden soll, können verworfen werden (in anderen Worten: werden nicht berücksichtigt), wenn eine Konflikt- Nebenbedingung dies fordert. In anderen Worten hat die Einhaltung der initialen Nebenbedingungen gegenüber der Einhaltung der Konflikt-Nebenbedingungen eine geringere Priorität.
2) Bestimmung eines Implikationsgraphen für die initiale Belegung der mindestens einen Variablen unter Berücksichtigung der Eingabedaten; In diesem Schritt wird anhand der mindestens einen aussagelogischen Formel der Aufgabe eine weitere Variable in Abhängigkeit der Belegung der initial belegten Variablen belegt. In anderen Worten wird vorzugsweise mindestens eine aussagelogischen Formel aus der Aufgabe verwendet, um eine weitere Variable derart festzulegen, dass die aussagelogische Formel, welche von diesen Variablen abhängt, zu „wahr“ ausgewertet wird.
3) Überprüfen, ob ein Abbruchkriterium erfüllt ist; Insbesondere kann es im Schritt 2) dazu kommen, dass einer Variablen beim Erstellen des Implikationsgraphen ein erster Wert zugeordnet wird, beispielsweise „wahr“ und aufgrund einerweiteren aussagelogischen Formel der Aufgabe die Variable mit dem entsprechend anderen Wert, also hier „falsch“, belegt werden müsste. Liegt eine solche widersprüchliche Doppelbelegung einer Variablen vor, so ist das Abbruchkriterium erfüllt. Wird die Variable aufgrund weiterer aussagelogischer Formeln der Aufgabe mit einem konsistenten Wert (beispielsweise immer „wahr“) belegt, so ist das Abbruchkriterium nicht erfüllt und das Verfahren kann mit Schritt 1) für eine weitere unbelegte Variable fortgeführt werden.
■ Ist das Abbruchkriterium nicht erfüllt: Wiederholen der Schritte 1) und 3) für ein weitere Variable;
■ Ist das Abbruchkriterium erfüllt:
• Bestimmen einer Konflikt-Nebenbedingung aus der Belegung der Variablen, welche zum Erfüllen des Abbruchkriteriums führte; Insbesondere kann aus den aussagelogischen Formeln, deren Auswertung zu „wahr“ den Konflikt verursachte, eine Konflikt-Nebenbedingung abgeleitet werden und diese der Aufgabe hinzugefügt werden, sodass beim nächsten Durchlauf der Schritte 1) bis 3) diese Konflikt-Nebenbedingung bei der Belegung der Variablen berücksichtigt wird.
• Hinzufügen der Konflikt-Nebenbedingung zur Aufgabe;
• Rückkehr zu Schritt 1) der initialen Belegung der ersten an der Erfüllung des Abbruchkriteriums beteiligten Variablen; Vorzugsweise wird zu einem Punkt im Ablauf der Belegung zurückgekehrt, der zu dem Konflikt führte. Die Belegung aller nach diesem Punkt belegten Variablen wird verworfen und neu unter Berücksichtigung der Konflikt-Nebenbedingung vergeben.
• Bereitstellen der Belegung der Variablen für die Abbildung der logischen Qubits auf die physischen Qubits der Qubitanordnung; Insbesondere erfolgt das Bereitstellen durch Speichern auf einem internen Datenspeicher und/oder externen Datenspeicher (z. B. Cloud), durch Datenübermittlung bzw. kabellosen oder kabelgebundenen Datenübertragung, etc. • Bestimmen und Bereitstellen einer initialen Abbildung der logischen Qubits auf die physischen Qubits der Qubitanordnung und eines ausführbaren Quantenschaltkreises aus der Belegung der Variablen. Insbesondere erfolgt in diesem Schritt das Bestimmen durch Dekodieren der Variablen. Insbesondere wird aus der Belegung der Variablen die Abbildung der physischen Qubits ermittelt. Insbesondere kann ein Bereitstellen der Abbildung durch Speichern auf einem internen Datenspeicher und/oder externen Datenspeicher (z. B. Cloud), durch Datenübermittlung bzw. kabellosen oder kabelgebundenen Datenübertragung, etc. erfolgen.
Vorteilhafterweise lässt sich das vorgeschlagene Verfahren bei allen symbolischen Methoden, die eine Unterroutine aufweisen, die nichtdeterministischen (booleschen) Variablen einen initialen Wert zuweisen, anwenden. Das umfasst die Methoden die Probleme der Entscheidungslogik (engl. Statisfiablility, SAT, SAT solver) oder Entscheidungslogik modulo anderer Theorien (engl. Satisfiability modulo theories, SMT) lösen.
Insbesondere umfasst das Verfahren das Ausführen des symbolischen Lösers.
Da das konfliktgetriebene Nebenbedingungen lernen (engl. conflict-driven constraint learning (CDCL)) eine performante und gängige Standardtechnik in symbolischen Lösern ist, setzt unsere Lösung an der „entscheide“ / „decide“ Subroutine an. Ein beispielhafter Algorithmus des „konfliktgetriebenen Nebenbedingungen Lernens“ (oder im Englischen „CDCL“), ist hier beigefügt. Das beschriebene Verfahren setzt an dieser „entscheide“ / „decide“ Subroutine an: loop propagate //computer deterministic consequences if no conflict then if all variables assigned then return variable assignment else decide //non-deterministically assign some literal else if top-level conflict then return unsatisfiable else analyze //analyze conflict and add a conflict constraint backjump //undo assignments until conflict constraint is unit
Letztlich ermöglicht das in Anspruch 1 beschriebene Verfahren Folgendes: Wenn es keine Induktion/Beweisführung gibt, dass die nicht-bevorzugten (fehleranfälligen) Qubits genutzt werden müssen, um den Quantenschaltkreis abzubilden, dann sollen diese auch nicht genutzt werden. Ein wesentlicher Vorteil ist weniger Rauschen bei der Ausführung des Quantenschaltkreises. Weiter kann auch mit Hilfe des Domänenwissen ein schnelleres Lösen des Abbildungsproblems vom Logiklöser ermöglicht werden.
In dem in Anspruch 1 beschriebenen Verfahren findet immer dann eine deterministische Auswahl und Belegung von Variablen auf Grundlage des Domänenwissen statt (das wir aus z.B. aus Charakterisierungen des Quantencomputer haben), sofern dies für spezifische Variablenbelegungen vorhanden ist.
In anderen Worten werden in dem Verfahren der logische Quantenschaltkreis und der Konnektivitätsgraph der Quantencomputer-Plattform, sowie eine Auflistung von Qubits die nicht genutzt werden sollen (z. B. aus einer Testroutine, mit der der Quantencomputer charakterisiert wurde) als Eingabedaten bereitgestellt. Die Eingabedaten werden genutzt, um ein Problem in der Sprache eines beliebigen symbolischen Lösers zu erstellen (z. B. SAT/SMT Löser oder Antwortmengenlöser). Sobald im Lösungsvorgang des symbolischen Lösers die initiale Belegung von Variablen entschieden werden soll (z. B., wenn der Löser mit CDCL arbeitet in der decide Subroutine) wird anstelle einer nichtdeterministischen Belegung das in den Eingabedaten enthaltende präferierte Wissen bzw. letztlich die präferierte nicht-Belegung genutzt. Anschaulich würde das für unsere vorgeschlagene Lösung heißen, dass boolesche Variablen, die die Belegung eines verrauschten physischen Qubits kodieren, vorzugsweise nicht so belegt werden, dass ein logisches Qubit diesem verrauschten Qubit in der finalen Abbildungslösung (inkl. der Berücksichtigung von SWAPs, welche im ausführbaren Quantenschaltkreis ggf. ergänzt werden, um logische Qubits zu miteinander wechselwirkenden physischen Qubits zu transportieren, wenn sie an einer gemeinsamen Quantenoperation beteiligt sind) zugewiesen wird. Das präferierte Wissen aus den Eingabedaten wird dabei aber nur genutzt, wenn es nicht in einem logischen Konflikt mit anderen bzw. im Rahmen des CDCL- Algorithmus gelernten Wissen steht. Die Ausgabe des Verfahrens umfasst eine Lösung des Abbildungsproblem bei dem verrauschte Qubits nicht genutzt werden (sofern dies in keinem weiteren logischen Widerspruch zu Problemstellung steht).
Gemäß einer Ausführungsform umfasst die initiale Nebenbedingung eines physischen Qubits Informationen über die Fehleranfälligkeit, insbesondere die Güte (engl. fidelity) des physischen Qubits. Insbesondere umfasst die initiale Nebenbedingung eine Information, ob das physische Qubit für die Belegung mit einem logischen Qubit freigegeben ist. Vorteilhafterweise kann so bei der Abbildung der logischen Qubits auf die physischen Qubits ein Verwenden rauschanfälliger Qubits reduziert bzw. vermieden werden.
Gemäß einer Ausführungsform ist das Abbruchkriterium erfüllt, wenn bei der Bestimmung des Implikationsgraphen ein Konflikt entsteht, insbesondere wenn eine bereits belegte Variable bei der Bestimmung des Implikationsgraphen mit einem davon abweichenden Wert belegt werden soll.
Gemäß einer Ausführungsform umfasst der hardwarespezifische Konnektivitätsgraph Knoten und Kanten, wobei die Knoten physische Qubits repräsentieren und Knoten physischer Qubits, die dazu eingerichtet sind miteinander wechselzuwirken, im hardwarespezifischen Konnektivitätsgraphen durch Kanten miteinander verbunden sind.
Gemäß einer Ausführungsform wird eine „Entscheide“-Unterroutine des symbolischen Lösers zur initialen Belegung der Variablen gemäß einem der vorstehenden Verfahren ausgeführt.
Das vorstehend beschriebene Verfahren stellt eine Lösung des Abbildungsproblems bereit, wobei die Rauschanfälligkeit der Qubits berücksichtigt wird. Wie bereits erwähnt, kann es abhängig vom logischen Quantenschaltkreis aufgrund der eingeschränkten Konnektivität der physischen Qubits erforderlich werden SWAP-Operationen im ausführbaren Quantenschaltkreis zu ergänzen. Eine SWAP-Operation ist dazu eingerichtet, die Zustände der zwei an einer Quantenoperation beteiligten Qubits miteinander zu vertauschen. Somit kann ein logisches Qubit zwischen physischen Qubits getauscht werden und somit zu einem physischen Qubit transportiert werden, welches mit dem weiteren an der Quantenoperation beteiligten physischen Qubit wechselwirken kann. Dadurch wird der Quantenschaltkreis auf der realen Plattform ausführbar. Ein Beispiel eines symbolischen Lösers ist ein Antwortmengenlöser (engl. answer set solver).
Das Verfahren kann insbesondere bei der Lösung von Aufgaben aus dem Bereich Materialentwicklung (Variational Hamiltonian Algorithm (VHA) oder binärer Optimierungsprobleme, beispielsweise per Quantum Approximate Optimization Algorithm (QAOA), eingesetzt werden.
Letztlich ist es das Ziel eine gültige Abbildung des logischen Quantenschaltkreises auf die physische Plattform (Qubitanordnung) zu finden, ggf. unter Anreicherung des ursprünglichen Schaltkreises (logischer Schaltkreis) durch SWAP-Operationen. Hier ist es vorteilhaft die Anzahl an SWAP- Operationen so gering wie möglich zu halten, um zum einen die Ausführung des Schaltkreises nicht zu verlangsamen und zum anderen die Wahrscheinlichkeit von Fehlern auf verrauschten Quantencomputern zu minimieren.
Gemäß einer Ausführungsform umfasst das Erstellen der Aufgabe ein Aufteilen des logischen Quantenschaltkreises in Abschnitte, wobei jeder Abschnitt eine Quantenoperation umfasst. Insbesondere werden die Abschnitte so gewählt, dass jedes logische Qubit an maximal einem 2-Qubit-Gatter oder maximal einem Multi-Qubit-Gatter beteiligt ist. 1-Qubit-Gatter spielen bei der Wahl der Abschnitte vorzugsweise keine Rolle, da sie unabhängig von der Konnektivität des physischen Qubits, auf das das logische Qubit im jeweiligen Abschnitt abgebildet ist, ausgeführt werden können und später einfach in die jeweiligen Abschnitte übernommen werden können. Des Weiteren umfasst das Erstellen der Aufgabe ein Kodieren der Aufteilung in einer Modellierungssprache des symbolischen Lösers. Beim Ermitteln des ausführbaren Quantenschaltkreises erfolgt das Belegen der Variablen für jeden Abschnitt und es werden die nachfolgenden Schritte für jeden Abschnitt des logischen Quantenschaltkreises ausgeführt. Dies erfolgt für jeden Abschnitt des logischen Quantenschaltkreises, beginnend mit dem ersten Abschnitt:
■ Überprüfen, ob die an der Quantenoperation des Abschnitts beteiligten, logischen Qubits auf physische Qubits abgebildet sind, die dazu eingerichtet sind miteinander wechselzuwirken. In anderen Worten umfasst dieser Schritt, eine Überprüfung, ob die Quantenoperation ausführbar ist. Falls ja, wird die Quantenoperation des Abschnitts ohne Änderung in den ausführbaren Quantenschaltkreis übernommen. Insbesondere falls ein Optimierungskriterium vorliegt, kann es sein, dass dennoch eine oder mehrere SWAP-Operationen eingefügt werden und folglich eine Anpassung der Zuordnung erfolgt, insbesondere wenn dadurch in einem der nachfolgenden Abschnitte SWAP- Operationen eingespart werden können. Die Zuordnung wird dann der nächsten Überprüfung zugrunde gelegt.
• Falls nein, werden die nachfolgenden Schritte ausgeführt:
1) Festlegen eines stationären Qubits aus den an der Quantenoperation des Abschnitts beteiligten logischen Qubits; Insbesondere verbleibt der Quantenzustand bei dem physischen Qubit, welches dem logischen Qubit, das als stationäres Qubit ausgewählt wurde, zugeordnet ist. In anderen Worten zeichnet sich das stationäre Qubit dadurch aus, dass es in diesem Abschnitt an keiner SWAP-Operation beteiligt wird.
2) Festlegen eines Senken-Qubits. Dieser Schritt kann analog zu Schritt 1) auch implizit erfolgen. D. h.: Wird bei einem 2-Qubit-Gatter ein Qubit als stationär ausgewählt, so ist automatisch das andere das Senken-Qubit, wird ein bei einem 2-Qubit-Gatter ein Qubit als Senke ausgewählt, so ist automatisch das andere das stationäre Qubit. Insbesondere ist das Senken-Qubit das an der auszuführenden Quantenoperation beteiligte logische Qubit, welches insbesondere durch Anwenden mindestens einer SWAP-Operation zu einem physischen Qubit transportiert werden soll, welches dazu eingerichtet ist mit dem physischen Qubit des stationären Qubits zu wechselwirken (d.h. auf ein physischen Qubit, welches im Konnektivitätsgraphen durch eine Kante mit dem physischen Qubit des stationären Qubits verbunden ist). Dieses Qubit ist die erste Senke. Der Start der Abfolge von SWAP-Operationen (das SWAPen) beginnt ausgehend von der Senke, wobei die Anzahl SWAP-Operationen derart gewählt wird, dass diese Qubit auf ein physisches Qubit zu bringen, welches dazu eingerichtet ist, mit dem stationären Qubit zu wechselwirken. 3) Anwenden einer SWAP-Operation auf das Senken-Qubit, wobei das logische Qubit des Senken-Qubits auf ein an der SWAP-Operation beteiligtes physisches Qubit übertragen wird, welches dann zum Senken-Qubit wird;
4) Übernehmen der SWAP-Operation in den ausführbaren Quantenschaltkreis;
5) Falls das stationäre Qubit und das Senken-Qubit nach Anwenden der SWAP-Operation nicht dazu eingerichtet sind miteinander wechselzuwirken, werden die Schritte 1) bis 4), vorzugsweise die Schritte 3) und 4), wiederholt, bis das Senken-Qubit auf ein physisches Qubit abgebildet ist, das dazu eingerichtet ist mit dem stationären Qubit wechselzuwirken; Insbesondere ist es wichtig nach Abschluss der SWAP-Operationen eine aktualisierte Abbildung zwischen logischen Qubits und physischen Qubits für den Schritt des Überprüfens zu verwenden. Denn dem logischen Quantenschaltkreis ist nur zu entnehmen, auf welchen logischen Qubits die vom nachfolgenden Abschnitt des logischen Quantenschaltkreis umfasste Quantenoperation durchgeführt werden soll. Die um die im vorherigen Abschnitt durchgeführten SWAP-Operationen erweiterte aktualisierte Abbildung gibt darüber Auskunft, ob die an der nun anstehenden Quantenoperation beteiligten, logischen Qubits physischen Qubits, die miteinander wechselwirken können, zugeordnet sind. D. h. beim Überprüfen, wird anhand der aktualisierten Abbildung überprüft, ob weitere SWAP-Operationen durchgeführt werden müssen oder ob der Abschnitt ohne Ergänzung von SWAP- Operationen in den ausführbaren Quantenschaltkreis übernommen werden kann und mit dem Überprüfen des nachfolgenden Abschnitts fortgefahren werden kann. Eine gültige Lösung liegt aber nur vor, wenn auch wirklich der nächsten Nachbarn des stationären Qubit erreicht wird. Das kann sichergestellt werden, indem Lösungen ausgeschlossen werden, deren SWAPs nicht bis zum stationären Qubit reichen (in der Modellierungssprache der Antwortmengenprogrammierung nennt man dies ein „integrity constraint“ (engl.)).
6) Anpassung der Abbildung der logischen Qubits auf die physischen Qubits; In anderen Worten erfolgt im Anschluss an die Berechnung der SWAP- Route eine Verwaltung der Abbildung, welche berücksichtigt, dass sich ggf. durch SWAP-Operationen die Zuordnung von logischen Qubits und physischen Qubits am Ausgang des Abschnitts gegenüber dem Eingang des Abschnitts geändert hat. Beispielsweise kann diese Verwaltung wie folgt aussehen:
• Das stationäre Qubit behält seine Zuweisung des logischen Qubits • Das SWAPende logische Qubit (Senken-Qubit) wird gemäß den SWAP- Operationen auf einem physischen nächsten-Nachbarn des stationären Qubit abgebildet
• Physische Qubits, die nicht durch SWAPs beeinflusst, werden „behalten“ ihre zugewiesenen logischen Qubits
• Für die Qubits, die durch SWAP-Operationen beeinflusst werden: Hier gilt es grob zwei Fälle zu unterscheiden: a) ein physisches Qubit, dem ein logische Qubit zugewiesen ist, ist Teil einer SWAP-Operation b) ein physisches Qubit ist initial nicht mit einem logischen Qubit belegt, ist jetzt aber Teil einer SWAP-Operation
• Fall (a): gemäß den berechneten SWAP-Operationen wird die Abbildung der involvierten logischen Qubits auf die physischen Qubit getauscht und somit die Abbildung angepasst.
• Fall (b): Das ist kein Hindernis, es sollte aber hinterlegt werden, dass die physischen Qubits, die kein logische Qubit zugewiesen haben, vor der Ausführung des finalen Schaltkreises (ausführbaren Schaltkreises) auf der realen Plattform auch einen gültigen quantenmechanischen Zustand haben (z.B. initialisiert als |0>). Wichtig ist das über diese Qubit Buch geführt wird, da sie auch weiter Teil von nachgelagerten/weiteren SWAP-Operationen sein können.
- Bereitstellen der initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises. In anderen Worten wird insbesondere eine initiale Abbildung der logischen Qubits auf die physischen Qubits bereitgestellt und auch ein um die hinzugefügten SWAP-Operationen ergänzten Schaltkreis für die physischen Qubits. Insbesondere erfolgt das Bereitstellen durch Speichern auf einem internen Datenspeicher und/oder externen Datenspeicher (z. B.
Cloud), durch Datenübermittlung bzw. kabellosen oder kabelgebundenen Datenübertragung, etc.
Ein Vorteil dieser Ausführungsform ist es, dass nicht nur ein ausführbarer Quantenschaltkreis, der das Verwenden verrauschter physischer Qubits wo möglich vermeidet, sondern dass zusätzlich eine bezüglich der Anzahl SWAP- Operationen optimierte Lösung ermittelt werden kann. In anderen Worten ermöglicht das Verfahren eine gültige Abbildung des logischen Quantenschaltkreises auf die physische Plattform (Qubitanordnung) zu finden, ggf. unter Anreicherung des ursprünglichen Schaltkreises (logischer Schaltkreis) durch SWAP-Operationen. Hier ist es vorteilhaft die Anzahl an SWAP- Operationen dabei so gering wie möglich zu halten, um zum einen die Ausführung des Schaltkreises nicht zu verlangsamen und zum anderen die Wahrscheinlichkeit von Fehlern auf verrauschten Quantencomputern zu minimieren. Besonders profitieren von dem Verfahren können insbesondere Aufgabenstellungen mit logischen Quantenschaltkreisen bei denen es zu vielen Wechselwirkungen zwischen (fast allen) Qubits kommt (z. B. jedes Qubit mit jedem Qubit und die Hardwareplattform noch eingeschränkt in der Konnektivität ist).
Insbesondere kann das Verfahren zur Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung derart gestaltet sein, dass die Verfahrensschritte zur Berechnung exakter Abbildungslösungen einen Anwortmengenlöser (engl. answer set solver) aus der Domäne der Antwortmengenprorammierung (engl. answer set programming) nutzen können. Dadurch kann eine verbesserte Skalierbarkeit bei wachsenden zu lösenden Probleminstanzen erreicht werden. Durch Aufbereitung des Verfahrens zur Nutzbarmachung von Antwortmengenlösern, wird vorteilhafterweise ausgenutzt, dass die Antwortmengenprogrammierung im Gegensatz zu pseudo-booleschen Entscheidbarkeit besser skaliert für Plattformen die eine hohe/dichte Konnektivität im Konnektivitätsgraph aufweisen (engl. densely connected architectures). Gängige Quantencomputer, wie z.B. Google's Sycamore Quantencomputer, weisen eine dichte Konnektivität durch ihre gitter-basierte Topologie auf und können somit vom Einsatz der Antwortmengenprogrammierung profitieren.
Ein Vorteil der Nutzung der Antwortmengenprogrammierung ist es, dass Eigenschaften wie Erreichbarkeit (engl. reachability) direkt in der Modellierungssprache beschrieben werden können. Die Formulierung von Erreichbarkeit wird eingesetzt für die Berechnung der Abfolge von SWAP- Operationen um zwei Qubits örtlich lokal zusammen zu bringen, sodass eine Wechselwirkung möglich ist. Die Kodierung der Erreichbarkeit wird vorzugsweise so erstellt werden das der nächste Nachbar im Wechselwirkungsgraphen des physischen Ziel-Qubits durch SWAP-Operationen erreicht wird. Zudem wird dynamisch eine neue (Zwischen)Abbildung von logischen Qubits erzeugt und verwaltet, sobald SWAP-Operationen ausgeführt werden. Eine neue Abbildung von mehr physischen Qubits als im eigentlichen logischen Schaltkreis kann hierbei vorkommen. Diese Umgruppierung wird dann weiter bei den nachfolgenden SWAP-Operationen beachtet. Weiter sei angemerkt, dass die Kosten für eine „Permutation“ von Qubits (was dem Einfügen von SWAP- Operationen nach jeder 2-Qubit-Gateoperation (Quantenoperation) entspricht) nicht statisch vorberechnet wird. In unserer vorgeschlagenen Lösung ist die Berechnung der Permutationen bzw. der Abfolge der SWAP Operationen Teil der Methode. Dies bringt zusätzlich den Vorteil das auch zusätzlich Nebenbedingungen berücksichtigt werden können, z.B. das bestimmte physische Qubits nicht „geswapt“ werden dürfen. Berücksichtigt man, dass man diese Permutation nicht vorberechnen möchte und man Abbildungen finden und beweisen will, die keine/wenige SWAPs benötigen, so skaliert die von uns vorgeschlagene Lösung sehr gut im Gegensatz zu Lösungen, welche die Kosten statisch vorberechnen.
Insbesondere kann das Erstellen der Aufgabe ein Initiales Abbilden der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung umfassen. Vorzugsweise können die logischen Qubits derart den physischen Qubits zugeordnet werden, dass die Quantenoperation des ersten Abschnitts, d. h. des Abschnitts, der die erste Quantenoperation umfasst, insbesondere das von dieser umfasste 2-Qubit-Gatter (2-Qubit-lnteraktion), ohne Vertauschen (SWAPen, d. h. Anwenden zusätzlicher, nicht im logischen Quantenschaltkreis enthaltener SWAP-Operationen) ausgeführt werden kann. Insbesondere werden sie im Konnektivitätsgraph als nächster-Nachbar platziert. Gibt es hier mehrere Möglichkeiten so kann das Verfahren für alle diese Möglichkeiten durchgeführt werden und für jede Möglichkeit ein ausführbarer Quantenschaltkreis bestimmt werden, wobei vorzugsweise der ausführbare Quantenschaltkreis mit der geringsten Anzahl SWAP-Operationen für das Ausführen auf dem Quantencomputer, umfassend die dem Verfahren zugrundeliegende Qubitanordnung, ausgewählt werden kann. Der erste Abschnitt wird vorzugsweise so gewählt, dass jedes logische Qubit des logischen Quantenschaltkreises an einer oder keiner Multi- bzw. 2-Gatter-Operation beteiligt ist. Zunächst wird jedoch eine Abbildung gewählt, wobei bei der Zuordnung der logischen und physischen Qubits die nachfolgenden Kriterien berücksichtigt werden:
• jedem logischen Qubit wird genau ein physisches Qubit zugeordnet und • jedem physischen Qubit wird maximal ein logisches Qubit zugeordnet; d.h. insbesondere dürfen einem physischen Qubit nicht zwei oder mehr logische Qubits zugewiesen werden. Dieses letzte Kriterium umfasst insbesondere den Fall, dass die Qubitanordnung mehr physische Qubits als logische Qubits umfasst. In diesem Fall wird beim initialen Abbilden nicht jedem physischen Qubit ein logisches Qubit zugeordnet, jedoch können im weiteren Verfahren physische Qubits, denen zuvor kein logisches Qubit zugeordnet war, Teil einer SWAP- Operation werden. In diesem Fall sollte hinterlegt werden, dass die physischen Qubits, denen initial kein logisches Qubit zugewiesen wurde, vor der Ausführung des finalen (ausführbaren) Quantenschaltkreises auf der realen Plattform (Quantencomputer) auch einen gültigen quantenmechanischen Zustand haben (z.B. initialisiert als |0>). Wichtig ist, dass über diese physischen Qubits, denen bei der initialen Abbildung kein logisches Qubit zugeordnet wird, Buch geführt werden sollte, da sie auch weiter Teil von nachgelagerten/weiteren SWAP- Operationen sein können. Bei jeder Belegung der physischen Qubits wird gemäß der eingangs beschriebenen „Entscheide“ Routine ein Belegen physischer Qubits mit Güten unterhalb eines festgelegten Schwellwerts vermieden.
Gemäß einer Ausführungsform umfasst das Erreichbarkeitskriterium einen Ausschluss von Lösungen, bei denen es nicht möglich ist, die an der Quantenoperation des Abschnitts beteiligten logischen Qubits, insbesondere auch nicht durch Anwenden von SWAP-Operationen, auf physische Qubits abzubilden, die dazu eingerichtet sind, miteinander wechselzuwirken.
Gemäß einer Ausführungsform wird beim Ermitteln des ausführbaren Quantenschaltkreises eine Optimierung nach der Anzahl SWAP-Operationen durchgeführt. Ohne Optimierungsanweisungen werden bei dem Verfahren bzw. von dem symbolischen Löser erstmal nur eine gültige Lösung, die zwar die Verwendung rauschanfälliger physischer Qubits vermeidet und korrekt ist, aber ggf. zu viele SWAP-Operationen aufweist, ermittelt. Eine Möglichkeit ist es sich alle möglichen gültigen Lösungen ausgeben zu lassen und dann die Lösung auszuwählen, die insgesamt am wenigsten SWAP-Operationen aufweist.
Gemäß einer Ausführungsform wird das vorstehend beschriebene Verfahren mehrfach ausgeführt, wobei mehrere gültige Lösungen, umfassend jeweils die initiale Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und den zugehörigen ausführbaren Quantenschaltkreis, bereitgestellt werden und in einem weiteren Verfahrensschritt aus den mehreren gültigen Lösungen die Lösung, deren ausführbarerer Quantenschaltkreis die geringste Anzahl SWAP-Operationen aufweist, für die Ausführung auf einem Quantencomputer, umfassend die Qubitanordnung und die hardwarespezifische Konnektivität der physischen Qubits gemäß dem hardwarespezifischen Konnektivitätsgraphen, bereitgestellt wird.
Gemäß einer Ausführungsform werden bei der initialen Abbildung, die an der Quantenoperation des ersten Abschnitts beteiligten, logischen Qubits auf physische Qubits abgebildet, welche dazu eingerichtet sind miteinander wechselzuwirken. Dadurch kann vorteilhafterweise die Anzahl SWAP- Operationen reduziert werden.
Ein System, umfassend
• einen klassischen Computer zur Bereitstellung der initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises, gemäß dem vorstehend beschriebenen Verfahren und
• einen Quantencomputer, insbesondere ein NISQ-Computer, umfassend die Qubitanordnung und eine hardwarespezifische Konnektivität der physischen Qubits gemäß dem hardwarespezifischen Konnektivitätsgraphen, der bei dem Verfahren verwendet wird, zur Ausführung des logischen Quantenschaltkreises unter Verwendung der von dem klassischen Computer bereitgestellten initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des von dem klassischen Computer bereitgestellten ausführbaren Quantenschaltkreises, weist Vorteile auf, die sich aus den Vorteilen des ausgeführten Verfahrens ergeben, insbesondere ermöglicht das System eine gut skalierende, effiziente Möglichkeit einem Quantencomputer eine initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises bereitzustellen und auf dem Quantencomputer auszuführen. Insbesondere wird vorteilhafterweise ein optimierter ausführbarer Quantenschaltkreis ermittelt, welcher die Fehleranfälligkeit durch das Vermeiden des Einfügens unnötiger SWAP- Operationen, reduziert und somit eine zuverlässigere und robustere Funktionsweise des Quantencomputers ermöglicht.
Unter einem klassischen Computer wird hierbei sehr allgemein eine Vorrichtung verstanden, welche mittels programmierbarer Rechenvorschriften Daten verarbeiten kann und welche sich zur Ausführung des vorstehend beschriebenen Verfahrens, insbesondere zur Abbildung eines logischen Quantenschaltkreises auf die Qubitanordnung eines Quantencomputers, eignet.
Die Vorteile eines Computerprogrammprodukt, umfassend Befehle, insbesondere in der Modellierungssprache eines symbolischen Lösers, insbesondere eines Antwortmengenlösers, verfasste Befehle, die bewirken, dass der klassische Computer des Systems die Verfahrensschritte des vorstehend beschriebenen Verfahrens ausführt, ergeben sich aus den zuvor genannten Vorteilen.
Ein klassischer Computer zur Ausführung des vorstehend beschriebenen Verfahrens zur Abbildung eines logischen Quantenschaltkreises auf die Qubitanordnung eines Quantencomputers, insbesondere eines NISQ- Computers, umfassend die dem Verfahren zugrunde gelegte Qubitanordnung mit eingeschränkter Konnektivität der physischen Qubits, die durch den hardwarespezifischen Konnektivitätsgraphen beschrieben wird, weist Vorteile auf, die sich aus den Vorteilen des ausgeführten Verfahrens ergeben, insbesondere ermöglicht er eine gut skalierende, effiziente Möglichkeit einem Quantencomputer eine initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises bereitzustellen. Ein Verfahren zum Betreiben eines Quantencomputers, umfassend eine Qubitanordnung, aufweisend physische Qubits und eine hardwarespezifische Konnektivität der physischen Qubits, insbesondere eines Quantencomputers des vorstehend beschriebenen Systems, welches die nachfolgenden Schritte aufweist:
• Bereitstellen der Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises, gemäß dem vorstehend beschriebenen Verfahren;
• Initialisieren des Quantencomputers, umfassend das initiale Abbilden der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung des Quantencomputers;
• Ausführen des ausführbaren Quantenschaltkreises auf dem Quantencomputer; ist vorteilhafterweise besonders effizient, da der Abbildung ein gut skalierendes, effizientes Verfahren zugrunde liegt, wie dies vorstehend beschrieben ist.
Weitere Vorteile ergeben sich aus den vorgenannten Vorteilen des Verfahrens.
Kurze Beschreibung der Zeichnungen
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden in der nachfolgenden Beschreibung näher erläutert. Gleiche Bezugszeichen in den Figuren bezeichnen gleiche oder gleichwirkende Elemente.
Es zeigen
Fig. 1 eine Darstellung eines hardwarespezifischen Konnektivitätsgraphen einer Qubitanordnung, umfassend acht Qubits gemäß einem Ausführungsbeispiel,
Fig. 2 eine Darstellung eines logischen Quantenschaltkreises, umfassend vier logische Qubits gemäß einem Ausführungsbeispiel, Fig. 3 ein Flussdiagramm eines Verfahrens zur Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung, umfassend eine Anzahl physischer Qubits, gemäß einem Ausführungsbeispiel;
Fig. 4 ein Flussdiagramm eines Teils des Verfahrens aus Fig. 3 zur Ermittlung eines ausführbaren Quantenschaltkreises gemäß einem Ausführungsbeispiel, Fig. 5 eine Darstellung einer initialen Abbildung der logischen Qubits auf die physischen Qubits der Qubitanordnung gemäß einem Ausführungsbeispiel, Fig. 6 eine Darstellung eines ausführbaren Quantenschaltkreises, umfassend vier physische Qubits gemäß einem Ausführungsbeispiel,
Fig. 7 eine schematische Skizze eines Systems, umfassend einen klassischen Computer und einen Quantencomputer gemäß einem Ausführungsbeispiel, und Fig. 8 ein Flussdiagramm eines Verfahrens zum Betreiben eines Quantencomputers.
Ausführungsbeispiele der Erfindung
In Fig. 1 ist ein Beispiel eines hardwarespezifischen Konnektivitätsgraphen 102 einer Quantencomputerplattform dargestellt. Der Quantencomputer umfasst acht physische Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, welche in dem Konnektivitätsgraphen 102 auf einem Kreis als Knoten dargestellt sind und welche über ringförmig angeordnete Kanten 1020 miteinander verbunden sind. Eine Kante 1020 verbindet immer zwei physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 und symbolisiert eine mögliche Wechselwirkung zwischen diesen physischen Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, insbesondere zeigt die Kante 1020 an, dass eine 2-Qubit-Gatter-Quantenoperation auf den durch die Kante 1020 verbundenen Qubits durchgeführt werden kann. Physische Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, welche nicht durch eine Kante 1020 verbunden sind, können nicht wechselwirken, d. h. insbesondere kann keine 2-Qubit-Gatter- Quantenoperation auf ihnen gemeinsam durchgeführt werden. Im vorliegenden Beispiel kann das erste physische Qubit PQ1 mit dem achten physischen Qubit PQ8 und dem zweiten Qubit PQ2 wechselwirken, das zweite physische Qubit PQ2 kann zusätzlich mit dem dritten physische Qubit PQ3 wechselwirken, das dritte physische Qubit PQ3 kann zusätzlich mit dem vierten physischen Qubit PQ4 wechselwirken, das vierte physische Qubit PQ4 kann zusätzlich mit dem fünften physischen Qubit PQ6 wechselwirken, das sechste physische Qubit PQ6 kann zusätzlich mit dem siebten physischen Qubit wechselwirken und das siebte physische Qubit PQ7 kann zusätzlich mit dem achten physischen Qubit PQ8 wechselwirken. Der Konnektivitätsgraph 102 zeigt somit insbesondere Anzahl und Konnektivität der physischen Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung des Quantencomputers.
Fig. 2 zeigt ein Ausführungsbeispiel eines logischen Quantenschaltkreises 101 , der im Folgenden auf die Qubitanordnung des Quantencomputers, dessen hardwarespezifischer Konnektivitätsgraph 102 in Fig. 1 dargestellt ist, abgebildet werden soll. Das erste logische Qubit LQ1 wird durch die oberste horizontale Linie repräsentiert. Die Quantenoperationen, welche auf das erste logische Qubit LQ1 angewendet werden sollen, sind entlang der obersten Linie angeordnet, wobei die Quantenoperationen zeitlich nacheinander von links nach rechts ausgeführt werden. Analog repräsentieren die darunter angeordneten horizontalen Linien das zweite logische Qubit LQ2, das dritte logische Qubit LQ3 und das vierte logische Qubit LQ4 und deren zugehörige Quantenoperationen. Auf dem ersten LQ1 und dem dritten logischen Qubit LQ3, soll eine Controlled-Not (CNOT)-Operation Q1 durchgeführt werden. Des Weiteren soll eine CNOT-Operation Q2 auf dem zweiten logischen Qubit LQ2 und dem vierten logischen Qubit LQ4 durchgeführt werden. Diese beiden 2-Qubit- Gatter-Operationen können in einem ersten Abschnitt 1010 zusammengefasst werden, da keines der logischen Qubits an mehr als einer 2-Gatter-Operation beteiligt ist. Insbesondere können die beiden CNOT-Operationen Q1, Q2 auch gleichzeitig ausgeführt werden. D. h. der erste Abschnitt 1010 wird im Allgemeinen so gewählt, dass jedes logische Qubit LQ1 , LQ2, LQ3, LQ4 an einer oder keiner Multi- oder 2- Gatter-Operation beteiligt ist. Auf dem ersten logischen Qubit wird anschließend ein Pauli-X-Gatter Q4 durchgeführt, d. h. ein 1-Qubit-Gatter. Dieses wird bei der Wahl der Abschnitte zur Einteilung des logischen Quantenschaltkreises 101 nicht berücksichtigt. Des Weiteren wird auf dem zweiten LQ2 und dritten logischen Qubit LQ3 ein CNOT- Gate Q3 durchgeführt. Im nächsten Zeitschrift soll ein CNOT-Gate Q5 auf dem ersten LQ1 und zweiten logischen Qubit LQ2 durchgeführt werden. Würde man diese Quantenoperationen in einen Abschnitt zusammenfassen, so wäre das zweite logische Qubit LQ2 an zwei 2-Qubit-Gattern beteiligt. Daher endet der zweite Abschnitt nach der CNOT-Operation Q3 des zweiten LQ2 und dritten logischen Qubits LQ3 und die CNOT-Operation Q5 des ersten LQ1 und zweiten logischen Qubits LQ2 wird in einen dritten Abschnitt aufgenommen. Anschließend werden auf das zweite LQ2 und dritte logischen Qubit LQ3 jeweils ein Hadamard-Gatter (1-Qubit-Gatter) Q6, Q7 angewendet, die somit nicht bei der Einteilung der Abschnitte berücksichtigt werden. Im letzten Zeitschritt wird eine CNOT-Operation auf das erste LQ1 und das zweite logische Qubit LQ2 angewendet und insbesondere gleichzeitig, eine CNOT-Operation auf des dritte LQ3 und vierte logische Qubit LQ4 angewendet. Diese beiden CNOT- Operationen können wieder zu einem gemeinsamen Abschnitt zusammengefasst werden, da hier jedes Qubit jeweils an nur einer 2-Qubit-Operation teilnimmt.
Fig. 3 zeigt ein Flussdiagramm eines Verfahrens 100 zur Abbildung eines logischen Quantenschaltkreises, beispielsweise den in Fig. 2 dargestellten logischen Quantenschaltkreis 101 auf eine Qubitanordnung, umfassend eine Anzahl physischer Qubits PQ1, PQ, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, wobei die Qubitanordnung beispielsweise durch den in Fig. 1 dargestellten hardwarespezifischen Konnektivitätsgraphen 102 repräsentiert wird. Es liegen des Weiteren Informationen vor, dass das fünfte physische Qubit PQ5 im Vergleich zu den anderen physischen Qubits eine geringere Güte aufweist, d. h. rauschanfälliger ist. Dies wurde beispielsweise durch Ausführen einer Testroutine auf dem Quantencomputer ermittelt. In anderen Worten wurde ermittelt, dass sowohl 1-Qubit als auch 2-Qubit Operationen, die das fünfte physische Qubit PQ5 in Fig. 2 involvieren, besonders fehleranfällig sind (bzw. die Wahrscheinlichkeit für einen Fehler auf diesem Qubit hoch ist). Daher wird eine Abbildung des logischen Quantenschaltkreises auf die physischen Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 bevorzugt, in der diesem fünfte physische Qubit PQ5 kein logisches Qubit zugewiesen wird. Weiter soll auch keine SWAP- Operation dieses fünften physischen Qubits PQ5 umfassen.
Diese Informationen zum fünften physischen Qubit PQ5 werden im nachfolgend beschriebenen Verfahren 100 als initiale Nebenbedingung 103 berücksichtigt.
Das Verfahren 100 umfasst die nachfolgenden Schritte: Es erfolgt ein Bereitstellen von Eingabedaten (101 , 102, 103), umfassend:
■ den hardwarespezifischen Konnektivitätsgraphen 102 der physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8,
■ den logischen Quantenschaltkreises 101 , und
■ die initiale Nebenbedingungen 103 der physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 (in diesem Ausführungsbeispiel, dass das physische Qubit PQ5 gemieden werden sollte, wie vorstehend beschrieben).
Beispielsweise können diese Informationen aus einer internen und/oder externen Speichereinheit abgerufen oder von einer Datenübermittlungseinheit empfangen werden. In anderen Worten erfolgt hier eine Zusammenstellung der Fakten über die Anzahl der logischen Qubits LQ1 , LQ2, LQ3, LQ4, Anzahl und Güte der physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 und den Konnektivitätsgraph 102. Des Weiteren erfolgt ein Erstellen 105 einer Aufgabe zur Abbildung des logischen Quantenschaltkreises 101 auf die Qubitanordnung in einer Modellierungssprache eines symbolischen Lösers. Hierbei werden Randbedingungen basierend auf dem hardwarespezifischen Konnektivitätsgraphen 102 und dem logischen Quantenschaltkreis 101 erstellt. Liegt der logische Quantenschaltkreis 101 vor, so kann er in Abschnitte, wie dies am Beispiel von Fig. 2 erklärt wurde, aufgeteilt werden. Dies kann insbesondere als Teil des Erstellens 105 der Aufgabe erfolgen. Insbesondere umfasst jeder Abschnitt eine Quantenoperation Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8, insbesondere eine 2-Qubit-Operation, wobei auch mehrere 2-Qubit-Operationen umfasst sein können, sofern jedes logische Qubit an maximal einer der 2-Qubit- Operationen beteiligt ist. In anderen Worten erfolgt eine Vorstrukturierung des logischen Schaltkreises 101 in Abschnitte (engl. slices), mit der Anforderung das in jedem Abschnitt nur höchstens ein 2-Qubit-Gatter, insbesondere pro logischem Qubit LQ1 , LQ2, LQ3, LQ4, vorkommt. (1-Qubit Interaktionen können erstmal außen vorgelassen werden, diese können später noch an richtiger Stelle in den finalen ausführbaren Quantenschaltkreis 1002 eingefügt werden).
Die Aufgabe umfasst mehrere Variablen, wobei die Variablen eine Kodierung einer Belegung der physischen Qubits repräsentieren; Insbesondere wird hier in der Modellierungssprache des symbolischen Lösers kodiert, dass eine Zuordnung der logischen Qubits LQ1 , LQ2, LQ3, LQ4 und den physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 so erfolgt, dass logische Qubits LQ1 , LQ2, LQ3, LQ4 einer Quantenoperation auf physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, welche miteinander wechselwirken können, abgebildet werden (Randbedingung). Für den ersten Abschnitt in Fig. 2 bedeutet dies, dass in eine aussagelogische Formel übersetzt wird, dass das erste logische Qubit LQ1 und das dritte logische Qubit LQ3 auf alle physischen Qubitpaare abbildbar sind, welche gemäß Konnektivitätsgraph 102 jeweils miteinander wechselwirken können, also beispielsweise das erste physische Qubit PQ1 und das zweite physische Qubit PQ2, das zweite physische Qubit PQ2 und das dritte physische Qubit PQ3, das dritte und das vierte physische Qubit PQ3, PQ4, das vierte und das fünfte physische Qubit PQ4, PQ5, das fünfte und das sechste physische Qubit PQ5, PQ6, das sechste und das siebte physische Qubit PQ6, PQ7, das siebte und das achte physische Qubit PQ7, PQ8 sowie das achte und das erste physische Qubit PQ8, PQ1. Analoge Überlegungen werden für das zweite logische Qubit LQ2 und das vierte logische Qubit LQ3 angestellt.
Wenn die Aufgabe erstellt ist 105, d. h. in diesem Ausführungsbeispiel, wenn alle aussagelogischen Formeln, welche für die Abbildung relevant sind, erstellt wurden, werden die Variablen belegt. Hierzu werden die nachfolgenden Schritte ausgeführt 106 bis alle Variablen belegt sind:
1) Initiale Belegung mindestens einer der Variablen des symbolischen Lösers
■ unter Einhaltung der Randbedingungen (siehe vorheriger Schritt),
■ unter Einhaltung von Konflikt-Nebenbedingungen und
■ unter Einhaltung der initialen Nebenbedingungen der physischen Qubits, sofern die initialen Nebenbedingungen der physischen Qubits mit den
Randbedingungen und Konflikt-Nebenbedingungen vereinbar sind;
2) Bestimmung eines Implikationsgraphen für die initiale Belegung der mindestens einen Variablen unter Berücksichtigung der Eingabedaten;
3) Überprüfen, ob ein Abbruchkriterium erfüllt ist;
■ Ist das Abbruchkriterium nicht erfüllt: Wiederholen der Schritte 1) und 3) für ein weitere Variable;
■ Ist das Abbruchkriterium erfüllt:
• Bestimmen einer Konflikt-Nebenbedingung aus der Belegung der Variablen, welche zum Erfüllen des Abbruchkriteriums führte;
• Hinzufügen der Konflikt-Nebenbedingung zur Aufgabe;
• Rückkehr zu Schritt 1) der initialen Belegung der ersten an der Erfüllung des Abbruchkriteriums beteiligten Variablen;
• Bereitstellen der Belegung der Variablen für die Abbildung 1001 der logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung;
• Bestimmen und Bereitstellen 107 einer initialen Abbildung 1001 der logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung und eines ausführbaren Quantenschaltkreises 1002 aus der Belegung der Variablen.
Beispielhaft sei eine Variabiendefinition für den symbolischen Löser wie folgt skizziert: Jedes logische Qubit erhält eine binäre Variable, die angibt auf welches physische Qubit das logische Qubit für jeden der Abschnitte des logischen Schaltkreises (engl. slice) abgebildet wird, wobei Iq für logisches Qubit und pq für phyisches Qubit und s für Slice steht: x_lq1_pq1_s1 \in {0,1} (in anderen Worten kodiert die Variable, ob das logische Qubit 1 auf das physische Qubit 1 in Abschnitt 1 abgebildet ist (0=ja/wahr, 1=nein/falsch)) x_lq1_pq2_s1 \in {0,1} x_lq1_pq3_s1 \in {0,1} etc. x_lq2_pq1_s1 \in {0,1} x_lq2_pq2_s1 \in {0,1} x_lq2_pq3_s1 \in {0,1} etc. x_lq1_pq1_s2 \in {0,1} x_lq1_pq2_s2 \in {0,1} etc. x_lq2_pq1_s2 \in {0,1} x_lq2_pq2_s2 \in {0,1} etc. x_lq1_pq1_sF \in {0,1} x_lq1_pq2_sF \in {0,1} etc. x_lq2_pq1_sF \in {0,1} x_lq2_pq2_sF \in {0,1} etc.
Mit “F” als letzte Nummerierung der Abschnitte.
Die initiale Abbildung der logischen Qubits auf physische Qubits im ausführbaren Quantenschaltkreis lässt sich ablesen über alle Variablen x_lqX_pqY_s1 die den Wert 1 haben (mit „X“ jeweils über die Anzahl der logischen Qubits und „Y“ über die physischen Qubits).
Die finale Abbildung (vor dem letzten Schritt der Ausführung auf dem Quantencomputer) jeweils dann jeweils über x_lqx_pqx_sF = 1.
Sollte sich für ein logisches Qubit LQ mit festem initialen physischen Qubit pqP in Abschnitt 1 des initialen Schaltkreises (x_lq_pqP_s1 = 1) die Variable x_lq_pqP_sF‘ im Wert über den Bereich 2 <= F‘ <= F ändern, so wurde das logische Qubit mindestens einmal geSWAPt. Die Route/Abfolge von SWAP-Operationen, die für ggf. anfallende Vertauschungen von physischen Qubits in Abschnitten des Schaltkreises nötig, sind entsprechend auch in binären Variablen kodiert.
Möchte man als initiale Nebenbedingungen, z.B. kodieren, dass man PQ2 möglichst nicht nutzen soll, so wird in der jeweiligen Modellierungssprache des präferierten symbolischen Lösers kodiert, dass x_lqX_pq2_sY = 0 für alle „X“ über alle logischen Qubits und jeweils alle 1 <= Y <= F.
Das in Fig. 3 beschriebene Verfahren 100 ermöglicht eine Abbildung, welche die Güte der einzelnen physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 berücksichtigt, jedoch keine Optimierung der Anzahl SWAP-Operationen in den ausführbaren Schaltkreis ermöglicht.
Das in Fig. 4 dargestellte Ausführungsbeispiel ist eine Weiterbildung, welche es ermöglicht, zusätzlich zur Belegung der physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 die Anzahl SWAP-Operationen, welche eingefügt werden, um logische Qubits, welche im nachfolgenden Abschnitt an einer gemeinsamen Quantenoperation beteiligt sind, auf physische Qubits abzubilden, welche miteinander wechselwirken können, zu optimieren, insbesondere zu reduzieren oder zu minimieren. Fig. 4 zeigt das Ermitteln 107 des ausführbaren Schaltkreises 1002 gemäß einem Ausführungsbeispiel. Für jeden Abschnitt beginnend bei dem ersten Abschnitt werden folgende Schritte ausgeführt:
• Es erfolgt eine Überprüfung 1071 , ob die an der Quantenoperation Q1 , Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 des Abschnitts beteiligten logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 abgebildet sind, die dazu eingerichtet sind miteinander wechselzuwirken. Für den ersten Abschnitt erfolgt dies unter Verwendung der initialen Abbildung 1001 , welche Auskunft über die Zuordnung der logischen zu den physischen Qubits gibt. Nach der Bestimmung einer SWAP-Route für den ersten Abschnitt wird dann die Zuordnung der logischen und physischen Qubits erneut überprüft und gegebenenfalls angepasst, sofern sie von der initialen Abbildung 1001 abweicht. Diese angepasste Abbildung wird dem Schritt des Überprüfens 1071 für den nachfolgenden Abschnitt zugrunde gelegt, nach diesem erfolgt dann gegebenenfalls eine erneute Anpassung der Abbildung, usw.
■ Falls ja 1072, d. h. falls die an der Quantenoperation Q1 , Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 des Abschnitts beteiligten logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 abgebildet sind, die dazu eingerichtet sind miteinander wechselzuwirken, so wird vorzugsweise keine SWAP-Operation eingefügt und die Quantenoperation Q1 , Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 kann direkt in den ausführbaren Quantenschaltkreis 1002 übernommen werden. Eine Anpassung der Zuordnung der logischen zu den physischen Qubits muss in diesem Fall nicht erfolgen. Insbesondere falls ein Optimierungskriterium vorliegt, kann es sein, dass dennoch eine oder mehrere SWAP-Operationen eingefügt werden und folglich eine Anpassung der Zuordnung erfolgt, insbesondere wenn dadurch in einem der nachfolgenden Abschnitte SWAP-Operationen eingespart werden können. Die Zuordnung wird dann der nächsten Überprüfung 1071 zugrunde gelegt.
■ Falls nein 1073, d. h. falls die an der Quantenoperation Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 des Abschnitts beteiligten logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 abgebildet sind, die laut Konnektivitätsgraph 102 nicht dazu eingerichtet sind miteinander wechselzuwirken, werden die nachfolgenden Schritte ausgeführt:
1) Wähle 1075 das logische Qubit LQ1 , LQ2, LQ3, LQ4 aus, das physisch an seinem physischen Qubit PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 bleiben soll (stationäres Qubit) bzw. selektiere 1076 das logische Qubit LQ1 , LQ2, LQ3, LQ4 das geSWAPt werden soll (Senken-Qubit). Das zuSWAPende Qubit ist die erste Senke.
2) Beginne das SWAPing ausgehend von der Senke, es wird jedoch sichergestellt, dass in der finalen Lösung die letzte SWAP-Operation das zu SWAPende Qubit als nächsten Nachbarn zum stationären Qubit bringt.
3) Nach einer SWAP-Operation setzte eine neue Senke, von der aus dann das nächste SWAP berechnet werden soll. Dann kann Schritt 2) wieder die nächste SWAP- Operation bestimmen. In anderen Worten erfolgt in den Schritten 2) und 3) ein Anwenden 1077 einer SWAP-Operation auf das Senken-Qubit, wobei das logische Qubit LQ1, LQ2, LQ3, LQ4 des Senken-Qubits auf ein an der SWAP-Operation beteiligtes physisches Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 übertragen wird, welches dann zum Senken-Qubit wird; 4) Übernehmen 1074 der SWAP-Operation in den ausführbaren Quantenschaltkreis 1002;
5) Wir berechnen iterativ die jeweiligen SWAPs mit den obigen Anweisungen (d.h. 2) und 3)). Eine gültige Lösung liegt aber nur vor, wenn wir auch wirklich den nächsten Nachbarn des stationären Qubit erreichen. Das stellen wir sicher, und zwar in dem wir insbesondere Lösungen ausschließen deren SWAPs nicht bis zum stationären Qubit reichen (in der Modellierungssprache nennt man dies ein „integrity constraint“ (engl.).
6) Mit den Schritten 2) bis 5) sollten jetzt eine SWAP-Route berechnet sein. Als nächsten Schritt muss verwaltet werden, ob sich ggf. durch SWAP- Operationen die Zuordnung von logischen Qubits auf physische Qubits geändert hat
• Das stationäre Qubit behält seine Zuweisung des logischen Qubits LQ1 , LQ2, LQ3, LQ4.
• Das SWAPende logische Qubit LQ1 , LQ2, LQ3, LQ4wird gemäß den SWAP- Operationen auf einem physischen nächsten-Nachbarn PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 des stationären Qubit abgebildet.
• Physische Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, die nicht durch SWAPs beeinflusst, werden „behalten“ ihre zugewiesenen logischen Qubits LQ1 , LQ2, LQ3, LQ4.
• Für die Qubits, die durch SWAP-Operationen beeinflusst werden gilt es zwei wesentliche Fälle zu unterscheiden: (a) ein physisches Qubit PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, dem ein logische Qubit LQ1 , LQ2, LQ3, LQ4 zugewiesen ist, ist Teil einer SWAP-Operation (b) ein physisches Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 ist initial nicht mit einem logischen Qubit LQ1 , LQ2, LQ3, LQ4 belegt, ist jetzt aber Teil einer SWAP-Operation
• Fall (a): gemäß den berechneten SWAP-Operationen wird die Abbildung der involvierten logischen Qubits LQ1 , LQ2, LQ3, LQ4 auf die physischen Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 getauscht
• Fall (b): Das ist kein Hindernis, es muss aber hinterlegt werden das die physischen Qubits, die kein logische Qubits LQ1 , LQ2, LQ3, LQ4 zugewiesen haben, vor der Ausführung des finalen Schaltkreises auf der realen Plattform auch einen gültigen quantenmechanischen Zustand haben (z.B. initialisiert als |0>). Wichtig ist das über diese Qubit Buch geführt wird, da sie auch weiter Teil von nachgelagerten/weiteren SWAP-Operationen sein können.
Wie bereits erwähnt, können Optimierungskriterien verwendet werden:
• Ohne Optimierungsanweisungen produziert der Antwortmengenlöser erstmal nur eine gültige Lösung, welche die Güte der physischen Qubits bei der
Abbildung berücksichtigt und welche zwar korrekt ist, aber ggf. zu viele SWAP- Operationen aufweist. Man kann sich auch alle möglichen gültigen Lösungen ausgeben lassen und dann die Lösung auswählen, die am wenigsten SWAP- Operationen enthält.
• Man fügt Optimierungsanweisungen hinzu oDie erste Anweisung ist das die Abbildung der logischen Qubits erstmal so geschieht das KEINE SWAP-Operationen nötig sind. oEs kann jedoch sein, dass keine Lösung existieren kann, die ohne SWAPs auskommt. Daher: Versuche die Gesamtzahl der SWAP-Operationen im finalen Schaltkreis 1002 zu minimieren
Es erfolgt ein initiales Abbilden der logischen Qubits LQ1 , LQ2, LQ3, LQ4 des logischen Quantenschaltkreises 101 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung, welches die nachfolgenden Regeln berücksichtigt:
• Jedem logischen Qubit LQ1 , LQ2, LQ3, LQ4 wird genau ein physisches Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 zugeordnet und
• jedem physischen Qubit PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 wird maximal ein logisches Qubit LQ1 , LQ2, LQ3, LQ4 zugeordnet wird.
Hierzu kann wie im in Fig. 3 beschriebenen Ausführungsbeispiel vorgegangen werden, um mittels des symbolischen Lösers die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 mit den logischen Qubits LQ1 , LQ2, LQ3, LQ4 zu belegen.
Unter Berücksichtigung des Konnektivitätsgraphen 102 aus Fig. 1 und des logischen Quantenschaltkreises 101 aus Fig. 2 umfasst die initiale Abbildung 1001 folgende Zuordnung, welche in Fig. 5 dargestellt ist, wobei die Pfeile die Zuordnung angeben: das erste logische Qubit LQ1 wird dem ersten physischen Qubit PQ1 zugeordnet, das dritte logische Qubit LQ3 wird dem zweiten physischen Qubit PQ2 zugeordnet, das zweite logische Qubit LQ2 wird dem dritten physischen Qubit PQ3 zugeordnet und das vierte logische Qubit LQ4 wird dem vierten physischen Qubit zugeordnet. Dies ist eine gültige initiale Abbildung, die dazu führt, dass die Quantenoperationen Q1, Q2 des ersten Abschnitts 1010 ohne Einfügen einer SWAP-Operation ausführbar sind. Zudem ist die Lösung auch minimal in Bezug auf die Anzahl SWAP-Operationen, wie sich nach Durchführen des Verfahrens 100 herausstellen wird. Es existieren weitere gültige initiale Abbildungen, die nur eine SWAP-Operation benötigen, jedoch gibt es keine Abbildung, die ohne eine SWAP-Operation auskommt. Es gibt auch noch weitere Abbildungen die mehr als eine SWAP-Operation benötigen damit diese gültig sind. Die Lösungen, welche eine minimale Anzahl SWAP-Operationen aufweisen, werden bevorzugt und können beispielsweise unter Einführung eines Optimierungskriteriums und/oder durch mehrfaches Durchführen des Verfahrens und anschließendes Auswahlen einer Lösung mit einer minimalen Anzahl SWAP-Operationen, entweder pro Abschnitt oder global, gezählt über den gesamten ausführbaren Quantenschaltkreis, ermittelt werden.
Für jeden Abschnitt des logischen Schaltkreises 101, beginnend mit dem ersten Abschnitt 1010, werden nun die in Fig. 4 gezeigten Schritte ausgeführt, um den ausführbaren Quantenschaltkreis 1002 zu ermitteln. In anderen Worten wird für jeden Abschnitt überprüft, ob die umfasste Quantenoperation (2-Qubit-Gatter) von den physischen Qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 in Anbetracht ihrer eingeschränkten Konnektivität, die im Konnektivitätsgraphen 102 hinterlegt ist, direkt ausgeführt werden kann oder, ob zunächst die logischen Qubits LQ1 , LQ2, LQ3, LQ4 einem anderen physischen Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 durch Einfügen einer SWAP-Operation zugeordnet werden müssen. Bei jeder Belegung wird das in Fig. 3 beschriebene Ausführungsbeispiel verwendet, um die Güte der physischen Qubits bei der Belegung zu berücksichtigen. Der genaue Ablauf des Ermittelns des ausführbaren Quantenschaltkreises 1002 gemäß einem Ausführungsbeispiel ist in Fig. 4 als Flussdiagramm dargestellt.
Als Eingabedaten des Verfahrens 100 können insbesondere der Konnektivitätsgraph 102 und der logische Quantenschaltkreis geeignet für die Modellierungssprache eines Lösungsmengenlöser (engl. answer set solver) vorbereitet werden und dann zusammen mit der Kodierung (in der Modellierungssprache) einer gültigen Abbildungslösung an den Lösungsmengenlöser (z.B. die Software dingo [5]) gegeben werden. Als Ausgabe generiert das Verfahren 100 die initiale Abbildung 1001 der logischen Qubits LQ1 , LQ2, LQ3, LQ4 aus dem logischen Quantenschaltkreis 101 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 vor der Ausführung des Schaltkreises (der auf der Quantencomputerplattform ausgeführt wird) und neuer Schaltkreis (d. h. der ausführbare Quantenschaltkreis 1002, auf Basis des ursprünglichen logischen Schaltkreises 101) der potenziell SWAP-Operationen enthält. Insbesondere kann das Verfahren 100 eine Implementierung eines Optimierungskriteriums zur Optimierung/Minimierung der Anzahl SWAP-Operationen, wie vorstehend erläutert.
Fig. 6 zeigt eine gültige Lösung für den ausführbaren Quantenschaltkreis 1002 der sich aus dem in den Figuren 3 und 4 beschriebenen Verfahren ergibt, wenn die in Fig. 1 und Fig. 2 gezeigten Eingabedaten für das Verfahren 100 verwendet werden. Im Gegensatz zu dem in Fig. 2 gezeigten logischen Schaltkreis 101 repräsentieren die horizontalen Linien beim ausführbaren Quantenschaltkreis 1002 physische Qubits PQ1, PQ2, PQ3, PQ4. In diesem Ausführungsbeispiel stimmt die Anzahl logischer LQ1, LQ2, LQ3, LQ4 und physischer Qubits PQ1, PQ2, PQ3, PQ4 überein, jedoch können im Allgemeinen auch gültige Lösungen gefunden werden die mehr physische als logische Qubits verwende, indem beispielsweise logische Qubits durch SWAP-Operationen physischen Qubits zugeordnet werden, die in der initialen Abbildung gar nicht vorkamen. In diesen Fällen kann der ausführbare Quantenschaltkreis 1002 auch mehr horizontale Linien (= Anzahl physische Qubits) als der logische Schaltkreis 101 (=Anzahl logischer Qubits) aufweisen. Die in Fig. 5 dargestellte initiale Abbildung 1001 gibt Auskunft über die Zuordnung zwischen den logischen Qubits und den physischen Qubits vor dem ersten Abschnitt. In dieser Lösung wird das fünfte physische Qubit PQ5 nicht benutzt, wie dies gemäß initialer Nebenbedingung 103 gewünscht war. Anmerkung: es existieren noch mehr Lösungen für Abbildungen die gültig sind und das fünfte physische Qubit PQ5 nicht nutzen. Die Zuordnung ändert sich nach dem zweiten Abschnitt, da dort eine SWAP- Operation Q0 in den ausführbaren Schaltkreis 1002 eingefügt wurde, die im logischen Quantenschaltkreis 1001 nicht vorkam. Diese SWAP-Operation ist dem Umstand geschuldet, dass nach dem zweiten Abschnitt, d. h. im dritten Abschnitt eine Wechselwirkung (Anwendung einer CNOT-Gatters) zwischen dem ersten logischen Qubit LQ1 und dem zweiten logischen Qubit LQ2 vorgesehen ist, diese aber laut Konnektivitätsgraph 102 in Fig. 1 nicht miteinander wechselwirken können, da in der initialen Abbildung das dritte logische Qubits LQ3 auf das zweite physische Qubit PQ2 abgebildet ist und das zweite logische Qubit LQ2 auf der dritte physische Qubit PQ3. Zwischen dem ersten PQ1 und dritten physischen Qubit PQ3 ist jedoch keine Kante 1020 im Konnektivitätsgraphen eingetragen, sodass das zweite PQ2 und dritte physische Qubit PQ3 nach dem zweiten Abschnitt durch eine SWAP-Operation ihre Zustände tauschen müssen und somit anschließend das zweite logische Qubit LQ2 dem zweiten physischen Qubit PQ2 zugeordnet ist und das dritte logische Qubit LQ3 dem dritten physischen Qubit zugeordnet ist. Da ab dem dritten Abschnitt die Zuordnung der logischen Qubits und der physischen Qubits in der Nummerierung übereinstimmen (LQ1->PQ1 , LQ2->PQ2, LQ3->PQ3, LQ4->PQ4) sind der ausführbare Quantenschaltkreis 1002 und der logische Quantenschaltkreis 101 ab dem dritten Abschnitt identisch.
Fig. 7 zeigt eine schematische Skizze eines Systems, umfassend eine Rechenvorrichtung, insbesondere einen klassischen Computer 201 , auf dem das vorstehend beschriebene Verfahren 100 ausgeführt wird und welches die initiale Abbildung 1001 und den ausführbaren Quantenschaltkreis 1003 für einen Quantencomputer 202 bereitstellt, der eine Qubitanordnung umfasst, welche zumindest bezüglich der Anzahl physischer Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 und deren Konnektivität, dergestalt ist, wie es durch den hardwarespezifischen Konnektivitätsgraphen 102, der im klassischen Computer 201 in dem Verfahren 100 verwendet wird, dargestellt ist. Dadurch kann der logische Quantenschaltkreis 101 auf dem Quantencomputer 202 ausgeführt werden bzw. ist der logische Quantenschaltkreis auf dem Quantencomputer 202 ausführbar.
Fig. 8 zeigt ein Flussdiagramm eines Verfahrens 300 zum Betreiben eines Quantencomputers 202, beispielsweise des Quantencomputers 202 des in Fig. 7 gezeigten Systems 200. Das Verfahren umfasst die nachfolgenden Schritte:
• Bereitstellen der Abbildung 1001 der logischen Qubits LQ1 , LQ2, LQ3, LQ4 des logischen Quantenschaltkreises 101 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung und des ausführbaren Quantenschaltkreises 1002, gemäß dem in den Figuren 3 und/oder 4 gezeigten Verfahren;
• Initialisieren 301 des Quantencomputers 202, umfassend das initiale Abbilden der logischen Qubits LQ1 , LQ2, LQ3, LQ4 des logischen Quantenschaltkreises 101 auf die physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 der Qubitanordnung des Quantencomputers 202; • Ausführen 302 des ausführbaren Quantenschaltkreises (1002) auf dem Quantencomputer (201).
Als Ausgabe 303 kann ein Ergebnis, welches durch den Quantencomputer 202 auf Basis des logischen Quantenschaltkreises 101 bestimmt wurde, bereitgestellt, insbesondere ausgegeben, gespeichert, übertragen oder angezeigt werden.

Claims

Ansprüche
1. Verfahren (100) zur Bestimmung einer Abbildung eines logischen Quantenschaltkreises (101) auf eine Qubitanordnung, umfassend eine Anzahl physischer Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8), mittels eines symbolischen Lösers, wobei das Verfahren die nachfolgenden Schritte umfasst:
• Bereitstellen von Eingabedaten, umfassend:
■ einen hardwarespezifischen Konnektivitätsgraphen (102) der physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8),
■ den logischen Quantenschaltkreises (101), und
■ initiale Nebenbedingungen der physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8);
• Erstellen (105) einer Aufgabe zur Abbildung des logischen Quantenschaltkreises (101) auf die Qubitanordnung in einer Modellierungssprache des symbolischen Lösers, umfassend ein Erstellen von Randbedingungen basierend auf dem hardwarespezifischen
Konnektivitätsgraphen (102) und dem logischen Quantenschaltkreis (101), wobei die Aufgabe mehrere Variablen umfasst, wobei die Variablen eine Kodierung einer Belegung der physischen Qubits repräsentieren;
• Ausführen der nachfolgenden Schritte bis alle Variablen belegt sind:
1) Initiale Belegung mindestens einer der Variablen des symbolischen Lösers
■ unter Einhaltung der Randbedingungen,
■ unter Einhaltung von Konflikt-Nebenbedingungen und
■ unter Einhaltung der initialen Nebenbedingungen der physischen Qubits, sofern die initialen Nebenbedingungen der physischen Qubits mit den Randbedingungen und Konflikt-Nebenbedingungen vereinbar sind;
2) Bestimmung eines Implikationsgraphen für die initiale Belegung der mindestens einen Variablen unter Berücksichtigung der Eingabedaten;
3) Überprüfen, ob ein Abbruchkriterium erfüllt ist; ■ Ist das Abbruchkriterium nicht erfüllt: Wiederholen der Schritte 1) und 3) für ein weitere Variable;
■ Ist das Abbruchkriterium erfüllt:
• Bestimmen einer Konflikt-Nebenbedingung aus der Belegung der Variablen, welche zum Erfüllen des Abbruchkriteriums führte;
• Hinzufügen der Konflikt-Nebenbedingung zur Aufgabe;
• Rückkehr zu Schritt 1) der initialen Belegung der ersten an der Erfüllung des Abbruchkriteriums beteiligten Variablen;
• Bereitstellen der Belegung der Variablen für die Abbildung (1001) der logischen Qubits (LQ1 , LQ2, LQ3, LQ4) auf die physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung;
• Bestimmen und Bereitstellen einer initialen Abbildung (1001) der logischen Qubits auf die physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung und eines ausführbaren Quantenschaltkreises (1002) aus der Belegung der Variablen.
2. Verfahren (100) nach einem der vorhergehenden Ansprüche, wobei die initiale Nebenbedingung eines physischen Qubits Informationen über die Fehleranfälligkeit des physischen Qubits umfasst, insbesondere, wobei die initiale Nebenbedingung eine Information umfasst, ob das physische Qubit für die Belegung mit einem logischen Qubit freigegeben ist.
3. Verfahren (100) nach einem der vorhergehenden Ansprüche, wobei das Abbruchkriterium erfüllt ist, wenn bei der Bestimmung des Implikationsgraphen ein Konflikt entsteht, insbesondere wenn eine bereits belegte Variable bei der Bestimmung des Implikationsgraphen mit einem davon abweichenden Wert belegt werden soll.
4. Verfahren (100) nach einem der vorhergehenden Ansprüche, wobei der hardwarespezifische Konnektivitätsgraph (102) Knoten und Kanten (1020) umfasst, wobei die Knoten physische Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) repräsentieren und Knoten physischer Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8), die dazu eingerichtet sind miteinander wechselzuwirken, im hardwarespezifischen Konnektivitätsgraphen (102) durch Kanten (1020) miteinander verbunden sind. 5. Verfahren (100) nach einem der vorhergehenden Ansprüchen, wobei das Erstellen (105) der Aufgabe
• ein Aufteilen des logischen Quantenschaltkreises (101) in Abschnitte, wobei jeder Abschnitt eine Quantenoperation (Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8) umfasst, und
• ein Kodieren der Aufteilung in einer Modellierungssprache des symbolischen Lösers, umfasst und wobei zum Ermitteln eines ausführbaren Quantenschaltkreises (1002) das Belegen der Variablen für jeden Abschnitt erfolgt und die nachfolgenden Schritte für jeden Abschnitt des logischen Quantenschaltkreises (101) ausgeführt werden: oüberprüfen (1071), ob die an der Quantenoperation (Q1 , Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8) des Abschnitts beteiligten logischen Qubits (LQ1 , LQ2, LQ3, LQ4) auf physische Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) abgebildet sind, die dazu eingerichtet sind miteinander wechselzuwirken, wobei dieses Kriterium insbesondere als Erreichbarkeitskriterium in der Modellierungssprache des symbolischen Lösers bereitgestellt wird; oFalls nein (1073), werden die nachfolgenden Schritte ausgeführt:
1) Festlegen (1075) eines stationären Qubits aus den an der Quantenoperation (Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8) des Abschnitts beteiligten logischen Qubits (LQ1 , LQ2, LQ3, LQ4),
2) Festlegen (1076) eines Senken-Qubits,
3) Anwenden (1077) einer SWAP-Operation auf das Senken-Qubit, wobei das logische Qubit (LQ1, LQ2, LQ3, LQ4) des Senken-Qubits auf ein an der SWAP-Operation beteiligtes physisches Qubit (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) übertragen wird, welches dann zum Senken-Qubit wird;
4) Übernehmen (1074) der SWAP-Operation in den ausführbaren Quantenschaltkreis (1002);
5) Falls das stationäre Qubit und das Senken-Qubit nach Anwenden (1077) der SWAP-Operation nicht dazu eingerichtet sind miteinander wechselzuwirken:
■ Wiederholen der Schritte 1) bis 4) bis das Senken-Qubit auf ein physisches Qubit (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) abgebildet ist, das dazu eingerichtet ist mit dem stationären Qubit wechselzuwirken;
6) Anpassung der Abbildung der logischen Qubits (LQ1, LQ2, LQ3, LQ4) auf die physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8); • Bereitstellen der initialen Abbildung (1001) der logischen Qubits (LQ1, LQ2, LQ3, LQ4) auf die physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung und des ausführbaren Quantenschaltkreises (1002).
6. Verfahren (100) nach Anspruch 5, wobei das Erreichbarkeitskriterium einen Ausschluss von Lösungen umfasst, bei denen es nicht möglich ist, die an der Quantenoperation (Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8) des Abschnitts beteiligten logischen Qubits (LQ1 , LQ2, LQ3, LQ4), insbesondere auch nicht durch Anwenden (1077) von SWAP-Operationen, auf physische Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) abzubilden, die dazu eingerichtet sind, miteinander wechselzuwirken.
7. Verfahren (100) nach einem der vorhergehenden Ansprüche, wobei beim Ermitteln (107) des ausführbaren Quantenschaltkreises (1002) eine Optimierung nach der Anzahl SWAP-Operationen durchgeführt wird.
8. Verfahren (100) nach Anspruch 5 oder 6, wobei der symbolische Löser ein Antwortmengenlöser ist und das Verfahren (100) das Ausführen des Antwortmengenlösers umfasst.
9. Verfahren (100) nach einem der Ansprüche 5 bis 8, wobei das Verfahren
(100) gemäß einem der vorhergehenden Ansprüche mehrfach ausgeführt wird, wobei mehrere gültige Lösungen, umfassend die initiale Abbildung (1001) der logischen Qubits (LQ1 , LQ2, LQ3, LQ4) des logischen Quantenschaltkreises
(101) auf die physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung und den zugehörigen ausführbaren Quantenschaltkreis (1002), bereitgestellt werden und in einem weiteren Verfahrensschritt aus den mehreren gültigen Lösungen die Lösung, deren ausführbarerer Quantenschaltkreis (1002) die geringste Anzahl SWAP-Operationen aufweist, für die Ausführung auf einem Quantencomputer (202), umfassend die Qubitanordnung und die hardwarespezifische Konnektivität der physischen Qubits gemäß dem hardwarespezifischen Konnektivitätsgraphen (102), bereitgestellt wird.
10. System (200), umfassend ■ einen klassischen Computer (201) zur Bereitstellung der initialen Abbildung der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung und des ausführbaren Quantenschaltkreises, gemäß dem Verfahren (100) nach einem der Ansprüche 1 bis 9, und
■ einen Quantencomputer (202), umfassend die Qubitanordnung und eine hardwarespezifische Konnektivität der physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) gemäß dem hardwarespezifischen Konnektivitätsgraphen (102), zur Ausführung des logischen Quantenschaltkreises (101) unter Verwendung der von dem klassischen Computer (201) bereitgestellten initialen Abbildung (1001) der logischen Qubits (LQ1 , LQ2, LQ3, LQ4) des logischen Quantenschaltkreises (101) auf die physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung und des von dem klassischen Computer (201) bereitgestellten ausführbaren Quantenschaltkreises (1002).
11. Computerprogrammprodukt, umfassend Befehle, insbesondere in der Modellierungssprache eines Antwortmengenlösers verfasste Befehle, die bewirken, dass der klassische Computer (201) des Systems (200) gemäß Anspruch 10 die Verfahrensschritte nach einem der Ansprüche 1 bis 9 ausführt.
12. Verfahren (300) zum Betreiben eines Quantencomputers (202), umfassend eine Qubitanordnung, aufweisend physische Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) und eine hardwarespezifische Konnektivität der physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8), insbesondere eines Quantencomputers eines Systems gemäß Anspruch 11, welches die nachfolgenden Schritte aufweist:
• Bereitstellen der Abbildung (1001) der logischen Qubits (LQ1, LQ2, LQ3, LQ4) des logischen Quantenschaltkreises (101) auf die physischen Qubits (PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung gemäß dem Verfahren nach einem der Ansprüche 1 bis 9;
• Initialisieren (301) des Quantencomputers (202), umfassend das initiale Abbilden der logischen Qubits (LQ1 , LQ2, LQ3, LQ4) des logischen Quantenschaltkreises (101) auf die physischen Qubits (PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8) der Qubitanordnung des Quantencomputers (202); • Ausführen (302) des ausführbaren Quantenschaltkreises (1002) auf dem Quantencomputer (201).
PCT/EP2025/069017 2024-07-09 2025-07-03 Verfahren zur bestimmung einer abbildung eines logischen quantenschaltkreises auf eine qubitanordnung mittels eines symbolischen lösers, system und verfahren zum betreiben eines quantencomputers Pending WO2026012899A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102024206469.6A DE102024206469A1 (de) 2024-07-09 2024-07-09 Verfahren zur Bestimmung einer Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung mittels eines symbolischen Lösers, System und Verfahren zum Betreiben eines Quantencomputers
DE102024206469.6 2024-07-09

Publications (1)

Publication Number Publication Date
WO2026012899A1 true WO2026012899A1 (de) 2026-01-15

Family

ID=96429685

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2025/069017 Pending WO2026012899A1 (de) 2024-07-09 2025-07-03 Verfahren zur bestimmung einer abbildung eines logischen quantenschaltkreises auf eine qubitanordnung mittels eines symbolischen lösers, system und verfahren zum betreiben eines quantencomputers

Country Status (2)

Country Link
DE (1) DE102024206469A1 (de)
WO (1) WO2026012899A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200125985A1 (en) * 2018-10-21 2020-04-23 President And Fellows Of Harvard College Qubit allocation for noisy intermediate-scale quantum computers
US20230274176A1 (en) * 2020-07-24 2023-08-31 Pasqal Methods for allocating logical qubits of a quantum algorithm in a quantum processor
US20240005190A1 (en) * 2020-09-30 2024-01-04 Origin Quantum Computing Technology Co., Ltd. Method, apparatus, terminal and storage medium for quantum topology graph optimization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200125985A1 (en) * 2018-10-21 2020-04-23 President And Fellows Of Harvard College Qubit allocation for noisy intermediate-scale quantum computers
US20230274176A1 (en) * 2020-07-24 2023-08-31 Pasqal Methods for allocating logical qubits of a quantum algorithm in a quantum processor
US20240005190A1 (en) * 2020-09-30 2024-01-04 Origin Quantum Computing Technology Co., Ltd. Method, apparatus, terminal and storage medium for quantum topology graph optimization

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
COWTAN ET AL.: "On the Qubit Routing Problem", ARXIV:1902.08091V2, 2019
LI ET AL., ASPLOS'19, 13 April 2019 (2019-04-13)
NANNICINI GIACOMO ET AL: "Optimal qubit assignment and routing via integer programming", 26 July 2021 (2021-07-26), XP093315767, Retrieved from the Internet <URL:https://arxiv.org/pdf/2106.06446> [retrieved on 20250917], DOI: 10.48550/arXiv.2106.06446 *

Also Published As

Publication number Publication date
DE102024206469A1 (de) 2026-01-15

Similar Documents

Publication Publication Date Title
DE112017007826T5 (de) Simulieren von Quantenschaltungen
DE112020004067B4 (de) Hybride daten-modell-parallelität für effizientes deep learning
DE112018006047T5 (de) Deformation von aufwandsfunktionen bei der quanten-näherungsoptimierung
DE112017000855B4 (de) Energiesparender zeitlich gemultiplexter neurosynaptischer Kern zum Implementieren neuronaler Netze
WO2003021366A1 (de) Verfahren zur validierung von simulationsergebnissen eines systems sowie darauf aufbauender äquivalenzvergleich digitaler schaltungen
DE3485999T2 (de) Hochgeschwindigkeitverarbeitungssystem fuer rechneranlage.
DE3855860T2 (de) Schaltungsveränderungssystem und -verfahren, Verfahren zur Erzeugung von invertierter Logik und Logikentwurfssystem
DE112020002186B4 (de) Dnn-training mit asymmetrischen rpu-einheiten
DE19814422A1 (de) System zur Lösung eines Randbedingungsproblems und Aufbau eines derartigen Systems
DE102009038454A1 (de) System und Verfahren zum Reduzieren einer Ausführungsdivergenz in Parallelverarbeitungsarchitekturen
DE112018006377T5 (de) Verschmelzen spärlich besetzter kernels zur approximation eines vollen kernels eines neuronalen faltungsnetzes
DE112019000676T5 (de) Zentraler scheduler und anweisungszuteiler für einen neuronalen inferenzprozessor
DE202016107141U1 (de) Netzwerk stochastische Kreuzschicht-Optimierung zum Erreichen des Verkehrsflussverfügbarkeitziels zu Mindestkosten
DE3855494T2 (de) Abfragevorrichtung und -methode
DE112019004391T5 (de) Grossmodellunterstützung für deep learning
DE112022007534T5 (de) Verfahren und einrichtung für graph-neural-architecture-suche unter verteilungsverschiebung
DE112022001875T5 (de) Beschleunigen von entscheidungsbauminferenzen
DE112016007411T5 (de) Fuzzy-eingabe für autoencoder
DE102021124252A1 (de) Neuronale Netzwerksysteme für abstraktes Denken
WO2026012899A1 (de) Verfahren zur bestimmung einer abbildung eines logischen quantenschaltkreises auf eine qubitanordnung mittels eines symbolischen lösers, system und verfahren zum betreiben eines quantencomputers
DE102023209291A1 (de) Verfahren zur Abbildung eines logischen Quantenschaltkreises auf eine Qubitanordnung, umfassend eine Anzahl physischer Qubits, System und Verfahren zum Betreiben eines Quantencomputers
DE102022131760A1 (de) Modellgenerierungsverfahren, modellgenerierungsprogramm, modellgenerierungsvorrichtung und datenverarbeitungsvorrichtung
DE10324565A1 (de) Verfahren und Vorrichtung zum Schaltungsentwurf mittels High-Level-Synthese
DE102019135542A1 (de) Verfahren zum Erzeugen einer Graphen-Datenbank
EP4506867A1 (de) Verfahren und vorrichtung zum computerimplementierten verarbeiten einer quantenschaltung auf einer quantenverarbeitungseinheit