Suppose an online-game player had low engagement and spent less than $50. What would that player have spent if engagement had been high? The observed purchase and the hypothetical purchase belong to different possible worlds. A parallel world graph places both worlds in one model so the question can be expressed and evaluated. section 8.4.2
Start with a causal DAG and duplicate its endogenous variables for each world. Keep the same causal structure and connect the copies through shared exogenous variables in a structural causal model (SCM). Exogenous variables represent causes left outside the explicit model; functional assignments determine endogenous values from their parents. With two worlds, the result is also called a twin-world graph. Potential outcomes are values of the same variable across those worlds. section 8.4.2 section 8.4.1
Figure 8.9 In the parallel world graph, we use the exogenous variables in an SCM to unite the duplicate causal DAGs across worlds. The result is a single SCM with duplicate endogenous variables.
The duplicated DAGs share exogenous nodes, making the cross-world connection visible. section 8.4.2
For a counterfactual purchase query, use the graph in three steps:
- Abduction: use observed engagement and purchases to infer a distribution over exogenous variables. section 9.5
- Action: intervene on engagement in the hypothetical world, replacing its usual causal assignment. section 9.5 section 9.1.3
- Prediction: propagate the inferred exogenous distribution through the hypothetical world to obtain a purchase distribution. section 9.5
Without an intervention, corresponding endogenous values remain equal across worlds under consistency. An intervention can instead change downstream hypothetical outcomes. This exact equality creates a caution: ordinary d-separation or d-connection on a parallel world graph does not, in general, establish dependence or independence across worlds. A counterfactual graph is a derived graph on which those separation relationships hold. section 8.4.2 section 9.1.3
Adding a third world
A streaming-service executive can condition on actual deal outcomes and attrition, posit that a successful new-franchise deal would have raised engagement in a second world, then ask about attrition if a competing deal had failed in a third. Each added world makes its hypothetical conditions explicit; the answer still depends on the stated assumptions. section 8.4.4
Parallel-world models can be constructed by hand with pgmpy or Pyro. For a DAG-based transformation, y0 produces parallel world graphs; ChiRho provides a TwinWorldCounterfactual handler. section 11.6.1
