QuSimPy - A Multi-Qubit Ideal Quantum Computer Simulator

  •        7

Largely based on the code from corbett/QuantumComputing.




Related Projects

qcgpu-rust - A High Performance, Hardware accelerated, Quantum computer simulator in Rust

  •    Rust

The goal of QCGPU is to provide a library for the simulation of quantum computers that is fast, efficient and portable. QCGPU is written in Rust and uses OpenCL to run code on the CPU, GPU or any other OpenCL supported devices. This library is meant to be used both independently and alongside established tools for example compilers or more general and high level frameworks. If you are interested in using QCGPU with IBM's QISKit framework or QISKit ACQUA, please see the repository qiskit-addon-qcgpu.

QuantumKatas - Programming exercises for learning Q# and quantum computing

  •    TeX

The Quantum Katas are a series of self-paced tutorials aimed at teaching you elements of quantum computing and Q# programming at the same time. To get started with the Quantum Katas, you'll first need to install the Quantum Development Kit, available for Windows 10, macOS, and for Linux. Please see the install guide for the Quantum Development Kit if you do not already have the Quantum Development Kit installed.

QuantumComputing - This is an implementation of IBM's Quantum Experience in simulation; a 5-qubit quantum computer with a limited set of gates

  •    Python

This is an implementation of IBM's Quantum Experience in simulation; a 5-qubit quantum computer with a limited set of gates "the world’s first quantum computing platform delivered via the IBM Cloud". Their implementation is available at http://www.research.ibm.com/quantum/. It is much easier to dig into the internals of how the quantum computer computes by seeing and tracing the linear algebra representation of gates and states and their interactions as desired–for IBM's examples or for one's own code.

qmasm - Quantum macro assembler for D-Wave systems

  •    Python

QMASM fills a gap in the software ecosystem for D-Wave's adiabatic quantum computers by shielding the programmer from having to know system-specific hardware details while still enabling programs to be expressed at a fairly low level of abstraction. It is therefore analogous to a conventional macro assembler and can be used in much the same way: as a target either for programmers who want a great deal of control over the hardware or for compilers that implement higher-level languages. N.B. This tool used to be called "QASM" but was renamed to avoid confusion with MIT's QASM, which is used to describe quantum circuits (a different model of quantum computation from what the D-Wave uses) and the IBM Quantum Experience's QASM (now OpenQASM) language, also used for describing quantum circuits.

qiskit-terra - Terra provides the foundations for Qiskit

  •    Python

The Quantum Information Science Kit (Qiskit for short) is a software development kit (SDK) for working with OpenQASM and the IBM Q Experience (QX). Use Qiskit to create quantum computing programs, compile them, and execute them on one of several backends (online Real quantum processors, online simulators, and local simulators). For the online backends, Qiskit uses our python API client to connect to the IBM Q Experience.

OpenFermion - The electronic structure package for quantum computers.

  •    Python

OpenFermion is an open source library for compiling and analyzing quantum algorithms to simulate fermionic systems, including quantum chemistry. Among other functionalities, this version features data structures and tools for obtaining and manipulating representations of fermionic and qubit Hamiltonians. For more information, see our release paper. Installing OpenFermion requires pip. Make sure that you are using an up-to-date version of it. For information about getting started beyond what is provided below please see our tutorial in the examples folder as well as our detailed code documentation.

qiskit-tutorial - A collection of Jupyter notebooks using Qiskit

  •    Jupyter

In this repository, we've put together a collection of Jupyter notebooks aimed at teaching people who want to use the QISKit for writing quantum computing programs and executing them on one of several backends (online quantum processors, online simulators, and local simulators). The online quantum processors connects to the IBM Q devices. Please refer to this installation for installing and setting up QISKit and tutorials on your own machine.

Cirq - A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits

  •    Python

Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators. Follow these instructions.

Quantum - Microsoft Quantum Development Kit Samples and Libraries

  •    CSharp

See introduction to quantum computing provided with the Quantum Development Kit.The libraries and samples provided in this repository are designed to work with Visual Studio 2017 and the Quantum Development Kit. Please see the installation guide for how to get up and running.

pyquil - A Python library for quantum programming using Quil.

  •    Python

A library for easily generating Quil programs to be executed using the Rigetti Forest platform. pyQuil is licensed under the Apache 2.0 license. pyQuil can be used to build and manipulate Quil programs without restriction. However, to run programs (e.g., to get wavefunctions, get multishot experiment data), you will need an API key for Rigetti Forest. This will allow you to run your programs on the Rigetti Quantum Virtual Machine (QVM) or on a real quantum processor (QPU).

grove - Quantum algorithms built using pyQuil.

  •    Python

A collection of quantum algorithms built using the Rigetti Forest platform. Grove is licensed under the Apache 2.0 license. Features in the alpha package are considered experimental.

qiskit-api-py - A Python library for the Quantum Experience API

  •    Python

The official API Client to use IBM Quantum Experience in Python. This package can be used in Jupyter Notebook.

Linear Al

  •    Java

Linear Al is a research, design and teaching tool for quantum computing and quantum information. A quantum development environment.

openqasm - Gate and operation specification for quantum circuits

  •    TeX

Specs, examples and tools for the OpenQASM intermediate representation. The latest version is: 2.0.

pyquil - A Python library for quantum programming using Quil.

  •    Python

Please Note: PyQuil, along with quilc, the QVM, and other libraries, make up what is called the Forest SDK. To make full use of pyQuil's functionality, you will need to additionally have installed quilc and the QVM. This can be done by following their respective READMEs, or by downloading them as binaries from here. PyQuil can be installed using conda, pip, or directly from source.

Liquid - The Language-Integrated Quantum Operations (LIQUi|>) Simulator

  •    F#

We are very happy to announce the availability of the Microsoft Quantum Development Kit (Preview). There is a nice blog entry for details if you'd like to read more. The release contains a new language (Q#), compiler, simulators, examples, libraries (in source form) and full documentation. There is also a video walk through showing quantum code samples as part of the Microsoft Mechanics series. The latest version of Visual Studio/.Net/FSharp (2017) is incompatible with the binaries we've previously shipped for LIQUi|⟩. All the compiled examples will work, but new code or compiling from scripts will fail. The current version on the Github site has been updated to fix this. Following the Getting Started is the easiest way to re-install everything. If you already have a version of VS2017, then you can skip that piece.

Pulse Programmer

  •    Python

A programmable signal generator and RF synthesizer for scientific experiments, especially quantum computing and quantum information processing. It includes hardware, firmware, software, and documentation, all under an open source license.

Quantum Minigolf

  •    C++

Quantum Minigolf is a computer game visualizing quantum mechanics. It is the same as the game quot;minigolfquot; except that the ball moves according to the laws of quantum mechanics. Such a ball can be at several places at once and diffracts around obstacles.



EEQT (Event Enhanced Quantum Theory) is an OpenSource package for simulation of quantum systems under continuous observation and with feedback. It includes generation of quantum jumps, quantum fractals, and simulation of waves.