Tae Hyun Kim (Lowell)

d-separation

4 min read #causal-inference#scm#dag

Definition

d-separation (directional separation) is a graphical criterion in a DAG for determining whether two sets of variables are conditionally independent given a third set.

Formal Definition:

In a DAG GG, if ZZ d-separates XX and YY:

XGYZX \perp_G Y \mid Z

every path between XX and YY is blocked by ZZ.

Path Blocking Rules

Three Elementary Structures

StructureNameBlocked by ZZ?
ABCA \rightarrow B \rightarrow CChainblocked if BZB \in Z
ABCA \leftarrow B \rightarrow CForkblocked if BZB \in Z
ABCA \rightarrow B \leftarrow CColliderblocked if BZB \notin Z and De(B)Z=De(B) \cap Z = \emptyset

Blocking Rule Summary

A path π\pi is blocked by ZZ if:

  1. A non-collider (chain or fork) intermediate node is in ZZ
  2. A collider intermediate node and its descendants are not in ZZ

Intuitive Understanding

Core idea:

d-separation = “blocking the flow of information”

Fork (Common Cause):
    A ← B → C

    - Given B: A, C independent (confounding removed)
    - Not given B: A, C associated (via B)

Chain (Mediation):
    A → B → C

    - Given B: A, C independent (mediator blocked)
    - Not given B: A, C associated (causal path)

Collider (Common Effect):
    A → B ← C

    - Not given B: A, C independent (default blocked)
    - Given B: A, C associated! (collider bias)

d-separation Algorithm

Input

  • DAG GG
  • Sets XX, YY, ZZ

Procedure

For each path π between X and Y:
    blocked = False
    For each node B on path π (excluding endpoints):
        If B is a non-collider on π:
            If B ∈ Z:
                blocked = True
                break
        Else (B is a collider on π):
            If B ∉ Z and De(B) ∩ Z = ∅:
                blocked = True
                break

    If not blocked:
        return "X and Y are NOT d-separated by Z"

return "X and Y are d-separated by Z"

Faithfulness Assumption

Markov Property

PP is Markov relative to DAG GG: XGYZ    XPYZX \perp_G Y \mid Z \implies X \perp_P Y \mid Z

d-separation in the graph → probabilistic independence

Faithfulness

PP is faithful to DAG GG: XPYZ    XGYZX \perp_P Y \mid Z \implies X \perp_G Y \mid Z

probabilistic independence → d-separation in the graph

Combined (Perfect Map): XPYZ    XGYZX \perp_P Y \mid Z \iff X \perp_G Y \mid Z

Examples

Example 1: Simple Chain

X → Y → Z
  • XGZYX \perp_G Z \mid Y? Yes (Y blocks the chain)
  • XGZX \perp_G Z? No (path open)

Example 2: Fork (Confounding)

    C
   ↙ ↘
  X   Y
  • XGYCX \perp_G Y \mid C? Yes (C blocks the fork)
  • XGYX \perp_G Y? No (confounding path open)

Example 3: Collider

X → C ← Y
  • XGYX \perp_G Y? Yes (collider blocks by default)
  • XGYCX \perp_G Y \mid C? No (conditioning opens collider)

Example 4: Complex Graph

    A
   ↙ ↘
  B   C
   ↘ ↗
    D
  • AGDA \perp_G D? Check all paths:

    • ABDA \rightarrow B \rightarrow D: Open
    • Not d-separated
  • AGDBA \perp_G D \mid B?

    • ABDA \rightarrow B \rightarrow D: Blocked (B ∈ Z)
    • ACDA \rightarrow C \rightarrow D: Open
    • Not d-separated
  • AGD{B,C}A \perp_G D \mid \{B, C\}?

    • ABDA \rightarrow B \rightarrow D: Blocked
    • ACDA \rightarrow C \rightarrow D: Blocked
    • d-separated!

d-separation and Causal Inference

Back-door Criterion

The Back-door Criterion is based on d-separation:

ZZ is sufficient to identify the causal effect of (X,Y)(X, Y)

  • ZZ d-separates every back-door path between XX and YY

Adjustment Formula

Determine the adjustment set via d-separation: P(Ydo(X))=zP(YX,Z=z)P(Z=z)P(Y | do(X)) = \sum_z P(Y | X, Z=z) P(Z=z)

Valid when ZZ d-separates the back-door paths.

Extensions

m-separation (Mixed Graphs)

Mixed graphs that include bidirected edges:

  • MAG (Maximal Ancestral Graph)
  • PAG (Partial Ancestral Graph)

σ-separation (Cyclic Graphs)

An extension for cyclic graphs:

  • Considers Strongly Connected Components (SCC)
  • Can be reduced to d-separation
  • DAG - The graph on which d-separation is defined
  • Confounder - Fork structure (controlled via d-separation)
  • Collider - Inverted fork (conditioning opens the path)
  • Back-door Criterion - d-separation-based identification
  • Markov Equivalence Class - Graphs with the same d-separations
  • SCM - Structural Causal Model
  • Faithfulness - The d-separation ↔ CI correspondence assumption
  • σ-separation - Cyclic-graph extension

References

  • Pearl, J. (1988). Probabilistic Reasoning in Intelligent Systems
  • Pearl, J. (2009). Causality
  • yaoSurveyCausalInference2021 - d-separation in causal discovery

Local graph