Skip to content

qognitive/fast-pauli

Folders and files

NameName
Last commit message
Last commit date
Oct 10, 2024
Jul 11, 2024
Nov 7, 2024
Mar 11, 2025
Mar 11, 2025
Sep 19, 2024
Sep 24, 2024
Oct 1, 2024
Oct 3, 2024
Dec 10, 2024
Oct 7, 2024
Sep 29, 2024
Sep 30, 2024
Oct 8, 2024
Oct 10, 2024
Mar 11, 2025

Status Linux Build Status Linting
Usage Documentation Status Installation
Package PyPI - Version
Legal License Contributor Covenant

Introduction

Welcome to fast-pauli from Qognitive, an open-source Python / C++ library for optimized operations on Pauli matrices and Pauli strings, inspired by PauliComposer paper. fast-pauli aims to provide a fast and efficient alternative to existing libraries for working with Pauli matrices and strings, with a focus on performance and usability. For example, fast-pauli provides optimized functions to apply Pauli strings and operators to a batch of states rather than just a single state vector. See our benchmarks for more details about how fast-pauli can speed up certain functions compared to Qiskit.

Our Getting Started guide offers an introduction to some of the core functionality in fast-pauli.

Installation

Pre-built Binaries

pip install fast_pauli

From Source

There are two strategies for building fast_pauli from source. One is a quick and easy method that uses all the default configuration settings. The other is a more configurable method that involves invoking CMake, pip, pytest, and other tools directly.

Requirements

Build from Source (Linux)

# Build
python -m pip install -e ".[dev]"
# Test
pytest -v tests/fast_pauli

Build from Source (MacOS)

# Setup
python -m pip install --upgrade pip
python -m pip install scikit-build-core
brew install llvm
# Build
pip install -e . -C cmake.args="-DCMAKE_CXX_COMPILER=$(brew --prefix llvm)/bin/clang++;-DCMAKE_CXX_FLAGS='-stdlib=libc++ -fexperimental-library'"
# Test
pytest -v tests/fast_pauli # + other pytest flags

Build from Source (Custom Configuration)

# Setup
python -m pip install --upgrade pip
python -m pip install scikit-build-core
# Build
python -m pip install --no-build-isolation -ve ".[dev]" -C cmake.args="-DCMAKE_CXX_COMPILER=<compiler> + <other cmake flags>"
# Test
pytest -v tests/fast_pauli # + other pytest flags