How CausalDynamics compares
CausalDynamics.jl owns one niche: identify → intervene → shared-U counterfactual trajectories for discrete-time structural models. It composes with, rather than competes against, the packages below.
| Need | Reach for | Why |
|---|---|---|
| Learn a DAG from data (PC, OCE) | Associations.jl | Optional weakdep bridge (infer_pc_graph, infer_oce_temporal_spec); see Associations integration |
| Learn a DAG from data (legacy Julia PC) | CausalInference.jl | pcalg; we use CausalInference for d-separation and backdoor primitives |
| Solve ODEs / SDEs / UDEs | SciML, UniversalDiffEq.jl | We supply structure and do(·) semantics, not integrators — see SciML recipes |
| Doubly robust effect estimation on tables | TMLE.jl | We identify the adjustment set; TMLE estimates (integration) |
| Scalable Bayesian inference | RxInfer.jl | Variational backdoor head is a weakdep extension |
| Tabular causal simulation / estimation | CausalTables.jl | Table-centric; we are trajectory-centric over occasions t = 1:T |
| Python causal workflows | DoWhy | Broad four-step workflow; no discrete-time trajectory counterfactuals with shared U |
What is distinctive here
- Trajectories, not single outcomes —
simulatereturns aCDMTrajectorywith the realised exogenous draws retained - Shared-
Ucounterfactual paths —counterfactualreplays the same creative advance under a different intervention, giving unit-level alternative histories rather than population contrasts - Time-indexed identification —
unroll_temporal_dagturns a lag specification into a static DAG so ordinary backdoor logic covers lagged confounding - Soft interventions —
Policysupports treatment rules that react to state - Lean core — hard dependencies are
GraphsandCausalInferenceonly
What is deliberately absent
Full causal discovery implementations, differential-equation solvers, and full symbolic do-calculus. Discovery runs in Associations.jl; identification and trajectories stay here. See Scope.
The CDCS book is the long-form narrative companion for these APIs.