Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.1.1](https://github.com/QuEraComputing/ppvm/compare/v0.1.0...v0.1.1) - 2026-10-23

### Fixed

- *(hash)* spread high-bit keys across buckets in tableau and Pauli-word maps ([#267](https://github.com/QuEraComputing/ppvm/pull/267))
- *(tableau)* use FoldHashMap for two-qubit rotation coefficients ([#268](https://github.com/QuEraComputing/ppvm/pull/268))

### Other

- add crates.io READMEs for the published crates ([#265](https://github.com/QuEraComputing/ppvm/pull/265))
34 changes: 17 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ edition.workspace = true
publish = false

[dependencies]
ppvm-pauli-sum = { version = "0.1.0", path = "crates/ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.0", path = "crates/ppvm-tableau" }
ppvm-sym = { version = "0.1.0", path = "crates/ppvm-sym" }
ppvm-pauli-sum = { version = "0.1.1", path = "crates/ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.1", path = "crates/ppvm-tableau" }
ppvm-sym = { version = "0.1.1", path = "crates/ppvm-sym" }

[workspace]
members = [
Expand Down Expand Up @@ -36,7 +36,7 @@ members = [
# Single version for every crate and the `bloqade-ppvm` Python package
# (via ppvm-python-native); bumped by release-plz.
[workspace.package]
version = "0.1.0"
version = "0.1.1"
edition = "2024"
license = "Apache-2.0"
repository = "https://github.com/QuEraComputing/ppvm"
Expand Down
4 changes: 2 additions & 2 deletions crates/ppvm-cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ description = "Command-line tool and TUI for parsing, running and stepping throu
[dependencies]
clap = { version = "4.6.1", features = ["derive"] }
eyre = "0.6.12"
ppvm-tui = { version = "0.1.0", path = "../ppvm-tui" }
ppvm-vihaco = { version = "0.1.0", path = "../ppvm-vihaco", features = ["rayon"] }
ppvm-tui = { version = "0.1.1", path = "../ppvm-tui" }
ppvm-vihaco = { version = "0.1.1", path = "../ppvm-vihaco", features = ["rayon"] }
ratatui = "0.29.0"

[[bin]]
Expand Down
6 changes: 3 additions & 3 deletions crates/ppvm-lindblad/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ description = "Direct Heisenberg-picture Lindbladian evolution on an adaptive Pa
fxhash = "0.2.1"
ndarray = "0.17"
num = "0.4.3"
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits" }
ppvm-pauli-word = { version = "0.1.0", path = "../ppvm-pauli-word" }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits" }
ppvm-pauli-word = { version = "0.1.1", path = "../ppvm-pauli-word" }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
rayon = "1.11"
# Matrix-exponential action (Al-Mohy & Higham). QuSpin-rust is MIT-licensed;
# the pinned rev is the commit that added the LICENSE file.
Expand Down
4 changes: 2 additions & 2 deletions crates/ppvm-pauli-sum/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ repository.workspace = true
description = "Pauli-propagation engine for ppvm: `PauliSum`, truncation strategies and ready-made configs."

[dependencies]
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits" }
ppvm-pauli-word = { version = "0.1.0", path = "../ppvm-pauli-word" }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits" }
ppvm-pauli-word = { version = "0.1.1", path = "../ppvm-pauli-word" }
bytemuck = { version = "1", features = ["min_const_generics"] }
fxhash = "0.2.1"
num = "0.4.3"
Expand Down
2 changes: 1 addition & 1 deletion crates/ppvm-pauli-word/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ repository.workspace = true
description = "Packed Pauli-string types (plain, phased, lossy and pattern) for the ppvm simulators."

[dependencies]
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits" }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits" }
bitvec = "1.0.1"
bytemuck = { version = "1", features = ["min_const_generics"] }
fxhash = "0.2.1"
Expand Down
8 changes: 4 additions & 4 deletions crates/ppvm-python-native/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ num = "0.4.3"
numpy = "0.29"
paste = "1.0.15"
ppvm-lindblad = { version = "0.1.0", path = "../ppvm-lindblad" }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
ppvm-stim = { version = "0.1.0", path = "../ppvm-stim", features = ["rayon"] }
ppvm-tableau = { version = "0.1.0", path = "../ppvm-tableau" }
ppvm-tableau-sum = { version = "0.1.0", path = "../ppvm-tableau-sum", features = ["rayon"] }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
ppvm-stim = { version = "0.1.1", path = "../ppvm-stim", features = ["rayon"] }
ppvm-tableau = { version = "0.1.1", path = "../ppvm-tableau" }
ppvm-tableau-sum = { version = "0.1.1", path = "../ppvm-tableau-sum", features = ["rayon"] }
# abi3-py310: build a single stable-ABI wheel that loads on CPython 3.10+,
# instead of one wheel per Python version.
pyo3 = { version = "0.29.0", features = [
Expand Down
6 changes: 3 additions & 3 deletions crates/ppvm-stim/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ default = []
rayon = ["dep:rayon"]

[dependencies]
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.0", path = "../ppvm-tableau" }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.1", path = "../ppvm-tableau" }
bitvec = "1.0.1"
itertools = "0.14"
num = "0.4.3"
smallvec = "1.15"
thiserror = "2"
stim-parser = { version = "0.1.0", path = "../stim-parser" }
stim-parser = { version = "0.1.1", path = "../stim-parser" }

# rayon needs OS threads β€” native only.
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
Expand Down
4 changes: 2 additions & 2 deletions crates/ppvm-sym/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@ description = "Symbolic, parametric Pauli propagation for ppvm."
anyhow = "1.0.100"
fxhash = "0.2.1"
num = "0.4.3"
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits", default-features = false }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum", default-features = false }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits", default-features = false }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum", default-features = false }
8 changes: 4 additions & 4 deletions crates/ppvm-tableau-sum/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ bitvec = "1.0.1"
bytemuck = { version = "1", features = ["min_const_generics"] }
fxhash = "0.2.1"
num = "0.4.3"
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits" }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.0", path = "../ppvm-tableau" }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits" }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.1", path = "../ppvm-tableau" }
rand = "0.10.1"
smallvec = "1.15"
ppvm-pauli-word = { version = "0.1.0", path = "../ppvm-pauli-word" }
ppvm-pauli-word = { version = "0.1.1", path = "../ppvm-pauli-word" }

# Native-only dep: rayon (OS threads). Pruned on wasm32.
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
Expand Down
6 changes: 3 additions & 3 deletions crates/ppvm-tableau/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ fxhash = "0.2.1"
bnum = { version = "0.13.0", features = ["numtraits"] }
itertools = "0.14.0"
num = "0.4.3"
ppvm-traits = { version = "0.1.0", path = "../ppvm-traits" }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
ppvm-traits = { version = "0.1.1", path = "../ppvm-traits" }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
rand = "0.10.1"
smallvec = "1.15"
ppvm-pauli-word = { version = "0.1.0", path = "../ppvm-pauli-word" }
ppvm-pauli-word = { version = "0.1.1", path = "../ppvm-pauli-word" }

# rayon needs OS threads β€” native only.
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
Expand Down
2 changes: 1 addition & 1 deletion crates/ppvm-tui/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ eyre = "0.6.12"
# don't declare it directly β€” that keeps a single crossterm version in the tree
# and unifies event types with any host ratatui app.
ratatui = "0.29.0"
ppvm-vihaco = { version = "0.1.0", path = "../ppvm-vihaco" }
ppvm-vihaco = { version = "0.1.1", path = "../ppvm-vihaco" }
6 changes: 3 additions & 3 deletions crates/ppvm-vihaco/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ eyre = "0.6.12"
log = "0.4.29"
num = "0.4.3"
rayon = { version = "1.10", optional = true }
ppvm-tableau = { version = "0.1.0", path = "../ppvm-tableau" }
ppvm-tableau = { version = "0.1.1", path = "../ppvm-tableau" }
smallvec = "1.15.1"
vihaco = "0.4.1"
vihaco-cpu = "0.4.1"
vihaco-parser = "0.4.1"
vihaco-parser-derive = "0.4.1"
vihaco-circuit-isa = { version = "0.1.0", path = "../vihaco-circuit-isa" }
ppvm-pauli-sum = { version = "0.1.0", path = "../ppvm-pauli-sum" }
vihaco-circuit-isa = { version = "0.1.1", path = "../vihaco-circuit-isa" }
ppvm-pauli-sum = { version = "0.1.1", path = "../ppvm-pauli-sum" }
rand = "0.10.3"
8 changes: 4 additions & 4 deletions skills/ppvm-usage/examples/rust/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ edition = "2024"
publish = false

[dependencies]
ppvm-pauli-sum = { version = "0.1.0", path = "../../../../crates/ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.0", path = "../../../../crates/ppvm-tableau" }
ppvm-sym = { version = "0.1.0", path = "../../../../crates/ppvm-sym" }
ppvm-stim = { version = "0.1.0", path = "../../../../crates/ppvm-stim" }
ppvm-pauli-sum = { version = "0.1.1", path = "../../../../crates/ppvm-pauli-sum" }
ppvm-tableau = { version = "0.1.1", path = "../../../../crates/ppvm-tableau" }
ppvm-sym = { version = "0.1.1", path = "../../../../crates/ppvm-sym" }
ppvm-stim = { version = "0.1.1", path = "../../../../crates/ppvm-stim" }
Loading