Beller and Gerstenberg (2025): Causation, Meaning, and Communication #
Beller and Gerstenberg model causal language by counterfactual simulation. A causal knowledge module computes three aspects of causation, namely whether-causation (counterfactual necessity), how-causation (a difference to the fine-grained outcome) and sufficient-causation (whether-causation with the alternative causes removed). A semantics module defines "affected", "enabled", "caused" and "made no difference" as logical combinations of the aspects, and a pragmatics module chooses among the true expressions by informativity, as a rational speech act speaker and listener after Frank and Goodman.
Main results #
caused_implies_enabled,enabled_implies_affected: the expressions are ordered by specificity, the hierarchy behind the scalecausalScale.speaker_prefers_caused,speaker_prefers_enabled: the speaker prefers the most informative true expression at every positive rationality.listener_enabled_implicature: hearing "enabled", the pragmatic listener favours the scenario where "caused" is false.launch_ofModel: Michottean launching, as a two-variable structural model, has the aspect profile of the first sample scenario.
Implementation notes #
- The speaker is the paper's first-level pragmatic speaker over Boolean aspects. The fitted model uses a second-level speaker over graded aspects from noisy simulations, with fitted noise, softening and optimality parameters.
listener_affected_prefers_howOnlyis the model's prediction for "affected", which the listener experiment did not bear out.
References #
Expressions and aspects #
The four causal expressions offered to participants.
- caused : CausalExpression
- enabled : CausalExpression
- affected : CausalExpression
- madeNoDifference : CausalExpression
Instances For
Equations
- BellerGerstenberg2025.instDecidableEqCausalExpression x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
An aspect profile records whether-causation W (1), how-causation H (2) and
sufficient-causation S (3), at Boolean values.
- whether : Bool
- how : Bool
- sufficient : Bool
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Instances For
Semantics #
The Boolean core of the semantics is affected = W ∨ H ∨ S (4), enabled = W ∨ S (5),
caused = H ∧ (W ∨ S) (6) without the softened movement and uniqueness conjuncts, and
made no difference = ¬W ∧ ¬H ∧ ¬S (7) with a hard negation.
Equations
- BellerGerstenberg2025.expressionMeaning cw BellerGerstenberg2025.CausalExpression.affected = (cw.whether = true ∨ cw.how = true ∨ cw.sufficient = true)
- BellerGerstenberg2025.expressionMeaning cw BellerGerstenberg2025.CausalExpression.enabled = (cw.whether = true ∨ cw.sufficient = true)
- BellerGerstenberg2025.expressionMeaning cw BellerGerstenberg2025.CausalExpression.caused = (cw.how = true ∧ (cw.whether = true ∨ cw.sufficient = true))
- BellerGerstenberg2025.expressionMeaning cw BellerGerstenberg2025.CausalExpression.madeNoDifference = (¬cw.whether = true ∧ ¬cw.how = true ∧ ¬cw.sufficient = true)
Instances For
Equations
- One or more equations did not get rendered due to their size.
"Made no difference" is the negation of "affected".
The graded semantics softens the negation of how-causation in "made no difference", which a
how-cause that is neither a whether- nor a sufficient-cause satisfies to degree ν (7).
Equations
- One or more equations did not get rendered due to their size.
- BellerGerstenberg2025.gradedMeaning cw ν BellerGerstenberg2025.CausalExpression.affected = if (cw.whether || cw.how || cw.sufficient) = true then 1 else 0
- BellerGerstenberg2025.gradedMeaning cw ν BellerGerstenberg2025.CausalExpression.enabled = if (cw.whether || cw.sufficient) = true then 1 else 0
- BellerGerstenberg2025.gradedMeaning cw ν BellerGerstenberg2025.CausalExpression.caused = if (cw.how && (cw.whether || cw.sufficient)) = true then 1 else 0
Instances For
Without softening, the graded semantics is the indicator of the Boolean core.
The sample scenarios #
Equations
- BellerGerstenberg2025.instDecidableEqScenario x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- One or more equations did not get rendered due to their size.
Equations
The aspect values of the sample scenarios (Table 1a).
Equations
- BellerGerstenberg2025.Scenario.s1.aspects = { whether := true, how := true, sufficient := true }
- BellerGerstenberg2025.Scenario.s2.aspects = { whether := true, how := false, sufficient := true }
- BellerGerstenberg2025.Scenario.s3.aspects = { whether := false, how := true, sufficient := false }
- BellerGerstenberg2025.Scenario.s4.aspects = { whether := false, how := false, sufficient := false }
Instances For
Each expression's extension over the sample scenarios under the Boolean core.
Equations
Instances For
The pragmatics module #
The literal listener is uniform on the scenarios an expression is true of.
Equations
- BellerGerstenberg2025.literal = RSA.listener (ProbabilityTheory.uniformOn Set.univ) (RSA.truthful fun (u : BellerGerstenberg2025.CausalExpression) => ↑(BellerGerstenberg2025.sem u))
Instances For
The first-level speaker knows the scenario and addresses the literal listener at
rationality α.
Equations
- BellerGerstenberg2025.speaker α = RSA.speaker α 0 (⇑BellerGerstenberg2025.literal) MeasureTheory.Measure.dirac
Instances For
The pragmatic listener inverts the speaker at a uniform prior over the scenarios.
Equations
- BellerGerstenberg2025.listener α = RSA.listener (ProbabilityTheory.uniformOn Set.univ) ⇑(BellerGerstenberg2025.speaker α)
Instances For
Hearing "enabled", the literal listener finds the two enabling scenarios equally likely (Table 1c).
At Michottean launching the first-level speaker says "caused" with probability 6/11, "enabled" with 3/11 and "affected" with 2/11 (Table 1d).
At double prevention the first-level speaker says "enabled" with probability 3/5 and "affected" with 2/5, and never "caused" (Table 1d).
Informativity and implicature #
At Michottean launching the speaker prefers "caused" to "enabled" and "enabled" to "affected", at every positive rationality.
At double prevention, where "caused" is false, the speaker prefers "enabled" to "affected" at every positive rationality.
Hearing "caused", the pragmatic listener favours Michottean launching over double prevention, where the expression is false.
Hearing "enabled", the pragmatic listener favours double prevention over Michottean launching, where the speaker would have said "caused". This is the scalar implicature.
Hearing "affected", the pragmatic listener favours the how-cause-only scenario, where no stronger expression is true, over Michottean launching. The listener experiment found the opposite preference for the analogous pair, the case the paper singles out as the model's failure.
Hearing "made no difference", the pragmatic listener favours the no-interaction scenario over the how-cause-only one.
The Horn scale #
The scale ⟨affected, enabled, caused⟩, weakest to strongest.
Equations
Instances For
The scale is a Horn scale. Its meanings are strictly antitone in scale position, each member
entailing the weaker ones and not conversely, the specificity hierarchy
caused_implies_enabled and enabled_implies_affected.
Aspects from a structural model #
The variables of a two-event structural model are the candidate cause and the outcome.
Instances For
Equations
- BellerGerstenberg2025.instDecidableEqVar x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Equations
- BellerGerstenberg2025.instReprVar = { reprPrec := BellerGerstenberg2025.instReprVar.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
The outcome depends on the candidate cause alone.
Equations
Instances For
The context settles whether the candidate cause occurs.
- cause : Bool
Instances For
In Michottean launching the outcome takes the candidate cause's value.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The aspect profile of cause → effect in the context u of a deterministic model. W is
whether-causation (1), that had the cause been absent the effect would not have been present. H is
a direct law, and S is sufficient-causation (3), whether-causation under the intervention
removed that takes the alternative causes away.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Michottean launching, in the context where the cause occurs, computes the profile of the first scenario, since with no alternative causes to remove sufficient-causation is whether-causation.