Rust framework
DeepCausality
Dynamic causality for advanced systems.
A causal-reasoning library for engineering systems where time, context, and rules evolve. Built around three primitives: the causal monad, the causaloid, and the context.
One framework, many fields
What can you build with it
What is dynamic causality
Causal reasoning for a dynamic world.
Most causal-inference libraries assume a static graph and a fixed set of rules. Real systems rarely cooperate. A trading regime shifts; a robot enters a new room; a service mesh reroutes traffic. The variables stay the same; the relationships between them do not.
DeepCausality treats causality as a spacetime-agnostic functional dependency. Causaloids encode each rule as a small composable unit. A Context hypergraph encodes the environment those rules operate in. The Effect Ethos verifies that whatever the rules conclude still satisfies the operational policies you have to honor.
The framework is written in Rust, runs in real time, and stays correct when both the data and the rules evolve under it.
Three primitives
The pieces it’s built from
Causal Monad
The pure/bind algebra that composes causal effects. Carries value, state, context, error, and an audit log through every step.
Read moreCausaloid
A self-contained unit of causality. Compose causaloids into larger structures with the same algebra you would use for functions.
Read moreContext
An explicit hypergraph encoding the environment. Spacetime nodes, relational edges, and dynamic update semantics.
Read more