Whittemore: An embedded domain specific language for causal programming
This addresses the problem of making causal inference more accessible and systematic for researchers and practitioners in fields like statistics and data science, though it appears incremental as it builds on existing causal theory.
The paper introduces Whittemore, a domain-specific language for causal programming that tackles the complexity of causal inference by providing abstractions for declaring models, queries, and distributions, enabling rigorous inference without requiring detailed algorithmic knowledge, with examples demonstrated using real data.
This paper introduces Whittemore, a language for causal programming. Causal programming is based on the theory of structural causal models and consists of two primary operations: identification, which finds formulas that compute causal queries, and estimation, which applies formulas to transform probability distributions to other probability distribution. Causal programming provides abstractions to declare models, queries, and distributions with syntax similar to standard mathematical notation, and conducts rigorous causal inference, without requiring detailed knowledge of the underlying algorithms. Examples of causal inference with real data are provided, along with discussion of the implementation and possibilities for future extension.