Some checks failed
standards workspaces build + test / jouleclaw-rs (pull_request) Successful in 13m15s
standards workspaces build + test / aac-rs (pull_request) Successful in 2m9s
standards workspaces build + test / joule-code-rs (pull_request) Successful in 1m31s
standards workspaces build + test / joulecontract-rs (pull_request) Successful in 1m6s
standards workspaces build + test / map-rs (pull_request) Successful in 1m31s
standards workspaces build + test / mesh-rs (pull_request) Successful in 46s
standards workspaces build + test / openpay (pull_request) Successful in 4m18s
no-vanity-metrics / Scan committed Markdown for vanity metrics (pull_request) Successful in 3s
no-vanity-metrics / WAI public text names no comparison (pull_request) Successful in 4s
no-vanity-metrics / WAI public text names no company or product (pull_request) Successful in 3s
standards workspaces build + test / arl-rs (pull_request) Successful in 1m8s
standards workspaces build + test / eoc-rs (pull_request) Successful in 1m55s
standards workspaces build + test / jcp-rs (pull_request) Successful in 1m28s
standards workspaces build + test / joule-ui-rs (pull_request) Successful in 1m13s
WAI conformance / cargo-class corpora · linux-arm64 (pull_request) Successful in 15m40s
standards workspaces build + test / joulehook-rs (pull_request) Successful in 1m9s
WAI conformance / cross-arch byte-equality · linux-arm64 (pull_request) Successful in 50s
standards workspaces build + test / proof-rs (pull_request) Successful in 1m12s
standards workspaces build + test / sandbox-rs (pull_request) Successful in 2m11s
WAI energy receipts / energy receipts · linux-arm64 (pull_request) Successful in 3m14s
wai-pack / wai-pack · linux-arm64 (pull_request) Failing after 19s
standards workspaces build + test / sense-rs (pull_request) Successful in 1m5s
standards workspaces build + test / smart-byte-rs (pull_request) Successful in 3m39s
WAI conformance / cargo-class corpora · linux (pull_request) Successful in 6m17s
WAI conformance / v2 vocabulary · manifests validate as stated (pull_request) Successful in 14s
standards workspaces build + test / jouledesk-rs (pull_request) Successful in 12m30s
WAI conformance / independent verifiers · claims, JWP, key discovery and integer payloads (Python) (pull_request) Successful in 11m44s
WAI conformance / delivery telemetry · CMCD and CMSD against an independent library (pull_request) Successful in 9s
WAI conformance / cross-arch byte-equality · linux (pull_request) Successful in 24s
WAI conformance / C2PA manifest emission · signed, read back, validated (pull_request) Successful in 46s
WAI energy receipts / energy receipts · linux (pull_request) Successful in 1m41s
WAI JPEG-AI whole decode (pinned inputs, required) / fetch pinned JPEG-AI inputs → whole decode + pixel hash, required (pull_request) Successful in 1m1s
WAI neural sink gates / model-free refusals of the neural sink (pull_request) Successful in 2m22s
wai-pack / wai-pack · linux (pull_request) Failing after 3m40s
wai-pack / wai-pack · independent verifier (Python) (pull_request) Failing after 2m29s
wai-pack / wai-pack · the floor through a media prober (pull_request) Successful in 21s
standards workspaces build + test / macOS energy backends (pull_request) Successful in 20m47s
wai-pack / wai-pack · dependency licences (pull_request) Failing after 3m41s
WAI mbt2018_mean integer decode (regenerated vectors) / regenerate mbt2018_mean integer vectors → Rust decode, required (pull_request) Successful in 4m23s
wai-web wasm32 / wai-web wasm32 build · corpus, menu and writers (pull_request) Successful in 1m59s
WAI conformance / cargo-class corpora · macos (pull_request) Successful in 25m42s
WAI conformance / cross-arch byte-equality · macos (pull_request) Successful in 1m9s
WAI energy receipts / energy receipts · macos (pull_request) Successful in 6m43s
wai-pack / wai-pack · macos (pull_request) Failing after 5s
Symmetry projects a network, Psi(s) = sum_g chi(g) psi(g.s), over a lattice's translations (ring or torus, momentum 0 or pi along each direction) and optionally the global spin flip (even or odd parity). - Ratios and log-derivatives become weighted averages over the transformed configurations, held in a cache that Metropolis moves keep exact. - A configuration the symmetry forbids (its sum below the rounding of its terms) is treated as zero. Biases now start random as well as weights. With zero biases the network is exactly even under the global flip, and training keeps it even, which is what trapped 10-site rings in 0.3.37. SR falls back to an eigendecomposition (cutoff 1e-12) when Cholesky loses a pivot. A projected network started near even drives its metric to 1e12, and the factorisation produced NaN there. Rings in their sector reach exact energies to rounding: 10 sites at pi, 7e-14; 12 sites at 0, even, 1e-15. The frustrated 4x4 torus at J2 = 0.5 comes within 7.7e-3 (2000 steps; 3.6% unprojected). The NQS pin covers a projected machine through the fallback; all 22 pins pass natively and under wasm32-wasip2. The nqs CLI gains --project, --kpi and --odd, byte-identical under WASI. Co-Authored-By: Claude Opus 5.5 <[email protected]>
215 lines
8.8 KiB
TOML
215 lines
8.8 KiB
TOML
[package]
|
|
name = "wai-quantum"
|
|
version = "0.3.38"
|
|
edition = "2024"
|
|
rust-version = "1.97"
|
|
license = "Apache-2.0"
|
|
description = "A deterministic quantum stack in pure Rust: byte-exact circuit simulation (statevector / stabilizer / tensor-network MPS / sparse-Pauli backends), sparse Pauli dynamics at utility scale (arbitrary angles, 1024 qubits), belief-propagation tensor networks on the hardware graph, error mitigation, qLDPC decoding, noise learning, circuit-equivalence proofs, a phasor interference-ML layer, information-theoretic limits, noisy channels and state tomography, and signed energy-accounted receipts. No QPU, no cloud, no system libraries — identical results native, in the browser, and as a WASI component at the edge."
|
|
repository = "https://git.transaction.science/Transaction-Science/open-standards"
|
|
homepage = "https://wai.transaction.science/quantum-ide"
|
|
documentation = "https://docs.rs/wai-quantum"
|
|
keywords = ["quantum", "simulation", "wasm", "deterministic", "qec"]
|
|
categories = ["science", "simulation", "wasm", "mathematics"]
|
|
readme = "README.md"
|
|
|
|
# docs.rs builds with DEFAULT features only, which would document 3 of 21
|
|
# modules and hide the entire operational + ML layers. Document everything.
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
|
|
[dependencies]
|
|
# Hashes for circuit / statevector / receipt identity. Required: the base
|
|
# `quantum` feature binds every reconstruction to a BLAKE3 hash.
|
|
blake3 = "1"
|
|
# Canonical receipt JSON (sorted keys, byte-stable round-trip).
|
|
serde_json = { version = "1", features = ["preserve_order"] }
|
|
# Receipt signatures. Optional — only the sealing features need it.
|
|
ed25519-dalek = { version = "2", optional = true }
|
|
|
|
[features]
|
|
default = ["quantum", "quantum_toolchain", "quantum_receipt"]
|
|
|
|
# Internal: signature support, pulled in by every sealing feature.
|
|
# (Mirrors the `world` feature in the parent `wai` crate.)
|
|
_signing = ["dep:ed25519-dalek"]
|
|
|
|
# --- core simulation -------------------------------------------------------
|
|
quantum = []
|
|
quantum_toolchain = ["quantum"]
|
|
quantum_mps = ["quantum"]
|
|
quantum_stabilizer = ["quantum"]
|
|
quantum_pauli = ["quantum"]
|
|
# Sparse Pauli dynamics at utility scale: arbitrary-angle Pauli rotations on up
|
|
# to 1024 qubits, reproducible bit for bit, with a rigorous truncation bound.
|
|
# Independent of the dyadic core; `from_dyadic` appears when `quantum` is on.
|
|
quantum_spd = []
|
|
# Signed, energy-accounted receipts for it, re-checkable bit for bit anywhere.
|
|
quantum_spd_receipt = ["quantum_spd", "_signing"]
|
|
# Tensor-network states on the hardware graph: simple-update evolution, belief-
|
|
# propagation environments; exact on trees, an independent check on loopy graphs.
|
|
quantum_bptn = ["quantum_spd"]
|
|
# Fault-tolerant resource estimation: logical layout, code distance, exhaustive
|
|
# T-factory search and the space-time frontier, reproducible bit for bit.
|
|
quantum_resource = []
|
|
# Signed, energy-accounted receipts for it, re-checkable bit for bit anywhere.
|
|
quantum_resource_receipt = ["quantum_resource", "_signing"]
|
|
# Noisy Clifford circuits at QEC scale: bit-packed Pauli-frame sampling, detector
|
|
# error models by backward sensitivity, and exact minimum-weight matching.
|
|
quantum_frame = []
|
|
# Tensor-network contraction: hyper-optimised contraction trees, slicing, and
|
|
# amplitudes of circuits far past the state vector, reproducible bit for bit.
|
|
quantum_tn = []
|
|
# Gaussian boson sampling, exactly: hafnians, torontonians, lossy Gaussian states,
|
|
# pattern probabilities, exact samples and the marginals any sampler must match.
|
|
quantum_gbs = []
|
|
# The dense state vector at any angle: gate fusion, diagonal fast paths, threads,
|
|
# the same bits everywhere.
|
|
quantum_sv = []
|
|
# Architecture-level estimation: yoked storage, magic-state cultivation, CCZ
|
|
# factories and reaction-limited time, assembled into whole-machine estimates.
|
|
quantum_arch = []
|
|
# qLDPC memory at circuit level: bivariate-bicycle codes, their depth-8 syndrome
|
|
# cycle, and BP-OSD decoding of the circuit's error model.
|
|
quantum_ldpc = ["quantum_frame"]
|
|
# Quantum-inspired optimisation: simulated bifurcation (ballistic, discrete,
|
|
# heated), simulated annealing and an exact referee, on Ising and Max-Cut.
|
|
quantum_qio = []
|
|
# Union-find decoding in near-linear time over the matching graph.
|
|
quantum_uf = ["quantum_frame"]
|
|
# Noisy circuits: quantum trajectories on the state vector, an exact density-
|
|
# matrix referee, and cross-entropy fidelity against the digital error model.
|
|
quantum_noisy = ["quantum_sv"]
|
|
# Ground states of spin chains by two-site DMRG, held to exact diagonalisation
|
|
# and to the free-fermion solution of the transverse-field Ising chain.
|
|
quantum_dmrg = []
|
|
# Time evolution of spin chains by the time-dependent variational principle,
|
|
# held to exact evolution and to the free-fermion solution of a quench.
|
|
quantum_tdvp = ["quantum_dmrg"]
|
|
# Molecules by DMRG: FCIDUMP integrals, the second-quantised Hamiltonian as an
|
|
# exact MPO, and full configuration interaction as the referee.
|
|
quantum_chem = ["quantum_dmrg"]
|
|
# Neural quantum states: a restricted Boltzmann machine trained by variational
|
|
# Monte Carlo with stochastic reconfiguration, held to exact diagonalisation
|
|
# and DMRG on chains and square lattices.
|
|
quantum_nqs = ["quantum_dmrg"]
|
|
# Mixed states and the observables that distinguish quantum theory from a classical
|
|
# account: density matrices, the partial trace, exact Pauli expectations, CHSH.
|
|
quantum_info = ["quantum"]
|
|
# Qubits AND qutrits: the Weyl-Heisenberg group, the Fourier gate over Z_d, and
|
|
# the controlled sum. Exact for d = 2 and 3; other dimensions are refused.
|
|
quantum_qudit = ["quantum"]
|
|
# Quantum communication and security: BB84 key distribution with an
|
|
# intercept-resend eavesdropper, and the no-cloning theorem priced.
|
|
quantum_comm = ["quantum"]
|
|
# What quantum theory says about encoding and transport: von Neumann entropy, the
|
|
# Schumacher limit, and the Holevo bound that refuses classical compression.
|
|
quantum_source = ["quantum", "quantum_info"]
|
|
# Transport itself: Kraus channels, and tomography to see what arrived.
|
|
quantum_channel = ["quantum", "quantum_info", "quantum_source"]
|
|
# QIR (LLVM-based quantum IR) export — the compiler-facing sibling of OpenQASM.
|
|
quantum_qir = ["quantum", "quantum_toolchain"]
|
|
|
|
# --- receipts & operations -------------------------------------------------
|
|
quantum_receipt = ["quantum", "_signing"]
|
|
quantum_ops = ["_signing"]
|
|
quantum_cal = ["quantum_ops"]
|
|
quantum_mitigate = ["quantum_ops"]
|
|
quantum_qec = ["quantum_ops"]
|
|
quantum_control = ["quantum_cal"]
|
|
quantum_noise = ["quantum_cal"]
|
|
quantum_compile = ["quantum_ops"]
|
|
quantum_atom = ["quantum_ops"]
|
|
quantum_qbom = ["quantum_ops"]
|
|
|
|
# --- interference / ML layer ----------------------------------------------
|
|
quantum_vml = []
|
|
quantum_phasor = []
|
|
quantum_qfhrr = ["quantum_vml"]
|
|
quantum_kernel = []
|
|
quantum_qdata = []
|
|
quantum_phasor_meter = ["_signing"]
|
|
|
|
# Everything.
|
|
full = [
|
|
"quantum", "quantum_toolchain", "quantum_mps", "quantum_stabilizer", "quantum_pauli", "quantum_spd", "quantum_spd_receipt", "quantum_bptn", "quantum_resource", "quantum_resource_receipt", "quantum_frame", "quantum_tn", "quantum_gbs", "quantum_sv", "quantum_arch", "quantum_ldpc", "quantum_qio", "quantum_uf", "quantum_noisy", "quantum_dmrg", "quantum_tdvp", "quantum_chem", "quantum_nqs", "quantum_qir", "quantum_info", "quantum_qudit", "quantum_comm", "quantum_source", "quantum_channel",
|
|
"quantum_receipt", "quantum_ops", "quantum_cal", "quantum_mitigate", "quantum_qec",
|
|
"quantum_control", "quantum_noise", "quantum_compile", "quantum_atom", "quantum_qbom",
|
|
"quantum_vml", "quantum_phasor", "quantum_qfhrr", "quantum_kernel", "quantum_qdata",
|
|
"quantum_phasor_meter",
|
|
]
|
|
|
|
[[example]]
|
|
name = "qio_gset"
|
|
required-features = ["quantum_qio"]
|
|
|
|
[[example]]
|
|
name = "tdvp_quench"
|
|
required-features = ["quantum_tdvp"]
|
|
|
|
[[example]]
|
|
name = "nqs_ground"
|
|
required-features = ["quantum_nqs"]
|
|
|
|
[[example]]
|
|
name = "chem_dmrg"
|
|
required-features = ["quantum_chem"]
|
|
|
|
[[example]]
|
|
name = "dmrg_chain"
|
|
required-features = ["quantum_dmrg"]
|
|
|
|
[[example]]
|
|
name = "uf_bench"
|
|
required-features = ["quantum_uf"]
|
|
|
|
[[example]]
|
|
name = "ldpc_memory"
|
|
required-features = ["quantum_ldpc"]
|
|
|
|
[[example]]
|
|
name = "arch_factoring"
|
|
required-features = ["quantum_arch"]
|
|
|
|
[[example]]
|
|
name = "sv_run"
|
|
required-features = ["quantum_sv"]
|
|
|
|
[[example]]
|
|
name = "gbs_check"
|
|
required-features = ["quantum_gbs"]
|
|
|
|
[[example]]
|
|
name = "tn_path"
|
|
required-features = ["quantum_tn"]
|
|
|
|
[[example]]
|
|
name = "qec_threshold"
|
|
required-features = ["quantum_frame"]
|
|
|
|
[[example]]
|
|
name = "qec_frame"
|
|
required-features = ["quantum_frame"]
|
|
|
|
[[example]]
|
|
name = "utility"
|
|
required-features = ["quantum_spd"]
|
|
|
|
[[example]]
|
|
name = "utility_mz"
|
|
required-features = ["quantum_spd"]
|
|
|
|
[[example]]
|
|
name = "utility_bptn"
|
|
required-features = ["quantum_bptn"]
|
|
|
|
[[example]]
|
|
name = "bell"
|
|
required-features = ["quantum", "quantum_toolchain"]
|
|
|
|
[[example]]
|
|
name = "threshold"
|
|
required-features = ["quantum_qec"]
|
|
|
|
[[example]]
|
|
name = "receipt"
|
|
required-features = ["quantum_toolchain", "quantum_receipt"]
|