ETH bringt Programmiersprache für Quantencomputer

Wie Programmierende denken

Das Potenzial der Quantencomputer wirklich auszuschöpfen, erfordert nicht nur die neueste Technologie, sondern auch eine Quantenprogrammiersprache, um die Quantenalgorithmen zu beschreiben. Grundsätzlich stellt ein Algorithmus ein «Rezept» dar, um ein Problem zu lösen, und eine Programmiersprache beschreibt den Algorithmus so, dass ein Computer die benötigten Berechnungen ausführen kann.
Heute sind Quantenprogrammiersprachen stark an die Hardware angelehnt, das heisst sie beschreiben genau das Verhalten der zugrundeliegenden Schaltkreise. Für Programmiererinnen und Programmierer sind solche «Hardwarebeschreibungssprachen» umständlich und fehleranfällig, da man die einzelnen Programmanweisungen sehr detailliert ausformulieren und entsprechend viele Einzelheiten der Implementierung von Quantenalgorithmen explizit ausdrücken muss.
“Silq erlaubt es, die Potenziale der Quantencomputer besser zu nutzen als mit bisherigen Sprachen.„
Martin Vechev, Professor für Informatik, ETH Zürich
An dieser Stelle setzen Martin Vechev und seine Gruppe mit der Programmiersprache Silq an. «Silq ist die erste Quantenprogrammiersprache, die sich nicht primär an der Bau-​ und Funktionsweise der Hardware orientiert, sondern an der Denkweise der Programmierenden, die ein Problem lösen wollen und dafür nicht jedes Detail der Rechnerarchitektur und der Implementierung verstehen müssen», sagt Benjamin Bichsel, Doktorand in Vechevs Gruppe, der die Entwicklung von Silq betreut.
Computersprachen, die von den technischen Details des jeweiligen Computertyps abstrahieren, bezeichnen Informatikerinnen und Informatiker als höhere Programmiersprachen. Für Quantencomputer ist Silq die erste höhere Programmiersprache überhaupt. Höhere Programmiersprachen sind ausdruckstärker, das heisst sie können auch komplexe Aufgaben und Algorithmen mit weniger Text (Code) ausdrücken. Das macht sie für Programmiererinnen und Programmierer verständlicher und einfacher in der Verwendung. Zudem kann man sie auf verschiedene Rechnerarchitekturen anwenden.

Autor(in) Florian Meyer, ETH-News



Das könnte Sie auch interessieren