Skip to content

Install

DeepCausality is a workspace of twenty independently published crates. Pick what you need.

DeepCausality targets the Rust 2024 edition:

Terminal window
rustup update stable
rustc --version

Most users start here:

Terminal window
cargo add deep_causality

The deep_causality crate re-exports the user-facing types: Causaloid, CausaloidGraph, Context, the propagating-effect machinery, and the surrounding aliases. It pulls in deep_causality_core, deep_causality_haft, deep_causality_uncertain, deep_causality_ast, deep_causality_data_structures, and ultragraph transitively, so a single cargo add is enough for a first project.

Reach for one of these when the umbrella is broader than you need:

Each crate stands on its own and links back to the others through clear seams. The full API reference is on docs.rs, one page per crate.

A tiny program that lifts a value into a PropagatingEffect is enough to prove the install is wired:

use deep_causality::PropagatingEffect;
fn main() {
let effect: PropagatingEffect<f64> = PropagatingEffect::pure(42.0);
println!("ok: {:?}", effect.value);
}
Terminal window
cargo run

If you see ok: Value(42.0), the install is good. The next page writes your first causal pipeline with the high-level Flow DSL.

Every crate ships rustdoc on docs.rs. The pages in this site’s reference section are short overviews: what the crate is for and when you should reach for it. The exhaustive API stays on docs.rs.