Study Notes

Causal Inference

A causal effect is a contrast between two potential outcomes of the same unit — Yi(1)Y_i(1) if treated, Yi(0)Y_i(0) if not — and the fundamental obstacle is that you only ever observe one of them; the other is a missing counterfactual. So causal inference is a missing-data problem, and every method is an identification strategy: an assumption about how treatment was assigned that turns the causal estimand into a function of the observable data. The strategies line up by how much they assume — randomization (assume nothing; you control assignment) → ignorability (as-good-as-random given measured XX) → instruments / discontinuities / panels (levers for when confounding is unobserved). The gold standard is the experiment; every observational method is a way to reconstruct one. Throughout, a running example: does job-training program DD raise earnings YY, when motivated people self-select into it? Prerequisites cashed in: estimators/bias/variance, CLT, hypothesis testing (track 3); conditional expectation and the tower rule (track 1); OLS as projection (track 4); propensity-as-logistic and shrinkage (track 6); permutation/rejection-sampling intuition (track 7).

Each method gets a fixed four-line ledgerAssume / Identify / On whom / Fails when — so the catalog stays comparable.

1. The fundamental problem and potential outcomes

  • Potential outcomes. For binary treatment, every unit carries two numbers: Yi(1)Y_i(1) (outcome if treated) and Yi(0)Y_i(0) (if not). The individual causal effect is τi=Yi(1)Yi(0)\tau_i = Y_i(1) - Y_i(0). You only ever see one, selected by the treatment Zi{0,1}Z_i \in \{0,1\} through the switching equation (a.k.a. consistency):

Yi=ZiYi(1)+(1Zi)Yi(0).Y_i = Z_i\,Y_i(1) + (1 - Z_i)\,Y_i(0).

  • The science table is the full set of potential outcomes (Y(0),Y(1))\big(\vec Y(0), \vec Y(1)\big) — one row per unit, two columns. Picture to hold: a table where exactly one cell per row is filled and the other is ?. Causal inference is imputing the ?s, and the “fundamental problem” is that within one world the missing column is unrecoverable from that unit alone.
  • SUTVA makes the two-column table well-defined: (i) no interference — unit ii‘s outcome doesn’t depend on others’ treatments, Yi(Z)=Yi(Zi)Y_i(\vec Z) = Y_i(Z_i); (ii) no hidden versions of the treatment. Without it each unit has up to 2N2^N potential outcomes (§ interference in track-12 territory), not two.
  • Estimands (functions of the science table, not of the assignment):
    • ATE τ=1Ni(Yi(1)Yi(0))=Yˉ(1)Yˉ(0)\tau = \frac1N\sum_i \big(Y_i(1) - Y_i(0)\big) = \bar Y(1) - \bar Y(0);
    • ATT (on the treated) τATT=E[τiZi=1]\tau^{\text{ATT}} = E[\tau_i \mid Z_i = 1]; ATU (on the untreated) symmetrically; ATE =πATT+(1π)ATU= \pi\,\text{ATT} + (1-\pi)\,\text{ATU}, π=P(Z=1)\pi = P(Z=1);
    • CATE τ(x)=E[τiXi=x]\tau(x) = E[\tau_i \mid X_i = x] — the effect for a subgroup (track 6’s heterogeneity, here causal).
  • No causation without manipulation. A causal question must name a manipulable intervention. “Effect of BMI on heart risk” is ill-posed (force-feeding vs amputation both raise BMI); “effect of diet X for 3 days” is well-posed. The treatment must be something that could be assigned.

Implications

  • The estimand is a property of the science table alone — the assignment mechanism is the instrument for learning it, kept conceptually separate. This separation is the whole game: methods differ in their assignment-mechanism assumptions, not in what they target.
  • Because τi\tau_i is never observed, no method estimates individual effects without modeling; the achievable targets are averages (ATE/ATT/CATE).

Core competency set

  • Write the switching equation and the science table; explain the fundamental problem as missing data.
  • State both halves of SUTVA and what breaks without it.
  • Define ATE/ATT/ATU/CATE and the ATE =πATT+(1π)ATU= \pi\,\text{ATT} + (1-\pi)\text{ATU} identity.

2. Why the naive comparison fails

  • The tempting estimator is the simple difference in observed means (SDO), E[YZ=1]E[YZ=0]E[Y \mid Z=1] - E[Y \mid Z=0]. It is generally biased for the ATE. Derive the bias. Start from the SDO and insert E[Y(0)Z=1]E[Y(0) \mid Z=1] (the treated group’s untreated counterfactual):

SDO=E[Y(1)Z=1]E[Y(0)Z=0]\text{SDO} = E[Y(1)\mid Z{=}1] - E[Y(0)\mid Z{=}0]

=E[Y(1)Z=1]E[Y(0)Z=1]ATT+E[Y(0)Z=1]E[Y(0)Z=0]selection bias.= \underbrace{E[Y(1)\mid Z{=}1] - E[Y(0)\mid Z{=}1]}_{\text{ATT}} + \underbrace{E[Y(0)\mid Z{=}1] - E[Y(0)\mid Z{=}0]}_{\text{selection bias}}.

Then convert ATT to ATE with the heterogeneity identity ATT=ATE+(1π)(ATTATU)\text{ATT} = \text{ATE} + (1-\pi)(\text{ATT} - \text{ATU}):

