rust-ad-core 0.8.0

Rust Auto-Differentiation.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use super::*;
use rust_ad_core_macros::{combined_derivative_macro, compose};

// Primitive procedures
// -------------------------------------------------------------------

// Derivative of [std::ops::Add].
combined_derivative_macro!(add_i32, "0i32", "1i32", "1i32");
// Derivative of [std::ops::Sub].
combined_derivative_macro!(sub_i32, "0i32", "1i32", "-1i32");
// Derivative of [std::ops::Mul].
combined_derivative_macro!(mul_i32, "0i32", "{1}", "{0}");
// Derivative of [std::ops::Div].
combined_derivative_macro!(div_i32, "0i32", "1i32/{1}", "-{0}/({1}*{1})");