gradcheck 0.1.0

Finite-difference gradient checking for Rust ML frameworks. Verifies an autodiff engine against an independent numerical oracle, with a negative control that must fail.
[package]
name = "gradcheck"
version = "0.1.0"
authors = ["Henos D <henosd19@gmail.com>"]
edition = "2021"
# Verified against a real 1.75 toolchain, for the default build — the core crate has no
# dependencies. The burn adapter is bound by burn-tensor's own MSRV, which is higher.
rust-version = "1.75"
license = "MIT OR Apache-2.0"
description = "Finite-difference gradient checking for Rust ML frameworks. Verifies an autodiff engine against an independent numerical oracle, with a negative control that must fail."
repository = "https://github.com/4ktLuffy/gradcheck"
documentation = "https://docs.rs/gradcheck"
readme = "README.md"
exclude = ["example-project"]
keywords = ["autodiff", "gradient", "testing", "machine-learning", "verification"]
categories = ["science", "development-tools::testing"]

[features]
default = []

# Backend adapters are opt-in so the core crate has no heavy dependencies.
burn = ["dep:burn-tensor"]

# Which compute backend burn runs on. The SAME checks run against each, which is how a
# backend-specific gradient bug becomes visible: compile twice, compare.
#   cargo test --features burn-ndarray   # reference CPU implementation
#   cargo test --features burn-flex      # SIMD CPU backend
#   cargo test --features burn-cpu       # MLIR CPU backend  (see burn#5304)
burn-ndarray = ["burn", "burn-tensor/ndarray"]
burn-flex = ["burn", "burn-tensor/flex"]
burn-cpu = ["burn", "burn-tensor/cpu"]

[dependencies]
burn-tensor = { version = "0.22.0-pre.1", optional = true, default-features = false, features = ["autodiff", "std"] }

[package.metadata.docs.rs]
all-features = true

[[example]]
name = "issue_repro"
required-features = ["burn"]