[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"]