Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

arXiv:1809.03452

Qiskit Backend Specifications for OpenQASM and OpenPulse Experiments

David C. McKay, Thomas Alexander, Luciano Bello, Michael J. Biercuk, Lev S. Bishop, Jiayin Chen, Jerry M. Chow, Antonio D. Corcoles, Daniel J. Egger, Stefan Filipp, Gomez, Juan, Michael Hush, Ali Javadi-Abhari, Diego Moreda, Paul D. Nation, Brent D. Paulovicks, Erick Winston, Christopher J. Wood, James R. Wootton, Jay Gambetta

Published Sep 10, 2018• 100 citations
arXivHTMLPDF

Abstract

As interest in quantum computing grows, there is a pressing need for standardized API's so that algorithm designers, circuit designers, and physicists can be provided a common reference frame for designing, executing, and optimizing experiments. There is also a need for a language specification that goes beyond gates and allows users to specify the time dynamics of a quantum experiment and recover the time dynamics of the output. In this document we provide a specification for a common interface to backends (simulators and experiments) and a standarized data structure (Qobj --- quantum object) for sending experiments to those backends via Qiskit. We also introduce OpenPulse, a language for specifying pulse level control (i.e. control of the continuous time dynamics) of a general quantum device independent of the specific hardware implementation.

DOI
10.48550/arxiv.1809.03452

Related papers

OpenQASM 3: A Broader and Deeper Quantum Assembly Language

Andrew W. Cross, Ali Javadi-Abhari, Thomas Alexander +8 more

Quantum assembly languages are machine-independent languages that traditionally describe quantum computation in the circuit model. Open quantum assembly language (OpenQASM 2) was proposed as an imperative programming language for quantum circuits based on earlier QASM dialects. In principle, any quantum computation could be described using OpenQASM 2, but there is a need to describe a broader set of circuits beyond the language of qubits and gates. By examining interactive use cases, we recognize two different timescales of quantum-classical interactions: real-time classical computations that must be performed within the coherence times of the qubits, and near-time computations with less stringent timing. Since the near-time domain is adequately described by existing programming frameworks, we choose in OpenQASM 3 to focus on the real-time domain, which must be more tightly coupled to the execution of quantum operations. We add support for arbitrary control flow as well as calling external classical functions. In addition, we recognize the need to describe circuits at multiple levels of specificity, and therefore we extend the language to include timing, pulse control, and gate modifiers. These new language features create a multi-level intermediate representation for circuit development and optimization, as well as control sequence implementation for calibration, characterization, and error mitigation.

arXiv:2104.14722•ACM Transactions on Quantum Computing•Mar 2, 2022•253 citations

QSimBench: An Execution-Level Benchmark Suite for Quantum Software Engineering

Giuseppe Bisicchia, Alessandro Bocci, José Manuel García-Alonso +2 more

Reproducibility and comparability remain fundamental challenges in the empirical evaluation of Quantum Software Engineering (QSE) tools. These challenges arise from the intrinsic probabilistic behavior of quantum programs and the variability introduced by quantum hardware and simulator backends. While existing quantum benchmarks typically offer only static circuit definitions, they often leave researchers responsible for data generation and execution, hindering the creation of standardized and reproducible experiments. In this paper, we introduce QSimBench, a novel, open-source benchmark suite and accompanying Python library designed to address these limitations. QSimBench provides over 20 million precomputed shot-level execution traces:$\mathbf{2 0, 0 0 0}$measurements each, across$\mathbf{1 4}$quantum algorithms, multiple circuit sizes ($4-15$qubits), and six Qiskit-based backends including both ideal and noise-injected simulations. Each configuration includes not only detailed measurement histories but also the original circuit in OpenQASM, the backend's noise model, and configuration metadata, ensuring full transparency and enabling in-depth analysis. QSimBench empowers researchers to conduct scalable, reproducible, and statistically rigorous evaluations of QSE tools, such as those for monitoring, orchestration, and statistical post-processing, without the need for expensive or difficult-to-reproduce quantum executions. The benchmark is distributed with a lightweight Python API that facilitates fast data retrieval, flexible sampling strategies, and seamless integration into experimental pipelines. QSimBench is publicly available, aiming to foster collaborative and reproducible research within the quantum software community.

