Skip to main content

A library to track Pauli gates through Clifford circuits.

Project description

Python wrapper around pauli_tracker

This Python package is a wrapper around the pauli_tracker crate exporting its basic functionality.

If some essential functionality is missing, because we just forgot to implement it, please open an issue or pull request (cf. contributing). If you need more functionality, it is fairly easy to use Rust from Python with the help of pyo3 and maturin. However, because of #1444, you may want to clone this repository and extend it.

Documentation

To the docs

When using this package, please also look at the crate's documentation of the Rust crate (additionally to the Python package's documentation) in parallel since it is much more extensive about how the Pauli tracking works (although not everything there is supported in this wrapper).

Examples

Please look at this Python example and also at these Rust examples.

Installation

You can install the package from PyPI, e.g., with

pip install pauli-tracker

The package contains pre-built wheels for manylinux_2_28_x86_64 (works on most Linux distribuitions), latest Windows and latest MacOS (latest with respect to when the package was built) for Python 3.8 to 3.12. Additionally, there is an manylinux_2_28_x86_64 abi3 wheel for Python >= 3.8. You can also build the package from source, e.g., force it during a pip install with pip install --no-binary pauli-tracker pauli-tracker, however, note that this requires Python >= 3.8 and a Rust toolchain >= 1.65.

At the moment, you may also find a more up-to-date wheel in the artifacts of the latest "pypackage" github actions workflow; this is unstable though.

Manually Building

The package has to be build with maturin. The make package commands builds it through a docker container such that it is compatible with manylinux_2_28_x86_64 for Python >= 3.8. With make update_docs the documentation can be build. The output of both make commands is in the dist directory.

Versioning

The Python package follows SemVer, however, the underlying Rust crate is unstable.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pauli_tracker-0.1.1.tar.gz (20.8 kB view hashes)

Uploaded Source

Built Distributions

pauli_tracker-0.1.1-cp312-none-win_amd64.whl (384.9 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

pauli_tracker-0.1.1-cp312-cp312-manylinux_2_28_x86_64.whl (509.0 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

pauli_tracker-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (458.9 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

pauli_tracker-0.1.1-cp311-none-win_amd64.whl (386.7 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

pauli_tracker-0.1.1-cp311-cp311-manylinux_2_28_x86_64.whl (510.7 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

pauli_tracker-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (460.8 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

pauli_tracker-0.1.1-cp310-none-win_amd64.whl (386.7 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

pauli_tracker-0.1.1-cp310-cp310-manylinux_2_28_x86_64.whl (510.6 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

pauli_tracker-0.1.1-cp310-cp310-macosx_11_0_arm64.whl (460.8 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

pauli_tracker-0.1.1-cp39-none-win_amd64.whl (386.9 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

pauli_tracker-0.1.1-cp39-cp39-manylinux_2_28_x86_64.whl (511.0 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

pauli_tracker-0.1.1-cp39-cp39-macosx_11_0_arm64.whl (461.2 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pauli_tracker-0.1.1-cp38-none-win_amd64.whl (386.9 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

pauli_tracker-0.1.1-cp38-cp38-manylinux_2_28_x86_64.whl (511.1 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

pauli_tracker-0.1.1-cp38-cp38-macosx_11_0_arm64.whl (461.3 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

pauli_tracker-0.1.1-cp38-abi3-manylinux_2_28_x86_64.whl (513.6 kB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.28+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page