• Corpus ID: 119060876

Open Quantum Assembly Language

  title={Open Quantum Assembly Language},
  author={Andrew W. Cross and Lev S. Bishop and John A. Smolin and Jay M. Gambetta},
  journal={arXiv: Quantum Physics},
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. 

Verified Optimization in a Quantum Intermediate Representation

We present sqire, a low-level language for quantum computing and verification. sqire uses a global register of quantum bits, allowing easy compilation to and from existing `quantum assembly'

Implementing NChooseK on IBM Q Quantum Computer Systems

This work implements a code generator that, given arbitrary parameters for N and K, generates code suitable for execution on IBM Q quantum hardware and assess the performance of the code generator, limitations in the size of circuit depth and number of gates, and proposed optimizations.

OpenQASM 3: A Broader and Deeper Quantum Assembly Language

Concepts of the language: the logical level 9 4.1.4 Concepts of the Language:The logical level 10 4.2.1 Continuous gates and hierarchical library .


To interact with the quantum hardware, users write quantum programs in a high-level language translated to a sequence of hardware instructions, which modifies the probability information carried by the qubit.

cQASM v1.0: Towards a Common Quantum Assembly Language

A common QASM syntax definition is proposed, named cQASM, which aims to abstract away qubit technology details and guarantee the interoperability between all the quantum compilation and simulation tools supporting this standard.

Architecting Noisy Intermediate-Scale Quantum Computers: A Real-System Study

Using real-system evaluations on seven quantum systems from three leading vendors, this work explores fundamental design questions concerning hardware choices, architecture, and compilation about qubit implementations, instructions, qubit connectivity, and noise characteristics.

Backend compiler phases for trapped-ion quantum computers

This paper presents the backend compiler phases needed for running quantum circuits on a QCCD architecture, while providing strategies to solve the optimization problems that occur when generating assembly instructions.

Qulacs: a fast and versatile quantum circuit simulator for research purpose

The main concepts of Qulacs are shown, how to use its features via examples, numerical techniques to speed-up simulation are described, and its performance with numerical benchmarks is demonstrated.

Cloud-Assisted Contracted Simulation of Quantum Chains

The work discusses validation of properties of quantum circuits with many qubits using non-universal set of quantum gates ensuring possibility of effective simulation on classical computer. An

A verified optimizer for Quantum circuits

VOQC is presented, the first fully verified optimizer for quantum circuits, written using the Coq proof assistant, and able to write and verify a broad range of optimizations in VOQC, including full-circuit transformations from cutting-edge optimizers.



A Practical Quantum Instruction Set Architecture

An abstract machine architecture for classical/quantum computations---including compilation---along with a quantum instruction language called Quil for explicitly writing these computations are introduced and concrete implementations of the machine and non-trivial algorithms targeting them are discussed.

Quipper: a scalable quantum programming language

Quipper, a scalable, expressive, functional, higher-order quantum programming language, which is geared towards a model of computation that uses a classical computer to control a quantum device, but is not dependent on any particular model of quantum hardware.

Dynamically error-corrected gates for universal quantum computation.

This work proposes a general constructive procedure for designing robust unitary gates on an open quantum system without encoding or measurement overhead and allows for a low-level error correction strategy solely based on Hamiltonian engineering using realistic bounded-strength controls.

Chisel-Q: Designing quantum circuits with a scala embedded language

A synthesis flow is described that transforms Chisel-Q into an explicit quantum circuit in the Quantum Assembly Language (QASM) format and is compared with hand-tuned versions of well-known quantum circuits.

A layered software architecture for quantum computing design tools

A proposed four-phase design flow assists with computations by transforming a quantum algorithm from a high-level language program into precisely scheduled physical actions.

LIQUi|>: A Software Design Architecture and Domain-Specific Language for Quantum Computing

Languages, compilers, and computer-aided design tools will be essential for scalable quantum computing, which promises an exponential leap in our ability to execute complex tasks. LIQUi|> is a

ScaffCC: a framework for compilation and analysis of quantum computing programs

This work presents a scalable compiler for large-scale quantum applications, and highlights the importance of high-level quantum compilation for logical circuit translation, quantitative analysis of algorithms, and optimization of circuit lengths.

Sized Types for Low-Level Quantum Metaprogramming

It is proved that the metaQASM language and type system, built around a lightweight implementation of sized types, supports subtyping over register sizes and is moreover type-safe, and as such any well-typed metaZASM program can be statically unrolled into a finite circuit.

Qiskit Backend Specifications for OpenQASM and OpenPulse Experiments

A specification for a common interface to backends and a standarized data structure (Qobj --- quantum object) for sending experiments to those backends via Qiskit and OpenPulse, a language for specifying pulse level control of a general quantum device independent of the specific hardware implementation are provided.

Arbitrary accuracy iterative quantum phase estimation algorithm using a single ancillary qubit: A two-qubit benchmark

We discuss the implementation of an iterative quantum phase estimation algorithm with a single ancillary qubit. We suggest using this algorithm as a benchmark for multiqubit implementations.