Can a New Programming Language Help Boost Innovation in Quantum Computing?

June 25, 2020 by Rushi Patel

A new high-level quantum programming language called “Silq” is correcting a major flaw in quantum computing.

Quantum computing is a next-level technology enabling rapid problem-solving for massive amounts of data that would otherwise take thousands of years to compute, even with the best supercomputers we have today.

Most quantum programming languages (QPLs) today describe the behavior of a specific underlying circuit, requiring programmers to be extremely precise so they don't introduce errors to the quantum algorithm.


Quantum programming language landscape

The quantum programming language landscape. Image used courtesy of the Quantum World Association

But now, researchers from ETH Zürich have introduced a new high-level QPL called “Silq” that they say is hardware-independent and easy to implement. 

Benjamin Bichsel, a doctoral student supervising the Silq project, explains, “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."


Silq: A New Quantum Programming Language

Over the past two years, researchers at ETH Zürich have developed Silq, a high-level programming language (hosted on GitHub), which is in the developmental stage. The researchers say this new language is more intuitive than other QPLs, has less code, and is more comprehensive. The researchers working on Silq state that it is independent of quantum hardware/circuit implementation. 

One of the highlighted features of Silq is something called automatic uncomputation

When a classical computer encounters temporary or intermediate values in its system, it disposes of these values to conserve memory. But disposing of these intermediate values in quantum computers becomes more complicated because of quantum entanglement; specifically, the intermediate values can collide with current values in the disposal process, which in turn produces an incorrect value.


The benefit's of Silq's automatic uncomputation feature

The benefit's of Silq's automatic uncomputation feature. Image used courtesy of Martin Vechev et. al


Using algorithms that aren't specific to quantum computing, the Silq researchers solved this problem by creating automatic uncomputation, which automatically identifies intermediate values and discards them before they cause any errors. 

A high-level programming language comes with the cost of smaller subroutines or functions being consumed by the language. The user has no control over what happens inside those subroutines. Memory allocation is more efficient in a low-level programming language. Due to its intuitive nature and descriptive view, Silq might attract non-expert quantum programmers, helping in its adoption for larger use. 

A quick background on the challenges of quantum computing can shed more light on why Silq is being hailed as a significant advancement in this field.


The Challenges and Strengths of Quantum Computing

Quantum computing uses concepts from quantum mechanics such as superposition and entanglement to perform computation. Developments in quantum computing are occurring in tandem with the miniaturization of electronics or, more specifically, the reduction of silicon-based unit cells below 5 nm. Transistors smaller than 7 nm begin to experience the effects of quantum mechanics, such as quantum tunneling, which changes how electronic devices and signals behave. 


Silq's development environment

Researchers say Silq's development environment ensures static safety and includes a simulator. Screenshot used courtesy of Silq


Although quantum computers are not micro-sized, they have the ability to process two bits at a time. They use quantum bits or "qubits," which can process and store different states of 1s and 0s at the same time using superposition phenomena. Adding more qubits makes the machine capable of storing and processing double the amount of data. In a way, the capability of a quantum computer is determined by the number of qubits it can process.

Researchers and engineers are working on quantum computers to leapfrog into a new level of technology with a computational capability that is millions of times more than classical computers. However, they currently require a high level of vacuum or cryogenic temperatures to operate, making them unlikely to be used as consumer devices, at least for the near future.

Future of Quantum Computing

There are many QPLs other than Silq, like Microsoft's Q#,  some developed by individual companies for their own hardware while others are developed as open-source resources.

The goal of the team developing Silq was to introduce a concise and easy-to-implement QPL that will help stimulate growth and innovation in developing quantum algorithms. 


Learn More About Quantum Computing Research

Intel Creates First Cryogenic Control Chip for Quantum Computing
“Hot Qubits” are Here—And They’re Propelling the Future of Quantum Computing
Quasiparticles Found to Have a Critical Role in Future Applications for Quantum Computing and Memory Storage


Featured image used courtesy of ETH Zürich