Skip to main content
TenCirPauli logo

TenCirPauli

Rust-native Pauli algebra and structured quantum execution for TensorCircuit-NG.

CI status Documentation PyPI version Apache 2.0 license

TenCirPauli moves Pauli-heavy quantum workflows from Python object graphs into compact native data and Rust execution. It is the TensorCircuit-NG-facing layer for Hamiltonians, measurement grouping, symmetry reduction, restricted sectors, structured operators, classical-shadow snapshots, and observable propagation.

What it does

Capability Main entry points
Pauli algebra and Hamiltonians PauliWord, PauliOperator, products, commutators, dense/COO/CSR targets, matrix-free MVP
Measurement planning group_commuting(mode="qubit_wise"), QWCGroupingResult, basis-aware bitstring reconstruction
Classical-shadow snapshots Snapshots.sample(), Pauli/global-Clifford protocols, native estimators, RDM, Rényi-2 entropy, and fidelity
Symmetry reduction find_z2_symmetries(), taper_z2(), restrict_charge() with U1Sector or ChargeSector
Native circuit execution U1Circuit, PropagationCircuit, SPPSCircuit, value/gradient and expectation terminals
Structured quantum operators FermionOperator, BosonOperator, QuditWeylOperator, HybridOperator, MajoranaOperator
Fermion and chemistry workflows Jordan–Wigner, parity, Bravyi–Kitaev, optional PySCF ingestion, TensorCircuit-NG integration

Why it is fast

  • Scalable symbolic work stays in Rust over packed Pauli, occupation, charge, and structured representations.
  • Public results are lazy native-backed handles by default; Python materializes terms or arrays only when an API explicitly asks for them.
  • Matrix-free and restricted-sector plans avoid dense matrices and full Hilbert spaces when the workload has useful structure.
  • TensorCircuit-NG and JAX can remain at the backend boundary through reusable backend_mvp_plan() plans, while native CPU paths use coarse-grained Rust execution and default parallelism.

Performance snapshots

These are representative runs from the linked research studies, not universal maxima. The benchmark page collects the workload definitions and runnable examples.

Workload Comparison Result
60-qubit, two-particle U(1) VQE TensorCircuit-NG Python/JAX path 688× faster on the first compiled value-and-gradient call; 2.6× faster when steady
28-qubit Pauli-propagation VQE PauliPropagation.jl 7.8× faster on the first call; 1.43× faster when steady
12-mode fermion mapping OpenFermion 22× faster for Jordan–Wigner; 12.6× faster for Bravyi–Kitaev
64-qubit, 1,024-term QWC grouping Qiskit 38× faster grouping on the linked workload, with native reconstruction included in the study
4×4 Fermi–Hubbard restricted MVP QuSpin 1.73× faster and 2.16× lower peak memory

Choose an entry point

If you need to... Start with...
Build or transform Pauli operators PauliOperator.from_terms() and PauliWord.from_string()
Group terms for measurements operator.group_commuting(); use QWC mode for measurement-ready bases
Estimate observables from randomized measurements Snapshots.sample() followed by expectation(), estimate_many(), or energy()
Apply a large Hamiltonian without a matrix operator.native_mvp_plan() or operator.mvp()
Keep TensorCircuit-NG/JAX active operator.backend_mvp_plan() and tencirpauli.backend_mvp()
Reduce a symmetry sector operator.find_z2_symmetries() / operator.taper_z2()
Work at fixed particle number or additive charge U1Sector, ChargeSector, and operator.restrict_charge()
Run a native circuit objective U1Circuit, PropagationCircuit, or SPPSCircuit
Map or compile structured operators FermionQubitMapping, MajoranaOperator, and the structured operator classes

mode="general" is available for algebraic commuting groups, but its result is intentionally measurement_ready=False; use QWC grouping when the output must directly describe product-basis measurements.

TensorCircuit-NG ecosystem

TenCirPauli is designed as a TensorCircuit-NG companion, not a replacement for its circuit frontend. TensorCircuit-NG circuits can be converted with U1Circuit.from_circuit() or PropagationCircuit.from_circuit(), and Pauli backend plans can be called through TensorCircuit-NG's NumPy or JAX backend. The Rust core itself has no Python or TensorCircuit-NG dependency.

Research examples

The research index links to reproducible, manual studies covering Fermi–Hubbard, Holstein, SYK Majorana, BCH convergence, Lie closure, fermion mapping, U(1) VQE, Pauli propagation, measurement grouping, and classical shadows.

Install

python -m pip install tencirpauli

Released wheels cover common CPython 3.9+ platforms. Source builds require Rust, Cargo, and maturin; chemistry interop is optional via python -m pip install 'tencirpauli[chemistry]'.

Documentation and development

Read the documentation for concepts and API details, performance notes for benchmark context, and CONTRIBUTING.md for local development. The local quality gate is python scripts/check.py --benchmark smoke.

License

Apache License 2.0.

Download files

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

Source Distribution

tencirpauli-0.5.0.tar.gz (342.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tencirpauli-0.5.0-cp39-abi3-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.9+Windows x86-64

tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

tencirpauli-0.5.0-cp39-abi3-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

tencirpauli-0.5.0-cp39-abi3-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file tencirpauli-0.5.0.tar.gz.

File metadata

  • Download URL: tencirpauli-0.5.0.tar.gz
  • Upload date:
  • Size: 342.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tencirpauli-0.5.0.tar.gz
Algorithm Hash digest
SHA256 99e49f6d8b1aed7c3c46da03bc7ec90712ed68b6551872309c6ac0b7d0c78d2a
MD5 b11f3882dd01a6d228aa2423a4991584
BLAKE2b-256 d4ab6eedc0736d5f2bf5926e62a969700122300fe0141e1bebb79e99737effeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0.tar.gz:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tencirpauli-0.5.0-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: tencirpauli-0.5.0-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tencirpauli-0.5.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2ca3180817b091b033ca2f32d7e6eef03fdec0230c103988f44aeb190fd6755e
MD5 bc417480f7e2d8855b9a0b90633ea984
BLAKE2b-256 2669f4d37cb8d0a74d65e552d94188b47fa978d53d0c0b7613baef1d2440b82f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0-cp39-abi3-win_amd64.whl:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8a5014f514b169b3fcbf1298ad13d95a2186f13cf90b99f392c074fad6d32320
MD5 3d68a0d7bd89efa8b556a9bd84106f96
BLAKE2b-256 cfb34fd394a6a16ed7854b02b6f87eed12e661a3433e66ce133607b586da1416

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1913f0b9be299f550f9fb531c9e118499cf32ca54ccde430c72d30cf835fd3f9
MD5 c80c614592fbbc5e42fc3400be379339
BLAKE2b-256 61d97d1f63c8952c03a5dffbd5c4be7dc2cc35277138aa5a7f53f54f33ae82e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tencirpauli-0.5.0-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tencirpauli-0.5.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f7d3c767d9ea14613b8f01ce03c16dda540d36f683e40e861c5affdad61e0898
MD5 802b9419284c26189994843eebd3d7cc
BLAKE2b-256 65ea14e860cd3557a5c65a9138c237bd4e5adf737bcbde4790a934202b2af2e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tencirpauli-0.5.0-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tencirpauli-0.5.0-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bcd16ded82d75b51600c97f6b870f84cdd9127e36ae3f2b8576e52b4a3571e73
MD5 de6f5e032c0fa5d66895d547b51e9fe0
BLAKE2b-256 c159cc2c633350f0c4f5c1ff590ca1bf15dcc093b0d171095fec3fe2ca975661

See more details on using hashes here.

Provenance

The following attestation bundles were made for tencirpauli-0.5.0-cp39-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on tensorcircuit/TenCirPauli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page