In the Noisy Intermediate-Scale Quantum (NISQ) era, OpenQASM3 is a game-changer.
The newest version of OpenQASM dramatically extends previous versions. V3 includes advanced features like gate timing, external pulse-level grammar, and classical control flow – designed to bridge the gap between hardware description language and end-user interface more effectively. OpenQASM3 enables improved hybrid algorithm speeds and many new functionalities that will enable use cases not previously available.
We’re pleased and proud to be among the first control system vendors to offer native OpenQASM3 support. This post will briefly examine what OpenQASM is, why V3 is poised to change the quantum development world, and how commercial and research users can get the most out of it.
What is OpenQASM3?
OpenQASM3 is a next-generation assembly intermediate language for quantum computers. It offers a level of functional richness that opens a whole new horizon of use cases - notably those that require a low level of control over quantum hardware.
As the nomenclature implies, OpenQASM3 is the next generation of OpenQASM2 – the open-source framework that became the industry standard for specifying quantum programs for gate-based devices. By acting as a common interchange format allowing a diverse toolset to interoperate, OpenQASM2 became the de-facto standard for programming circuits’ operations, essentially the building blocks of quantum computing.
On a less tangible but equally important level, OpenQASM2 became the mental model and intermediate representation for quantum computing programs for researchers, developers, and vendors. And this is why we at Quantum Machines believe that OpenQASM3 will become the next industry standard. This is why we chose to contribute to the OpenQASM3 Technical Steering Committee led by IBM, Microsoft, AWS, and other tech businesses and research institutions. And it’s why we’re so early to market in supporting OpenQASM3, thanks to our native support for real-time quantum control (e.g., variables and loops).
What’s New in OpenQASM3?
There are two primary improvements in OpenQASM3, which break the classical circuit model. OpenQASM3’s physical imperatives add hardware and QPU-aware instructions, including ‘delay’ or specific physical qubits, to the classical circuit mix. And the language’s dynamic circuit capability lets programmers add real-time classical capabilities, like mid-circuit measurements, conditions, loops, variables, and subroutines.
Moreover, OpenQASM3 will enable advanced algorithms that will allow for new solutions and better performance. For example, OpenQASM3 enables the Iterative Quantum Estimation (IPE) algorithm that requires just one extra qubit – as opposed to the original quantum phase estimation circuit, which requires a linear number of qubits. OpenQASM3 also allows developers to address both logic and quantum computing in the same language while tailoring quantum programs to specific hardware and QPUs for better performance.
What Does the OpenQASM3 Rollout Look Like?
After nearly a year of design, development, and validation, OpenQASM3 is in the process of an official release, and different support profiles are being defined and deployed.
The question is, how and when will quantum programmers be able to leverage the richness of OpenQASM3? Top companies are currently working on exposing OpenQASM3’s features through their programming languages and APIs. IBM just released their partial support for OpenQASM3 (and exciting other news), AWS shared their cool pythonic OpenQASM3 DSL (OQpy), and more companies will follow suit. But the fact is that most quantum vendors do not yet fully support OpenQASM3’s new features. The reason? Most quantum control solutions are simply not advanced enough, despite emerging features like mid-circuit measurements, reset, classically conditioned gates, I/Os, nondeterministic loops, and more.
To benefit from OpenQASM3, researchers and developers must choose a vendor that natively supports its advanced features. Quantum Machines’ most recent release is precisely such a platform. From the ability to execute abstract dynamic circuits at the gate level through support for real-time logic (mid-circuit measurements, conditions, loops, variables, arithmetic calculations, and more), and including physical control (timing, embedded pulse calibrations, physical qubits, etc.) — our platform enables developers and researchers to get the most out of the game-changing quantum leap forward that is OpenQASM3.
Quantum Machines users can already leverage gate-level support!
Contact us today to learn more about our roadmap and how Quantum Machines can help you run the most advanced experiments.
Thanks for subscribing!