https://arxiv.org/pdf/1707.03429This 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.
Gate and operation specification for quantum circuits -
https://github.com/QISKit/openqasmqft.qasm: Quantum Fourier transform on 4 qubits.
// quantum Fourier transform
OPENQASM 2.0;
include "qelib1.inc";
qreg q[4];
creg c[4];
x q[0];
x q[2];
barrier q;
h q[0];
cu1(pi/2) q[1],q[0];
h q[1];
cu1(pi/4) q[2],q[0];
cu1(pi/2) q[2],q[1];
h q[2];
cu1(pi/8) q[3],q[0];
cu1(pi/4) q[3],q[1];
cu1(pi/2) q[3],q[2];
h q[3];
measure q -> c;
https://en.wikipedia.org/wiki/OpenQASMOpen Quantum Assembly Language (OpenQASM; pronounced "open kazm") is an intermediate representation for quantum instructions. The language was first described in a paper published in July 2017, and source code was released as part of IBM's Quantum Information Software Kit (QISKit) for use with their Quantum Experience cloud quantum computing platform. The language has similar qualities to traditional hardware description languages such as Verilog.
libquantum is a C library for the simulation of quantum mechanics, with a special focus laid to quantum computing. It started as a pure quantum computer simulator, but support for general quantum simulation has been recently added.
Quantum computing - Quantum virtual machine (libquantum)
http://www.libquantum.de/Based on the principles of quantum mechanics, libquantum provides an implementation of a quantum register. Basic operations for register manipulation such as the Hadamard gate or the Controlled-NOT gate are available through an easy-to-use interface. Measurements can be performed on either single qubits or the whole quantum register.
Features
Simulation of arbitrary quantum algorithms is possible
High performance and low memory consumption
Optional time-evolution using fourth-order Runge-Kutta or exact diagonalization, including optimizations for sparse Hamiltonians
Decoherence support for realistic quantum computation
Interface for quantum error correction (QEC)
Supports the density operator formalism
Implementations of Shor's factoring algorithm and Grover's search algorithm are included
libquantum is available as Free Software under the terms of the GNU General Public License (GPL), version 3. See the file COPYING for further details.Be ready for the future
