Causal sufficiency and causal necessity #
Nadathur and Lauer draw on two relations of causal dependence for the meanings of periphrastic
causatives, both over the strict development of an observation (CausalModel.CausallyEntails). A
fact is causally sufficient for another relative to a background when the background does not
settle the effect but, with the cause added, does. A fact is causally necessary for another when
the background does not settle the effect, some supersituation of the background with the cause
settles the effect, and every supersituation of the background that settles the effect settles
the cause.
Main definitions #
CausalModel.CausallySufficient: Nadathur and Lauer's causal sufficiencyCausalModel.CausallyNecessary: Nadathur and Lauer's causal necessity, over a given relation of supersituationCausalModel.IsExogenousSettlement: an extension of an observation at exogenous variables
Main results #
CausalModel.CausallySufficient.reflTransGen: a cause sufficient for an effect is its ancestorCausalModel.CausallySufficient.solve_eq,CausalModel.CausallyNecessary.solve_eq: in every context where the background holds, a sufficient cause brings its effect about, and an effect needs its necessary causeCausalModel.CausallyEntails.of_isExogenousSettlement: settling exogenous variables settles no lessCausalModel.isExogenousSettlement_update,CausalModel.IsExogenousSettlement.trans
Implementation notes #
Necessity takes the supersituations it quantifies over as a parameter: every supersituation,
(· ≤ ·), for Nadathur and Lauer, and for the worked examples of [Nad23b] the
exogenous settlements, the extensions at the variables with no parents that the background leaves
open. Over every supersituation, one settling a variable between cause and effect reaches the
effect around the cause. In a finite model each relation is decided through the computed strict
development (CausalModel.causallyEntails_iff_develop).
References #
M.CausallySufficient s c x e y says that c = x is causally sufficient for e = y relative
to the background s. The background does not settle the effect, and the background together with
the cause does.
Equations
- M.CausallySufficient s c x e y = (¬M.CausallyEntails s e y ∧ M.CausallyEntails (Function.update s c ↑x) e y)
Instances For
M.CausallyNecessary r s c x e y says that c = x is causally necessary for e = y relative
to the background s, where r s s' says that s' is a supersituation of s. The background
does not settle the effect; some supersituation of the background with the cause added, leaving the
effect open, settles the effect; and every supersituation of the background leaving the effect open
that settles the effect settles the cause.
Equations
- One or more equations did not get rendered due to their size.
Instances For
s' settles the observation s further at exogenous variables only, those with no parents
that the strict development of s leaves open.
Equations
- M.IsExogenousSettlement s s' = (s ≤ s' ∧ ∀ (v : V), s v = ⊥ → s' v ≠ ⊥ → (∀ (w : V), ¬M.graph.Adj w v) ∧ ∀ (x : α v), ¬M.CausallyEntails s v x)
Instances For
A cause sufficient for an effect is an ancestor of it: without a path from the cause, adding it leaves the effect as the background left it.
Settling exogenous variables settles no less. What the strict development of an observation settles, that of any exogenous settlement of it settles too.
Settling an open exogenous variable is an exogenous settlement.
Every observation is an exogenous settlement of itself.
An exogenous settlement leaves open every variable with a parent that the observation leaves open.
Exogenous settlements compose.
Truth in the contexts of a background #
A relation of causal dependence relative to a background constrains the actual world of every context where the background holds.
A cause sufficient for an effect relative to a background brings the effect about in every context where the background and the cause hold.
When the context reaches the model only at its roots, a cause necessary for an effect over the exogenous settlements of a background holds in every context where the background and the effect hold. Settling every open and unsettled root at its value in the context develops to the context's actual world, so it settles the effect, and necessity makes it settle the cause.
Equations
- CausalModel.instDecidableCausallySufficient s c x e y = { decide := decide ¬M.CausallyEntails s e y && decide (M.CausallyEntails (Function.update s c ↑x) e y), reflects_decide := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Partial assignments over finitely many variables of finite types are finitely many. Not an
instance: a Fintype instance on Flat would change how decide evaluates flat-valued
functions, so necessity installs this one locally.
Equations
- CausalModel.fintypePartialAssignment = { elems := CausalModel.fintypePartialAssignment._aux_1, complete := ⋯ }
Instances For
Equations
- One or more equations did not get rendered due to their size.