[Paper Review] Open Quantum Assembly Language
Open QASM 2.0 defines a human-readable intermediate representation for quantum circuits, featuring a universal gate basis, parameterized gates, subroutines, measurements, and a quantum-classical interface for hardware like IBM Quantum Experience.
This document describes a quantum assembly language (QASM) called OpenQASM that is used to implement experiments with low depth quantum circuits. OpenQASM represents universal physical circuits over the CNOT plus SU(2) basis with straight-line code that includes measurement, reset, fast feedback, and gate subroutines. The simple text language can be written by hand or by higher level tools and may be executed on the IBM Q Experience.
Motivation & Objective
- Describe an interface language for the Quantum Experience that enables experiments with small depth quantum circuits.
- Provide an intermediate representation for quantum circuits suitable for offline compilation and online execution.
- Define a gate basis and a subroutine mechanism to build complex operations from built-in gates.
- Incorporate measurement, reset, and classical feedback to model quantum-classical interoperation.
- Offer examples and an Open QASM grammar to guide implementation and usage.
Proposed method
- Introduce Open QASM as a quantum circuit IR built on the quantum circuit model.
- Define a built-in gate basis with single-qubit U gates and CNOT, plus a mechanism to declare and apply gate subroutines.
- Provide syntax for classical registers, quantum registers, and parameterized gates using U(θ, φ, λ).
- Describe semantics for measurement, reset, barrier, and classical-if conditional execution based on classical registers.
- Explain opaque gate declarations to model uncharacterized or hardware-specific operations.
- Present a practical grammar and examples demonstrating teleportation, QFT, ripple-carry adder, and error-correction circuits.
Experimental results
Research questions
- RQ1How can a universal set of quantum operations be expressed and controlled in a human-readable language for near-term quantum devices?
- RQ2How should gates be defined and reused via subroutines to balance expressiveness and hardware constraints?
- RQ3How can measurements and classical feedback be integrated into the circuit execution model?
- RQ4How can run-time parameters and device-specific gates be represented without hard-coding hardware details?
- RQ5What are representative examples that validate the Open QASM design (e.g., teleportation, QFT, error correction)?
Key findings
- Defined Open QASM 2.0 with a text-based syntax, versioning, and separation of concerns between source and runtime execution.
- Implemented a built-in universal gate basis of U(θ, φ, λ) and CX, enabling universal single- and two-qubit operations.
- Enabled user-defined gates via a subroutine mechanism to create hierarchical gate definitions and parallel application.
- Included measurement, reset, barrier, and an if construct for classically-controlled quantum operations to model feedback.
- Provided an Open QASM grammar (Appendix A) and multiple circuit examples (teleportation, QFT, ripple-carry adder, QEC) to illustrate usage.
- Emphasized hardware abstraction by defining physical gates in terms of abstract gates to accommodate hardware changes without altering Open QASM scripts.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.