# Quantum full-stack libraries

#### Cirq

Framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.

#### Forest

Rigetti’s software library for writing, simulating, compiling and executing quantum programs.

#### Ocean

D-Wave System’s suite of tools for solving hard problems with quantum computers.

#### ProjectQ

Hardware-agnostic framework with compiler and simulator with emulation capabilities.

#### Q#

Microsoft’s quantum programming language with Visual Studio integration.

#### Qiskit

IBM’s quantum information software kit for simulating, compiling and executing quantum programs.

#### Qiskit-JS

IBM’s quantum information software kit for JavaScript.

#### Strawberry Fields

Xanadu’s software library for photonic quantum computing.

#### XACC

Extreme-scale programming model for quantum acceleration within high-performance computing.

# Quantum simulators

#### BLACK-STONE

Specification and implementation of quantum common lisp, for gate-model quantum computers.

#### Cliffords.jl

Efficient calculation of Clifford circuits in Julia.

#### Liqui|>

Toolsuite for quantum simulation developed by Microsoft QuArC.

#### PIQS

Efficient simulation of open quantum dynamics of identical qubits.

#### QCGPU

High-performance GPU-accelerated quantum computer simulation outlined in this arXiv paper.

#### QCL

High level, hardware-agnostic programming language for quantum computers (syntax like C or Pascal).

#### QOCS

Quantum OCaml Circuit Simulator is a functional approach to simulating quantum gates.

#### QSimulator.jl

Unitary and Lindbladian evolution in Julia.

#### QTop

Simulation and visualization of topological quantum computers.

#### QWIRE

A quantum circuit language and formal verification tool described in this paper.

#### Qlmp

Interpreter for the functional quantum programming language Qumin.

#### Qrack

Comprehensive qubit and gate implementation for developing universal virtual quantum processors.

#### QuEST

Quantum Exact Simulation Toolkit is a high performance multicore simulator of universal quantum circuits.

#### QuSim

Ideal noise-free multi-qubit simulator written in 150 lines of code.

#### QuTiP

User-friendly and efficient numerical simulations of a wide variety of open quantum systems.

#### QuaC

Parallel time-dependent open quantum systems solver.

#### Quantum Circuit Simulator

Smoothly runs 20+ qubit simulations in browser or on node.js server.

#### Quantum Virtual Machine

Reference implementation of Rigetti’s Quantum Virtual Machine.

#### Quantum++

High-performance general purpose quantum simulator (can simulate d-dimensional qudits).

#### QuantumInfo.jl

Julia library for quantum information related calculations.

#### QuantumUtils

Tools for quantum control, simulation, channel representation conversion, and perturbations.

#### Quintuple

Simulating the 5-qubit processor of the IBM Quantum Experience.

#### Quipper

Scalable functional programming language for quantum computing based on Quantum Lambda Calculus.

#### Quirk

Drag-and-drop quantum circuit simulator in your browser.

#### RandomQuantum.jl

Package for generating random quantum states and processes.

#### SimulaQron

Application level simulator of a quantum network.

#### TNQVM

Tensor Network QPU Simulator for Eclipse XACC.

#### Yao.jl

Extensible, Efficient Quantum Algorithm Design for Humans.

#### jquil

A Java library for quantum programming using Quil.

#### jsquil

JavaScript interface for writing Quil programs.

#### libQuantumJava

Crude translation from the C implementation of `libquantum`

to a Java version.

# Quantum annealing

#### Qbsolv

QUBO solver with D-Wave or classical tabu solver backend.

#### Virtual Hardware Embedding

Virtual Hardware Embedding Suite for adiabatic quantum computing.

#### chimera_embedding

Algorithms to generate native-structured embeddings for Chimera graphs.

#### dimod

Shared API for Ising and QUBO problems.

#### dwave-cloud-client

Min. implementation of the REST interface to communicate with D-Wave’s Solver API.

#### dwave-system

API for easily incorporating D-Wave quantum annealers as samplers in the Ocean software stack.

#### dwave_neal

An implementation of a simulated annealing sampler.

#### dwave_networkx

Exploration and analysis of network graphs.

#### dwavebinarycsp

Map constraint satisfaction problems with binary variables to binary quadratic models.

#### embedding_utilities

Mapping samples between original and embedded graph.

#### micro_client_sapi_dimod

Dimod wrapper for the D-Wave Micro Client.

#### minorminer

Heuristic tool for minor graph embedding.

