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.”
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.
What are Quantum Computers?
Quantum computers have the potential to dramatically increase the variety and accuracy of computations, opening up new applications for computers and enhancing our models of physical phenomenon. Yet while quantum computers are seeing increasing media coverage, many still aren’t sure of how quantum computers differ from regular computers. Let’s examine how quantum computers work, some of their applications, and their coming future.
What Is A Quantum Computer?
Before we can meaningfully examine how quantum computers operate, we need to first define quantum computers. The short definition of a quantum computer is this: a computer, based on quantum mechanics, that is able to carry out certain complex computations with much greater efficiency than traditional computers. That’s a quick definition of quantum computers, but we’ll want to take some time to really understand what separates quantum computers from traditional computers.
Regular computers encode information with a binary system: representing each bit of the data as either a one or zero. Series of ones and zeroes are chained together to represent complex chunks of information like text, images, and audio. Yet in these binary systems, the information can only ever be stored as ones and zeroes, meaning that there is a hard limit to how data is represented and interpreted and that as data becomes more complex it must necessarily become longer and longer strings of ones and zeroes.
The reason quantum computers are able to more efficiently store and interpret data is because they don’t use bits to represent data, rather they use “qubits”. Qubits are subatomic particles like photons and electrons. Qubits have a couple interesting properties that make them useful for new methods of computation. Qubits have two properties that computer engineers can take advantage of: superpositions and entanglement.
Quantum superpositions allow qubits to exist in not just the “one” state or the “zero” state, but along a continuum between these states, meaning more information can be held using qubits. Meanwhile, quantum entanglement refers to a phenomenon where pairs of qubits can be generated and if one qubit is altered the other qubit is altered, in a predictable fashion, as well. These quantum properties can be used to represent and structure complex data in more efficient ways.
How Quantum Computers Operate
Quantum “superpositions” get their name from the fact that they can be in more than one position at a time. While bits can be in just two positions, qubits can exist in multiple states at once.
Thanks in part to the existence of quantum superpositions, a quantum computer is capable of calculating many different potential outcomes at the same time. Once the calculations are done, the qubits are measured, which creates a final result through the collapse of the quantum state to either 0 or 1, meaning the result can then be interpreted by traditional computers.
Quantum computing researchers and engineers can alter the position the qubits are in by using microwaves or precision lasers.
Computer engineers can take advantage of quantum entanglement to dramatically improve the processing power of computers. Quantum entanglement refers to the fact that two qubits can be linked together in such a way that changing one of the qubits alters the other qubit in a reliable way. It’s not fully understood why qubits can establish such a relationship or how this phenomenon works exactly, but scientists do understand it well enough to potentially take advantage of it for quantum computers. Because of quantum entanglement, the addition of extra qubits to a quantum machine doesn’t just double the processing power of a computer it can scale the processing power exponentially.
If this has all seemed a bit too abstract, we can describe how superpositions are useful by imagining a maze. For a normal computer to attempt to solve a maze, it must try each path of the maze until it finds a successful route. However, a quantum computer could essentially explore all the different paths at once, since it isn’t tied down to any one given state.
All of this is to say that the properties of entanglement and superpositions make quantum computers useful because they can deal with uncertainty, they are capable of exploring more possible states and results. Quantum computers will help scientists and engineers better model and understand situations that are multi-faceted, with many variables.
What Are Quantum Computers Used For?
Now that we have a better intuition for how quantum computers operate, let’s explore the possible use cases for quantum computers.
We’ve already alluded to the fact that quantum computers can be used to carry out traditional computations at a much faster pace. However, quantum computer technology can be used to achieve things that may not even be possible, or are highly impractical, with traditional computers.
One of the most promising and interesting applications of quantum computers is in the field of artificial intelligence. Quantum computers have the power to improve the models created by neural networks, as well as the software that supports them. Google is currently using its quantum computers to assist in the creation of self-driving vehicles.
Quantum computers also have a role to play in the analysis of chemical interactions and reactions. Even the most advanced normal computers can only model reactions between relatively simple molecules, which they achieve by simulating the properties of the molecules in question. Quantum computers, however, allow researchers to create models that have the exact quantum properties as the molecules they are researching. Quicker, more accurate molecule modeling would aid in the creation of new therapeutic drugs and new materials for use in the creation of energy technology, such as more efficient solar panels.
Quantum computers can also be used to better predict weather. Weather is the confluence of many events and the formulas used to predict weather patterns are complicated, containing many variables. It can take an extremely long time to carry out all the calculations needed to predict the weather, during which the weather conditions themselves can evolve. Fortunately, the equations used to predict weather have a wave nature that a quantum computer can exploit. Quantum computers can help researchers build more accurate climate models, which are necessary in a world where the climate is changing.
Quantum computers and algorithms can also be used to help ensure people’s data privacy. Quantum cryptography makes use of the quantum uncertainty principle, where any attempt to measure an object ends up making changes to that object. Attempts to intercept communications would influence the resulting communication and show evidence of tampering.
Most of the uses for quantum computers will be confined to academics and businesses. It’s unlikely that consumers/the general public will get quantum smartphones, at least not anytime soon. This is because it requires specialized equipment to operate a quantum computer. Quantum computers are highly sensitive to disturbance, as even the most minute changes in the surrounding environment can cause qubits to shift position and drop out of the superposition state. This is called decoherence, and it’s one of the reasons that advances in quantum computers seem to come so slowly compared to regular computers. Quantum computers typically need to operate in conditions of extreme low temperatures, isolated from other electrical equipment.
Even with all the precautions, noise still manages to create errors in the calculations, and researchers are looking for ways to make qubits more reliable. To achieve quantum supremacy, where a quantum computer fully eclipses the power of a current supercomputer, qubits need to be linked together. A truly quantum supreme computer could require thousands of qubits, but the best quantum computers today can typically only deal with around 50 qubits. Researchers are constantly making in-roads towards creating more stable and reliable qubits. Experts in the field of quantum computers predict that powerful and reliable quantum devices may be here within a decade.
AlphaZero Algorithm Applied to Quantum Computing
Quantum computing has become more of a focus over the last few years. Researchers and companies throughout the world are constantly working on developing this technology, which can solve extremely complicated problems that are too advanced for classical computers.
Quantum computers utilize quantum mechanics, which is a branch of physics that focuses on the smallest building blocks of our universe. One of the fundamental rules is that a system can exist in more than one state at a time.
These rules get translated into computer language, and a quantum computer is able to perform multiple calculations at the same time. This means that a quantum computer can perform much faster than regular computers.
The theory of quantum computers has been established, but there has yet to be a full-scale quantum computer created.
AlphaZero is capable of learning on its own without any interjection from humans. Because of this, the algorithm has been able to defeat both humans and complex computer programs in difficult games like Go, Shogi, and Chess. AlphaZero was able to do this by competing against itself and improving over time.
The algorithm was able to beat the leading chess program Stockfish after playing against itself for just four hours. After that impressive performance, Danish grandmaster Peter Heine Nielsen compared AlphaZero to a superior alien species.
The research group at Aarhus University has used computer simulations to demonstrate how AlphaZero can be applied to three different control problems. These could possibly be used in a quantum computer.
“AlphaZero employs a deep neural network in conjunction with deep lookahead in a guided tree search, which allows for predictive hidden-variable approximation of the quantum parameter landscape. To emphasize transferability, we apply and benchmark the algorithm on three classes of control problems using only a single common set of algorithmic hyperparameters,” according to the study.
The research done by the team was published in Nature Quantum Information.
Lead Ph.D. student Mogens Dalgaard spoke about how the team was impressed with AlphaZero’s ability to quickly teach itself.
“When we analyzed the data from AlphaZero we saw that the algorithm had learned to exploit an underlying symmetry of the problem that we did not originally consider. That was an amazing experience.”
The real breakthrough came from pairing AlphaZero, which is an extremely impressive algorithm on its own, with a specialized quantum optimization algorithm.
According to Professor Jacob Sherson, “This indicates that we are still in need of human skill and expertise, and that the goal of the future should be to understand and develop hybrid intelligence interfaces that optimally exploits the strengths of both.”
The group wants to quicken the pace of development within the field, so they released the code and made it openly available. The move generated a lot of interest.
“Within a few hours I was contacted by major tech-companies with quantum laboratories and international leading universities to establish future collaboration” Jacob Sherson said. “so it will probably not be long until these methods will find use in practical experiments across the world.”
DeepMind is a UK-based Google sister-company that is responsible for both AlphaZero and AlphaGo. These systems are now showing their importance in other areas, including quantum computing.
Researchers Develop Method for Measuring Quantum Computers
The new method is called cycled benchmarking, and researchers use it to assess the potential of scalability. The method is also used to compare different quantum platforms against each other.
Joel Wallman is an assistant professor at Waterloo’s Faculty of Mathematics and Institute for Quantum Computing.
“This finding could go a long way toward establishing standards for performance and strengthen the effort to build a large-scale, practical quantum computer,” said Wallman. “A consistent method for characterizing and correcting the errors in quantum systems provides standardization for the way a quantum processor is assessed, allowing progress in different architectures to be fairly compared.”
Cycle Benchmarking helps quantum computing users to compare competing hardware platforms and increase the capability of each platform to come up with solutions for whatever they are working on.
At this point in time, the quantum computing race is becoming apparent all around the world. The amount of cloud quantum computing platforms and offerings are rising, and major companies like Microsoft, IBM, and Google are constantly developing new technology.
The cycle benchmarking method works by determining the total probability of error under any given quantum computing applications. This takes place when the application is implemented through randomized compiling. Cycle benchmarking provides the first cross-platform means of measuring and comparing the capabilities of quantum processors, and it is customized depending on the applications that the users are working on.
Joseph Emerson is a faculty member at IQC.
“Thanks to Google’s recent achievement of quantum supremacy, we are now at the dawn of what I call the `quantum discovery era’, Emerson said. “This means that error-prone quantum computers will deliver solutions to interesting computational problems, but the quality of their solutions can no longer be verified by high-performance computers.
“We are excited because cycle benchmarking provides a much-needed solution for improving and validating quantum computing solutions in this new era of quantum discovery.”
Emerson and Wallman founded Quantum Benchmark Inc., an IQC spin-off. It licensed the technology to world leading companies within the quantum computing field, including Google’s Quantum AI effort.
Quantum mechanics turned quantum computers into extremely powerful machines for computing. Quantum computers are capable of solving complex problems more efficiently than traditional or digital computers.
Quibits are the basic processing unit in a quantum computer, but they are extremely fragile. Any type of imperfection or source of noise in the system can lead to certain errors that cause incorrect solutions under a quantum computation.
The first step to going further with quantum computing is to gain control over a small-scale quantum computer with one or two quibits. A larger quantum computer could perform more complex tasks such as machine learning or complex system simulation, which could lead to advancements like the discovery of new pharmaceutical drugs. The problem is that engineering a larger quantum computer is more challenging, and the possibility of error is greater as quibits are added and the quantum system scales.
A profile of the noise and errors are produced when a quantum system is characterized. This indicates if the processor is performing the calculations that it is being requested to do. All significant errors need to be characterized in order to understand the performance of a quantum computer or to scale up.
Wallman, Emerson, and a group of researchers at the University of Innsbruck came up with a method to assess all error rates affecting a quantum computer. The new technique was implemented for the ion trap quantum computer at the University of Innsbruck, and it found that error rates don’t rise as the size of that quantum computers scales up.
“Cycle benchmarking is the first method for reliably checking if you are on the right track for scaling up the overall design of your quantum computer,” said Wallman. “These results are significant because they provide a comprehensive way of characterizing errors across all quantum computing platforms.”
- How Quantum Mechanics will Change the Tech Industry
- Jim McGowan, head of product at ElectrifAi – Interview Series
- NASA to Use Machine Learning to Enhance Search for Alien Life on Mars
- New Study Attempts to Improve Hate Speech Detection Algorithms
- Pentagon’s Joint AI Center (JAIC) Testing First Lethal AI Projects