The Quantum Exact Simulation Toolkit is a high performance simulator of quantum circuits, state-vectors and density matrices. QuEST
QuEST supports over 140 operations, from simple named gates to powerful esoteric operators, many of which have bespoke algorithms for maximum simulation efficiency. QuEST further supports general user-specified unitaries and decoherence channels, with any number of control and target qubits, and data-structures for Pauli strings, diagonal operators and QASM.
QuEST's documentation includes both typeset mathematical descriptions and circuit diagrams. It lists the invalid user inputs which will trigger an error message, and links directly to the source code so you can peek under the hood. See an example!
QuEST uses a rigorous set of unit tests to ensure everything is working correctly, automatically run after each code change. Where possible, these tests try every possible combination of inputs to each function, comparing the output to analytic results, and check all user errors are caught. See an example!
QuEST has no setup; it can be downloaded, compiled and run in a matter of seconds. QuEST has no external dependencies, and compiles natively on Windows, Linux and MacOS. Whether on a laptop, a desktop, a supercomputer, a microcontroller, or in the cloud, you can almost always get QuEST running with only a few terminal commands. See how on the Download page.
QuEST provides fast low-level access to its data structures, the ability to compile (via CMake or GNUMake) at different numerical precisions, and utilities to redirect error events. This makes QuEST exceptionally useful for integrating into larger software stacks, permitted by QuEST's permissive MIT license. Since open-source on Github, QuEST can be immediately deployed as a git module, or forked.