A high performance Quantum State Simulator implemented in pure Rust
Spinoza is a fast and flexible quantum simulator written exclusively in Rust, with bindings available for Python users. Spinoza simulates the evolution of a quantum systemβs state by applying quantum gates, with the core design principle being that a single-qubit gate applied to a target qubit preserves the probability of pairs of amplitudes corresponding to measurement outcomes that differ only in the target qubit. Spinoza is intended to enable the development of quantum computing solutions by offering researchers and quantum developers a simple, flexible, and fast tool for classical simulation. For more information, please see the accompanying paper.
Quickstart with Python
pip install git+https://github.com/QuState/spinoza#subdirectory=spynoza
Getting Started
Prerequisites
rustup toolchain install nightly
rustup default nightly
Building on *nix
[!NOTE]
before building on macOS, please see the install guide.
Production
cargo build --release
Try it out!
examples can be run using:cargo run --release --example <example-name> -- -q <num-qubits> -t <num-threads>
Contributing
Everyone is welcomed to contribute to Spinoza! Please see the contributing guideline for more information. If you encounter any issues, please feel free to open a new issue.
References
@misc{yusufov2023designing,
title={Designing a Fast and Flexible Quantum State Simulator},
author={Saveliy Yusufov and Charlee Stefanski and Constantin Gonciulea},
year={2023},
eprint={2303.01493},
archivePrefix={arXiv},
primaryClass={quant-ph}
}