#### penaltymodel

Utilities and interfaces for using penalty models.

#### sapi_dimod

Dimod wrapper for D-Wave’s Solver API (SAPI).

# Quantum algorithms

#### Adapt

Algorithms for adaptive refinement of measurements.

#### FermiLib

Software for analyzing fermionic quantum simulation algorithms with ProjectQ.

#### Grove

Quantum algorithms implemented using Rigetti’s pyQuil.

#### OpenFermion

Compiling and analyzing quantum algorithm for quantum chemistry simulations.

#### PennyLane

Library for quantum ML, automatic differentiation and optimization of hybrid computations.

#### QFog

Framework for analyzing both classical and quantum Bayesian Networks.

#### Qiskit Aqua

Library of various quantum algorithm implemented with QISKit.

#### Qiskit Tutorial

Jupyter notebook filled with tutorials for QISKit.

#### Quantum Katas

Programming exercises for learning Q# and quantum computing.

#### QuantumFlow

Quantum Algorithms Development Toolkit e.g. allowing for backpropagation with QAOA.

#### QuantumTomography.jl

Julia package to perform quantum state and process tomography.

#### Quantum_Edward

Python tools for supervised learning by Quantum Neural Networks

#### XACC Examples

Example code using XACC for quantum computing.

#### XACC QChem

QPU Benchmarks for Quantum Chemistry via XACC, Psi4 and OpenFermion.

#### XACC VQE

Variational quantum eigensolver built on XACC for distributed, and shared memory systems.

# Quantum compilers

#### PyZX

Python library for quantum circuit rewriting and optimisation using the ZX-calculus.

#### QGL.jl

A performance orientated QGL compiler.

#### QGL2 Compiler

Language compiler for imperative Quantum Gate Language (QGL).

#### Qubiter

Quantum compiler with Python wrapper for LAPACK’s CS Decomposition to build a binary tree of matrices.

#### ScaffCC

Compilation, analysis and optimization framework for the Scaffold quantum programming language.

# Quantum assembly

#### OpenQASM

IBM’s open-source quantum assembly language.

#### QMASM

A quantum macro assembler for D-Wave’s quantum annealers.

#### Quil

An open hybrid quantum/classical instruction set currently used by Rigetti. Parser

# Quantum cryptography

#### QRL

Quantum Resistant Ledger utilizing hash-based one-time merkle tree signature scheme instead of ECDSA.

#### liboqs

C library for quantum-resistant cryptographic algorithms.

#### openssh

OpenSSH with quantum-safe key exchange algorithms.

#### openssl

OpenSSL with quantum-safe cryptographic algorithms.

# Experimental quantum computing

#### ARTIQ

Next-generation control system for quantum information experiments.

#### PyQLab

Library for instrument control and superconducting QIP experiments.

#### QFlow-lite

Machine Learning tools for autotuning quantum dot experiments.

#### QGL

Domain-specific language embedded in Python for specifying pulse sequences.

#### Qlab

Measurement and control software for superconducting qubits.

#### Qlab.jl

Generic lab tools in Julia.

#### Quince

Node-based GUI that allows for graphical configuration of qubit experiments in Auspex.

#### qc-toolkit

Quantum Computing Toolkit for Qubit Control.

# Quantum fun

#### Entanglion

The world’s first open source quantum computing board game. For 2 players.

#### QSEL

Quantum programming language putting entanglement and superposition front and center.

#### Quantum Awesomeness

Simple puzzles to benchmark various quantum processor.

#### Quantum Battleships

Playing battleships with quantum measurements.

#### Quantum Catsweeper

Quantum game loosely based on Minesweeper Flag.

#### Quantum Music Composer for IBM Q

Compose and perform quantum music with IBM Q.

#### Quantum Music Composer for Rigetti

Compose and perform quantum music with Rigetti’s Forest.

# Quantum tools

#### IBM Q bot

Bot for Slack and Telegram to monitor the load of IBM Q quantum computers.

#### Quil syntax highlighter

Syntax highlighter for PyCharm.

# Abandoned projects

#### PySimulator

Python with C++ backend simulator for superconducting circuits.

#### QACG

Quantum Arithmetic Circuit Generator in Haskell.

#### QCViewer

A visual quantum circuit design and simulation tool.

#### Squankum

Visual Java quantum simulator.

#### libquantum

C library for quantum computing and quantum simulation.

#### pQCS

Parallel quantum circuit synthesis with optimal T-count.