SDO=ATE+(E[Y(0)Z=1]E[Y(0)Z=0])selection bias+(1π)(ATTATU)heterogeneity bias.\text{SDO} = \text{ATE} + \underbrace{\big(E[Y(0)\mid Z{=}1] - E[Y(0)\mid Z{=}0]\big)}_{\text{selection bias}} + \underbrace{(1-\pi)(\text{ATT}-\text{ATU})}_{\text{heterogeneity bias}}.

  • Selection bias is the killer term: do the treated and control differ in their baseline Y(0)Y(0)? In the running example, motivated people both enroll in training and would have earned more anyway — E[Y(0)Z=1]>E[Y(0)Z=0]E[Y(0)\mid Z{=}1] > E[Y(0)\mid Z{=}0] — so the SDO overstates the effect. (HRT: healthier women both took hormones and had lower heart risk regardless — Simpson’s-paradox-grade confounding.)
  • The fix in principle. If assignment were independent of the potential outcomes, Z(Y(0),Y(1))Z \perp (Y(0), Y(1)), both bias terms vanish: E[Y(0)Z=1]=E[Y(0)Z=0]E[Y(0)\mid Z{=}1] = E[Y(0)\mid Z{=}0] and ATT == ATU, leaving SDO=ATE\text{SDO} = \text{ATE}. Independence of assignment is exactly what kills selection bias. Every method below is a way to buy that independence — outright (randomize) or conditionally (given XX).

Implications

  • The entire field is organized by how you get Z(Y(0),Y(1))Z \perp (Y(0),Y(1)) (unconditionally, conditionally, locally, or in differences). Hold the SDO decomposition and you know what each method is repairing.
  • Selection bias is about Y(0)Y(0) (baseline differences), heterogeneity bias about differing effects — two distinct failures the naive estimator conflates.

Core competency set

  • Derive the SDO decomposition into ATE + selection bias + heterogeneity bias.
  • Show that Z(Y(0),Y(1))Z \perp (Y(0),Y(1)) zeroes both bias terms.
  • Tell the running-example selection story in one sentence.

3. Randomized experiments I — Neyman

Randomization makes Z(Y(0),Y(1))Z \perp (Y(0),Y(1)) true by design — a coin flip can’t depend on outcomes you haven’t measured. In the randomization-based view the science table is fixed and the only randomness is ZZ; there is no model, no iid sampling. An assignment mechanism is a randomized experiment if it is probabilistic (0<P(Zi=1)<10 < P(Z_i{=}1) < 1), known, individualistic, and unconfounded (P(ZX,Y(0),Y(1))=P(ZX)P(Z\mid X, Y(0), Y(1)) = P(Z\mid X)). Canonical design: the completely randomized design CRD(N1,NN_1, N) — ”N1N_1 names from a hat,” so P(Zi=1)=N1/NP(Z_i{=}1) = N_1/N.

  • The DIM is unbiased — derive it. Estimator τ^DIM=1N1iZiYi1N0i(1Zi)Yi\hat\tau^{\text{DIM}} = \frac{1}{N_1}\sum_i Z_iY_i - \frac{1}{N_0}\sum_i (1-Z_i)Y_i. The one trick: by the switching equation ZiYi=Zi[ZiYi(1)+(1Zi)Yi(0)]=ZiYi(1)Z_iY_i = Z_i[Z_iY_i(1) + (1-Z_i)Y_i(0)] = Z_iY_i(1) (since Zi2=ZiZ_i^2 = Z_i, Zi(1Zi)=0Z_i(1-Z_i)=0). So

Eη[τ^]=1N1iE[Zi]Yi(1)1N0iE[1Zi]Yi(0).E_\eta[\hat\tau] = \frac{1}{N_1}\sum_i E[Z_i]\,Y_i(1) - \frac{1}{N_0}\sum_i E[1-Z_i]\,Y_i(0).

Under CRD, E[Zi]=P(Zi=1)=N1/NE[Z_i] = P(Z_i{=}1) = N_1/N, so each weight becomes 1N1N1N=1N\frac{1}{N_1}\cdot\frac{N_1}{N} = \frac1N:

Eη[τ^]=1NiYi(1)1NiYi(0)=τATE.E_\eta[\hat\tau] = \frac1N\sum_i Y_i(1) - \frac1N\sum_i Y_i(0) = \tau^{\text{ATE}}.

No model, no assumption beyond SUTVA, true for every science table nature could hand you.

  • Variance. Var(τ^)=V1N1+V0N0V10N\mathrm{Var}(\hat\tau) = \frac{V_1}{N_1} + \frac{V_0}{N_0} - \frac{V_{10}}{N}, where VaV_a is the variance of Y(a)Y(a) and V10V_{10} the variance of the unit effects τi\tau_i. Balanced groups minimize it when V1=V0V_1 = V_0.
  • Conservative CI. V1,V0V_1, V_0 have unbiased plug-in estimates, but V10V_{10} — the variance of the unobservable τi\tau_i — cannot be estimated. Since V10/N0-V_{10}/N \le 0, drop it: the Neyman variance V^=V^1N1+V^0N0\hat V = \frac{\hat V_1}{N_1} + \frac{\hat V_0}{N_0} overestimates, so the CI is valid (over-covers): P(τCI^)1αP(\tau \in \widehat{\text{CI}}) \ge 1-\alpha.
  • Horvitz–Thompson generalizes the DIM to any design via inverse-probability weighting: τ^HT=1NiZiπiYi1Ni1Zi1πiYi\hat\tau^{\text{HT}} = \frac1N\sum_i \frac{Z_i}{\pi_i}Y_i - \frac1N\sum_i\frac{1-Z_i}{1-\pi_i}Y_i, πi=P(Zi=1)\pi_i = P(Z_i{=}1); unbiased for any randomized design (same tower-style proof). Under CRD it is the DIM.

Ledger. Assume: randomized assignment (+ SUTVA). · Identify: ATE exactly. · On whom: the whole sample. · Fails when: nothing to fail — but needs large NN for the normal-approx CI, and only covers who you enrolled (external validity).

Implications

  • Randomization buys identification by design, not by assumption — “assumptions play no role in randomization tests of the null of no effect” (Rosenbaum). This is why the RCT is the reference every observational method imitates.
  • The conservative-variance move (bound the unidentifiable term) recurs throughout causal inference: when you can’t estimate something, bound it in the safe direction.

Core competency set

  • List the four conditions defining a randomized experiment.
  • Derive DIM unbiasedness via the switching-equation trick and E[Zi]=N1/NE[Z_i] = N_1/N.
  • Explain why V10V_{10} forces a conservative variance, and write the HT estimator.

4. Randomized experiments II — Fisher

Neyman needs a CLT; Fisher needs nothing — exact inference from the randomization itself, for any design and any sample size.

  • Sharp null. H0F:Yi(1)=Yi(0)H_0^F: Y_i(1) = Y_i(0) for every ii — no effect on anyone (stronger than Neyman’s H0:ATE=0H_0: \text{ATE}=0). Under it the science table is fully known: each missing ? equals the observed value, so you can recompute the test statistic under any alternative assignment.
  • The permutation test is stochastic proof by contradiction. Pick a statistic T(Z,Y)T(Z, Y) (e.g. the DIM). Under H0FH_0^F, re-draw assignments Z(k)ηZ^{(k)} \sim \eta; because the table is known, each gives a recomputed T(k)T^{(k)}. These trace the exact null distribution. The p-value is the tail fraction:

p^=1Kk=1K1{T(k)Tobs}  K  Pη(TTobsH0F).\widehat{\text{p}} = \frac1K\sum_{k=1}^K \mathbf 1\{T^{(k)} \ge T^{\text{obs}}\} \;\xrightarrow{K\to\infty}\; P_\eta(T \ge T^{\text{obs}} \mid H_0^F).

Valid for any TT and any design — the choice of TT affects only power, never validity. (This is a rejection-sampling computation, same machinery as track 7’s MCMC.)

  • Choice of TT → power. The DIM is sensitive to outliers under skew; the Wilcoxon rank-sum T=iZiQiT = \sum_i Z_i\,Q_i (ranks QiQ_i) is robust — no outliers survive ranking. Validity is automatic; power is the reason to choose well.
  • Confidence intervals by inversion. Test the family of sharp nulls H0θ:Yi(1)=Yi(0)+θH_0^\theta: Y_i(1) = Y_i(0) + \theta (constant additive effect — still fills the table, shifting observed treated outcomes by θ\theta). The CI is the set of θ\theta not rejected: {θ:pθα}\{\theta : \text{p}_\theta \ge \alpha\}. The Hodges–Lehmann point estimate is the θ\theta making the observed data most central; for the DIM statistic it returns τ^DIM\hat\tau^{\text{DIM}}.

Ledger. Assume: randomization + SUTVA only. · Identify: tests/CIs for the sharp null (constant effects). · On whom: the whole sample. · Fails when: you need average-effect inference under heterogeneity (use Neyman), or the sharp null is implausibly strong.

Implications

  • Fisher vs Neyman is the field’s first fork: exact, finite-sample, sharp null vs asymptotic, average effect. Fisher implies Neyman (no effect on anyone ⟹ zero average), not conversely.
  • “If your data are consistent with no effect on anyone, your analysis ends here” — the FRT is the honest floor.

Core competency set

  • State Fisher’s sharp null and why it makes the science table recoverable.
  • Run the permutation-test algorithm; explain why validity is TT-free but power is not.
  • Build a CI by inverting H0θH_0^\theta; name the Hodges–Lehmann estimate.

5. Covariate adjustment — design beats analysis

When a covariate XX predicts the outcome, an unlucky assignment (all the high-Y(0)Y(0) units land in treatment) inflates the variance of τ^\hat\tau — not its bias (over all assignments it averages out), but you only run one. Two cures, and the lesson that design beats analysis.

  • Design — block (stratify) before randomizing. Run a separate CRD within each stratum of XX (a stratified CRD). Estimator τ^strat=kN(k)Nτ^k\hat\tau^{\text{strat}} = \sum_k \frac{N(k)}{N}\hat\tau_k, a weighted average of within-stratum DIMs. Unbiased (each τ^k\hat\tau_k is, and the weights are the strata sizes), and lower-variance when XX is associated with YY — you compare like-with-like instead of across clumps. No assumption about how XX relates to YY is needed; stratify if you can. For continuous XX, rerandomize: redraw until covariate balance ρ(Z;X)\rho(Z;X) clears a threshold (a rejection sampler on assignments).
  • Analysis — Lin’s regression. Regress YY on ZZ, centered XX, and their interaction: Yi=μ+θZi+β(XiXˉ)+γZi(XiXˉ)+εiY_i = \mu + \theta Z_i + \beta(X_i - \bar X) + \gamma Z_i(X_i - \bar X) + \varepsilon_i, report τ^reg=θ^\hat\tau^{\text{reg}} = \hat\theta. Read “agnostically” — forget the model, treat θ^\hat\theta as just another estimator of the ATE. Then Avar(τ^reg)Avar(τ^DIM)\mathrm{Avar}(\hat\tau^{\text{reg}}) \le \mathrm{Avar}(\hat\tau^{\text{DIM}}): with centering + interactions + robust (Huber–White) SEs, regression adjustment is never worse asymptotically than the raw DIM, regardless of whether XX relates to YY — and much better if it does. (Plain uninteracted regression can do worse — the interactions matter.)

Ledger. Assume: randomization (adjustment adds nothing for bias). · Identify: ATE. · On whom: whole sample. · Fails when — it doesn’t; worst case it ties the DIM. Caveat: too many strata / tiny cells hurt.

Implications

  • Bias is handled by the design (randomization); covariates buy variance. Get the design right and the analysis is easy — design trumps analysis.
  • “Regression adjustment is justified without a linear model” reconciles the econometric reflex (run OLS) with the randomization view (track 4’s OLS, now as a variance-reducing causal estimator).

Core competency set

  • Explain the apples-vs-melons variance problem and why it’s variance, not bias.
  • State the stratified estimator and that it needs no XXYY assumption.
  • Write Lin’s regression (centered + interacted, robust SEs) and the “never worse than DIM” guarantee.

6. Observational studies and ignorability

No randomization: assignment can depend on anything, including the potential outcomes. The only tool left is an assumption. The central one — the most used and abused in the field:

  • Strong ignorability / selection on observables. (Y(0),Y(1))ZX(Y(0), Y(1)) \perp Z \mid X and 0<P(Z=1X)<10 < P(Z{=}1\mid X) < 1 (overlap). “Within levels of the measured XX, treatment is as-good-as-random.” (It is a randomized experiment minus the “known mechanism” requirement, asserted rather than designed.) The conditional-independence assumption (CIA) holds iff conditioning on XX closes every backdoor (§7).
  • Identification under ignorability — derive it. Target μ1=E[Y(1)]\mu_1 = E[Y(1)]. By the tower rule over XX and ZZ,

μ1=E[E[Y(1)X,Z]].\mu_1 = E\big[E[Y(1)\mid X, Z]\big].

Ignorability removes the dependence on ZZ inside: E[Y(1)X,Z]=E[Y(1)X]E[Y(1)\mid X, Z] = E[Y(1)\mid X]. And on the treated, the switching equation makes Y(1)Y(1) observable: E[Y(1)X,Z=1]=E[YX,Z=1]E[Y(1)\mid X, Z{=}1] = E[Y\mid X, Z{=}1]. Chaining,

μ1=E[E[YX,Z=1]]=E[YX,Z=1]p(x)dx.\mu_1 = E\big[E[Y \mid X, Z{=}1]\big] = \int E[Y\mid X, Z{=}1]\,p(x)\,dx.

Every term is observable (overlap guarantees Z=1Z{=}1 occurs at each xx). Symmetrically for μ0\mu_0, giving the ATE. This integral — average the within-XX treated-minus-control gap over the marginal of XX — is the backdoor adjustment formula, met here from the potential-outcomes side.

  • The propensity score π(X)=P(Z=1X)\pi(X) = P(Z{=}1\mid X) is the dimension-reducing magic. It is a balancing score: ZXπ(X)Z \perp X \mid \pi(X) — conditioning on one scalar removes all the covariate-driven assignment dependence. And under ignorability, (Y(0),Y(1))Zπ(X)(Y(0),Y(1)) \perp Z \mid \pi(X)you only need to adjust for the scalar π(X)\pi(X), not all of XX (estimate it by logistic regression, track 6).
  • Three ways to use it, all reconstructing the experiment:
    • Matching: pair treated and control units with near-equal XX (or π(X)\pi(X)); within a matched pair, who got treated is “as if a coin flip,” recovering a paired randomized design. Mahalanobis distance (XiXj)TΣ^1(XiXj)(X_i - X_j)^T\hat\Sigma^{-1}(X_i - X_j) handles scale + correlation (track 6).
    • Subclassification: stratify on π(X)\pi(X), average within-stratum DIMs — an SCRD, exactly §5’s estimator.
    • IPW: τ^IPW=1NiZiπ^(Xi)Yi1Ni1Zi1π^(Xi)Yi\hat\tau^{\text{IPW}} = \frac1N\sum_i \frac{Z_i}{\hat\pi(X_i)}Y_i - \frac1N\sum_i \frac{1-Z_i}{1-\hat\pi(X_i)}Y_i. Unbiased under ignorability — derive the treated term. By consistency,

E ⁣[ZiYiπ(Xi)]=E ⁣[ZiYi(1)π(Xi)].E\!\left[\tfrac{Z_iY_i}{\pi(X_i)}\right] = E\!\left[\tfrac{Z_iY_i(1)}{\pi(X_i)}\right].

Tower over XiX_i, then ignorability splits the inner expectation:

=E ⁣[1π(Xi)E[ZiXi]E[Yi(1)Xi]].= E\!\left[\tfrac{1}{\pi(X_i)}\,E[Z_i\mid X_i]\,E[Y_i(1)\mid X_i]\right].

Now E[ZiXi]=π(Xi)E[Z_i\mid X_i] = \pi(X_i) cancels the weight:

=E[E[Yi(1)Xi]]=μ1.= E\big[E[Y_i(1)\mid X_i]\big] = \mu_1.

(Hájek/self-normalized weights stabilize it; small π\pi blows the variance up — keep propensities away from 0/1.)

  • Sensitivity analysis. Ignorability is untestable (it’s about counterfactuals). So ask: how strong a hidden confounder would overturn the conclusion? Parametrize departures by an odds-ratio bound Γ\Gamma on the within-pair treatment odds (Γ=1\Gamma = 1 is ignorability), recompute the worst-case p-value M(Γ)M(\Gamma), and report Γα=min{Γ:M(Γ)>α}\Gamma_\alpha = \min\{\Gamma : M(\Gamma) > \alpha\}. “A hidden confounder would have to make one matched unit Γα×\Gamma_\alpha\times more likely to be treated to kill significance.” Every observational study is sensitive as Γ\Gamma \to \infty; the question is whether a plausible confounder reaches Γα\Gamma_\alpha.

Ledger. Assume: ignorability + overlap (untestable). · Identify: ATE/ATT. · On whom: the overlap region. · Fails when: an unmeasured confounder (selection on unobservables) — quantified by sensitivity analysis.

Implications

  • Matching/subclassification are design steps — do them blind to outcomes, then analyze as an experiment. This restores the design-beats-analysis discipline to observational work.
  • The propensity score collapses a high-dimensional balancing problem to one logistic regression — the single most useful trick in observational causal inference.
  • Ignorability is one assumption away from a randomized experiment, and exactly that one assumption (unobserved confounding) is what sensitivity analysis stress-tests.

Core competency set

  • State strong ignorability + overlap; derive ATE identification via tower + ignorability.
  • State the propensity score as a balancing score and the “adjust for π(X)\pi(X) alone” theorem; derive IPW unbiasedness.
  • Explain matching/subclassification/IPW as experiment-reconstruction; describe Γ\Gamma sensitivity analysis.

7. DAGs — the language of confounding

DAGs are the grammar for which XX to condition on — they make ignorability checkable from a causal model rather than asserted.

  • Structural causal model (SCM). Root variables are independent; each non-root is a deterministic function of its parents plus an independent noise, Xv=fv(Pa(Xv),Uv)X_v = f_v(\text{Pa}(X_v), U_v). An SCM induces a joint PP and a unique DAG (uvu \to v iff uu is a direct cause). XX is a cause of YY if it’s an ancestor.
  • The three building blocks (with independent noises):
    • Chain XYZX \to Y \to Z: XZYX \perp Z \mid Y — conditioning on the middle blocks the flow.
    • Fork YXZY \leftarrow X \to Z: Y⊥̸ZY \not\perp Z but YZXY \perp Z \mid X — the common cause induces dependence; conditioning on it blocks. (This is confounding.)
    • Collider XZYX \to Z \leftarrow Y: XYX \perp Y but X⊥̸YZX \not\perp Y \mid Z — conditioning creates dependence. Don’t condition on colliders. Picture: a college admits star musicians or top-GPA students; among admitted, knowing someone can’t play predicts high GPA — a spurious correlation manufactured by conditioning.
  • d-separation generalizes: WW blocks a path if it contains a non-collider in WW, or a collider not in WW (and with no descendant in WW). If WW blocks every path between XX and YY, they are d-separated, and d-separation     XYW\iff X \perp Y \mid W. Intuition: dependence is water in pipes; conditioning on chains/forks shuts a valve, conditioning on a collider opens one.
  • Conditioning ≠ intervening. P(YZ=1)P(Y \mid Z{=}1) (who happened to be treated) differs from P(Ydo(Z=1))P(Y \mid \text{do}(Z{=}1)) (everyone forced to treatment). The do-operator deletes the arrows into ZZ (the “mutilated graph”) — exactly what randomization does physically. Note P(Ydo(Z=1))=P(Y(1))P(Y \mid \text{do}(Z{=}1)) = P(Y(1)), the potential-outcome mean.
  • Backdoor criterion. XX identifies the effect of ZZ on YY if no node in XX is a descendant of ZZ, and XX blocks every path into ZZ (every “backdoor”). Then

P(Ydo(Z=z))=P(YZ=z,X)p(X)dXP(Y \mid \text{do}(Z{=}z)) = \int P(Y \mid Z{=}z, X)\,p(X)\,dX

— the same adjustment formula as §6, now read off the graph: the backdoor criterion is the graphical statement of ignorability, and it tells you precisely which covariates to include (confounders) and which to exclude (colliders, mediators).

  • Collider bias, concretely. Conditioning on a mediator or collider can create the bias you were trying to remove — controlling for occupation when studying gender pay can zero out a real effect that runs through occupational sorting. More covariates is not safer.

Ledger. Assume: the DAG is correct (a causal model, from domain knowledge). · Identify: any do-effect with an admissible adjustment set. · On whom: population. · Fails when: the graph is wrong, or no set satisfies the backdoor criterion (unblockable path through an unobserved node → need §8–9).

Implications

  • The DAG converts “which controls?” from guesswork into a graphical check — and shows that “adjust for everything” is wrong (colliders, mediators).
  • Markov-equivalent DAGs (same d-separations, e.g. XZYX\to Z \to Y vs XZYX \leftarrow Z \leftarrow Y) are indistinguishable from data alone — causal discovery recovers only the equivalence class; direction needs assumptions.

Core competency set

  • Define the SCM and the chain/fork/collider (in)dependencies; state d-separation.
  • Distinguish conditioning from do()\text{do}(\cdot) via the mutilated graph; write the backdoor adjustment.
  • Explain collider bias and why more controls can hurt.

8. Instrumental variables — when ignorability fails

Now an unobserved confounder UU drives both DD and YY (DUYD \leftarrow U \to Y): no measured XX closes the backdoor, so §6–7 are dead. The IV lever: a variable ZZ that pushes DD but reaches YY only through DD. Running example: a randomized offer of training ZZ, where take-up DD is the actual treatment and motivation UU confounds DDYY. (Canonical: the Vietnam draft lottery ZZ for military service DD on earnings YY.)

  • The DAG: ZDYZ \to D \to Y, DUYD \leftarrow U \to Y, with ZUZ \perp U. Then P(Ydo(Z))P(Y\mid \text{do}(Z)) is identified (ZZ has no backdoor), but P(Ydo(D))P(Y\mid \text{do}(D)) is not (backdoor through UU). IV uses the randomized ZZ to get at the DD effect without ignorability.

  • Principal strata. Classify units by (Di(0),Di(1))(D_i(0), D_i(1)) — treatment taken under no-offer vs offer:

    • compliers (0,1)(0,1) — take it iff offered; always-takers (1,1)(1,1); never-takers (0,0)(0,0); defiers (1,0)(1,0).
    • Comparing units by received DD is biased: {D=1}\{D=1\} mixes compliers + always-takers, {D=0}\{D=0\} mixes compliers + never-takers — different populations.
  • The assumptions (beyond SUTVA): (1) ZZ randomized; (2) exclusion restrictionZZ affects YY only through DD, Yi(Z,D)=Yi(D)Y_i(Z, D) = Y_i(D); (3) relevanceZZ actually moves DD; (4) monotonicity — no defiers, Di(1)Di(0)D_i(1) \ge D_i(0).

  • LATE = the ratio — derive it. Intent-to-treat effects (both identified, since ZZ is randomized): τYITT=E[YZ=1]E[YZ=0]\tau_Y^{\text{ITT}} = E[Y\mid Z{=}1]-E[Y\mid Z{=}0] and τDITT=E[DZ=1]E[DZ=0]\tau_D^{\text{ITT}} = E[D\mid Z{=}1]-E[D\mid Z{=}0]. Decompose τYITT\tau_Y^{\text{ITT}} over strata, τYITT=gPgτYITT,g\tau_Y^{\text{ITT}} = \sum_g P_g\,\tau_Y^{\text{ITT},g}, and prune:

    • Exclusion ⟹ for always-/never-takers DD doesn’t change with ZZ, so YY doesn’t either: τYITT,AT=τYITT,NT=0\tau_Y^{\text{ITT},\text{AT}} = \tau_Y^{\text{ITT},\text{NT}} = 0.
    • Monotonicity ⟹ PD=0P_{\text{D}} = 0 (no defiers).
    • For compliers, the offer flips DD from 0 to 1, so their ITT is the treatment effect: τYITT,C=τC\tau_Y^{\text{ITT,C}} = \tau^{\text C}.

    Hence τYITT=PCτC\tau_Y^{\text{ITT}} = P_{\text C}\,\tau^{\text C}. The same pruning on τDITT\tau_D^{\text{ITT}} gives τDITT=PC1=PC\tau_D^{\text{ITT}} = P_{\text C}\cdot 1 = P_{\text C} (compliers move DD by 1, others by 0). Divide:

τC=τYITTτDITT,τ^IV=τ^YITTτ^DITT=reduced formfirst stage.\tau^{\text C} = \frac{\tau_Y^{\text{ITT}}}{\tau_D^{\text{ITT}}}, \qquad \hat\tau^{\text{IV}} = \frac{\hat\tau_Y^{\text{ITT}}}{\hat\tau_D^{\text{ITT}}} = \frac{\text{reduced form}}{\text{first stage}}.

You can’t say who the compliers are, but you identify their average effect. (With covariates this is 2SLS: regress DD on ZZ, then YY on D^\hat D — only the ZZ-driven, exogenous part of DD is used.) Numbers: the offer raises take-up by τDITT=0.5\tau_D^{\text{ITT}} = 0.5 (half the offered actually train) and raises earnings by τYITT=1000\tau_Y^{\text{ITT}} = 1000 dollars; then τC=1000/0.5=2000\tau^{\text C} = 1000/0.5 = 2000 dollars for compliers — the per-offer effect, scaled up by dividing out the fraction who comply.

  • Weak instruments. If ZZ barely moves DD (PCP_{\text C} small), the denominator is tiny: variance explodes, and any small violation of exclusion is divided by PCP_{\text C} and blows up the bias. Weak instruments make IV fragile.

Ledger. Assume: randomized ZZ + exclusion + relevance + monotonicity. · Identify: LATE τC\tau^{\text C}. · On whom: compliers only (not the population). · Fails when: exclusion is violated (untestable, the usual suspect) or the instrument is weak.

Implications

  • IV trades population for weaker assumptions: you drop ignorability but only learn the complier effect — a different estimand, not a different estimator of the ATE.
  • Under homogeneous effects LATE == ATE; under heterogeneity they genuinely differ, which is why “what population?” must always be asked.
  • Exclusion is a theory, not a test — a good instrument feels unrelated to YY except through DD (that’s what makes it convincing and unsettling).

Core competency set

  • Draw the IV DAG and say why do(D)\text{do}(D) isn’t identified but do(Z)\text{do}(Z) is.
  • Name the four strata and the four assumptions; derive τC=τYITT/τDITT\tau^{\text C} = \tau_Y^{\text{ITT}}/\tau_D^{\text{ITT}} by strata pruning.
  • Explain LATE-on-compliers and the weak-instrument failure.

9. Discontinuities and panels — more as-good-as-random levers

Three more identification strategies, each manufacturing local randomness or differencing confounders away.

  • Regression discontinuity (RDD). Treatment switches at a threshold of a running variable XX: D=1(Xc0)D = \mathbf 1(X \ge c_0). Units just above and just below c0c_0 are as-good-as-random (no one finely controls which side they land on), so compare limits across the cutoff. Sharp RDD: DD jumps 0→1 (Medicare at 65); fuzzy: probability of DD jumps (an IV at the cutoff). Identifying assumption: continuityE[Y(0)X]E[Y(0)\mid X] and E[Y(1)X]E[Y(1)\mid X] are continuous at c0c_0, so any jump in observed YY is the effect. Fit Yi=α+β(Xic0)+δDi+εiY_i = \alpha + \beta(X_i - c_0) + \delta D_i + \varepsilon_i locally; δ^\hat\delta is the LATE at the cutoff. Validity checks: McCrary density test (no bunching of units just past c0c_0 → no manipulation), covariate-balance and placebo-cutoff tests.
    • Ledger. Assume: continuity at c0c_0, no manipulation. · Identify: LATE at the cutoff. · On whom: units near c0c_0. · Fails when: agents sort around the threshold.
  • Difference-in-differences (DiD). Treated and control groups, before and after. The double difference cancels confounders — model Yst=γs+τt+δDst+εstY_{st} = \gamma_s + \tau_t + \delta D_{st} + \varepsilon_{st} (state effect + time effect + treatment), then

(Yˉtreat,postYˉtreat,pre)δ+τ(Yˉctrl,postYˉctrl,pre)τ=δ.\underbrace{(\bar Y_{\text{treat,post}} - \bar Y_{\text{treat,pre}})}_{\delta + \tau} - \underbrace{(\bar Y_{\text{ctrl,post}} - \bar Y_{\text{ctrl,pre}})}_{\tau} = \delta.

The first difference kills the time-invariant state effect γs\gamma_s; the second difference kills the common time effect τt\tau_t, leaving δ\delta. Numbers: treated group goes 203020 \to 30 (+10+10), control 202420 \to 24 (+4+4); the +4+4 is the common time trend, so δ^=104=6\hat\delta = 10 - 4 = 6. Identifying assumption: parallel trends — absent treatment, both groups would have moved in parallel (untestable post-treatment; supported by parallel pre-trends). Canonical: Card–Krueger NJ/PA minimum wage. Inference: cluster or block-bootstrap SEs (serial correlation).

  • Ledger. Assume: parallel trends. · Identify: ATT on the treated group. · On whom: the treated units. · Fails when: differential trends (e.g. mean reversion when treatment targets the worst-off).
  • Fixed effects / panel. With repeated observations, time-demean Y¨it=YitYˉi\ddot Y_{it} = Y_{it} - \bar Y_i: subtracting each unit’s own mean deletes every time-invariant confounder uiu_i — observed or not — so δ^\hat\delta from Y¨\ddot Y on D¨\ddot D is consistent. (DiD is the two-period special case.) Cannot fix time-varying unobserved confounders or reverse causality.
  • Synthetic control. When one unit is treated and you have many donor units, build a weighted average of donors (wj0w_j \ge 0, wj=1\sum w_j = 1) matching the treated unit’s pre-treatment path; the post-treatment gap is the effect. A data-driven, extrapolation-free generalization of DiD; inference by placebo permutation (re-run pretending each donor was treated, rank the real gap).

Implications

  • RDD/DiD/FE/synthetic all engineer Z(Y(0),Y(1))Z \perp (Y(0),Y(1)) locally or in differences — the same goal as randomization, reached by exploiting a threshold, a parallel trend, or within-unit variation.
  • Each buys identification with a different untestable assumption (continuity / parallel trends / time-invariant confounding) — the art is arguing the assumption from context, and the placebo/falsification tests are how you build that case.

Core competency set

  • State RDD’s continuity assumption, sharp vs fuzzy, the LATE-at-cutoff, and the McCrary test.
  • Derive the DiD double difference cancelling γs\gamma_s and τt\tau_t; state parallel trends.
  • Explain fixed-effects demeaning (kills time-invariant uiu_i) and synthetic control.

10. Modern threads

Where causal inference meets machine learning and sequential decisions (overlaps tracks 6, 7, 12).

  • Bandits turn experimentation into a decision: don’t just estimate E[Yarm]E[Y\mid \text{arm}] and stop — minimize regret Rn=maxitXi,ttXIt,tR_n = \max_i \sum_t X_{i,t} - \sum_t X_{I_t,t} by balancing explore vs exploit. UCB: pick the arm with the highest upper confidence bound (optimism — a high mean or a wide interval earns a pull), achieving O(logn)O(\log n) regret. Thompson sampling: pick arm ii with probability it is best — sample μi\mu_i from each posterior (Beta–Bernoulli conjugacy, track 7) and play the argmax; near-optimal and trivially online.
  • Contextual bandits add a feature vector before each decision (personalized assignment). Naively, adaptively-collected data biases the outcome model (early non-uniform assignment confounds), so balance with IPW on the assignment propensities — exactly the causal-inference fix, imported into online learning. Doubly-robust and balanced LinUCB/LinTS reduce this bias.
  • Recommendations as treatments. Showing a user an item is an intervention; observed ratings are a confounded, non-randomly-exposed sample. Reweight by exposure propensities (IPW again) to debias evaluation; the deconfounded recommender fits an exposure model to construct a substitute for unobserved confounders before fitting ratings.
  • ML for causal estimation. Prediction in service of identification: the IV first stage, propensity estimation, and flexible confounder control are all prediction problems where ML helps — but with the firewall principle (no data used to fit the predictor may be used to evaluate it; CV the whole pipeline, track 6 §6) and honest SEs that account for model selection (post-lasso inference is subtle — correlated predictors make “which variable matters” unanswerable even when predictions agree).

Core competency set

  • Define regret; contrast UCB (optimism) and Thompson sampling (probability matching).
  • Explain why adaptively-collected bandit data needs IPW balancing.
  • State recommendations-as-treatments and the firewall principle for ML-in-causal.

11. Memorize cold

  • Potential outcomes Yi(1),Yi(0)Y_i(1), Y_i(0); switching equation Yi=ZiYi(1)+(1Zi)Yi(0)Y_i = Z_iY_i(1) + (1-Z_i)Y_i(0); fundamental problem = one column observed; SUTVA (no interference, no hidden versions).
  • ATE =Yˉ(1)Yˉ(0)= \bar Y(1) - \bar Y(0); ATE =πATT+(1π)ATU= \pi\,\text{ATT} + (1-\pi)\text{ATU}.
  • SDO == ATE ++ selection bias (E[Y(0)Z=1]E[Y(0)Z=0])\big(E[Y(0)|Z{=}1]-E[Y(0)|Z{=}0]\big) ++ heterogeneity bias; Z(Y(0),Y(1))Z\perp(Y(0),Y(1)) kills both.
  • Randomized experiment == probabilistic + known + individualistic + unconfounded; DIM unbiased via ZiYi=ZiYi(1)Z_iY_i = Z_iY_i(1) and E[Zi]=N1/NE[Z_i]=N_1/N.
  • Neyman variance V^1N1+V^0N0\frac{\hat V_1}{N_1}+\frac{\hat V_0}{N_0} is conservative (drop unidentifiable V10V_{10}); HT =1NZiπiYi1N1Zi1πiYi=\frac1N\sum\frac{Z_i}{\pi_i}Y_i - \frac1N\sum\frac{1-Z_i}{1-\pi_i}Y_i.
  • Fisher sharp null Yi(1)=Yi(0)iY_i(1)=Y_i(0)\,\forall i → exact permutation p-value 1K1{T(k)Tobs}\frac1K\sum\mathbf 1\{T^{(k)}\ge T^{\text{obs}}\}; valid for any TT, power depends on TT.
  • Ignorability (Y(0),Y(1))ZX(Y(0),Y(1))\perp Z\mid X + overlap; identification μ1=E[E[YX,Z=1]]\mu_1 = E[E[Y\mid X, Z{=}1]] (tower + ignorability + consistency).
  • Propensity π(X)=P(Z=1X)\pi(X)=P(Z{=}1\mid X) is a balancing score (ZXπ(X)Z\perp X\mid\pi(X)); adjust for π(X)\pi(X) alone; IPW 1NZiπ(Xi)Yi1N1Zi1π(Xi)Yi\frac1N\sum\frac{Z_i}{\pi(X_i)}Y_i - \frac1N\sum\frac{1-Z_i}{1-\pi(X_i)}Y_i.
  • Sensitivity: odds-ratio bound Γ\Gamma, report Γα\Gamma_\alpha.
  • DAG: chain/fork block on conditioning, collider opens on conditioning (don’t condition on colliders/mediators); d-sep     \iff cond. indep.; P(Ydo(z))=P(Yz,X)p(X)dXP(Y\mid\text{do}(z)) = \int P(Y\mid z,X)p(X)dX (backdoor).
  • IV: strata C/AT/NT/D; assumptions randomization + exclusion + relevance + monotonicity; τC=τYITT/τDITT\tau^{\text C} = \tau_Y^{\text{ITT}}/\tau_D^{\text{ITT}} = reduced-form/first-stage; compliers only; weak-instrument fragility.
  • RDD: D=1(Xc0)D=\mathbf 1(X\ge c_0), continuity, LATE at cutoff, McCrary test. DiD: double difference cancels γs\gamma_s (1st diff) and τt\tau_t (2nd diff), parallel trends, ATT. FE: demean kills time-invariant uiu_i. Synthetic control: weighted donor counterfactual.
  • Bandits: regret; UCB optimism; Thompson probability-matching. Firewall principle for ML-in-causal.

Named moves (cross-track glossary): impute-the-missing-counterfactual (the whole subject); decompose-the-naive-estimator (SDO); randomize-to-buy-independence; condition-to-buy-it-given-X (ignorability); tower-rule-then-split (identification + IPW unbiasedness — track 1); bound-the-unidentifiable (conservative variance); permute-under-the-sharp-null (Fisher — rejection sampling, track 7); reconstruct-the-experiment (matching/propensity); read-the-adjustment-set-off-the-graph (backdoor); don’t-condition-on-colliders; ratio-of-ITTs (LATE); difference-out-the-confounder (DiD/FE); local-as-good-as-random (RDD); explore-vs-exploit (bandits); reweight-by-propensity (IPW, recs, contextual bandits).