OpenQASM

    OpenQASM is an imperative programming language for describing quantum circuits. It is capable of describing universal quantum computing using the circuit model, measurement-based model, and near-term quantum computing experiments.

    This repo contains the OpenQASM specification, examples, and tools for the OpenQASM intermediate representation.

    OpenQASM is a Qiskit project.

    Examples

    An example of OpenQASM 2.0 source code is given below. Several more examples may be found in the examples folder.

    Diagram

    /* * Repeat-until-success circuit for Rz(theta), * cos(theta-pi)=3/5, from Nielsen and Chuang, Chapter 4. */ OPENQASM 3; include "stdgates.inc"; /* * Applies identity if out is 01, 10, or 11 and a Z-rotation by * theta + pi where cos(theta)=3/5 if out is 00. * The 00 outcome occurs with probability 5/8. */ def segment qubit[2] anc, qubit psi -> bit[2] { bit[2] b; reset anc; h anc; ccx anc[0], anc[1], psi; s psi; ccx anc[0], anc[1], psi; z psi; h anc; measure anc -> b; return b; } qubit input; qubit[2] ancilla; bit[2] flags = "11"; bit output; reset input; h input; // braces are optional in this case while(int(flags) != 0) { flags = segment ancilla, input; } rz(pi - arccos(3 / 5)) input; h input; output = measure input; // should get zero

    Translation

    Powered by Perceval, Qiskit, PyZX

    Not run yet

    Simulation

    Not run yet

    Citation format

    For research papers, we encourage authors to reference.

    • [Version 3.0] Andrew W. Cross, Ali Javadi-Abhari, Thomas Alexander, Niel de Beaudrap, Lev S. Bishop, Steven Heidel, Colm A. Ryan, John Smolin, Jay M. Gambetta, Blake R. Johnson "OpenQASM 3: A broader and deeper quantum assembly language" [arxiv:2104.14722].
    • [Previous Version: 2.0] Andrew W. Cross, Lev S. Bishop, John A. Smolin, Jay M. Gambetta "Open Quantum Assembly Language" [arXiv:1707.03429].
    Simple Quantum Algorithms
    Introduction

    GitHub

    Facebook

    Instagram

    Impressum


    Copyright © 2024 Netsnek, Florian Herbert Kleber IT & Werbeagentur Nico Schett. All rights reserved.