116 lines
3.3 KiB
TOML
116 lines
3.3 KiB
TOML
[package]
|
||
name = "ruqu"
|
||
version.workspace = true
|
||
edition.workspace = true
|
||
rust-version.workspace = true
|
||
license.workspace = true
|
||
authors.workspace = true
|
||
repository.workspace = true
|
||
readme = "README.md"
|
||
description = "Classical nervous system for quantum machines - real-time coherence assessment via dynamic min-cut"
|
||
keywords = ["quantum", "coherence", "gate", "min-cut", "error-correction"]
|
||
categories = ["science", "algorithms", "hardware-support"]
|
||
|
||
[dependencies]
|
||
# RuVector dependencies - Real implementations
|
||
ruvector-mincut = { version = "0.1.30", optional = true, features = ["exact"] }
|
||
cognitum-gate-tilezero = { version = "0.1.0", optional = true }
|
||
|
||
# Quantum error decoding
|
||
fusion-blossom = { version = "0.2", optional = true }
|
||
|
||
# Mincut-gated attention optimization
|
||
ruvector-mincut-gated-transformer = { version = "0.1.0", optional = true }
|
||
|
||
# Parallel processing
|
||
rayon = { version = "1.10", optional = true }
|
||
|
||
# Tracing and metrics (optional)
|
||
tracing = { version = "0.1", optional = true }
|
||
tracing-subscriber = { version = "0.3", optional = true }
|
||
|
||
# Cryptography
|
||
blake3 = "1.5"
|
||
ed25519-dalek = { version = "2.1", features = ["rand_core", "hazmat"] }
|
||
subtle = "2.5" # Constant-time operations
|
||
rand = { workspace = true } # For key generation
|
||
|
||
# Graph algorithms
|
||
petgraph = "0.6" # For graph operations
|
||
|
||
# Async runtime
|
||
tokio = { workspace = true }
|
||
|
||
# Serialization
|
||
serde = { workspace = true }
|
||
serde_json = { workspace = true }
|
||
|
||
# Error handling
|
||
thiserror = { workspace = true }
|
||
|
||
# CRC for binary log format
|
||
crc32fast = "1.4"
|
||
|
||
[dev-dependencies]
|
||
criterion = { workspace = true }
|
||
proptest = { workspace = true }
|
||
tokio = { version = "1.0", features = ["rt-multi-thread", "macros", "sync", "time"] }
|
||
|
||
# ============================================================================
|
||
# Benchmarks - Comprehensive performance testing
|
||
# Run all: cargo bench -p ruqu
|
||
# Run specific: cargo bench -p ruqu --bench latency_bench
|
||
# ============================================================================
|
||
|
||
[[bench]]
|
||
name = "syndrome_bench"
|
||
harness = false
|
||
|
||
[[bench]]
|
||
name = "latency_bench"
|
||
harness = false
|
||
|
||
[[bench]]
|
||
name = "throughput_bench"
|
||
harness = false
|
||
|
||
[[bench]]
|
||
name = "scaling_bench"
|
||
harness = false
|
||
|
||
[[bench]]
|
||
name = "memory_bench"
|
||
harness = false
|
||
|
||
[[bench]]
|
||
name = "mincut_bench"
|
||
harness = false
|
||
|
||
[features]
|
||
default = ["structural"]
|
||
simd = [] # SIMD acceleration for bitmap operations
|
||
wasm = [] # WASM-compatible mode (no SIMD)
|
||
structural = ["ruvector-mincut"] # Min-cut based structural filter
|
||
tilezero = ["cognitum-gate-tilezero"] # TileZero arbiter integration
|
||
decoder = ["fusion-blossom"] # MWPM decoder via fusion-blossom
|
||
attention = ["ruvector-mincut-gated-transformer"] # Coherence-optimized attention (50% FLOPs reduction)
|
||
parallel = ["rayon"] # Multi-threaded tile processing (4-8× throughput)
|
||
tracing = ["dep:tracing", "tracing-subscriber"] # Observability and metrics
|
||
full = ["structural", "tilezero", "simd", "decoder", "attention", "parallel", "tracing"] # All features enabled
|
||
|
||
[lib]
|
||
crate-type = ["rlib"]
|
||
bench = false
|
||
|
||
# ============================================================================
|
||
# Binaries - Runnable proof artifacts
|
||
# ============================================================================
|
||
|
||
[[bin]]
|
||
name = "ruqu_demo"
|
||
path = "src/bin/ruqu_demo.rs"
|
||
|
||
[[bin]]
|
||
name = "ruqu_predictive_eval"
|
||
path = "src/bin/ruqu_predictive_eval.rs"
|