7.7
carl-lib
(require carl-lib) | package: carl-lib |
The Causal Relational Learning (CaRL) framework is a tool for causal inference over relational data.
This software is currently in pre-alpha.
This is the reference implementation of the framework developed in the paper “Causal Relational Learning.”
1 Language
(require carl-lib/lang) | package: carl-lib |
procedure
(create-model port) → model?
port : input-port?
Read a file in the CaRL language and output the set of
rules and queries it contains.
2 Grounding
(require carl-lib/ground) | package: carl-lib |
procedure
(ground model conn) → (and/c graph? unweighted-graph?)
model : (listof rule?) conn : connection?
Combine CaRL rules with a database instance to build a ground causal model.
3 Embedding
(require carl-lib/embed) | package: carl-lib |
procedure
(embed gcm) → (and/c graph? unweighted-graph?)
gcm : (and/c graph? unweighted-graph?)
Apply embeddings to a ground causal model (GCM) to create the augmented GCM.
4 Covariate Detection
(require carl-lib/detect) | package: carl-lib |
procedure
aug-gcm : (and/c graph? unweighted-graph?)
Return a set of sufficient covariates for adjustment.
5 Unit Table Construction
(require carl-lib/unit-table) | package: carl-lib |
procedure
(construct augmented-gcm query Z) → matrix?
augmented-gcm : (and/c graph? unweighted-graph?) query : causal-q? Z : list?
Construct a unit table given an augmented GCM and a set of covariates.
6 Estimation
(require carl-lib/estimate) | package: carl-lib |
Estimate the average treatment effect (ATE) given a unit table.