[package]
name = "quantrs2-sim"
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
repository.workspace = true
license.workspace = true
keywords = ["quantum", "computing", "simulator", "state-vector", "gates"]
categories = ["science", "simulation"]
description = "Quantum circuit simulators for the QuantRS2 framework"
readme = "README.md"
[dependencies]
quantrs2-core.workspace = true
quantrs2-circuit.workspace = true
thiserror.workspace = true
scirs2-core = { workspace = true, features = ["simd", "memory_management", "parallel", "linalg"] }
scirs2-autograd.workspace = true
scirs2-linalg.workspace = true
scirs2-sparse.workspace = true
scirs2-fft.workspace = true
scirs2-optimize = { workspace = true, default-features = false, optional = true }
optirs-core = { workspace = true, default-features = false, optional = true }
pyo3 = { workspace = true, features = ["extension-module"], optional = true }
wgpu = { workspace = true, optional = true }
bytemuck = { workspace = true, features = ["derive"], optional = true }
tokio = { workspace = true, features = ["rt", "rt-multi-thread"], optional = true }
futures = { workspace = true, optional = true }
fastrand.workspace = true
nalgebra = { workspace = true, optional = true }
dashmap.workspace = true
half.workspace = true
serde.workspace = true
serde_json.workspace = true
chrono.workspace = true
num_cpus.workspace = true
sprs = { workspace = true, optional = true }
md5.workspace = true
regex.workspace = true
tempfile.workspace = true
oxiarc-deflate.workspace = true
oxiarc-lz4.workspace = true
uuid.workspace = true
memmap2.workspace = true
[dev-dependencies]
approx.workspace = true
criterion.workspace = true
[features]
default = ["optimize"]
gpu = ["dep:wgpu", "dep:bytemuck", "dep:tokio", "dep:futures"]
simd = []
optimize = ["simd", "dep:optirs-core"]
memory_efficient = []
advanced_math = ["dep:scirs2-optimize", "dep:sprs", "dep:nalgebra"]
mps = []
mpi = []
python = ["dep:pyo3"]
cuquantum = ["gpu"]
[[bin]]
name = "test_stabilizer"
path = "src/bin/test_stabilizer.rs"
[[bin]]
name = "debug_holographic_matrix"
path = "debug_holographic_matrix.rs"
[[bench]]
name = "qulacs_backend_bench"
harness = false
[[bench]]
name = "simd_state_vector"
harness = false
[[bench]]
name = "stabilizer_bench"
harness = false
[[bench]]
name = "large_scale_simulation"
harness = false
[package.metadata.docs.rs]
all-features = false
features = ["optimize", "simd", "memory_efficient"]
rustdoc-args = ["--cfg", "docsrs"]
[lints]
workspace = true