QUICHE
QUICHE (QUantum Integrated CHEmistry) is a toolkit for studying quantum computing algorithms for quantum chemistry, with a focus on quantum phase estimation (QPE). It integrates a resource estimation backend based on Qualtran, with a QuEST-powered simulation backend. The two backends can be used in isolation or combined using the Python package capable of dispatching between the two.
⚠️ This project is in early active development and should not be considered production-ready. Breaking changes may occur without notice before v1.0.
Features
- Range of quantum phase estimation algorithms including various single- and multi-ancilla methods.
- Wide variety of Hamiltonian simulation techniques, such as Suzuki-Trotter, QDRIFT and qubitisation.
- Extensible, Python-based resource estimation tooling.
- High-performance simulation capabilities.
Installation
QUICHE is available on PyPI as pyquiche. For a basic install, execute
pip install pyquiche
Then import the package from Python
import quiche
Prebuilt wheels are available for Linux (x86_64, aarch64), macOS 15+ (arm64) and Windows (x64), on Python 3.12 or later. They bundle a multithreaded, double precision build of QuEST. On other platforms pip falls back to building from source. That is also needed for custom precision, GPU acceleration or MPI-enabled builds.
Building from source
Building from source compiles the C++ simulation backend locally. This requires CMake, a C++17 compiler and network access to fetch dependencies. MPI- and GPU-enabled builds additionally require the corresponding toolchains, which are not fetched automatically.
The simulation backend depends on:
- QuEST for simulation. Always built from a pinned source archive, since QUICHE depends on internal headers that are not part of the installed interface.
- nanobind for Python bindings. Toggled with
QUICHE_BUILD_BINDINGS. - Catch2 for testing. Toggled with
QUICHE_BUILD_TESTS.
nanobind and Catch2 are located with find_package and downloaded via FetchContent if unavailable.
To build the Python package from the published sdist, passing configuration flags through to CMake:
pip install pyquiche --no-binary pyquiche -C cmake.define.ENABLE_DISTRIBUTION=ON
Note:
--no-binaryis required: without it pip installs the prebuilt wheel and the configuration flags are ignored.
Or to build from a checkout
git clone https://github.com/Quantum-Motion/quiche.git
cd quiche
pip install .
C++ backend only
To build only the C++ simulator backend, along with the examples, execute
cd quiche
cmake -B build -D QUICHE_BUILD_EXAMPLES=ON
cmake --build build
Then execute an example (e.g. the Textbook QPE example)
./build/cpp/examples/qpe-textbook
Other C++ configuration flags can be similarly toggled ON and OFF. See also the QuEST docs for the available simulation flags.
Usage
For Python usage examples see the python/examples directory.
For C++ simulator usage examples see the cpp/examples directory.
Contributing
For further information about how you can contribute to QUICHE see the contributing guide.
License
Copyright 2026 Quantum Motion Technologies Ltd. Licensed under the Apache License, Version 2.0.
Funding
This software is supported by Innovate UK and Germany's ZIM via the QUantum-Integrated CHEmistry (QUICHE) project.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyquiche-0.1.0.tar.gz.
File metadata
- Download URL: pyquiche-0.1.0.tar.gz
- Upload date:
- Size: 431.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e051ee5a161d2c7cfb7d63977a69982fdf02df167c877266ea65c6d8c61320e
|
|
| MD5 |
d875fb0c28c073e13511a806de02ab9a
|
|
| BLAKE2b-256 |
246bb2962e43b0f2f4b7f460a56e21384fd42258f3cda014c954f52bd757f8a9
|
Provenance
The following attestation bundles were made for pyquiche-0.1.0.tar.gz:
Publisher:
publish-wheels.yml on Quantum-Motion/quiche
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyquiche-0.1.0.tar.gz -
Subject digest:
5e051ee5a161d2c7cfb7d63977a69982fdf02df167c877266ea65c6d8c61320e - Sigstore transparency entry: 2818994278
- Sigstore integration time:
-
Permalink:
Quantum-Motion/quiche@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Quantum-Motion
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyquiche-0.1.0-cp312-abi3-win_amd64.whl.
File metadata
- Download URL: pyquiche-0.1.0-cp312-abi3-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.12+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
520a1f414d91fce2534b9fcf2f42a8565952b843ebf37fd06f384c1fdcc86a2e
|
|
| MD5 |
00a21d1beb37ceb92b430a1daa9c9997
|
|
| BLAKE2b-256 |
2526bfa572ac8e039856f440cc087978e16715c36449b0d1a9c66f132584be47
|
Provenance
The following attestation bundles were made for pyquiche-0.1.0-cp312-abi3-win_amd64.whl:
Publisher:
publish-wheels.yml on Quantum-Motion/quiche
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyquiche-0.1.0-cp312-abi3-win_amd64.whl -
Subject digest:
520a1f414d91fce2534b9fcf2f42a8565952b843ebf37fd06f384c1fdcc86a2e - Sigstore transparency entry: 2818994324
- Sigstore integration time:
-
Permalink:
Quantum-Motion/quiche@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Quantum-Motion
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyquiche-0.1.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pyquiche-0.1.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 2.6 MB
- Tags: CPython 3.12+, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7dd9a31a7568ca04ad6fd9cd6e7a303ab3ce88fbc93789163303073150b0edff
|
|
| MD5 |
780fa2e9a264eb58d5567cc7edc402df
|
|
| BLAKE2b-256 |
4872bcd584bb5cc9ceec8e19bd91fb54f619dcfbdb322a44f6a97b512577971a
|
Provenance
The following attestation bundles were made for pyquiche-0.1.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
publish-wheels.yml on Quantum-Motion/quiche
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyquiche-0.1.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
7dd9a31a7568ca04ad6fd9cd6e7a303ab3ce88fbc93789163303073150b0edff - Sigstore transparency entry: 2818994343
- Sigstore integration time:
-
Permalink:
Quantum-Motion/quiche@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Quantum-Motion
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyquiche-0.1.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: pyquiche-0.1.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.12+, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c28cf3046444512b2a3b177ff0c366e4b0b5cc6e7d1736e591d9b81777362d5
|
|
| MD5 |
d9c46653390391c4c03b2caee88cbdb5
|
|
| BLAKE2b-256 |
2e25debea3b90ddd49b78d785b4e0e0969eedbf9b726e45533d7e55417e6e0b9
|
Provenance
The following attestation bundles were made for pyquiche-0.1.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
publish-wheels.yml on Quantum-Motion/quiche
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyquiche-0.1.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
9c28cf3046444512b2a3b177ff0c366e4b0b5cc6e7d1736e591d9b81777362d5 - Sigstore transparency entry: 2818994304
- Sigstore integration time:
-
Permalink:
Quantum-Motion/quiche@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Quantum-Motion
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyquiche-0.1.0-cp312-abi3-macosx_15_0_arm64.whl.
File metadata
- Download URL: pyquiche-0.1.0-cp312-abi3-macosx_15_0_arm64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.12+, macOS 15.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fdaacb9ad00de47cb2ea604f726c65c90f4e61d15a02b3493dd7cf5d2f29c9e
|
|
| MD5 |
79599fc18dafb9670dbaafc84bdf1b66
|
|
| BLAKE2b-256 |
062e679ac865b094bf34882d84fb403e86b4cc2ce9844546148eec2603f98305
|
Provenance
The following attestation bundles were made for pyquiche-0.1.0-cp312-abi3-macosx_15_0_arm64.whl:
Publisher:
publish-wheels.yml on Quantum-Motion/quiche
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyquiche-0.1.0-cp312-abi3-macosx_15_0_arm64.whl -
Subject digest:
4fdaacb9ad00de47cb2ea604f726c65c90f4e61d15a02b3493dd7cf5d2f29c9e - Sigstore transparency entry: 2818994288
- Sigstore integration time:
-
Permalink:
Quantum-Motion/quiche@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Quantum-Motion
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@89f5c0850aa94b4a6a80bb640c5aac81b4bcc591 -
Trigger Event:
push
-
Statement type: