QEC circuits under realistic noise
Depolarizing, Pauli-error, and atom-loss channels through deep stabilizer circuits. Loss is a first-class concept, not bolted on after the fact.
Past state-vector limits
Both backends scale past the comfort zone of state-vector simulation. The generalized tableau handles hundreds of qubits when non-Clifford weight stays modest; Pauli propagation scales by truncating low-magnitude terms.
Matches the device
Noise models, loss channels, and gate sets mirror what QuEra's neutral-atom devices actually do — built to shorten the loop between paper circuit and machine.
§ 2Install
We recommend uv for managing your Python environment. The native extension compiles automatically on install.
uv add git+https://github.com/QuEraComputing/ppvm.git#subdirectory=ppvm-pythonContinue to the Python Quick Start →Add the crates relevant to your workload. ppvm-pauli-sum(the Pauli-propagation engine) is the usual entry point; the others layer on top.
[dependencies]
ppvm-pauli-sum = { git = "https://github.com/QuEraComputing/ppvm" }
ppvm-tableau = { git = "https://github.com/QuEraComputing/ppvm" }
ppvm-stim = { git = "https://github.com/QuEraComputing/ppvm" }
ppvm-sym = { git = "https://github.com/QuEraComputing/ppvm" }Requires Rust edition 2024. SetRUSTFLAGS="-C target-feature=+aes" to use the faster gxhash hasher; without AES, ppvm falls back to fxhash.
Paste this prompt into your agent (Claude Code, Cursor, Codex, …) before asking it to write ppvm code. The agent installsion if needed, fetches theppvm-usage skill, and confirms it's active — no manual steps on your side.
Before you write any ppvm code for me, set up the ppvm-usage skill so you
follow the project's API conventions correctly.
1. Check whether the `ion` CLI is on PATH. If not, install it from
https://ion.rogerluo.dev and add it to PATH. ion is the skill manager
this project uses to distribute agent-facing documentation.
2. Install the ppvm-usage skill:
ion add QuEraComputing/ppvm/skills/ppvm-usage
The skill lives at https://github.com/QuEraComputing/ppvm under
skills/ppvm-usage/SKILL.md and covers the Heisenberg-picture gate
order, the Config-generic PauliSum, truncation kwargs, and the full
Python + Rust call surface for both backends.
3. Reload your available skills if your agent needs that, then confirm
that ppvm-usage is active before continuing.
4. Read the skill end-to-end before producing ppvm code. When you start
writing, read it again for the specific section you need.
Reply with the skill version you installed and a one-line summary of
what it covers, then wait for my actual task.Continue to theQuick Start, read the Developer Guide, or browse the API Reference.