IEEE International Conference on Quantum Computing and Engineering (QCE)•Aug 30, 2025•1 citation

JaqalPaw: A Guide to Defining Pulses and Waveforms for Jaqal

Daniel Lobser, Joshua Goldberg, Andrew J. Landahl +8 more

One of the many challenges of developing an open user testbed such as QSCOUT is providing an interface that maintains simplicity without compromising expressibility or control. This interface comprises two distinct elements: a quantum assembly language designed for specifying quantum circuits at the gate level, and a low-level counterpart used for describing gates in terms of waveforms that realize specific quantum operations. Jaqal, or "Just another quantum assembly language," is the language used in QSCOUT for gate-level descriptions of quantum circuits. JaqalPaw, or "Jaqal pulses and waveforms," is its pulse-level counterpart. This document concerns the latter, and presents a description of the tools needed for precisely defining the underlying waveforms associated with a gate primitive.

arXiv:2305.02311•May 3, 2023•7 citations

QuantumSavory: symbolic modeling and multi-backend simulation of quantum computing and networking systems

Hana Kimlee, Leonardo Bacciottini, Abhishek Bhatt +2 more

Progress in quantum computing and networking depends on codesign across abstraction layers: device-level noise and heterogeneous hardware, algorithmic structure, and distributed classical control. We present QuantumSavory, an open-source toolkit built to make such end-to-end studies practical by cleanly separating a symbolic computer-algebra frontend from interchangeable numerical simulation backends. States, operations, measurements, and protocol logic are expressed in a backend-agnostic symbolic language; the same model can be executed across multiple backends (e.g., stabilizer, wavefunction, phase-space), enabling rapid exploration of accuracy-performance tradeoffs without rewriting the model. Furthermore, new custom backends can be added via a small, well-defined interface that immediately reuses existing models and protocols. QuantumSavory also addresses the classical-quantum interaction inherent to LOCC protocols via discrete-event execution and a tag/query system for coordination. Tags attach structured classical metadata to quantum registers and message buffers, and queries retrieve, filter, or wait on matching metadata by wildcards or arbitrary predicates. This yields a data-driven control plane where protocol components coordinate by publishing and consuming semantic facts (e.g., resource availability, pairing relationships, protocol outcomes) rather than by maintaining rigid object graphs or bespoke message plumbing, improving composability and reuse as models grow. Our toolkit is also not limited to qubits and Bell pairs; rather, any networking dynamics of any quantum system under any type of multipartite entanglement can be tackled. Lastly, QuantumSavory ships reusable libraries of standard states, circuits, and protocol building blocks with consistent interfaces, enabling full-stack examples to be assembled, modified, and compared with minimal glue code.

quant-pharXiv:2512.16752•Dec 19, 2025•0 citations

Qiskit pulse: programming quantum computers through the cloud with pulses

Thomas Alexander, Naoki Kanazawa, Daniel J Egger +4 more

The quantum circuit model is an abstraction that hides the underlying physical implementation of gates and measurements on a quantum computer. For precise control of real quantum hardware, the ability to execute pulse and readout-level instructions is required. To that end, we introduce Qiskit Pulse, a pulse-level programming paradigm implemented as a module within Qiskit-Terra [ 1 ]. To demonstrate the capabilities of Qiskit Pulse, we calibrate both un-echoed and echoed variants of the cross-resonance entangling gate with a pair of qubits on an IBM Quantum system accessible through the cloud. We perform Hamiltonian characterization of both single and two-pulse variants of the cross-resonance entangling gate with varying amplitudes on a cloud-based IBM Quantum system. We then transform these calibrated sequences into a high-fidelity CNOT gate by applying pre and post local-rotations to the qubits, achieving average gate fidelities of F = 0.981 and F = 0.979 for the un-echoed and echoed respectively. This is comparable to the standard backend CNOT fidelity of F CX = 0.984. Furthermore, to illustrate how users can access their results at different levels of the readout chain, we build a custom discriminator to investigate qubit readout correlations. Qiskit Pulse allows users to explore advanced control schemes such as optimal control theory, dynamical decoupling, and error mitigation that are not available within the circuit model.

