Causality: Models, Reasoning, and Inference

Authors: Judea Pearl
Year: 2000 | Cambridge University Press
Source: pearl-2000-causality-models-reasoning-and-inference


What it is

Pearl’s Causality established a rigorous mathematical theory of cause and effect — unifying graphical models, structural equations, and counterfactual reasoning into a single framework. The central result: correlation is not causation is not a slogan but a precise mathematical statement. Pearl defines exactly what causal questions look like, when they can be answered from observational data, and when they can’t. This theory is the theoretical basis for why pure statistical learning (including neural networks) is structurally unable to answer certain questions that human intelligence handles routinely.


The Ladder of Causation

Pearl’s central organizing framework — three levels of cognitive ability:

Rung 3: Counterfactual  "What would have happened if...?"
         P(Yₓ | X'=x', Y'=y')
         Requires: full Structural Causal Model + twin-network
         
Rung 2: Intervention    "What happens if I do X?"
         P(Y | do(X=x))
         Requires: causal model (DAG + structural equations)
         
Rung 1: Association     "What does observing X tell me about Y?"
         P(Y | X=x)
         Requires: only joint probability distribution

Statistical models — including neural networks — operate only on Rung 1. No amount of observational data can answer a Rung 2 or Rung 3 question without a causal model.

This is a theorem, not an opinion.


Structural Causal Models

An SCM has three components:

1. Endogenous variables X₁,…,Xₙ (observed)

2. Exogenous variables U₁,…,Uₙ (unobserved noise sources)

3. Structural equations: each variable is a function of its direct causes and noise:

Xᵢ = fᵢ(PAᵢ, Uᵢ)

where PAᵢ = direct parents (causes) of Xᵢ in the causal DAG.

The causal DAG makes the causal structure explicit: an edge X → Y means X is a direct cause of Y, with all other factors held constant.


The Do-Operator

The key mathematical tool: do(X=x) represents an intervention — setting X to x by external force, removing the influence of X’s normal causes.

P(Y | X=x)      ← observational: "among people where X happened to be x"
P(Y | do(X=x))  ← interventional: "if we set X to x for everyone"

These are different quantities. The classic example:

Smoking and lung cancer: smokers have yellow fingers. Observing yellow fingers → predicts lung cancer. But painting someone’s fingers yellow (do-operator) doesn’t cause lung cancer. The observational correlation is real; the interventional effect is not.

Pearl’s do-calculus gives three rules for systematically converting do-expressions into ordinary probability expressions — identifying when causal effects can be estimated from observational data.


The Identification Problem

Not all causal effects are identifiable from observational data. Whether P(Y | do(X)) can be computed from P(X, Y, Z, ...) depends on the causal graph structure:

Identifiable (backdoor criterion satisfied): there exists a set of observed variables Z that blocks all “backdoor paths” from X to Y.

X → Y         ← direct effect, identifiable
     ↑
     Z         ← confounder (Z causes both X and Y)

Conditioning on Z (adjusting for the confounder) identifies the causal effect of X on Y.

Not identifiable: when there are unmeasured confounders with no observed proxy. Randomized experiments (RCTs) solve this by forcibly breaking the backdoor paths.


Why this matters for AI

Neural networks are powerful Rung-1 systems. Given enough data, they learn P(Y | X) extremely well. But:

  • They cannot answer “what happens if I intervene?” without a causal model
  • Distribution shift — when the test environment differs from training — is fundamentally a causal question (“the intervention changed the data-generating process”)
  • They cannot reliably distinguish cause from correlation: a model trained to predict fire from smoke will recommend pouring smoke on things to prevent fires

World models (LeCun 2022, maes-2026-leworldmodel-stable-end-to-end-joint-embedding-predictive) are an attempt to build Rung-2 capability into learned systems: modeling state(t+1) = f(state(t), action) is precisely the interventional query P(S_{t+1} | do(A_t = a)).


Pearl’s three-layer hierarchy applied to LLMs

CapabilityRungCurrent LLMs
”What usually happens after X?“1Strong
”What happens if we change X?“2Weak — confuses correlation with causation
”What would have happened if X had been different?“3Very weak

Chain-of-thought prompting (wei-2022-chain-of-thought-prompting-elicits-reasoning-in) moves LLMs toward Rung 2 behavior in some domains, but doesn’t provide the structural guarantees that a causal model does.


See also