List of QC simulators

== C/C++ == * QuEST ** Description: multithreaded, distributed, GPU-accelerated simulator of universal quantum circuits, state vectors and density matrices. QuEST is an open-source and stand-alone C/C++ library, can operate general single-qubit and and multi-controlled unitaries on both pure states and mixed states, and simulate dephasing and depolarising noise. The same code can be seamlessly deployed to all hardware backends, and the simulation cost and precision changed at compile time. QuEST is currently the only active distributed QC simulator, and the first and only to offer distributed density matrix support. ** Webpage: (technical report) ** Status: Active * Scaffold/ScaffCC ** Description: C-like language for defining and expressing quantum algorithms using familiar low-level control flow. ** Webpage: (technical report) (compiler) ** Status: Active * Qrack ** Description: Qrack is a highly optimized OpenCL-supporting quantum simulator implemented in C++ with extensive documentation, testing, and performance metrics. Usable either as a library inside a larger application or directly via a 6502 emulator. Suitable for production use in high performance environments. Supports a wide range of standard and custom gates, as well as extensive optimizations for parallel gate operations and ALU operations. ** Webpage: ** Status: Active * QX Simulator ** Description: QX is a high-performance universal quantum computer simulator which simulates the execution of quantum circuits on perfect or error-prone quantum computers. The input of the QX simulator are quantum circuits which are described using a simple quantum assembly language (QASM). ** Webpage: ** Status: Active * Quantum++ ** Description: Quantum++ is a C++11 general purpose quantum computing library, composed solely of template header files. Quantum++ is written in standard C++11 and has very low external dependencies, using only the [ Eigen 3] linear algebra header-only template library and, if available, the [ OpenMP] multi-processing library. ** author: Vlad Gheorghiu, vgheorgh AT gmail DOT com ** Webpage: ** Status: Active, version 2.0, released on 24 August 2019 under the MIT License ** Copyright (c) 2013 - 2019 Vlad Gheorghiu * QMDD ** Description: Decision Diagram Package for the Efficient Representation and Manipulation of Quantum Functionality ** Webpage: ** Status: Finished (?) * CHP ** Description: A high-performance simulator of stabilizer circuits ** Webpage: ** Status: Finished * Eqcs ** Description: Library for quantum computer simulation ** Webpage: ** Status: Active * LanQ ** Description: Quantum programming language supporting multiple processes runs ** Webpage: ** Status: Alive * libquantum (C) ** Description: C library to perform quantum computation ** Webpage: ** Status: Under development * libquantum (C++) ** Description: C++ library to perform quantum computation ** Webpage: gone ** Status: Development stopped in 2003 * Open Qubit ** Description: C++ simulation library ** Webpage: gone ** Status: Development stopped in 2000 * Q++ ** Description: C++ template library for simulating quantum computation, developed at [ Cybernet] ** Webpage: ** Status: Finished * QCLib ** Description: Transparent simulation of quantum algorithms ** Webpage: ** Status: Finished * QCSim ** Description: Simulator written in C++ ** Webpage: ** Status: Unknown * QDD ** Description: C++ simulation library ** Webpage: ** Status: Unknown * QGAME ** Description: Quantum Gate And Measurement Emulator ** Webpage: ** Status: Unknown * qsims ** Description: A general-purpose quantum simulation software package, capable of simulating the dynamics of systems with a wide range of Hamiltonians ** Webpage: ** Status: Active, under development * QTM simulator ** Description: Quantum Turing Machine Simulator ** Webpage: ** Status: Unknown Finished? * Quantum Computer Language ** Description: Language similar to C or Pascal integrated with a simulator of quantum computation ** Webpage: ** Status: Under development * Quantum Computer Simulator ** Description: Simulator of quantum computers ** Webpage: ** Status: Unknown * Quantum Construct (qC++) ** Description: Rapid development of quantum mechanical simulations ** Webpage: ** Status: Active * Quantum Information Matrix Toolkit ** Description: The toolkit is intended to facilitate coding C++ numerics related to Quantum Information. ** Webpage: ** Status: Finished * Quantum Network Computing ** Description: Environment for developing quantum computer simulations ** Webpage: ** Status: No longer under active development * QuBit ** Description: QM-like superpositions ** Webpage: ** Status: Unknown * Qubiter ** Description: Quantum compiler based on CS decomposition ** Webpage: ** Status: Alive * QuCoSi ** Description: C++ library for simulating a quantum computer ** Webpage: ** Status: Active * QuIDDPro ** Description: Uses the Quantum Information Decision Diagram (QuIDD) datastructure to simulate a number of important circuits using asymptotically less runtime and memory resources than simulation techniques based on explicit matrices and vectors. ** Webpage: ** Status: Finished * QWalk ** Description: Simulator of quantum walks for one- and two-dimensional lattices ** Webpage: ** Status: Alive * Shor's Algorithm Simulation ** Description: Simulator of quantum Shor's algorithm ** Webpage: gone ** Status: Finished * SpinDec ** Description: Library for spin decoherence implementing the cluster correlation expansion. ** Webpage: ** Status: Active * sqct - Single qubit circuit toolkit ** Description: Software for exact and approximate synthesis of single qubit circuits using Clifford and T gate library. ** Webpage: and ** Status: Active == CaML == * Q-gol ** Description: System for simulation of quantum computations ** Webpage: ** Status: Finished ==OCaml== *QOCS ** Description: Quantum circuit simulator and Shor's algorithm simulator written in OCaml ** Webpage: ** Status: Finished ==Coq== * QWIRE ** Description: Computer-aided proof system for quantum circuits ** Webpage: ** Status: Active == F# == *LIQUiD ** Description: Microsoft Research's F# based simulation platform ** Webpage: ** repository: ** Status: Active == GUI based == * Quantum Programming Studio ** Description: Web based IDE and Simulator, Drag & Drop circuit builder, cross platform (Rigetti & IBM), connects to quantum computer from UI ** Webpage: ** Status: Active * Bloch Sphere Simulator of Quantum-Mechanical gates and Spintronics ** Description: 3D visualization of qubits on the Bloch sphere ** Webpage: ** Status: Finished * DEKOMPMAT ** Description: Decomposition of unitary matrices into quantum logic circuits ** Webpage: ** Status: Finished * Linear Al ** Description: Quantum development environment; research, design and teaching tool for quantum computing and quantum information ** Webpage: ** Status: Active * Optical Simulator ** Description: Visualisation of linear optics quantum computing ** Webpage: ** Status: Finished * QC Simulator ** Description: Universal quantum computation simulator ** Webpage: ** Status: Unknown * QCAD ** Description: Windows-based environment for quantum computing simulation (Open Source) ** Webpage: ** Status: Active * QSim ** Description: Simulation of NMR experiments ** Webpage: ** Status: Unknown * Qdns ** Description: GUI program - Quantum Designer and Network Simulator ** Webpage: ** Status: Under development * Quantum Computer Emulator ** Description: QC simulator solving Schrodinger equation ** Webpage: ** Status: Active * Quantum Fog ** Description: Quantum simulator (and graphic programming language) that uses quantum generalization of Bayesian Networks; works only on MacOS X (10.2 or later) ** Webpage: ** Status: Alive * Quantum Qudit Simulator ** Description: Windows-based qudit circuits simulator, part of Master's thesis ** Webpage:> ** Status: Finished * SimQubit ** Description: Quantum circuit simulator on the basis of Q++ ** Webpage: ** Status: Active * Q-Kit ** Description: Q-Kit or Quantum-Kit is a graphical quantum circuit simulator. Q-Kit enables building and designing quantum circuits, visualizing the effect of quantum gate operations as probability distributions of quantum states or on a Bloch Sphere. ** Webpage: ** Status: Active == Java == * Bloch Sphere Simulator of Quantum-Mechanical gates and Spintronics ** Description: 3D visualization of qubits on the Bloch sphere ** Webpage: ** Status: Finished * jaQuzzi ** Description: Interactive quantum computer simulator ** Webpage: ** Status: Unknown * jQuantum - Quantum Computer Simulator ** Description: Simulator of quantum circuits with a visual editor ** Webpage: ** Status: Unknown * qsim ** Description: Quantum computation simulator concentrating and based on quantum circuits ** Webpage: ** Status: Unknown * jSQ- Java Quantique Simulator ** Description: Simulator of quantum dial able to generate binary keys ** Webpage: ** Status: Active * LibQuantumJava (LQJ) ** Description: Translation of libquantum to Java ** Webpage: ** Status: Beta version * QuanSuite ** Description: Suite of 7 Java applications, all based on a common class library called QWalk. Each application compiles a different kind of evolution operator. ** Webpage: ** Status: Alive * Quantomatic ** Description: High-level graphical calculus for quantum information ** Webpage: ** Status: Active * Quantum Algorithm Designer ** Description: Graphical algorithm construction tool and simulator ** Webpage: ** Status: Unknown, probably dead * Quantum Search Applet ** Description: Interactive quantum search applet ** Webpage: ** Status: Finished * QuaSi 1 / 2 ** Description: Graphical algorithm construction tool and simulator ** Webpage: ** Status: Probably finished * qMIPS101 ** Description: Two quantum computing Java applications: Qubit101 an usable and efficient quantum circuit simulator and qMIPS a simulator of a processor with an integrated quantum functional unit. ** Webpage: ** Status: Active * QuSAnn (and Multiplexor Expander) ** Description: 2 Java applications. QuSAnn outputs quantum circuit for doing simulated annealing on a quantum computer. MultiplexorExpander is a utility tool that expands quantum multiplexor gate into sequence of more elementary gates. ** Webpage: ** Status: Alive * Squankum ** Description: Interactive quantum computation applet ** Webpage: '''Moved to''' ** Status: Active * Strange ** Description: Quantum simulator with an API and a link to a JavaFX visualiser ** Webpage: ** Status: Active * Virtual quantum mechanics ** Description: Applet visualising basic quantum operations ** Webpage: ** Status: Unknown * Zeno ** Description: Universial quantum circuit simulator which allows edition and simulation of quantum circuits with pure and mixed states ** Webpage: ** Status: Finished == Javascript == * BackupBrain Quantum Computer Simulator - Open-Source Programmable Quantum Computer Simulator implemented in client-side only JavaScript ** Description: An open-source, client-side only quantum simulator for use in the browser, emphasizing OpenQASM programming and downloadable CSV results. Experiments can be saved in the browser for future use and results can be downloaded as a CSV file. ** Webpage: ** Status: Active * quantum-circuit - Quantum circuit simulator implemented in javascript ** Description: Optimized memory usage but CPU intensive. Smoothly runs 20+ qubit simulations on laptop. Can run in browser or at server (node.js). No UI: you can use it in your program to run quantum simulations. Circuit can be imported from and exported to OpenQASM. Circuit drawing can be exported to SVG vector image. ** Webpage: ** Status: Active * jsqis - Javascript Quantum Information Simulator ** Description: A quantum simulator for use in the browser, emphasizing a complete, precise, visual representation of quantum bits and registers ** Webpage: ** Status: Active == Julia == * QSWalk.jl ** Description: A package for Julia programming language which enables high-performance analysis of quantum stochastic walks ** Webpage: ** Status: Active * QuantumOptics.jl ** Description: QuantumOptics.jl is a numerical framework written in the Julia programming language that makes it easy to simulate various kinds of open quantum systems. It is inspired by the Quantum Optics Toolbox for MATLAB and the Python framework QuTiP. ** Webpage: ** Status: Active * QuantumWalk ** Description: Building algorithms using quantum walks ** Webpage: ** Status: Active == Maple == * FEYNMAN ** Description: Simulation of n-qubit quantum systems ** Webpage: ** Status: Active * OpenQUACS ** Description: General-purpose universal Quantum Computer Simulator ** Webpage: ** Status: Unknown * Quantavo ** Description: A Maple toolbox for linear optics and quantum information in Fock space ** Webpage: ** Status: Active == Mathematica == * QDENSITY ** Description: Mathematica package operating on density matrices ** Webpage: ** Status: Active * qmatrix ** Description: Mathematica package for Quantum Information Theory ** Webpage: ** Status: Unknown * Quantum ** Description: Mathematica add-on for simulating quantum algorithms ** Webpage: ** Status: Active * QuantumUtils ** Description: QuantumUtils for Mathematica is a software library for quantum information scientists, facilitating symbolic and numerical calculations, with extensive documentation. ** Webpage: ** Status: Active * Quantum Information Programs in Mathematica ** Description: Functions and other objects useful for simulating small quantum circuits ** Webpage: ** Status: Active * Quantum Turing Machine Simulator ** Description: Toolkit to construct, run, and research quantum Turing machines ** Webpage: ** Status: Finished * QuCalc ** Description: Mathematica package for doing quantum computation ** Webpage: ** Status: Active * QI ** Description: Package for analysing quantum states and quantum channels with Mathematica ** Webpage: ** Status: Active * TRQS ** Description: Package for Mathematica computing system allowing to generate true random quantum states. It can be used with Quantis random number generator or QRNG service as a source of randomness. ** Webpage: ** Status: Active == Maxima == ** Description: Qinf quantum information and entanglement package ** Webpage: ** Status: Unknown == MATLAB/Octave == * CS 596 Quantum Computing ** Description: Routines for quantum algorithms ** Webpage: ** Status: Finished * drqubit ** Description: Various routines for quantum information research ** Webpage: ** Status: Active * M-fun for QC Progs ** Description: Toolbox of Octave/MATLAB m-files for QC programming ** Webpage: ** Status: Alive * QC simulator ** Description: Simulator of a quantum computer ** Webpage: ** Status: Active * QCTOOLS ** Description: Toolbox to simulate ion trap quantum computers ** Webpage: ** Status: Active * QETLAB ** Description: Toolbox for quantum information theory and entanglement ** Webpage: ** Status: Active * QLib ** Description: A MATLAB library for Quantum Information calculations ** Webpage: ** Status: Active * qotoolbox ** Description: Quantum Optics and Computation Toolbox for MATLAB ** Webpage: ** Status: Finished * Quack! ** Description: MATLAB-based quantum computer simulator ** Webpage: ** Status: Complete and under continual development * Quantum Computing Functions for Matlab (QFC) ** Description: A library of MATLAB functions for simulating quantum computing algorithms ** Webpage: ** Status: Active * Quantum Octave ** Description: GNU Octave package performing QC on mixed states ** Webpage: ** Status: Not maintained any more * Qubit4matlab ** Description: MATLAB routines for quantum information ** Webpage: ** Status: Active == Maxima == * Qinf ** Description: Quantum information and entanglement package ** Webpage: ** Status: Unknown == .NET == * QuIDE ** Description: QuIDE is a quantum computer simulation platform written in C#. ** Webpage:, ** Status: Finished * Cove ** Description: A practical quantum computer programming framework ** Webpage: ** Status: Discontinued * Quantum.NET ** Description: A library to manipulate qubits and simulate quantum circuits ** Webpage: ** Status: Active * Quantum Information Suite ** Description: Framework for Quantum Computation ** Webpage: ** Status: Discontinued == Online Services == * Factor 15 Circuit ** Description: Online simulation of Shor's algorithm ** Webpage: ** Status: Unknown * Fraunhofer Quantum Computing Simulator ** Description: Simulates quantum circuits and Hamiltonians up to 31 qubits ** Webpage: ** Status: Discontinued * GQC ** Description: An online quantum compiler ** Webpage: ** Status: Active * Quantum eXpress ** Description: Java-based quantum computer simulator ** Webpage: ** Status: Unknown * Quantum Walks ** Description: Online calculator for simulating quantum walks on cycles hosted at The National University of Ireland, Galway. ** Webpage: ** Status: Unknown * Quantum Computing Playground ** Description: Online GPU-accelerated quantum computer simulation with a simple IDE interface, its own scripting language, debugging, and 3D state visualization. ** Webpage: ** Source Code: ** Status: Complete * Quantum Computer Simulator ** Description: Development of a library for quantum calculation and the implementation of a graphic interface that uses the library. Hosted at University of Patras ** Webpage: ** Status: Complete * Quantum Circuit Simulator (Davy Wybiral) ** Description: Online point-and-click circuit simulator written in Javascript using NumericJS. ** Webpage: ** Status: Complete * Quirk ** Description: Online drag-and-drop toy with inline state displays for exploring and understanding small circuits. ** Webpage: ** Source Code: ** Status: Complete * QRBGS ** Description: Online quantum random number generator ** Webpage: ** Status: Active * VirtualQC ** Description: Online quantum computer emulator that runs Shor's algorithm (up to 205 qubits) and quantum simulation algorithms. ** Webpage: ** Status: Complete == Perl/PHP == * Quantum::Entanglement ** Description: Entanglement of variables in Perl ** Webpage: ** Status: Finished * Quantum::Entanglement ** Description: Online entanglement calculator in PHP ** Webpage: ** Status: Finished * Quantum::Superpositions ** Description: QM-like superpositions in Perl ** Webpage: ** Status: Finished == Python == * Cirq ** Description: A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits. ** Webpage: ** Status: Active * Forest ** Description: An open source quantum programming toolkit and API based on the quantum instruction language Quil. Whitepaper: ** Webpage: ** Status: Under development. Available in private beta. * ProjectQ ** Description: ProjectQ is an open-source software framework for quantum computing started at ETH Zurich. It allows users to implement their quantum programs in Python using a powerful and intuitive syntax. ProjectQ can then translate these programs to any type of back-end, be it a simulator run on a classical computer or an actual quantum chip. ** Webpage: ** Status: Active * PyQu ** Description: High-level quantum programming in Python (C extension module using libquantum). ** Webpage: ** Status: Under developement * QCircuits ** Description: An open-source quantum circuit programming library in Python, with a simple API designed for students. ** Webpage: ** Status: Active * QISKit ** Description: An open-source quantum computing framework for leveraging today's quantum processors and conducting research ** Webpage: ** Status: Active * qitensor ** Description: Matrix-level quantum operations, with labeled component Hilbert spaces. Symbolics supported in Sage. ** Webpage: ** Status: Active * QuaEC ** Description: Quantum Error Correction Analysis in Python ** Webpage: ** Status: Active * Quantum Fog ** Description: Python tools for analyzing both classical and quantum Bayesian Networks ** Webpage: ** Status: Active * Qubiter ** Description: Python tools for reading, writing, compiling, simulating quantum computer circuits ** Webpage: ** Status: Active * QuTiP ** Description: Framework for solving open quantum systems using a wide range of master equation and stochastic methods. Also quantum optimal control modules for control pulse engineering. ** Webpage: ** Status: Active * sparse_pauli ** Description: Implementation of large, sparse Pauli operators using pairs of sets indicating where each Pauli has X and Z support. Contains absolutely minimal functionality. ** Webpage: ** Status: Active == Q# == * Microsoft Quantum Development Kit ** Description: Quantum programming language interfacing with Microsoft Visual Studio and Microsoft Visual Studio Code ** Webpage: ** Status: Preview == QASM == * OpenQASM ** Description: Quantum assembly language with an enhanced feature set. Released as part of IBM's QISKit. ** Webpage: ** Status: Active == Rust == * QCGPU ** Description: QCGPU is a high performance, hardware accelerated quantum computer simulator written with Rust and OpenCL. ** Webpage: ** Status: Active == Scheme/Haskell/LISP/ML == * Quacee ** Description: Quacee quantum computing language ** Webpage: ** Status: Finished * CS 20c Project ** Description: Quantum Turing Machine simulation ** Webpage: ** Status: Finished * Haskell Simulator of Quantum Computer ** Description: Haskell module for quantum computer simulations ** Webpage: ** Status: Unknown * QIO ** Description: The Quantum IO Monad is a library for defining quantum computations in Haskell. It can be thought of as an embedded language within Haskell, and comes with functions for simulating the running of these quantum computations. The distribution contains many example computations written in QIO, including an implementation of Shor's algorithm. Also implemented in Agda. ** Webpage: ** Status: Active * qlambda ** Description: Functional language based on Scheme for expressing and simulating quantum algorithms ** Webpage: ** Status: Unknown * QML ** Description: Functional quantum programming language ** Webpage: ** Status: Active * Quipper ** Description: An embedded, scalable functional programming language for quantum computing ** Webpage: ** Status: Active * Simulating Quantum Circuits on a parallel machine ** Description: Windows-based quantum computer parallel simulator ** Webpage: ** Status: Unknown * qchas ** Description: Quantum Computing Library wrote in Haskell ** Webpage: ** Status: Active Category:Resources for the QIP Community Category:Software

Last modified: 

Saturday, August 24, 2019 - 07:34