Firing Squad

The Prisoner and the Firing Squad

"Suppose that a prisoner is about to be executed by a firing squad. A certain chain of events must occur for this to happen. First, the court orders the execution. The order goes to a captain, who signals the soldiers on the firing squad (A and B) to fire. We’ll assume that they are obedient and expert marksmen, so they only fire on command, and if either one of them shoots, the prisoner dies."

Pearl, Judea. The Book of Why: The New Science of Cause and Effect (p. 40). Basic Books. Kindle Edition. (opens in a new tab)

The Problem as a Bayesian Network

Question #1

"Using this diagram, we can start answering causal questions from different rungs of the ladder. First, we can answer questions of association (i.e., what one fact tells us about another). If the prisoner is dead, does that mean the court order was given?" (Pearl, p. 40)

Querying the Bayesian Network

  • To answer this question in BayesiaLab, you set a Hard Positive Evidence on Death=True (double-click on the state True) to indicate that you learned that the prisoner had been executed (first rung of the ladder).
  • In the WebSimulator, you move the slider Death=True to 100%. The Observed Box is automatically checked upon releasing the mouse button, and the evidence is propagated in the network to update the probability distributions of the other variables.

Once we know that the prisoner is dead, we infer that both soldiers fired and that the court order was given.

Question #2

"Suppose we find out that A fired. What does that tell us about B? By following the arrows, the computer concludes that B must have fired too. (A would not have fired if the captain hadn’t signaled, so B must have fired as well.) This is true even though A does not cause B (there is no arrow from A to B)." (Pearl, p. 40)

Querying the Bayesian Network

  • This is another observational query, the "first rung of the ladder."
  • In BayesiaLab, you set a Hard Positive Evidence on Soldier A=True (double-click on the state True) to indicate that you found out that Soldier A fired.
  • In the WebSimulator, you move the slider Soldier A=True to 100%.

Given that we know that Soldier A fired, we infer that the court order was given and that Soldier B also fired.

Question #3

"Going up the Ladder of Causation, we can ask questions about intervention. What if Soldier A decides on his own initiative to fire, without waiting for the captain’s command? Will the prisoner be dead or alive?" (Pearl, p. 40)

Querying the Bayesian Network

  • You can answer this causal question in BayesiaLab by setting Soldier A to Intervention Mode (Monitor Context Menu > Intervention) and then setting Soldier A=True.
  • This triggers the "mutilation of the graph" (or "graph surgery"), which blocks the associational path between Soldier A and Death that goes via Captain.
  • Alternatively, instead of setting Soldier A to Intervention Mode, you can hold constant the probability distribution of Captain to block the path: Monitor Context Menu > Fix Probabilities.
  • Then, you set Hard Evidence on Soldier A=True.
  • In the WebSimulator, you can simulate this intervention by first controlling for Court Order, i.e., checking the box Observed, and then setting Soldier A=True to 100%.

If Soldier A decides to fire on his own initiative, this implies the death of the prisoner without affecting our belief regarding the other variables.\


For North America

Bayesia USA

4235 Hillsboro Pike
Suite 300-688
Nashville, TN 37215, USA

+1 888-386-8383
info@bayesia.us

Head Office

Bayesia S.A.S.

Parc Ceres, Batiment N 21
rue Ferdinand Buisson
53810 Change, France

For Asia/Pacific

Bayesia Singapore

1 Fusionopolis Place
#03-20 Galaxis
Singapore 138522


Copyright © 2024 Bayesia S.A.S., Bayesia USA, LLC, and Bayesia Singapore Pte. Ltd. All Rights Reserved.