Connect with us

Quantum Computing

Scientists Develop First-Ever High-Level Programming Language for Quantum Computers

Published

 on

Computer scientists at ETH Zurich have developed the first-ever high-level programming language that can program quantum computers just as safely and reliably as classical ones. The new breakthrough is a major step forward in quantum computing, making the task of programming quantum computers much easier than before. 

Martin Vechec is a computer science professor in ETH’s Secure, Reliable and Intelligent Systems Lab (SRI).

“Programming quantum computers is still a challenge for researchers,” Vechev says. “Which is why I’m so excited that we can now continue ETH Zurich’s tradition in the development of quantum computers and programming languages.”

“Our quantum programming language Silq allows programmers to utilize the potential of quantum computers better than with existing languages, because the code is more compact, faster, more intuitive and easier to understand for programmers.”

Silq was introduced at the programming languages conference PLDI 2020

Quantum Computers vs Classical Computers

Quantum computing is becoming increasingly important, and there is enormous potential with the technology. Quantum computers are capable of solving problems faster than classical computers by using entangled quantum states. It is in these states where bits of information overlap at certain points of time, and the computers have the potential to tackle issues that classical computers are incapable of solving in a reasonable timeframe. 

In the late summer of 2019, quantum computing saw another big advancement when one was able to solve a specific problem faster than the fastest classical computer. 

Even with the recent advancements, there are still many challenges. Some “quantum algorithms” are unable to be calculated on quantum hardware due to their high-level of errors. 

The New Language: Silq

Current quantum programming languages are closely related to specific hardware, and these languages are hard to deal with and result in too many errors. This is due to the necessity for extremely detailed instructions for implementing quantum algorithms.

Silq was developed in order to overcome this challenge.

“Silq is the first quantum programming language that is not designed primarily around the construction and functionality of the hardware, but on the mindset of the programmers when they want to solve a problem — without requiring them to understand every detail of the computer architecture and implementation,” says Benjamin Bichsel, a doctoral student and the one responsible for overseeing Sliq. 

Silq is the first ever high-level programming language for quantum computers, which means it is more expressive and requires less code to describe complex tasks and algorithms. These types of languages are easier to use for programmers and can be applied to different computer architectures.

The newly developed language also tackles the issue of errors. Classical computers use the method of automatically erasing values in order to relieve memory, which is called “garbage collection.” Within quantum computers, this is a bigger problem due to quantum entanglement, which can cause the previously calculated values to interact with current ones. This can lead to interference with the correct calculation, so an advanced technique of computation has to be used.

“Silq is the first programming language that automatically identifies and erases values that are no longer needed,” explains Bichsel.

In order to do this, only programming commands that do not contain any special quantum operations are used in their uncomputation method. 

“Our team of four has made the breakthrough after two years of work thanks to the combination of different expertise in language design, quantum physics and implementation. If other research and development teams embrace our innovations, it will be a great success,” says Bichsel.

 

Alex McFarland is a historian and journalist covering the newest developments in artificial intelligence.