arXiv:2004.06755•Quantum Science and Technology•Jul 8, 2020•182 citations

An open-source framework for quantum hardware control

Edoardo Pedicillo, Alessandro Candido, Stavros Efthymiou +7 more

The development of quantum computers needs reliable quantum hardware and tailored software for controlling electronics specific to various quantum platforms. Middleware is a type of computer software program that aims to provide standardized software tools across the entire pipeline, from high level execution of quantum computing algorithms to low level driver instructions tailored to specific experimental setups, including instruments. This paper presents updates to Qibolab, a software library that leverages Qibo capabilities to execute quantum algorithms on self hosted quantum hardware platforms. Qibolab offers an application programming interface (API) for instrument control through arbitrary pulses and driver operations including sweepers. This paper offers an overview of the new features implemented in Qibolab, including the redefined boundaries between platform and channel classes, the integration of an emulator for simulating quantum hardware behaviour, and it shows updated execution times benchmarks for superconducting single qubit calibration routines.

arXiv:2407.21737•Jul 31, 2024•0 citations
As interest in quantum computing grows, there is a pressing need for standardized API's so that algorithm designers, circuit designers, and physicists can be provided a common reference frame for designing, executing, and optimizing experiments. There is also a need for a language specification that goes beyond gates and allows users to specify the time dynamics of a quantum experiment and recover the time dynamics of the output. In this document we provide a specification for a common interface to backends (simulators and experiments) and a standarized data structure (Qobj --- quantum object) for sending experiments to those backends via Qiskit. We also introduce OpenPulse, a language for specifying pulse level control (i.e. control of the continuous time dynamics) of a general quantum device independent of the specific hardware implementation.
Quantum assembly languages are machine-independent languages that traditionally describe quantum computation in the circuit model. Open quantum assembly language (OpenQASM 2) was proposed as an imperative programming language for quantum circuits based on earlier QASM dialects. In principle, any quantum computation could be described using OpenQASM 2, but there is a need to describe a broader set of circuits beyond the language of qubits and gates. By examining interactive use cases, we recognize two different timescales of quantum-classical interactions: real-time classical computations that must be performed within the coherence times of the qubits, and near-time computations with less stringent timing. Since the near-time domain is adequately described by existing programming frameworks, we choose in OpenQASM 3 to focus on the real-time domain, which must be more tightly coupled to the execution of quantum operations. We add support for arbitrary control flow as well as calling external classical functions. In addition, we recognize the need to describe circuits at multiple levels of specificity, and therefore we extend the language to include timing, pulse control, and gate modifiers. These new language features create a multi-level intermediate representation for circuit development and optimization, as well as control sequence implementation for calibration, characterization, and error mitigation.
Reproducibility and comparability remain fundamental challenges in the empirical evaluation of Quantum Software Engineering (QSE) tools. These challenges arise from the intrinsic probabilistic behavior of quantum programs and the variability introduced by quantum hardware and simulator backends. While existing quantum benchmarks typically offer only static circuit definitions, they often leave researchers responsible for data generation and execution, hindering the creation of standardized and reproducible experiments. In this paper, we introduce QSimBench, a novel, open-source benchmark suite and accompanying Python library designed to address these limitations. QSimBench provides over 20 million precomputed shot-level execution traces:20,000\mathbf{2 0, 0 0 0}20,000measurements each, across14\mathbf{1 4}14quantum algorithms, multiple circuit sizes (4−154-154−15qubits), and six Qiskit-based backends including both ideal and noise-injected simulations. Each configuration includes not only detailed measurement histories but also the original circuit in OpenQASM, the backend's noise model, and configuration metadata, ensuring full transparency and enabling in-depth analysis. QSimBench empowers researchers to conduct scalable, reproducible, and statistically rigorous evaluations of QSE tools, such as those for monitoring, orchestration, and statistical post-processing, without the need for expensive or difficult-to-reproduce quantum executions. The benchmark is distributed with a lightweight Python API that facilitates fast data retrieval, flexible sampling strategies, and seamless integration into experimental pipelines. QSimBench is publicly available, aiming to foster collaborative and reproducible research within the quantum software community.
One of the many challenges of developing an open user testbed such as QSCOUT is providing an interface that maintains simplicity without compromising expressibility or control. This interface comprises two distinct elements: a quantum assembly language designed for specifying quantum circuits at the gate level, and a low-level counterpart used for describing gates in terms of waveforms that realize specific quantum operations. Jaqal, or "Just another quantum assembly language," is the language used in QSCOUT for gate-level descriptions of quantum circuits. JaqalPaw, or "Jaqal pulses and waveforms," is its pulse-level counterpart. This document concerns the latter, and presents a description of the tools needed for precisely defining the underlying waveforms associated with a gate primitive.
Progress in quantum computing and networking depends on codesign across abstraction layers: device-level noise and heterogeneous hardware, algorithmic structure, and distributed classical control. We present QuantumSavory, an open-source toolkit built to make such end-to-end studies practical by cleanly separating a symbolic computer-algebra frontend from interchangeable numerical simulation backends. States, operations, measurements, and protocol logic are expressed in a backend-agnostic symbolic language; the same model can be executed across multiple backends (e.g., stabilizer, wavefunction, phase-space), enabling rapid exploration of accuracy-performance tradeoffs without rewriting the model. Furthermore, new custom backends can be added via a small, well-defined interface that immediately reuses existing models and protocols. QuantumSavory also addresses the classical-quantum interaction inherent to LOCC protocols via discrete-event execution and a tag/query system for coordination. Tags attach structured classical metadata to quantum registers and message buffers, and queries retrieve, filter, or wait on matching metadata by wildcards or arbitrary predicates. This yields a data-driven control plane where protocol components coordinate by publishing and consuming semantic facts (e.g., resource availability, pairing relationships, protocol outcomes) rather than by maintaining rigid object graphs or bespoke message plumbing, improving composability and reuse as models grow. Our toolkit is also not limited to qubits and Bell pairs; rather, any networking dynamics of any quantum system under any type of multipartite entanglement can be tackled. Lastly, QuantumSavory ships reusable libraries of standard states, circuits, and protocol building blocks with consistent interfaces, enabling full-stack examples to be assembled, modified, and compared with minimal glue code.
The quantum circuit model is an abstraction that hides the underlying physical implementation of gates and measurements on a quantum computer. For precise control of real quantum hardware, the ability to execute pulse and readout-level instructions is required. To that end, we introduce Qiskit Pulse, a pulse-level programming paradigm implemented as a module within Qiskit-Terra [ 1 ]. To demonstrate the capabilities of Qiskit Pulse, we calibrate both un-echoed and echoed variants of the cross-resonance entangling gate with a pair of qubits on an IBM Quantum system accessible through the cloud. We perform Hamiltonian characterization of both single and two-pulse variants of the cross-resonance entangling gate with varying amplitudes on a cloud-based IBM Quantum system. We then transform these calibrated sequences into a high-fidelity CNOT gate by applying pre and post local-rotations to the qubits, achieving average gate fidelities of F = 0.981 and F = 0.979 for the un-echoed and echoed respectively. This is comparable to the standard backend CNOT fidelity of F CX = 0.984. Furthermore, to illustrate how users can access their results at different levels of the readout chain, we build a custom discriminator to investigate qubit readout correlations. Qiskit Pulse allows users to explore advanced control schemes such as optimal control theory, dynamical decoupling, and error mitigation that are not available within the circuit model.
The development of quantum computers needs reliable quantum hardware and tailored software for controlling electronics specific to various quantum platforms. Middleware is a type of computer software program that aims to provide standardized software tools across the entire pipeline, from high level execution of quantum computing algorithms to low level driver instructions tailored to specific experimental setups, including instruments. This paper presents updates to Qibolab, a software library that leverages Qibo capabilities to execute quantum algorithms on self hosted quantum hardware platforms. Qibolab offers an application programming interface (API) for instrument control through arbitrary pulses and driver operations including sweepers. This paper offers an overview of the new features implemented in Qibolab, including the redefined boundaries between platform and channel classes, the integration of an emulator for simulating quantum hardware behaviour, and it shows updated execution times benchmarks for superconducting single qubit calibration routines.