WO2026012899A1 - Method for determining a mapping of a logic quantum circuit onto a qubit arrangement by means of a symbolic solver, system and method for operating a quantum computer - Google Patents
Method for determining a mapping of a logic quantum circuit onto a qubit arrangement by means of a symbolic solver, system and method for operating a quantum computerInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/80—Quantum 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/20—Models 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
Description
Beschreibung Description
Titel Title
Verfahren zur Bestimmung einer Abbildung eines logischenMethod for determining a mapping of a logical system
Quantenschaltkreises auf eine Qubitanordnunq mittels eines quantum circuit to a qubit arrangement by means of a
Lösers, System und Verfahren zum Betreiben eines Quanter Solver, system and procedure for operating a quantizer
Stand der Technik State of the art
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 “On the Qubit Routing Problem”, (Cowtan et al., arXiv:1902.08091 v2, 2019) the mapping problem of logical qubits to a physical qubit platform with limited connectivity is described.
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. In “Tackling the Qubit Mapping Problem for NISQ-Era Quantum Devices” (Li et al.; ASPLOS’19, April 13-17, 2019, Providence, RI, USA) an approach to solving a qubit mapping problem is described, which includes a heuristic search.
Kern und Vorteile der Erfindung Core and advantages of the invention
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. When mapping a logic quantum circuit onto a real physical quantum computer platform (hereinafter referred to as quantum computer), each logic qubit (quantum bit) of the quantum circuit is assigned a physical qubit of the real quantum computer platform.
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. Currently, for example, noisy intermediate-scale quantum computers (NISQ) without error correction and with a moderate number of qubits (-100) are available. An NISQ computer typically comprises a small number of qubits, for example, less than or equal to 1000 qubits, especially between 50 and a few hundred qubits. Many currently available quantum computers, in particular NISQ computers have only limited connectivity between physical qubits; that is, not every physical qubit can interact with every other physical qubit. In other words, quantum operations, especially 2-qubit gates, can only be performed between specific physical qubits.
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. To ensure the correct execution of the logic quantum circuit, it is therefore essential to note that if two logic qubits are to interact with each other, i.e., be part of a common quantum operation (e.g., a 2-qubit gate), they must also reside on physical qubits capable of interaction. If, during the execution of a quantum circuit, after an initial mapping of the logic qubits, it becomes apparent that an interaction between two logic qubits is required that are not currently located on interacting physical qubits, the states of these physical qubits can be swapped through one or more SWAP operations until an interaction between the logic qubits is possible on the physical platform.
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. The qubits of a real physical quantum computing platform often differ in their quality, particularly with respect to their noise susceptibility. In other words, the qubit array of a real physical quantum computing platform includes, for example, physical qubits with varying fidelities. Specifically, a threshold can be set to indicate which fidelities are still tolerable for quantum circuit execution and to identify low-fidelity physical qubits that should preferably be avoided when executing the quantum circuit.
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. The invention comprises an improved solution to the problem of mapping quantum logic circuits onto quantum computers with limited connectivity, in particular NISQ computers. Specifically, the invention enables the implementation of quantum logic circuits on quantum computers with limited connectivity, thereby improving the quality of the qubits. to take this into account in such a way as to enable the generation of less error-prone results on the quantum computer.
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. The invention relates to a method for determining a mapping of a logic quantum circuit onto a qubit arrangement using a symbolic solver, a system comprising a classical computer and a quantum computer, a computer program product and a method for operating a quantum computer.
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. Algorithms and applications that utilize quantum mechanical resources can be written simply and efficiently in the language of quantum logic circuits. A quantum circuit is a computational routine built from coherent quantum operations. Each horizontal line or wire in a quantum circuit represents a qubit, with the left end of the wire representing the original quantum data and the right end the final quantum data produced by the quantum circuit's computation. Operations on qubits are represented by boxes placed on these wires. Quantum gates are the elementary operations that a quantum computer can perform on its qubits. They are similar to electronic gates, which perform the elementary operations of a classical computer. However, a quantum gate operates with quantum mechanical systems such as 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. Quantum operations are mathematically realized through matrix multiplication with unitary matrices. Unitary matrices are always reversible, meaning that the input values of a circuit can be reconstructed from its output values. For quantum gates operating on two qubits (2-qubit gates), an interaction between the physical qubits in question is required. For spin qubits, this can occur, among other things, via exchange interactions. Atoms in an ion trap, for example, can exchange photons. For qubits based on superconducting circuits, these qubits can be manipulated, for example, by applying a voltage, a magnetic field, or coupling to microwave resonators. Quantum computers programmed using quantum circuits can, in principle, be constructed from any quantum technology capable of performing single- and multi-qubit gate operations. Currently, architectures based on, for example, superconducting circuits, ion traps, semiconductor quantum dots, photons, and neutral atoms are actively being developed. A quantum computer comprises a qubit array, which includes multiple physical qubits. These qubits can preferably be equipped with devices or units adapted to the technology used to implement them for initializing (e.g., initializing the qubit in a basic state), manipulating (e.g., applying 1-qubit and/or 2-qubit gates), and/or reading the physical qubits.
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)). There are exact methods/solution approaches that can guarantee or prove the optimality of a solution to the mapping problem. For example, there are approaches based on a pseudo-Boolean satisfiability solver (PB-SAT solver) and an answer set solver from the domain of 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. An advantage of the invention with the features of the independent claims is that an improved solution for reducing or avoiding errors caused by noise or noisy physical qubits in the execution of quantum algorithms on quantum computers can be provided.
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. The present method makes it possible to execute logic quantum circuits on quantum computers with limited connectivity, taking into account the heterogeneous noise susceptibility of physical qubits. The method thus enables the use of hardware that was previously unusable or only applicable to a very limited extent.
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. This is achieved by a method according to claim 1 for determining a mapping of a logic quantum circuit onto a qubit array comprising a number of physical qubits, using a symbolic solver. A symbolic solver is a computer program that performs a A satisfiability or optimization problem, formulated in a suitable modeling language (e.g., Boolean variables and propositional logic formulas), is solved (optimally) or proves that no valid solution exists. The mapping of the logic quantum circuit onto the qubit arrangement includes, in particular, an initial mapping of the logic quantum circuit onto the qubit arrangement and an executable quantum circuit.
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. The executable quantum circuit takes into account the varying qualities of the physical qubits, as well as the limited connectivity of the physical qubits in the hardware (qubit array of the quantum computer), for example, by introducing swap operations (swap gates). This connectivity of the physical qubits is represented by a hardware-specific connectivity graph. In particular, the executable quantum circuit depicts the operations for the individual physical qubits (specifically, each horizontal line corresponds to a physical qubit, and in the logic quantum circuit, each horizontal line is preferably assigned to a logical qubit), whereas the logic quantum circuit depicts the operations for the individual logical qubits.
Das Verfahren nach Anspruch 1 umfasst die nachfolgenden Schritte: The method according to claim 1 comprises the following steps:
• Bereitstellen von Eingabedaten, umfassend: • Providing input data, including:
- 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. - a hardware-specific connectivity graph of the physical qubits, the quantum logic circuit, and initial constraints of the physical qubits. The connectivity graph includes, in particular, information about the number of physical qubits and their connectivity. In other words, the connectivity graph includes information about which physical qubits can interact with which other physical qubits. Providing the hardware-specific connectivity graph of the physical qubits, the quantum logic circuit, and/or the initial constraints can be done, in particular, by input, by data transmission (wireless or wired data transmission), or by retrieval, for example, from a database, an internal and/or external storage device (cloud) of the device executing the procedure (e.g., a classical computer). By providing the hardware-specific connectivity graph of the physical qubits, the The logic quantum circuit and the initial constraints provide, in particular, the information required for the procedure regarding the physical qubits, their connectivity, and the quantum operations to be applied. Specifically, the physical qubits are represented as nodes in the hardware-specific connectivity graph, and nodes of physical qubits configured to interact with each other are connected in the hardware-specific connectivity graph, especially by edges.
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. Initial constraints can include information about which physical qubits should be preferentially used or preferably left unused during the execution of the quantum circuit. This information can be obtained, for example, by running a test routine on the quantum computer that characterizes each physical qubit. The result of the test routine can be used to create the initial constraints. The resulting characterization can, for example, be sorted according to preferred criteria/metrics. In particular, initial constraints do not completely exclude any physical qubits from the selection of an executable quantum circuit from the logical quantum circuit; rather, they serve to avoid or at least reduce, where possible, the use of physical qubits with less favorable properties (e.g., qubits with higher noise levels than other physical qubits in the qubit array). In particular, the initial constraints make it possible to promote the use of less noisy qubits, so that when executing the quantum circuit, the susceptibility to errors can be reduced compared to using all physical qubits regardless of their noise behavior.
• 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. • Create a task to map the logic quantum circuit to the qubit array in a modeling language of the symbolic solver. In particular, symbolic variables (hereinafter also referred to simply as variables), which preferably encode an assignment of the physical qubits, and symbolic expressions, depending on the symbolic variables, are defined. Specifically, the task includes at least one propositional logic formula that takes the input data into account. It then seeks to assign the values of the qubits to the at least one propositional logic formula. The variables involved are evaluated with the values true or false, so that the propositional logic formula evaluates to true. A propositional logic formula consists of variables, parentheses, and the propositional logic connectives conjunction ("and," often notated with A), disjunction ("or," v), and negation ("not," -1 ). Specifically, the creation of the task can be achieved by providing it in the modeling language of the symbolic solver, particularly through input, data transmission, etc. Specifically, a user can transfer the task into the modeling language of the symbolic solver and make it available for the process.
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. The task formulation further involves creating boundary conditions based on the hardware-specific connectivity graph and the quantum logic circuit. The task includes several variables, where the variables represent an encoding of the allocation of the physical qubits. In other words, the propositional logic formula is specifically formulated based on the connectivity graph and the quantum logic circuit, as these constrain the possibilities for using the physical qubits. Specifically, the task can be formulated as a Boolean satisfiability problem (SAT). The satisfiability problem (SAT problem) specifically involves finding a satisfactory mapping for a given formula in conjunctive normal form (CNF).
• 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. • Execute steps 1) to 3) listed below until all variables are assigned. In other words, the variables are initially unassigned or at least assigned independently of the input data. Preferably, the variables are initialized with arbitrary values representing the "unassigned state" of the variables. In particular, the following steps are based on the concept of conflict-driven constraint learning (CDCL). However, according to claim 1, domain knowledge (especially knowledge about the noise behavior of the respective physical qubits) is additionally used, which makes this initially non-deterministic subroutine deterministic. The starting point here is user-defined domain knowledge (in this case, which physical qubits should preferably not be used and/or which physical qubits should preferably be used), which is taken into account insofar as it is not present in any conflict with other (learned) conflict side conditions of the underlying mapping problem may exist.
1) Initiale Belegung mindestens einer der Variablen des symbolischen Lösers 1) Initial assignment of at least one of the variables of the symbolic solver
■ 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. ■ subject to the boundary conditions; In particular, the boundary conditions encode which physical qubits can interact with each other and which operation should be performed according to the logic quantum circuit.
■ 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. ■ subject to conflict constraints, where the conflict constraints may consist of no constraint, one constraint, or more than one constraint. Compliance with the conflict constraints takes priority over compliance with the initial constraints.
■ 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; ■ subject to the initial constraints of the physical qubits, provided that the initial constraints of the physical qubits are compatible with the boundary conditions and conflict constraints, wherein the initial constraints include, in particular, at least one initial constraint;
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. When assigning the first variables, there are usually no conflicting constraints. These arise, if at all, only when assigning further variables, particularly if an already assigned variable would have to be set to "true" to satisfy a first statement (i.e., that a statement evaluates to true) and to "false" to satisfy a further statement. The initial constraints, which contain information about whether the respective physical qubit should be preferentially used or not used in the execution of the quantum circuit, can be discarded (in other words, ignored) if a conflicting constraint requires it. In other words, compliance with the initial constraints has a lower priority than compliance with the conflicting constraints.
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. 2) Determining an implication graph for the initial assignment of the at least one variable, taking the input data into account; In this step, another variable is assigned based on the at least one propositional logic formula of the problem, depending on the assignment of the initially assigned variables. In other words, preferably at least one propositional logic formula is used. The formula from the problem is used to define another variable in such a way that the propositional logic formula, which depends on this variable, is evaluated as "true".
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. 3) Check whether a termination criterion is met; In particular, in step 2), a variable may be assigned an initial value when creating the implication graph, for example, "true," but according to another propositional formula of the task, the variable should be assigned the correspondingly different value, in this case, "false." If such a contradictory double assignment of a variable exists, the termination criterion is met. If, according to further propositional formulas of the task, the variable is assigned a consistent value (for example, always "true"), the termination criterion is not met, and the procedure can be continued with step 1) for another unassigned variable.
■ Ist das Abbruchkriterium nicht erfüllt: Wiederholen der Schritte 1) und 3) für ein weitere Variable; ■ If the termination criterion is not met: Repeat steps 1) and 3) for another variable;
■ Ist das Abbruchkriterium erfüllt: ■ Is the termination criterion met?
• 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. • Determining a conflict constraint from the variable assignment that led to the fulfillment of the termination criterion; In particular, a conflict constraint can be derived from the propositional logic formulas whose evaluation to "true" caused the conflict and added to the task so that this conflict constraint is taken into account when assigning variables in the next iteration of steps 1) to 3).
• Hinzufügen der Konflikt-Nebenbedingung zur Aufgabe; • Adding the conflict constraint to the task;
• 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. • Return to step 1) of the initial assignment of the first variable involved in fulfilling the termination criterion; preferably, return to a point in the assignment process that led to the conflict. The assignments of all variables assigned after this point are discarded and reassigned, taking the conflict constraint into account.
• 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. • Providing the assignment of variables for mapping the logical qubits to the physical qubits of the qubit array; in particular, this is done by storing them on internal data storage and/or external data storage (e.g. cloud), by data transmission or wireless or wired data transmission, etc. • Determining and providing an initial mapping of the logical qubits to the physical qubits of the qubit array and an executable quantum circuit from the variable assignments. In this step, the mapping is determined by decoding the variables. Specifically, the mapping to the physical qubits is derived from the variable assignments. Providing the mapping can be done by storing it on internal and/or external data storage (e.g., cloud storage), by data transmission (wireless or wired), etc.
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. Advantageously, the proposed procedure can be applied to all symbolic methods that have a subroutine for assigning an initial value to nondeterministic (Boolean) variables. This includes methods that solve problems in decision logic (SAT, SAT solver) or decision logic modulo other theories (SMT).
Insbesondere umfasst das Verfahren das Ausführen des symbolischen Lösers. In particular, the procedure includes executing the symbolic solver.
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 Since conflict-driven constraint learning (CDCL) is a high-performing and common standard technique in symbolic solvers, our solution utilizes the "decide" subroutine. An example CDCL algorithm is included here. The described procedure utilizes this "decide" subroutine: `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. Ultimately, the method described in claim 1 enables the following: If there is no induction/proof that the non-preferred (error-prone) qubits must be used to map the quantum circuit, then they should not be used. A significant advantage is reduced noise during the execution of the quantum circuit. Furthermore, domain knowledge can also enable the logic solver to solve the mapping problem more quickly.
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 the method described in claim 1, a deterministic selection and assignment of variables based on domain knowledge (which we have from, for example, characterizations of the quantum computer) always takes place, provided that this is available for specific variable assignments.
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). In other words, the quantum logic circuit and connectivity graph of the quantum computer platform, as well as a list of qubits that should not be used (e.g., from a test routine used to characterize the quantum computer), are provided as input data. This input data is used to create a problem in the language of any symbolic solver (e.g., a SAT/SMT solver or an answer set solver). When the symbolic solver needs to decide on the initial assignment of variables (e.g., if the solver uses CDCL in the `decide` subroutine), the preferred knowledge contained in the input data, or ultimately the preferred non-assignment, is used instead of a non-deterministic assignment. In our proposed solution, this would mean that Boolean variables encoding the assignment of a noisy physical qubit should preferably not be assigned such that a logical qubit is assigned to this noisy qubit in the final mapping solution (including consideration of swaps, which may be added in the executable quantum circuit to transport logical qubits to interacting physical qubits when they are involved in a common quantum operation). Preferred knowledge from the input data is only used if it does not conflict logically with other knowledge or knowledge learned within the CDCL algorithm. The output of the method includes a solution to the mapping problem, where noisy qubits are not used (provided this does not contradict the problem statement).
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. According to one embodiment, the initial constraint of a physical qubit includes information about its susceptibility to errors, in particular its fidelity. Specifically, the initial constraint includes information on whether the physical qubit is permitted to be assigned a logical qubit. Advantageously, this reduces or eliminates the need to use noisy qubits when mapping logical qubits to physical qubits.
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. According to one embodiment, the termination criterion is met if a conflict arises when determining the implication graph, in particular if a variable that has already been assigned a value is to be assigned a different value when determining the implication graph.
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. According to one embodiment, the hardware-specific connectivity graph comprises nodes and edges, wherein the nodes represent physical qubits and nodes of physical qubits that are configured to interact with each other are connected to each other in the hardware-specific connectivity graph by edges.
Gemäß einer Ausführungsform wird eine „Entscheide“-Unterroutine des symbolischen Lösers zur initialen Belegung der Variablen gemäß einem der vorstehenden Verfahren ausgeführt. According to one embodiment, a “decision” subroutine of the symbolic solver is executed to initially assign the variables according to one of the above methods.
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). The method described above provides a solution to the mapping problem, taking into account the noise susceptibility of the qubits. As mentioned earlier, depending on the logic quantum circuit, the limited connectivity of the physical qubits may necessitate SWAP operations in the executable. To complement the quantum circuit, a SWAP operation is provided to exchange the states of the two qubits involved in a quantum operation. This allows a logical qubit to be exchanged between physical qubits and thus transported to a physical qubit that can interact with the other physical qubit involved in the quantum operation. This makes the quantum circuit executable on the real-world platform. An example of a symbolic solver is an 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. The method can be used in particular for solving problems in the field of materials development (Variational Hamiltonian Algorithm (VHA)) or binary optimization problems, for example by Quantum Approximate Optimization Algorithm (QAOA).
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. Ultimately, the goal is to find a valid mapping of the quantum logic circuit onto the physical platform (qubit arrangement), possibly by enriching the original circuit (logic circuit) through swap operations. It is advantageous to keep the number of swap operations as low as possible, both to avoid slowing down the execution of the circuit and to minimize the probability of errors on noisy quantum computers.
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: According to one embodiment, creating the problem involves dividing the quantum logic circuit into sections, each section comprising a quantum operation. In particular, the sections are chosen such that each logic qubit participates in at most one 2-qubit gate or at most one multi-qubit gate. One-qubit gates preferably play no role in the selection of the sections, since they can be executed independently of the connectivity of the physical qubit to which the logic qubit is mapped in the respective section and can later be easily incorporated into the respective sections. Furthermore, creating the problem involves encoding the division in a modeling language of the symbolic solver. Determining the executable quantum circuit involves assigning the variables for each section and performing the subsequent steps for each section of the quantum logic circuit. This is done for each section of the logic quantum circuit, starting with the first section:
■ Ü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. ■ Check whether the logical qubits involved in the quantum operation of the section are mapped to physical qubits that are configured to interact with each other. In other words, this step includes a check whether the quantum operation is executable. If so, the quantum operation of the section is adopted into the executable quantum circuit without modification. However, particularly if an optimization criterion exists, one or more swap operations may still be inserted, and consequently, the mapping will be adjusted, especially if this allows swap operations to be avoided in one of the subsequent sections. The mapping is then used as the basis for the next check.
• Falls nein, werden die nachfolgenden Schritte ausgeführt: • If no, the following steps will be performed:
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. 1) Defining a stationary qubit from among the logical qubits involved in the quantum operation of the section; in particular, the quantum state remains with the physical qubit associated with the logical qubit selected as the stationary qubit. In other words, the stationary qubit is characterized by the fact that it does not participate in any swap operation in this section.
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; 2) Defining a sink qubit. This step can also be performed implicitly, analogous to step 1). That is: If one qubit is selected as stationary in a 2-qubit gate, the other is automatically the sink qubit; conversely, if one qubit is selected as a sink in a 2-qubit gate, the other is automatically the stationary qubit. Specifically, the sink qubit is the logical qubit involved in the quantum operation to be performed, which is to be transferred, in particular by applying at least one SWAP operation, to a physical qubit configured to interact with the physical qubit of the stationary qubit (i.e., a physical qubit that is connected to the physical qubit of the stationary qubit by an edge in the connectivity graph). This qubit is the first sink. The sequence of swap operations (the swapping) starts from the sink, with the number of swap operations chosen such that these qubits are brought to a physical qubit which is set up to interact with the stationary qubit. 3) Applying a SWAP operation to the sink qubit, whereby the logical qubit of the sink qubit is transferred to a physical qubit involved in the SWAP operation, which then becomes the sink qubit;
4) Übernehmen der SWAP-Operation in den ausführbaren Quantenschaltkreis; 4) Transferring the SWAP operation into the executable quantum circuit;
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.)). 5) If, after applying the SWAP operation, the stationary qubit and the sink qubit are not configured to interact with each other, steps 1) to 4), preferably steps 3) and 4), are repeated until the sink qubit is mapped to a physical qubit that is configured to interact with the stationary qubit. In particular, it is important to use an updated mapping between logical qubits and physical qubits for the verification step after completion of the SWAP operations. This is because the logic quantum circuit only indicates on which logical qubits the quantum operation encompassed by the subsequent section of the logic quantum circuit is to be performed. The updated mapping, extended by the SWAP operations performed in the previous section, provides information on whether the logical qubits involved in the upcoming quantum operation are mapped to physical qubits that can interact with each other. That is to say, During verification, the updated diagram is used to check whether further swap operations are necessary, or whether the section can be incorporated into the executable quantum circuit without adding any swap operations, allowing verification of the subsequent section to proceed. However, a valid solution exists only if the nearest neighbor of the stationary qubit is actually reached. This can be ensured by excluding solutions whose swaps do not extend to the stationary qubit (in the modeling language of response set programming, this is called an "integrity constraint").
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: 6) Adjusting the mapping of logical qubits to physical qubits; In other words, following the computation of the SWAP route, the mapping is managed to account for any changes in the assignment of logical and physical qubits at the output of the section compared to the input, potentially due to SWAP operations. For example, this management might look like this:
• 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 • The stationary qubit retains its assignment to the logical qubit • The swapping logical qubit (sink qubit) is mapped to a physical nearest neighbor of the stationary qubit according to the swap operations.
• Physische Qubits, die nicht durch SWAPs beeinflusst, werden „behalten“ ihre zugewiesenen logischen Qubits • Physical qubits that are not affected by swaps will “retain” their assigned logical 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 • For qubits affected by swap operations: Roughly speaking, two cases must be distinguished: a) a physical qubit to which a logical qubit is assigned is part of a swap operation; b) a physical qubit is initially not assigned a logical qubit, but is now part of a 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. • Case (a): according to the calculated SWAP operations, the mapping of the involved logical qubits to the physical qubits is swapped and thus the mapping is adjusted.
• 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.• Case (b): This is not an obstacle, but it should be documented that the physical qubits that do not have a logical qubit assigned to them also have a valid quantum mechanical state (e.g., initialized as |0>) before the final circuit (executable circuit) is executed on the real platform. It is important that records are kept of these qubits, as they may also be part of subsequent/further SWAP operations.
- 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. - Providing the initial mapping of the logic qubits of the logic quantum circuit to the physical qubits of the qubit array and the executable quantum circuit. In other words, specifically, an initial mapping of the logic qubits to the physical qubits is provided, as well as a circuit for the physical qubits augmented with the added SWAP operations. Specifically, this provisioning is achieved by storing the data on internal and/or external data storage (e.g., a hard drive).
Cloud), durch Datenübermittlung bzw. kabellosen oder kabelgebundenen Datenübertragung, etc. Cloud), through data transmission or wireless or wired data transfer, 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). One advantage of this embodiment is that not only can a feasible quantum circuit be found that avoids the use of noisy physical qubits where possible, but also that a solution optimized with respect to the number of swap operations can be determined. In other words... This method enables the creation of a valid mapping of the quantum logic circuit onto the physical platform (qubit array), potentially enriching the original circuit (logic circuit) through swap operations. It is advantageous to keep the number of swap operations as low as possible to avoid slowing down the circuit's execution and to minimize the probability of errors on noisy quantum computers. This method is particularly beneficial for tasks involving quantum logic circuits where there are many interactions between (almost all) qubits (e.g., every qubit interacting with every other qubit, and the hardware platform's connectivity is limited).
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. In particular, the method for mapping a logic quantum circuit onto a qubit array can be designed such that the procedural steps for calculating exact mapping solutions can utilize an answer set solver from the domain of answer set programming. This allows for improved scalability as the number of problem instances to be solved grows. By adapting the method to utilize answer set solvers, it is advantageously exploited that answer set programming, unlike pseudo-Boolean decidability, scales better for platforms with densely connected architectures. Common quantum computers, such as Google's Sycamore quantum computer, exhibit dense connectivity due to their lattice-based topology and can therefore benefit from the use of answer set programming.
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. One advantage of using response set programming is that properties like reachability can be described directly in the modeling language. The reachability definition is used to calculate the sequence of swap operations required to bring two qubits together locally, enabling interaction. The reachability encoding is preferably The system is designed so that the nearest neighbor in the interaction graph of the physical target qubit is reached through swap operations. Furthermore, a new (intermediate) mapping of logical qubits is dynamically created and maintained as soon as swap operations are performed. This new mapping can involve more physical qubits than in the actual logic circuit. This regrouping is then taken into account in subsequent swap operations. It should also be noted that the cost of a "permutation" of qubits (which corresponds to inserting swap operations after every 2-qubit gate operation (quantum operation)) is not statically pre-calculated. In our proposed solution, the calculation of the permutations or the sequence of swap operations is part of the method. This offers the additional advantage that additional constraints can be considered, such as the requirement that certain physical qubits must not be swapped. Considering that one does not want to pre-calculate this permutation and wants to find and prove mappings that require no/few swaps, the solution we have proposed scales very well in contrast to solutions that statically pre-calculate the costs.
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: In particular, creating the task can include an initial mapping of the logical qubits of the quantum logic circuit to the physical qubits of the qubit array. Preferably, the logical qubits can be mapped to the physical qubits such that the quantum operation of the first section, i.e., the section comprising the first quantum operation, in particular the 2-qubit gate (2-qubit interaction) encompassed by it, can be executed without swapping (i.e., applying additional swap operations not included in the quantum logic circuit). In particular, they are placed as nearest neighbors in the connectivity graph. If there are multiple possibilities, the method can be carried out for all of these possibilities, and an executable quantum circuit can be determined for each possibility, preferably selecting the executable quantum circuit with the fewest swap operations for execution on the quantum computer comprising the qubit array underlying the method. The first section is preferably chosen such that each logical qubit of the logical The quantum circuit is involved in one or no multi- or two-gate operation. First, however, a mapping is chosen, taking into account the following criteria when assigning the logical and physical qubits:
• 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. • Each logical qubit is assigned exactly one physical qubit, and • each physical qubit is assigned at most one logical qubit; that is, in particular, a single physical qubit may not be assigned two or more logical qubits. This last criterion specifically addresses the case where the qubit array comprises more physical qubits than logical qubits. In this case, not every physical qubit is assigned a logical qubit during the initial mapping; however, in subsequent processes, physical qubits that were not previously assigned a logical qubit can become part of a swap operation. In this case, it should be ensured that the physical qubits that were not initially assigned a logical qubit also have a valid quantum mechanical state (e.g., initialized as |0>) before the final (executable) quantum circuit is executed on the real platform (quantum computer). It is important to keep track of these physical qubits, which are not assigned a logical qubit during the initial mapping, as they can also be part of subsequent/further SWAP operations. During each assignment of physical qubits, the assignment of physical qubits with values below a defined threshold is avoided according to the "decision" routine described earlier.
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. According to one embodiment, the reachability criterion includes the exclusion of solutions where it is not possible to map the logical qubits involved in the quantum operation of the section to physical qubits that are configured to interact with each other, particularly not by applying SWAP operations.
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. According to one embodiment, when determining the executable quantum circuit, an optimization based on the number of swap operations is performed. Without optimization instructions, the method, or rather the symbolic solver, initially only determines a valid solution that, while avoiding the use of noise-prone physical qubits and being correct, may have too many swap operations. One possibility is to to output all possible valid solutions and then select the solution that has the fewest swap operations overall.
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. According to one embodiment, the method described above is executed multiple times, wherein several valid solutions, each comprising the initial mapping of the logical qubits of the logical quantum circuit to the physical qubits of the qubit array and the associated executable quantum circuit, are provided, and in a further method step, the solution from the several valid solutions whose executable quantum circuit has the fewest SWAP operations is provided for execution on a quantum computer, comprising the qubit array and the hardware-specific connectivity of the physical qubits according to the hardware-specific connectivity graph.
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. According to one embodiment, in the initial mapping, the logical qubits involved in the quantum operation of the first section are mapped to physical qubits that are configured to interact with each other. This advantageously reduces the number of swap operations.
Ein System, umfassend A comprehensive system
• 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 • a classical computer to provide the initial mapping of the logic qubits of the logic quantum circuit to the physical qubits of the qubit array and the executable quantum circuit, according to the method described above and
• 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. • a quantum computer, in particular a NISQ computer, comprising the qubit array and a hardware-specific connectivity of the physical qubits according to the hardware-specific connectivity graph used in the method for executing the quantum logic circuit using the initial mapping of the logical qubits of the quantum logic circuit to the physical qubits of the qubit array and the executable quantum circuit provided by the classical computer, The system offers advantages arising from the benefits of the implemented method. In particular, it provides a scalable and efficient way to initially map the logical qubits of the logic quantum circuit to the physical qubits of the qubit array and the executable quantum circuit on a quantum computer, and to execute this mapping on the quantum computer. Specifically, it advantageously determines an optimized executable quantum circuit that reduces the susceptibility to errors by avoiding the insertion of unnecessary swap operations, thus enabling more reliable and robust operation of the quantum computer.
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. In this context, a classical computer is understood very generally to be a device that can process data using programmable calculation instructions and that is suitable for carrying out the procedure described above, in particular for mapping a logic quantum circuit onto the qubit arrangement of a quantum computer.
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. The advantages of a computer program product, comprising instructions, in particular instructions written in the modeling language of a symbolic solver, especially an answer set solver, which cause the classical computer of the system to execute the procedural steps of the procedure described above, result from the advantages mentioned above.
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: A classical computer for executing the above-described method for mapping a logic quantum circuit onto the qubit array of a quantum computer, in particular a NISQ computer, comprising the qubit array underlying the method with restricted connectivity of the physical qubits, which is described by the hardware-specific connectivity graph, has advantages that result from the advantages of the executed method; in particular, it enables a well-scaling, efficient way to provide a quantum computer with an initial mapping of the logic qubits of the logic quantum circuit onto the physical qubits of the qubit array and the executable quantum circuit. A method for operating a quantum computer, comprising a qubit arrangement, having physical qubits and hardware-specific connectivity of the physical qubits, in particular a quantum computer of the system described above, which has the following steps:
• 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; • Providing the mapping of the logic qubits of the logic quantum circuit to the physical qubits of the qubit array and the executable quantum circuit, according to the procedure described above;
• Initialisieren des Quantencomputers, umfassend das initiale Abbilden der logischen Qubits des logischen Quantenschaltkreises auf die physischen Qubits der Qubitanordnung des Quantencomputers; • Initializing the quantum computer, comprising the initial mapping of the logical qubits of the logical quantum circuit to the physical qubits of the qubit array of the quantum computer;
• 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. • Executing the executable quantum circuit on the quantum computer is advantageously particularly efficient, since the mapping is based on a well-scaling, efficient method as described above.
Weitere Vorteile ergeben sich aus den vorgenannten Vorteilen des Verfahrens. Further advantages arise from the aforementioned advantages of the process.
Kurze Beschreibung der Zeichnungen Brief description of the drawings
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. Exemplary embodiments of the invention are shown in the drawings and are explained in more detail in the following description. Identical reference numerals in the figures denote identical or equivalently acting elements.
Es zeigen They show
Fig. 1 eine Darstellung eines hardwarespezifischen Konnektivitätsgraphen einer Qubitanordnung, umfassend acht Qubits gemäß einem Ausführungsbeispiel, Fig. 1 shows a representation of a hardware-specific connectivity graph of a qubit arrangement comprising eight qubits according to an exemplary embodiment.
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. 2 shows a representation of a logic quantum circuit comprising four logic qubits according to an exemplary embodiment. Fig. 3 shows a flowchart of a method for mapping a logic quantum circuit onto a qubit arrangement comprising a number of physical qubits, according to an embodiment;
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. 4 is a flowchart of part of the method from Fig. 3 for determining an executable quantum circuit according to an embodiment; Fig. 5 is a representation of an initial mapping of the logic qubits to the physical qubits of the qubit arrangement according to an embodiment; Fig. 6 is a representation of an executable quantum circuit comprising four physical qubits according to an embodiment.
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. Fig. 7 is a schematic sketch of a system comprising a classical computer and a quantum computer according to an exemplary embodiment, and Fig. 8 is a flowchart of a method for operating a quantum computer.
Ausführungsbeispiele der Erfindung Exemplary embodiments of the invention
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. Figure 1 shows an example of a hardware-specific connectivity graph 102 of a quantum computer platform. The quantum computer comprises eight physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, which are represented as nodes on a circle in the connectivity graph 102 and are connected to each other via ring-shaped edges 1020. An edge 1020 always connects two physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 and symbolizes a possible interaction between these physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8. In particular, the edge 1020 indicates that a 2-qubit gate quantum operation can be performed on the qubits connected by the edge 1020. Physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 that are not connected by an edge 1020 cannot interact; that is, in particular, no 2-qubit gate quantum operation can be performed on them together. In the present example, the first physical qubit PQ1 can interact with the eighth physical qubit PQ8 and the second qubit PQ2, the second physical qubit PQ2 can additionally interact with the third physical qubit PQ3, the third physical qubit PQ3 can additionally interact with the fourth physical qubit PQ4, the fourth physical qubit PQ4 can additionally interact with the fifth physical qubit PQ6, the sixth physical qubit PQ6 can additionally interact with the seventh The physical qubits interact, and the seventh physical qubit, PQ7, can additionally interact with the eighth physical qubit, PQ8. Connectivity graph 102 thus shows, in particular, the number and connectivity of the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, and PQ8 of the qubit arrangement of the quantum computer.
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. 2 shows an embodiment of a logic quantum circuit 101, which will subsequently be mapped onto the qubit arrangement of the quantum computer, whose hardware-specific connectivity graph 102 is shown in Fig. 1. The first logic qubit LQ1 is represented by the top horizontal line. The quantum operations to be applied to the first logic qubit LQ1 are arranged along the top line, with the quantum operations being executed sequentially from left to right. Similarly, the horizontal lines below represent the second logic qubit LQ2, the third logic qubit LQ3, and the fourth logic qubit LQ4 and their associated quantum operations. A controlled-not (CNOT) operation Q1 is to be performed on the first LQ1 and the third logic qubit LQ3. Furthermore, a CNOT operation Q2 is to be performed on the second logic qubit LQ2 and the fourth logic qubit LQ4. These two 2-qubit gate operations can be combined in a first section 1010, since none of the logic qubits is involved in more than one 2-gate operation. In particular, the two CNOT operations Q1 and Q2 can also be performed simultaneously. That is, the first section 1010 is generally chosen such that each logic qubit LQ1, LQ2, LQ3, LQ4 is involved in one or no multi- or 2-gate operation. A Pauli X gate Q4, i.e., a 1-qubit gate, is then performed on the first logic qubit. This is not considered when choosing the sections for dividing the logic quantum circuit 101. Furthermore, a CNOT gate Q3 is performed on the second logic qubit LQ2 and the third logic qubit LQ3. In the next journal, a CNOT gate Q5 will be performed on the first logic qubit LQ1 and the second logic qubit LQ2. If these quantum operations were combined into one section, the second logical qubit LQ2 would be involved in two 2-qubit gates. Therefore, the second section ends after the CNOT operation Q3 of the second LQ2 and third logical qubit LQ3, and the CNOT operation Q5 of the first LQ1 and second logical qubit LQ2 is included in a third section. Subsequently, a Hadamard gate (1-qubit gate) Q6 and Q7 are applied to the second LQ2 and third logical qubit LQ3, respectively. The operations applied are therefore not considered when dividing the time into sections. In the last time step, a CNOT operation is applied to the first LQ1 and the second logical qubit LQ2, and, in particular, simultaneously, a CNOT operation is applied to the third LQ3 and the fourth logical qubit LQ4. These two CNOT operations can again be combined into a single section, since each qubit participates in only one 2-qubit operation.
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. Fig. 3 shows a flowchart of a method 100 for mapping a logic quantum circuit, for example the logic quantum circuit 101 shown in Fig. 2, onto a qubit array comprising a number of physical qubits PQ1, PQ, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, wherein the qubit array is represented, for example, by the hardware-specific connectivity graph 102 shown in Fig. 1. Furthermore, information is available that the fifth physical qubit, PQ5, has a lower quality compared to the other physical qubits, i.e., it is more susceptible to noise. This was determined, for example, by executing a test routine on the quantum computer. In other words, it was determined that both 1-qubit and 2-qubit operations involving the fifth physical qubit PQ5 in Fig. 2 are particularly error-prone (or rather, the probability of an error on this qubit is high). Therefore, a mapping of the logic quantum circuit to the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, and PQ8 is preferred, in which no logic qubit is assigned to this fifth physical qubit PQ5. Furthermore, no swap operation involving this fifth physical qubit PQ5 should be included.
Diese Informationen zum fünften physischen Qubit PQ5 werden im nachfolgend beschriebenen Verfahren 100 als initiale Nebenbedingung 103 berücksichtigt. This information about the fifth physical qubit PQ5 is taken into account as an initial constraint 103 in the procedure 100 described below.
Das Verfahren 100 umfasst die nachfolgenden Schritte: Es erfolgt ein Bereitstellen von Eingabedaten (101 , 102, 103), umfassend: Procedure 100 comprises the following steps: Input data (101, 102, 103) is provided, including:
■ den hardwarespezifischen Konnektivitätsgraphen 102 der physischen Qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, ■ the hardware-specific connectivity graph 102 of the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8,
■ den logischen Quantenschaltkreises 101 , und ■ the logical quantum circuit 101 , and
■ 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). ■ the initial constraints 103 of the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 (in this embodiment, that the physical qubit PQ5 should be avoided, as described above).
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). For example, this information can be retrieved from an internal and/or external storage unit or received from a data transmission unit. In other words, this section compiles the facts about the number of logical qubits LQ1, LQ2, LQ3, LQ4, the number and quality of the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, and the connectivity graph 102. Furthermore, a task 105 is created to map the logical quantum circuit 101 to the qubit arrangement in a modeling language of a symbolic solver. Boundary conditions are created based on the hardware-specific connectivity graph 102 and the logical quantum circuit 101. If the logical quantum circuit 101 is available, it can be divided into sections, as explained in the example of Fig. 2. This can be done, in particular, as part of creating the task 105. In particular, each section comprises a quantum operation Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, specifically a 2-qubit operation, and may also include multiple 2-qubit operations, provided that each logical qubit participates in at most one of the 2-qubit operations. In other words, the logic circuit 101 is pre-structured into sections (slices), with the requirement that each section contains at most one 2-qubit gate, specifically LQ1, LQ2, LQ3, LQ4 per logical qubit. (1-qubit interactions can be omitted for now; these can be inserted later at the appropriate place in the final executable quantum circuit 1002).
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. The task comprises several variables, where the variables represent an encoding of an assignment of the physical qubits; in particular, it is encoded here in the modeling language of the symbolic solver that an assignment of the logical qubits LQ1 , LQ2, LQ3, LQ4 and the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 is carried out such that logical qubits LQ1 , LQ2, LQ3, LQ4 of a quantum operation are mapped to physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, which can interact with each other (boundary condition). For the first section in Fig. 2, this translates into a propositional logic formula, stating that the first logical qubit LQ1 and the third logical qubit LQ3 can be mapped to all physical qubit pairs which, according to connectivity graph 102, can interact with each other, for example, the first physical qubit PQ1 and the second physical qubit PQ2, the second physical qubit PQ2 and the third physical qubit PQ3, the third and fourth physical qubits PQ3, PQ4, the fourth and fifth physical qubits PQ4, PQ5, the fifth and sixth physical qubits PQ5, PQ6, the sixth and seventh physical qubits PQ6, PQ7, the seventh and eighth physical qubits PQ7, PQ8, and the eighth and first physical qubits PQ8, PQ1. Analogous considerations are made for the second logical qubit LQ2 and the fourth logical qubit LQ3.
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: Once the task is created (105), i.e., in this example, once all propositional logic formulas relevant to the mapping have been created, the variables are assigned. The following steps are performed (106) until all variables are assigned:
1) Initiale Belegung mindestens einer der Variablen des symbolischen Lösers 1) Initial assignment of at least one of the variables of the symbolic solver
■ unter Einhaltung der Randbedingungen (siehe vorheriger Schritt), ■ subject to compliance with the boundary conditions (see previous step),
■ unter Einhaltung von Konflikt-Nebenbedingungen und ■ subject to compliance with conflict ancillary conditions and
■ unter Einhaltung der initialen Nebenbedingungen der physischen Qubits, sofern die initialen Nebenbedingungen der physischen Qubits mit den■ subject to the initial constraints of the physical qubits, provided that the initial constraints of the physical qubits are compatible with the
Randbedingungen und Konflikt-Nebenbedingungen vereinbar sind; Boundary conditions and conflict-related side conditions are compatible;
2) Bestimmung eines Implikationsgraphen für die initiale Belegung der mindestens einen Variablen unter Berücksichtigung der Eingabedaten; 2) Determination of an implication graph for the initial assignment of at least one variable, taking into account the input data;
3) Überprüfen, ob ein Abbruchkriterium erfüllt ist; 3) Check whether a termination criterion is met;
■ Ist das Abbruchkriterium nicht erfüllt: Wiederholen der Schritte 1) und 3) für ein weitere Variable; ■ If the termination criterion is not met: Repeat steps 1) and 3) for another variable;
■ Ist das Abbruchkriterium erfüllt: ■ Is the termination criterion met?
• Bestimmen einer Konflikt-Nebenbedingung aus der Belegung der Variablen, welche zum Erfüllen des Abbruchkriteriums führte; • Determining a conflict constraint from the variable assignment that led to the fulfillment of the termination criterion;
• Hinzufügen der Konflikt-Nebenbedingung zur Aufgabe; • Adding the conflict constraint to the task;
• Rückkehr zu Schritt 1) der initialen Belegung der ersten an der Erfüllung des Abbruchkriteriums beteiligten Variablen; • Return to step 1) of the initial assignment of the first variables involved in fulfilling the termination criterion;
• 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; • Providing the assignment of variables for mapping 1001 of the logical qubits LQ1 , LQ2, LQ3, LQ4 to the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the qubit array;
• 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. • Determining and providing 107 an initial mapping 1001 of the logical qubits LQ1 , LQ2, LQ3, LQ4 to the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the qubit array and an executable quantum circuit 1002 from the assignment of the variables.
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. An example of a variable definition for the symbolic solver is outlined as follows: Each logical qubit is assigned a binary variable that indicates which physical qubit the logical qubit is mapped to for each slice of the logic circuit, where Iq represents logical qubit, pq represents physical qubit, and s represents slice: x_lq1_pq1_s1 \in {0,1} (in other words, the variable encodes whether logical qubit 1 is mapped to physical qubit 1 in slice 1 (0=yes/true, 1=no/false)) 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. With “F” as the last numbering of the sections.
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). The initial mapping of the logical qubits to physical qubits in the executable quantum circuit can be read from all variables x_lqX_pqY_s1 that have the value 1 (with "X" representing the number of logical qubits and "Y" representing the number of physical qubits).
Die finale Abbildung (vor dem letzten Schritt der Ausführung auf dem Quantencomputer) jeweils dann jeweils über x_lqx_pqx_sF = 1. The final mapping (before the last step of execution on the quantum computer) is then always via 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. If the variable x_lq_pqP_sF' changes in value over the range 2 <= F'<= F for a logical qubit LQ with a fixed initial physical qubit pqP in section 1 of the initial circuit (x_lq_pqP_s1 = 1), then the logical qubit has been swapped at least once. The route/sequence of SWAP operations required for any necessary exchanges of physical qubits in sections of the circuit are accordingly encoded in binary variables.
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. If one wants to encode initial constraints, e.g., that PQ2 should be avoided if possible, then in the respective modeling language of the preferred symbolic solver, it is encoded that x_lqX_pq2_sY = 0 for all “X” over all logical qubits and for all 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. The method 100 described in Fig. 3 enables a mapping which takes into account the quality of the individual physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, but does not enable optimization of the number of SWAP operations in the executable circuit.
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: The embodiment shown in Fig. 4 is a further development which, in addition to assigning the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, makes it possible to optimize, in particular to reduce or minimize, the number of SWAP operations inserted to map logical qubits, which in the following section participate in a common quantum operation, to physical qubits that can interact with each other. Fig. 4 shows the determination 107 of the executable circuit 1002 according to an embodiment. For each section, starting with the first section, the following steps are performed:
• 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. • A check 1071 is performed to verify whether the logical qubits LQ1, LQ2, LQ3, LQ4 involved in the quantum operation Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8 of the section are mapped to physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 that are configured to interact with each other. For the first section, this is done using the initial map 1001, which provides information about the mapping of the logical to the physical qubits. After determining a SWAP route for the first section, the mapping of the logical and physical qubits is then checked again and adjusted if necessary, provided it differs from the initial map 1001. This adjusted map is then passed to the check step 1071 for the The following section is used as a basis, after which the illustration may be adjusted again, etc.
■ 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. ■ If yes 1072, i.e., if the logical qubits LQ1, LQ2, LQ3, LQ4 involved in the quantum operation Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 of section 1072 are mapped to physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 which are configured to interact with each other, then preferably no SWAP operation is inserted and the quantum operation Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 can be directly incorporated into the executable quantum circuit 1002. In this case, no adjustment of the mapping of the logical to the physical qubits is necessary. Particularly if an optimization criterion exists, one or more swap operations may still be inserted, consequently requiring an adjustment of the allocation, especially if this can save swap operations in one of the subsequent sections. The allocation will then form the basis of the next check, 1071.
■ 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: ■ If no 1073, i.e., if the logical qubits LQ1 , LQ2, LQ3, LQ4 involved in the quantum operation Q1, Q2, Q3, Q4, Q5, Q6, Q6, Q7, Q8 of the section are mapped to physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 which, according to connectivity graph 102, are not configured to interact with each other, the following steps are carried out:
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. 1) Select the logical qubit LQ1, LQ2, LQ3, LQ4 that should remain physically connected to its physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 (stationary qubit) or select the logical qubit LQ1, LQ2, LQ3, LQ4 that should be swapped (sink qubit). The qubit to be swapped is the first sink.
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. 2) Start the SWAPing from the sink, but ensure that in the final solution the last SWAP operation brings the qubit to be SWAPed as the nearest neighbor to the stationary qubit.
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; 3) After a SWAP operation, a new sink is set, from which the next SWAP is then to be calculated. Then step 2) can again determine the next SWAP operation. In other words, in steps 2) and 3), a SWAP operation is applied to the sink qubit, whereby the logical qubit LQ1, LQ2, LQ3, LQ4 of the sink qubit is transferred to a physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 involved in the SWAP operation, which then becomes the sink qubit; 4) Transfer 1074 of the SWAP operation into the executable quantum circuit 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.). 5) We iteratively calculate the respective swaps using the instructions above (i.e., 2) and 3)). However, a valid solution only exists if we actually reach the nearest neighbor of the stationary qubit. We ensure this by specifically excluding solutions whose swaps do not extend to the stationary qubit (in the modeling language, this is called an "integrity constraint").
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 6) Steps 2) through 5) should now have calculated a swap route. The next step is to manage whether swap operations have changed the mapping of logical qubits to physical qubits.
• Das stationäre Qubit behält seine Zuweisung des logischen Qubits LQ1 , LQ2, LQ3, LQ4. • The stationary qubit retains its assignment of the logical 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. • The SWAP-ending logical qubit LQ1 , LQ2, LQ3, LQ4 is mapped to a physical nearest neighbor PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the stationary qubit according to the SWAP operations.
• 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. • Physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 that are not affected by SWAPs will “retain” their assigned logical 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 • For qubits affected by swap operations, two essential cases must be distinguished: (a) a physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, to which a logical qubit LQ1, LQ2, LQ3, LQ4 is assigned, is part of a swap operation; (b) a physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 is initially not assigned a logical qubit LQ1, LQ2, LQ3, LQ4, but is now part of a 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 • Case (a): according to the calculated SWAP operations, the mapping of the involved logical qubits LQ1, LQ2, LQ3, LQ4 to the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 is swapped.
• 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. • Case (b): This is not an obstacle, but it must be ensured that the physical qubits that do not have logical qubits assigned LQ1, LQ2, LQ3, LQ4 also have a valid quantum mechanical state before the execution of the final circuit on the real platform (e.g. initialized as |0>). It is important that records are kept of these qubits, as they can also be part of subsequent/further SWAP operations.
Wie bereits erwähnt, können Optimierungskriterien verwendet werden: As mentioned previously, optimization criteria can be used:
• Ohne Optimierungsanweisungen produziert der Antwortmengenlöser erstmal nur eine gültige Lösung, welche die Güte der physischen Qubits bei der• Without optimization instructions, the answer set solver initially only produces one valid solution, which assesses the quality of the physical qubits in the
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. The diagram takes into account which solutions are correct but may contain too many swap operations. Alternatively, you can display all possible valid solutions and then select the one with the fewest swap operations.
• 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 • Optimization instructions are added. The first instruction is that the mapping of the logical qubits should initially be done in such a way that NO SWAP operations are necessary. However, it may be that no solution exists that does without SWAPs. Therefore: Try to minimize the total number of SWAP operations in the final circuit 1002.
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: An initial mapping of the logical qubits LQ1, LQ2, LQ3, LQ4 of the logic quantum circuit 101 to the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the qubit arrangement takes place, which takes into account the following rules:
• Jedem logischen Qubit LQ1 , LQ2, LQ3, LQ4 wird genau ein physisches Qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 zugeordnet und • Each logical qubit LQ1, LQ2, LQ3, LQ4 is assigned exactly one physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 and
• jedem physischen Qubit PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 wird maximal ein logisches Qubit LQ1 , LQ2, LQ3, LQ4 zugeordnet wird. • Each physical qubit PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 is assigned a maximum of one logical qubit LQ1 , LQ2, LQ3, LQ4.
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.This can be done as described in the embodiment shown in Fig. 3, in order to assign the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 with the logical qubits LQ1 , LQ2, LQ3, LQ4 using the symbolic solver.
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. Taking into account the connectivity graph 102 from Fig. 1 and the logic quantum circuit 101 from Fig. 2, the initial mapping 1001 comprises the following mapping, which is shown in Fig. 5, where the arrows indicate the mapping: the first logical qubit LQ1 is mapped to the first physical qubit PQ1, the third logical qubit LQ3 is mapped to the second physical qubit PQ2, the second logical qubit LQ2 is mapped to the third physical qubit PQ3, and the fourth logical qubit LQ4 is mapped to the fourth physical qubit. This is a valid initial mapping that results in the quantum operations Q1, Q2 of the The first section 1010 can be executed without inserting a swap operation. Furthermore, the solution is also minimal with respect to the number of swap operations, as will be shown after performing procedure 100. Other valid initial mappings exist that require only one swap operation, but there is no mapping that can function without a swap operation. There are also other mappings that require more than one swap operation to be valid. The solutions exhibiting a minimal number of swap operations are preferred and can be determined, for example, by introducing an optimization criterion and/or by repeatedly performing the procedure and subsequently selecting a solution with a minimal number of swap operations, either per section or globally, counted across the entire executable quantum circuit.
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. For each section of the logic circuit 101, starting with the first section 1010, the steps shown in Fig. 4 are now performed to determine the executable quantum circuit 1002. In other words, for each section, it is checked whether the included quantum operation (2-qubit gate) can be executed directly by the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8, considering their limited connectivity as defined in the connectivity graph 102, or whether the logical qubits LQ1, LQ2, LQ3, LQ4 must first be mapped to another physical qubit PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 by inserting a swap operation. For each assignment, the embodiment described in Fig. 3 is used to take into account the quality of the physical qubits during the assignment. The exact procedure for determining the executable quantum circuit 1002 according to one embodiment is shown as a flowchart in Fig. 4.
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. As input data for the procedure 100, the connectivity graph 102 and the logical quantum circuit can be prepared in a manner suitable for the modeling language of an answer set solver and then, together with the encoding (in the modeling language) of a valid mapping solution, given to the answer set solver (e.g., the software dingo [5]). As output, the procedure 100 generates the initial mapping 1001 of the logical qubits LQ1, LQ2, LQ3, LQ4 from the logical quantum circuit 101 to the physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 before the execution of the circuit (which is executed on the quantum computer platform) and the new circuit (i.e., the executable quantum circuit 1002, based on the original logic circuit 101) which potentially contains SWAP operations. In particular, the method 100 can be an implementation of an optimization criterion for optimizing/minimizing the number of SWAP operations, as explained above.
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. 6 shows a valid solution for the executable quantum circuit 1002, which results from the method described in Figures 3 and 4, when the input data shown in Figures 1 and 2 are used for the method 100. In contrast to the logic circuit 101 shown in Fig. 2, the horizontal lines in the executable quantum circuit 1002 represent physical qubits PQ1, PQ2, PQ3, PQ4. In this embodiment, the number of logical LQ1, LQ2, LQ3, LQ4 and physical qubits PQ1, PQ2, PQ3, PQ4 are the same; however, valid solutions can generally be found that use more physical than logical qubits, for example, by assigning logical qubits to physical qubits via swap operations, which did not appear in the initial diagram. In these cases, the executable quantum circuit 1002 can also have more horizontal lines (= number of physical qubits) than the logic circuit 101 (= number of logic qubits). The initial mapping 1001 shown in Fig. 5 provides information about the mapping between the logic qubits and the physical qubits before the first section. In this solution, the fifth physical qubit PQ5 is not used, as required by the initial constraint 103. Note: there are other valid mapping solutions that do not use the fifth physical qubit PQ5. The mapping changes after the second section because a SWAP operation Q0 was inserted into the executable circuit 1002, which did not occur in the logic quantum circuit 1001. This SWAP operation is due to the fact that, according to the second section, i.e., in the third section, an interaction (application of a CNOT gate) between the first logical qubit LQ1 and the second logical qubit LQ2 is provided, but according to the connectivity graph 102 in Fig. 1, they cannot interact with each other, since in the initial mapping the third logical qubit LQ3 is mapped to the second physical qubit PQ2 and the second logical qubit LQ2 to the third physical qubit PQ3. However, there is no edge 1020 between the first PQ1 and the third physical qubit PQ3 in the Connectivity graphs are plotted such that the second physical qubit PQ2 and the third physical qubit PQ3 must exchange their states after the second section via a SWAP operation, and thus the second logical qubit LQ2 is subsequently assigned to the second physical qubit PQ2, and the third logical qubit LQ3 is assigned to the third physical qubit. Since the assignment of the logical and physical qubits in the numbering corresponds to each other from the third section onwards (LQ1->PQ1, LQ2->PQ2, LQ3->PQ3, LQ4->PQ4), the executable quantum circuit 1002 and the logical quantum circuit 101 are identical from the third section onwards.
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. 7 shows a schematic sketch of a system comprising a computing device, in particular a classical computer 201, on which the above-described method 100 is executed and which provides the initial diagram 1001 and the executable quantum circuit 1003 for a quantum computer 202, which comprises a qubit arrangement which, at least with respect to the number of physical qubits PQ1, PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 and their connectivity, is such as is represented by the hardware-specific connectivity graph 102, which is used in the classical computer 201 in the method 100. This allows the quantum logic circuit 101 to be executed on the quantum computer 202, or rather, the quantum logic circuit is executable on the quantum computer 202.
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:Fig. 8 shows a flowchart of a method 300 for operating a quantum computer 202, for example the quantum computer 202 of the system 200 shown in Fig. 7. The method comprises the following steps:
• 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; • Providing the mapping 1001 of the logic qubits LQ1 , LQ2, LQ3, LQ4 of the logic quantum circuit 101 onto the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the qubit array and the executable quantum circuit 1002, according to the procedure shown in Figures 3 and/or 4;
• 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). • Initializing 301 of the quantum computer 202, comprising the initial mapping of the logical qubits LQ1 , LQ2, LQ3, LQ4 of the logical quantum circuit 101 to the physical qubits PQ1 , PQ2, PQ3, PQ4, PQ5, PQ6, PQ7, PQ8 of the qubit array of the quantum computer 202; • Executing 302 of the executable quantum circuit (1002) on the quantum computer (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. Output 303 can be used to provide a result determined by the quantum computer 202 based on the quantum logic circuit 101; in particular, it can be output, stored, transmitted, or displayed. ```
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102024206469.6A DE102024206469A1 (en) | 2024-07-09 | 2024-07-09 | Method for determining a mapping of a logic quantum circuit onto a qubit arrangement using a symbolic solver, system and method for operating a quantum computer |
| DE102024206469.6 | 2024-07-09 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2026012899A1 true WO2026012899A1 (en) | 2026-01-15 |
Family
ID=96429685
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2025/069017 Pending WO2026012899A1 (en) | 2024-07-09 | 2025-07-03 | Method for determining a mapping of a logic quantum circuit onto a qubit arrangement by means of a symbolic solver, system and method for operating a quantum computer |
Country Status (2)
| Country | Link |
|---|---|
| DE (1) | DE102024206469A1 (en) |
| WO (1) | WO2026012899A1 (en) |
Citations (3)
| 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 |
-
2024
- 2024-07-09 DE DE102024206469.6A patent/DE102024206469A1/en active Pending
-
2025
- 2025-07-03 WO PCT/EP2025/069017 patent/WO2026012899A1/en active Pending
Patent Citations (3)
| 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)
| 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 (en) | 2026-01-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE112017007826T5 (en) | Simulate quantum circuits | |
| DE112020004067B4 (en) | HYBRID DATA MODEL PARALLELITY FOR EFFICIENT DEEP LEARNING | |
| DE112018006047T5 (en) | DEFENSE OF FUNCTIONAL FUNCTIONS IN QUANTUM APPROXIMATION OPTIMIZATION | |
| DE112017000855B4 (en) | Energy-efficient temporally multiplexed neurosynaptic core for implementing neural networks | |
| WO2003021366A1 (en) | Method for validating simulation results of a system and equivalence comparison of digital circuits based on said method | |
| DE3485999T2 (en) | HIGH-SPEED PROCESSING SYSTEM FOR COMPUTER SYSTEM. | |
| DE3855860T2 (en) | Circuit change system and method, method for generating inverted logic and logic design system | |
| DE112020002186B4 (en) | DNN TRAINING WITH ASYMMETRIC RPU UNITS | |
| DE19814422A1 (en) | Process for obtaining solution to a constraint problem | |
| DE102009038454A1 (en) | A system and method for reducing execution divergence in parallel processing architectures | |
| DE112018006377T5 (en) | MERGING SPARELY OCCUPIED KERNELS TO APPROXIMATE A FULL KERNEL OF A NEURONAL FOLDING NETWORK | |
| DE112019000676T5 (en) | CENTRAL SCHEDULER AND INSTRUCTION ASSIGNMENT FOR A NEURAL INFERENCE PROCESSOR | |
| DE202016107141U1 (en) | Network stochastic cross-layer optimization to reach the traffic flow target at minimum cost | |
| DE3855494T2 (en) | Interrogator and method | |
| DE112019004391T5 (en) | LARGE MODEL SUPPORT FOR DEEP LEARNING | |
| DE112022007534T5 (en) | Method and device for graph neural architecture search under distributional shift | |
| DE112022001875T5 (en) | ACCELERATING DECISION TREE INFERENCES | |
| DE112016007411T5 (en) | FUZZY INPUT FOR AUTOENCODER | |
| DE102021124252A1 (en) | Neural network systems for abstract thinking | |
| WO2026012899A1 (en) | Method for determining a mapping of a logic quantum circuit onto a qubit arrangement by means of a symbolic solver, system and method for operating a quantum computer | |
| DE102023209291A1 (en) | Method for mapping a logical quantum circuit to a qubit array comprising a number of physical qubits, system and method for operating a quantum computer | |
| DE102022131760A1 (en) | MODEL GENERATION METHOD, MODEL GENERATION PROGRAM, MODEL GENERATION DEVICE AND DATA PROCESSING DEVICE | |
| DE10324565A1 (en) | Process and device to design micro electronic circuits by means of high- level-synthesis has capability to plan circuits with as little power loss as possible | |
| DE102019135542A1 (en) | Method for creating a graph database | |
| EP4506867A1 (en) | Method and device for computer-implemented processing of a quantum circuit on a quantum processing unit |