burn_quantum 0.4.0

Differentiable qubit and qudit simulation with Burn's native tensor and module APIs
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.95"
name = "burn_quantum"
version = "0.4.0"
build = false
include = [
    "src/**",
    "examples/**",
    "tests/**",
    "support/**",
    "Cargo.toml",
    "Cargo.lock",
    "README.md",
    "LICENSE-*",
    "!**/__pycache__/**",
    "!**/*.pyc",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Differentiable qubit and qudit simulation with Burn's native tensor and module APIs"
readme = "README.md"
keywords = [
    "quantum",
    "qudit",
    "machine-learning",
    "burn",
    "autodiff",
]
categories = [
    "science",
    "simulation",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/mosure/burn_quantum"

[features]
autodiff = ["burn/autodiff"]
cuda = ["burn/cuda"]
default = [
    "flex",
    "autodiff",
]
flex = ["burn/flex"]
fusion = ["burn/fusion"]
wgpu = ["burn/wgpu"]

[lib]
name = "burn_quantum"
path = "src/lib.rs"

[[example]]
name = "bell"
path = "examples/bell.rs"
required-features = ["flex"]

[[example]]
name = "hybrid"
path = "examples/hybrid.rs"
required-features = [
    "flex",
    "autodiff",
]

[[example]]
name = "profile"
path = "examples/profile.rs"
required-features = ["flex"]

[[example]]
name = "qudit"
path = "examples/qudit.rs"
required-features = ["flex"]

[[example]]
name = "train"
path = "examples/train.rs"
required-features = [
    "flex",
    "autodiff",
]

[[example]]
name = "wgpu_smoke"
path = "examples/wgpu_smoke.rs"
required-features = [
    "wgpu",
    "autodiff",
]

[[test]]
name = "async_jobs"
path = "tests/async_jobs.rs"

[[test]]
name = "backend_parity"
path = "tests/backend_parity.rs"

[[test]]
name = "calibrated_physical"
path = "tests/calibrated_physical.rs"

[[test]]
name = "channels"
path = "tests/channels.rs"

[[test]]
name = "contracts"
path = "tests/contracts.rs"

[[test]]
name = "cubical_record_decoder"
path = "tests/cubical_record_decoder.rs"

[[test]]
name = "encoded_fusion"
path = "tests/encoded_fusion.rs"

[[test]]
name = "event_runtime"
path = "tests/event_runtime.rs"

[[test]]
name = "factory_bank"
path = "tests/factory_bank.rs"

[[test]]
name = "fusion_program_scale"
path = "tests/fusion_program_scale.rs"

[[test]]
name = "fusion_surgery"
path = "tests/fusion_surgery.rs"

[[test]]
name = "gate_synthesis"
path = "tests/gate_synthesis.rs"

[[test]]
name = "gradients"
path = "tests/gradients.rs"

[[test]]
name = "network_runtime"
path = "tests/network_runtime.rs"

[[test]]
name = "open_fbqc"
path = "tests/open_fbqc.rs"

[[test]]
name = "optical_calibration"
path = "tests/optical_calibration.rs"

[[test]]
name = "optical_erasure"
path = "tests/optical_erasure.rs"

[[test]]
name = "optical_learning"
path = "tests/optical_learning.rs"

[[test]]
name = "optical_noise"
path = "tests/optical_noise.rs"

[[test]]
name = "optical_tomography"
path = "tests/optical_tomography.rs"

[[test]]
name = "optics"
path = "tests/optics.rs"

[[test]]
name = "output_relations"
path = "tests/output_relations.rs"

[[test]]
name = "parity_retry"
path = "tests/parity_retry.rs"

[[test]]
name = "photonic"
path = "tests/photonic.rs"

[[test]]
name = "photonic_compiler"
path = "tests/photonic_compiler.rs"

[[test]]
name = "photonic_magic"
path = "tests/photonic_magic.rs"

[[test]]
name = "photonic_qec_network"
path = "tests/photonic_qec_network.rs"

[[test]]
name = "photonic_runtime"
path = "tests/photonic_runtime.rs"

[[test]]
name = "physical_compiler"
path = "tests/physical_compiler.rs"

[[test]]
name = "planar_code"
path = "tests/planar_code.rs"

[[test]]
name = "planar_surgery"
path = "tests/planar_surgery.rs"

[[test]]
name = "precision_fusion"
path = "tests/precision_fusion.rs"

[[test]]
name = "psiqdk_interop"
path = "tests/psiqdk_interop.rs"

[[test]]
name = "qec"
path = "tests/qec.rs"

[[test]]
name = "qml"
path = "tests/qml.rs"

[[test]]
name = "qnspsa"
path = "tests/qnspsa.rs"

[[test]]
name = "rail_routing"
path = "tests/rail_routing.rs"

[[test]]
name = "reference_sampler"
path = "tests/reference_sampler.rs"

[[test]]
name = "sat"
path = "tests/sat.rs"

[[test]]
name = "simulation"
path = "tests/simulation.rs"

[[test]]
name = "six_ring"
path = "tests/six_ring.rs"

[[test]]
name = "six_ring_boundary"
path = "tests/six_ring_boundary.rs"

[[test]]
name = "six_ring_record_decoder"
path = "tests/six_ring_record_decoder.rs"

[[test]]
name = "six_ring_surface"
path = "tests/six_ring_surface.rs"

[[test]]
name = "stabilizer"
path = "tests/stabilizer.rs"

[[test]]
name = "surgery_detectors"
path = "tests/surgery_detectors.rs"

[[test]]
name = "surgery_threshold"
path = "tests/surgery_threshold.rs"

[[test]]
name = "tensor_network"
path = "tests/tensor_network.rs"

[[test]]
name = "threshold_decoder"
path = "tests/threshold_decoder.rs"

[[test]]
name = "threshold_distance"
path = "tests/threshold_distance.rs"

[[test]]
name = "threshold_pheno"
path = "tests/threshold_pheno.rs"

[[test]]
name = "threshold_statistics"
path = "tests/threshold_statistics.rs"

[dependencies.burn]
version = "~0.22.1"
features = ["std"]
default-features = false

[dependencies.nalgebra]
version = "0.34.2"
features = ["std"]
default-features = false

[dependencies.num-complex]
version = "0.4.6"
features = ["serde"]

[dependencies.rand]
version = "0.9"

[dependencies.rand_chacha]
version = "0.9"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.thiserror]
version = "2.0"

[dev-dependencies.burn]
version = "~0.22.1"
features = [
    "std",
    "flex",
    "autodiff",
    "optim",
]
default-features = false

[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"