Qubits programmieren, modularisieren und kompilieren Qrisp 0.8 bringt den Quantenvorteil in greifbare Nähe

Quelle: Pressemitteilung IQM 3 min Lesedauer

Anbieter zum Thema

„Qrisp“ ist eine höhere Programmiersprache für die Programmierung von Quantencomputern. Sie ermöglicht Entwicklerinnen und Entwicklern komplexe Quantenalgorithmen mit einer leicht zu erlernenden, modernen Syntax zu schreiben und diese bis auf Schaltkreisebene zu kompilieren. Jetzt meldet IQM einen wesentlichen Fortschritt im Compiler.

Um Quantencomputer anzusprechen, müssen Programmier-Tools erst erfunden werden. Doch die Open-Source-Werkzeuge des Projekts „Qrisp“ können sich sehen lassen. (Bild: ©  satria - stock.adobe.com / KI-generiert)
Um Quantencomputer anzusprechen, müssen Programmier-Tools erst erfunden werden. Doch die Open-Source-Werkzeuge des Projekts „Qrisp“ können sich sehen lassen.
(Bild: © satria - stock.adobe.com / KI-generiert)

Mit Qrisp sollen sich Programmierer:innen auf die entscheidenden Aspekte ihres Codes konzentrieren können; denn der Arbeitsaufwand für das Management einzelner Qubits und Quantengatter lasse sich reduzieren. Durch ein ausgeklügeltes Qubit-Management-System werden recycelte Quantenressourcen automatisch über Funktionen hinweg wiederverwendet.

So lässt sich Qrisp-Code modularisieren, so dass sich Programme in kleinere Module unterteilen lassen. Diese sind dann flexibel einsetzbar und müssen nicht immer wieder neu implementiert werden. Das Versprechen: Kombiniert mit einem Typensystem, welches in eine Python-Infrastruktur integriert ist, wird die Entwicklung skalierbarer Algorithmen zu einem unkomplizierten Prozess.

„Qrisp“ ist ein Open-Source Projekt bei der Eclipse Foundation und wird hauptsächlich vom Fraunhofer Fokus entwickelt und durch das Bundesministerium für Wirtschaft und Klimaschutz (BMWK) und die Europäische Union gefördert.(Bild:  Fraunhofer Fokus)
„Qrisp“ ist ein Open-Source Projekt bei der Eclipse Foundation und wird hauptsächlich vom Fraunhofer Fokus entwickelt und durch das Bundesministerium für Wirtschaft und Klimaschutz (BMWK) und die Europäische Union gefördert.
(Bild: Fraunhofer Fokus)

Das Qrisp-Framework

Die zentrale Datenstruktur für die abstrakte Quantenprogrammierung ist die so genannte Quantum Variable, heißt es auf der Fraunhofer Fokus-Website. Ihr Lebenszyklus wird, neben anderen Aspekten, von der Klasse „Quantum Session“ gesteuert. Diese ist auch für die Interaktion mit der Quantum Processing Unit (QPU) zuständig. Zur Verwaltung dieser Klasse müssen Qrisp-Nutzer:innen keine Quantum-Session«-Objekte verwenden und damit die Qubits selbst verwalten, sondern können stattdessen direkt die Quantum Variable nutzen.

Man kann Quantum Variable als abstrakte Basisklasse für spezifischere Datentypen vorstellen. Qrisp bietet fünf solch fortgeschrittener Quantum-Datentypen:

  • „Quantum Float“: Darstellung und Verarbeitung von Zahlen mit beliebiger Genauigkeit
  • „Quantum Modulus“: Darstellung und Verarbeitung von modularer Arithmetik
  • „Quantum Bool“: Darstellung boolescher Werte
  • „Quantum Char“: Darstellung von Buchstaben und Schriftzeichen / Characters
  • „Quantum String“: Darstellung von Zeichenketten

Außerdem gehört, dass sich Quantum Variablen desselben Typs in der Klasse „Quantum Array“ verwalten lasen. Diese Klasse bietet praktische und bewährte Funktionen wie „Slicing“, also der einfache Zugriff auf einen bestimmten Teil des Arrays, oder „Reshaping“, das Anpassen der Größe des Arrays. Mit dem Konzept der „Quantum Environments“ ist es möglich, viele der etablierten Methoden der klassischen Programmierung zu nutzen, wie die bedingte Ausführung von Codeblöcken.

Ansprechen der Quantenschaltkreise

Da sich Quantenschaltkreise bei der Implementierung und Forschung zu Quantenalgorithmen etabliert haben, bieten das Qrisp-Projekt mit dem „Circuit-Construction-Modul“ auch eine Möglichkeit zur Konstruktion solcher Quantenschaltkreise. Die Struktur und Benennung der Klassen und Methoden sind für eine bessere Kompatibilität so weit wie möglich vom bekannten Programmier-Framework „Qiskit“ übernommen worden.

Zudem verfügt Qrisp ber eine Netzwerkschnittstelle. Das soll eine anwendungsorientierte Algorithmenentwicklung gewährleisten und somit erlauben, Quantenprogramme auf realen (Remote)-Quantenbackends auszuführen. Diese Schnittstelle wurde bereits mit verschiedenen Anbietern wie Eleqtron, IQM, AQT und IBM erfolgreich getestet.

Der Kompilierungserfolg

IQM meldet nun einen weiteren Erfolg: „Wir haben den vollständigen Faktorisierungsalgorithmus bei Schlüsselgrößen von 2048 Bit bis hin zu einzelnen Gatterkomponenten kompiliert und detaillierte Ressourcenschätzungen erstellt: genaue T-Gatter-Anzahlen, Qubit-Budgets und Schaltungstiefen bei einer Rate von etwa 10⁹ Gatter pro Sekunde", heißt es in einem Linkedin-Post.

Das sei vermutlich noch von keinem anderen Compiler erreicht worden, so IQM. Frühere Schätzungen in dieser Größenordnung hätten sich auf theoretische Modelle oder symbolische Extrapolationen gestützt, nicht aber auf einer tatsächlichen Kompilierung auf Gatterebene.

Der Fortschritt sei nicht zu unterschätzen: Denn Ressourcenschätzungen in dieser Größenordnung verwandelten vage Versprechungen über den Quantenvorteil in konkrete technische Ziele. „Dies sind die Zahlen, die Hardware-Teams benötigen, um fehlertolerante Quantensysteme mit Zuversicht zu planen.

Die Version 0.8 von Qrisp bietet außerdem:

  • Eine NumPy-ähnliche Schnittstelle für nicht-unitäre lineare Algebra, die Matrixinversion, Hamilton-Simulationen und Spektraltransformationen über einfache Python-Operatoren ermöglicht.
  • Einen nativen MLIR-Quantum-Dialekt, der die Quantenkompilierung mit derselben industriellen Infrastruktur verbindet, die auch im klassischen Hochleistungsrechnen zum Einsatz kommt.
  • Stim-Integration für Workflows zur Quantenfehlerkorrektur, die eine Brücke zwischen der Programmierung auf hoher Ebene und fehlertoleranten Werkzeugen schlägt

(ID:50799018)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu RZ- und Server-Technik

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung