Every unit carries two numbers at once — Y(1), the outcome if treated, and Y(0), the outcome if not. Assignment reveals exactly one and hides the other forever. Causation is not something we observe; it is a comparison of one seen value against one that never happened.
A finite population split into two strata. Each unit has a fixed pair of potential outcomes; nothing is random about the unit itself.
| stratum | share | Y(0) | Y(1) | Y(1)−Y(0) |
|---|
Individual effect τ_i = Y_i(1) − Y_i(0). Population target
ATE = E[Y(1) − Y(0)]. Observed outcome obeys consistency
Y = T·Y(1) + (1−T)·Y(0).
This is the-counterfactual written as missing data. In Rubin’s reading, causal inference is imputation: the unseen outcome is a hole in a table, not a metaphysical mystery. It is the twin of Pearl’s do(·) operator (same target, different language) and the foundation the-propensity-score stands on — balance Y(0),Y(1) across T and the naive difference stops lying.
Live re-check. Recomputes the reported estimate against the known ATE. Green while the engine reports the randomized (unbiased) number; flips red the instant window 6 swaps in the confounded number under a false randomization label.
The population above, plus two assignment mechanisms for T:
All numbers below are computed live from the SCM — closed form where exact, seeded sample where noted.
Fundamental problem: the observed table only ever holds Y(T). The other column is null — the individual effect τ_i is never a row you can read.
Proven: randomization makes the naive difference an unbiased estimator of the ATE; confounding breaks it by a known selection term. Same arithmetic, opposite truth-value.
“You measured the effect — treated did better than controls, so the treatment works.” The wall: without randomization, E[Y|T=1]−E[Y|T=0] equals ATT plus a baseline gap E[Y(0)|T=1]−E[Y(0)|T=0]. When sicker (higher-Y(0)) units self-select into treatment, that gap can swamp — even reverse the sign of — the real effect. The number is real; its meaning is not the effect.
“The individual causal effect can be estimated for each person.”
→ No. Only one potential outcome per unit is ever observed; τ_i is fundamentally unobservable — we recover averages, not individuals.
“Adjust for enough covariates and observational = experimental.”
→ Only under ignorability T ⊥ {Y(0),Y(1)} | X. Unmeasured confounders leave the baseline gap intact and untestable.
“A bigger sample removes the bias.”
→ Confounding bias is a property of the estimand, not the variance. N→∞ converges to the wrong number.
Report the confounded naive difference while labeling the study “randomized.” The headline estimate jumps to the biased value; the WITNESS (7) catches the mismatch against the known ATE.