This project is a quantum computing library developed in Rust, inspired by existing libraries such as QPP in C++, Yao.jl in Julia, and Pennylane in Python. The library aims to provide a comprehensive set of tools for quantum computing, including quantum gates, circuits, states, algorithms, and noise simulation.
λόγος (lógos) comes from Greek means the logic.
To build and run the project, ensure you have Rust installed on your machine. You can install Rust using rustup.
Add LogosQ to your project by adding the following to your Cargo.toml:
[dependencies]
logosq = "0.1.12"or clone the repository and navigate to the project directory:
git clone https://github.com/zazabap/logosq.git
cd logosq
cargo buildTo use the library, you can include it in your Rust project by adding it as a dependency in your Cargo.toml file. Here’s an example of how to create and manipulate basic quantum gates
The examples directory contains several example files demonstrating how to use the library. The official documentation carefully listed the API usage and give some great tutorial for the beginners. If you are completely new to quantum computing, feel free to checkout!
Because LogosQ is written in Rust, the memory safety is the biggest advantage over the other library, and could be verified through benchmark. Please also feel free to checkout the benchmark we have compare with the Pennylane and other library!
The most important feature comes from the implementation on the parameter shift rules and the ansatz structure, where such feature is rarely implemented for quantum computing library in Rust! You could create a parameterized ansatz/quantum circuit that helps you find out the optimal solution. Here are some basic instruction to create Variational Quantum Eigensolver, Quantum Natural Gradient and Ansatz in Optimization Module.
Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes. For further details, please check the DevGuide.md
This project is licensed under the MIT License. See the LICENSE file for more details.
- Some bugs might appear when using the crate, one of the error related with missing package in libfontconfig1-dev, in such case, running on debian/linux (tested on ubuntu) could fix the build error.
sudo apt-get update
sudo apt-get install -y libfontconfig1-dev pkg-config
