SCM.ID.Assumptions
Structural assumptions used by SCM identification results, including monotone Boolean mechanisms and finite Boolean-chain example models.
Monotonicity 15 core · 8 supporting This file defines monotonicity as a restriction on a structural equation itself. ★ monotoneBoolSCM_satisfies★ antitoneBoolSCM_violates
Structural Monotonicity Assumptions
This file defines monotonicity as a restriction on a structural equation itself. The predicate fixes an observed child and one of its parents, then requires the child's structural function to be nondecreasing in that parent coordinate while all other parent coordinates are held fixed.
The file also contains a two-node Boolean SCM used as a sanity check: one model
satisfies the structural restriction and one model violates it. These witnesses
show that the predicate is a genuine constraint on structFun, not a vacuous
edge label.
Raising one parent coordinate cannot decrease the child equation.
Definition (Lean source)
Two variables for the Boolean monotonicity sanity check.
Definition (Lean source)
The Boolean witness has one directed edge, from treatment d to outcome y.
Definition (Lean source)
The topological order places the parent before the child.
Definition (Lean source)
The two-node DAG used by the Boolean monotonicity witnesses.
Definition (Lean source)
The standard SWIG graph for the two-node Boolean witness.
Definition (Lean source)
Every variable in the Boolean witness has Boolean values.
Definition (Lean source)
The designated parent coordinate for the Boolean witness outcome.
Definition (Lean source)
The Boolean copying structural equation for the witness SCM.
Definition (Lean source)
The Boolean reversing structural equation for the witness SCM.
Definition (Lean source)
A Boolean SCM whose outcome equation copies the parent value.
Definition (Lean source)
A Boolean SCM whose outcome equation reverses the parent value.
Definition (Lean source)
The Boolean parent assignment that sets the designated parent to b.
Definition (Lean source)
The copying Boolean structural causal model satisfies monotonicity of the outcome mechanism in the designated parent coordinate.
Formal statement
Proof (Lean source)
The reversing Boolean structural causal model violates monotonicity of the outcome mechanism in the designated parent coordinate.
Formal statement
Proof (Lean source)
8 supporting declarations (lemmas, instances)
-
instPreorderSwigΩinstance — The SWIG value spaces inherit the base-variable order.instance instPreorderSwigΩ [∀ n, Preorder (Ω n)] : ∀ s : SWIGNode N, Preorder (swigΩ Ω s) | .random _ => inferInstance | .fixed _ => inferInstance -
instDecidableEqBoolChainNodeinstancederiving DecidableEq, Repr -
instReprBoolChainNodeinstancederiving DecidableEq, Repr -
instFintypeinstance — The Boolean witness type has exactly the two elements d and y.instance instFintype : Fintype BoolChainNode where elems := {d, y} complete := by intro x; cases x <;> decide -
edgeDecidableinstanceinstance edgeDecidable : DecidableRel edge := by intro a b cases a <;> cases b · exact isFalse (fun h => h) · exact isTrue trivial · exact isFalse (fun h => h) · exact isFalse (fun h => h) -
boolChainMeasurableSpaceinstanceinstance boolChainMeasurableSpace : ∀ n, MeasurableSpace (boolChainΩ n) | d => ⊤ | y => ⊤ -
boolParentAssignment_boolChainDParenttheorem — Evaluating the Boolean parent assignment at the designated parent returns the assigned value.Proof (Lean source)
@[simp] theorem boolParentAssignment_boolChainDParent (b : Bool) : boolParentAssignment b boolChainDParent = b := by cases b <;> rfl