Estimation.Minimax­ATE

Structure-agnostic lower bounds for treatment-effect estimation: the oracle-vs-black-box reduction, least-favourable constructions, and variance calculations.

Achievability 6 core · 3 supporting · 1 submodule Achievability side of the structure-agnostic program: estimators matching the lower-bound rate. Reduction 4 core · 4 supporting · 3 submodules The reduction from estimation risk to testing between mixture alternatives, including witness-mixture constructions. Const­Center­Half 30 core · 49 supporting · 10 submodules Half-center constant-propensity lower-bound construction for MinimaxATE: explicit witnesses, χ² indistinguishability, Ingster-style calibration, and parametric variants. Varying­Center­Case1 18 core · 24 supporting · 6 submodules First varying-center MinimaxATE lower-bound construction: cell-varying mixture laws, class membership, χ² overlap, ATE gap, and risk lower bound. Varying­Center­Case2 19 core · 28 supporting · 5 submodules Second, propensity-dominant varying-center MinimaxATE construction: perturbed sample laws, positivity algebra, class membership, χ² overlap, and lower-bound gap. Causal 30 core · 32 supporting · 3 submodules Causal grounding for the MinimaxATE lower bounds: a finite backdoor SCM and potential-outcome system, the causalATE target, and bridges that recenter the lower bound from the observed-data contrast to the causal ATE. Const­Center­General 18 core · 23 supporting · 6 submodules General constant-center least-favourable construction for MinimaxATE: mixture laws, class membership, χ² overlap, gap, MSE, and lower-bound assembly.
Model 14 core · 6 supporting This file supplies the finite observed-data experiment used for structure-agnostic estimation of the average treatment effect: a finite covariate, binary treatment, and binary outcome. ★ nMiss_sq_le_nMSE

Finite observed-data model for ATE estimation

This file supplies the finite observed-data experiment used for structure-agnostic estimation of the average treatment effect: a finite covariate, binary treatment, and binary outcome. It defines the data laws, nuisance class, sample risks, and minimax miss probability used by the lower-bound construction.

abbrev Obs reviewed
Causalean.Estimation.MinimaxATE

For a covariate space, one observed data record consists of a covariate value, a binary treatment indicator, and a binary outcome indicator.

Definition (Lean source)
C :
Type*
Obs C :
Type (max u_1 0)
C × Bool × Bool
Causalean.Estimation.MinimaxATE.Obs · Causalean/Estimation/MinimaxATE/Model.lean:62
structure ValidDGP reviewed
Causalean.Estimation.MinimaxATE

A data-generating process (m, g) is valid when the propensity m takes values in the unit interval [0,1] and each outcome-regression arm g d also takes values in [0,1].

Definition (Lean source)
C :
Type u_1
shared
m :
C → ℝ
g :
Bool → C → ℝ
m_mem :
∀ x, m x ∈ Icc (0 : ℝ) 1
g_mem :
∀ d x, g d x ∈ Icc (0 : ℝ) 1
Causalean.Estimation.MinimaxATE.ValidDGP · Causalean/Estimation/MinimaxATE/Model.lean:68
def obsReal reviewed
Causalean.Estimation.MinimaxATE

For a finite covariate space, a propensity function, an outcome-regression function for binary treatment, and an observed record, the record’s real-valued probability mass is the uniform covariate mass times the conditional treatment probability times the conditional outcome probability.

Definition (Lean source)
C :
Type u_1
shared
m :
C → ℝ
g :
Bool → C → ℝ
z :
Obs C
obsReal m g z :
(Fintype.card C : ℝ)⁻¹ * (if z.2.1 then m z.1 else 1 - m z.1) * (if z.2.2 then g z.2.1 z.1 else 1 - g z.2.1 z.1)
Causalean.Estimation.MinimaxATE.obsReal · Causalean/Estimation/MinimaxATE/Model.lean:75 · uses Obs
def obsPMF reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space, a propensity function, an outcome-regression function, and evidence that these functions define valid probabilities, the single-observation probability mass function assigns each record its nonnegative real-valued mass.

Definition (Lean source)
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
obsPMF hv :
PMF (Obs C)
PMF.ofFintype (fun z => ofReal (obsReal m g z)) <| by rw [← ENNReal.ofReal_sum_of_nonneg (fun z _ => obsReal_nonneg hv z), obsReal_sum] simp
Causalean.Estimation.MinimaxATE.obsPMF · Causalean/Estimation/MinimaxATE/Model.lean:108 · uses Obs , ValidDGP
def obsLaw reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space with a measurable structure, a propensity function, an outcome-regression function, and evidence that these functions define valid probabilities, the single-observation probability measure is the measure associated with the corresponding finite probability mass function.

Definition (Lean source)
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
obsLaw hv :
Causalean.Estimation.MinimaxATE.obsLaw · Causalean/Estimation/MinimaxATE/Model.lean:120 · uses Obs , ValidDGP
def ate reviewed
Causalean.Estimation.MinimaxATE

For a finite covariate space and an outcome-regression function for binary treatment, the average treatment effect is the uniform average over covariate values of the treated-arm regression minus the control-arm regression.

Definition (Lean source)
C :
Type u_1
shared
g :
Bool → C → ℝ
ate g :
(Fintype.card C : ℝ)⁻¹ * ∑ x, (g true x - g false x)
Causalean.Estimation.MinimaxATE.ate · Causalean/Estimation/MinimaxATE/Model.lean:135
def l2sq reviewed
Causalean.Estimation.MinimaxATE

For a finite covariate space, a first real-valued covariate function, and a second real-valued covariate function, the squared uniform L2L^2 distance is the uniform average of their squared pointwise difference.

Definition (Lean source)
C :
Type u_1
shared
a b :
C → ℝ
l2sq a b :
(Fintype.card C : ℝ)⁻¹ * ∑ x, (a x - b x) ^ 2
Causalean.Estimation.MinimaxATE.l2sq · Causalean/Estimation/MinimaxATE/Model.lean:141
structure InClass reviewed
Causalean.Estimation.MinimaxATE

Structure-agnostic nuisance class. A candidate data-generating process (m, g) belongs to the class ℱ(εg, εm) around fixed nuisance estimates (mhat, ghat) when it is a valid DGP, with propensity and both outcome-regression arms taking values in [0,1], each outcome-regression arm lies within squared L²(P_X) distance εg of the corresponding estimated arm, and the propensity lies within squared L²(P_X) distance εm of the estimated propensity.

Definition (Lean source)
C :
Type u_1
shared
mhat :
C → ℝ
ghat :
Bool → C → ℝ
εg εm :
m :
C → ℝ
g :
Bool → C → ℝ
valid :
err_g :
∀ d, l2sq (g d) (ghat d) ≤ εg
err_m :
l2sq m mhat ≤ εm
Causalean.Estimation.MinimaxATE.InClass · Causalean/Estimation/MinimaxATE/Model.lean:147
def InClassDGP reviewed
Causalean.Estimation.MinimaxATE

For a finite covariate space, a reference propensity function, a reference outcome-regression function, an outcome-regression error budget, and a propensity error budget, an in-class data-generating process is a pair of propensity and outcome-regression functions together with evidence that the pair belongs to the corresponding nuisance class.

Definition (Lean source)
C :
Type u_1
shared
mhat :
C → ℝ
ghat :
Bool → C → ℝ
εg εm :
InClassDGP mhat ghat εg εm :
Type _
{ p : (C → ℝ) × (Bool → C → ℝ) // InClass mhat ghat εg εm p.1 p.2 }
Causalean.Estimation.MinimaxATE.InClassDGP · Causalean/Estimation/MinimaxATE/Model.lean:159
def productLaw reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space with a measurable structure, a propensity function, an outcome-regression function, evidence that the functions define valid probabilities, and a nonnegative sample size, the sample probability law is the joint law of that many independent observations from the single-observation law.

Definition (Lean source)
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
n :
productLaw hv n :
Measure (Fin n → Obs C)
Measure.pi (fun _ => obsLaw hv)
Causalean.Estimation.MinimaxATE.productLaw · Causalean/Estimation/MinimaxATE/Model.lean:167 · uses Obs , ValidDGP
def nMiss reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space with a measurable structure, a propensity function, an outcome-regression function, evidence that the functions define valid probabilities, a nonnegative sample size, an estimator based on that sample, and a real-valued threshold, the miss probability is the probability that the estimator differs from the true average treatment effect by at least the threshold.

Definition (Lean source)
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
n :
est :
(Fin n → Obs C) → ℝ
s :
nMiss hv n est s :
(productLaw hv n).real {x | s ≤ |est x - ate g|}
Causalean.Estimation.MinimaxATE.nMiss · Causalean/Estimation/MinimaxATE/Model.lean:183 · uses Obs , ValidDGP
def nMSE reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space with a measurable structure, a propensity function, an outcome-regression function, evidence that the functions define valid probabilities, a nonnegative sample size, and an estimator based on that sample, the mean-squared error is the expected squared deviation of the estimator from the true average treatment effect.

Definition (Lean source)
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
n :
est :
(Fin n → Obs C) → ℝ
nMSE hv n est :
∫ x, (est x - ate g) ^ 2 ∂(productLaw hv n)
Causalean.Estimation.MinimaxATE.nMSE · Causalean/Estimation/MinimaxATE/Model.lean:193 · uses Obs , ValidDGP
theorem nMiss_sq_le_nMSE reviewed
Causalean.Estimation.MinimaxATE

Chebyshev/Markov bridge. For a valid data-generating process (m, g) and a nonnegative separation threshold s, the squared threshold times the probability that an estimator misses the true average treatment effect by at least s, on n i.i.d. draws, is at most the estimator's mean-squared error. This is the quantitative form of the paper's observation that the quantile risk lower bound implies the expected-risk one (𝔐ₙ,γ ≥ ρ ⟹ minimax 𝔼-risk ≥ (1−γ)ρ`).

Formal statement
C :
Type u_1
Nonempty C
C → ℝ
Bool → C → ℝ
shared
hv :
n :
(Fin n → Obs C) → ℝ
s :
hs :
0 ≤ s
s ^ 2 * nMiss hv n est s ≤ nMSE hv n est
Proof (Lean source)
theorem nMiss_sq_le_nMSE [Nonempty C] [MeasurableSingletonClass C] {m : C → ℝ} {g : Bool → C → ℝ} (hv : ValidDGP m g) (n : ℕ) {est : (Fin n → Obs C) → ℝ} {s : ℝ} (hs : 0 ≤ s) : s ^ 2 * nMiss hv n est s ≤ nMSE hv n est := by have hset : {x : Fin n → Obs C | s ≤ |est x - ate g|} = {x | s ^ 2 ≤ (est x - ate g) ^ 2} := by ext x simp only [Set.mem_setOf_eq] constructor <;> intro h <;> nlinarith [abs_nonneg (est x - ate g), sq_abs (est x - ate g), sq_nonneg (est x - ate g)] unfold nMiss nMSE rw [hset] exact mul_meas_ge_le_integral_of_nonneg (Filter.Eventually.of_forall fun x => sq_nonneg _) Integrable.of_finite (s ^ 2)
Causalean.Estimation.MinimaxATE.nMiss_sq_le_nMSE · Causalean/Estimation/MinimaxATE/Model.lean:207 · uses Obs , ValidDGP , nMSE , nMiss
def minimaxMiss reviewed
Causalean.Estimation.MinimaxATE

For a finite nonempty covariate space with a measurable structure, a reference propensity function, a reference outcome-regression function, an outcome-regression error budget, a propensity error budget, a nonnegative sample size, an estimator based on that sample, and a real-valued threshold, the minimax miss probability is the supremum, over all data-generating processes in the specified nuisance class, of the probability that the estimator differs from that process’s true average treatment effect by at least the threshold.

Definition (Lean source)
C :
Type u_1
Nonempty C
shared
mhat :
C → ℝ
ghat :
Bool → C → ℝ
εg εm :
n :
est :
(Fin n → Obs C) → ℝ
s :
minimaxMiss mhat ghat εg εm n est s :
⨆ p : InClassDGP mhat ghat εg εm, nMiss p.2.valid n est s
Causalean.Estimation.MinimaxATE.minimaxMiss · Causalean/Estimation/MinimaxATE/Model.lean:229 · uses Obs
6 supporting declarations (lemmas, instances)
  • obsReal_sum theorem — The total mass of obsReal is 1 (for nonempty C): summing over Y gives 1, then over D gives 1, then over X gives card C · (1/card C) = 1.
    C :
    Type u_1
    Nonempty C
    shared
    m :
    C → ℝ
    g :
    Bool → C → ℝ
    ∑ z : Obs C, obsReal m g z = 1
    Proof (Lean source)
    theorem obsReal_sum [Nonempty C] (m : C → ℝ) (g : Bool → C → ℝ) : ∑ z : Obs C, obsReal m g z = 1 := by have hC : (Fintype.card C : ℝ) ≠ 0 := Nat.cast_ne_zero.mpr Fintype.card_ne_zero -- summing over `Y` then `D` collapses each cell to its mass `1/card C` have key : ∑ z : Obs C, obsReal m g z = ∑ _x : C, (Fintype.card C : ℝ)⁻¹ := by rw [Fintype.sum_prod_type] refine Finset.sum_congr rfl fun x _ => ?_ rw [Fintype.sum_prod_type] simp only [obsReal, Fintype.sum_bool, Bool.false_eq_true, if_false, if_true] ring rw [key, Finset.sum_const, Finset.card_univ, nsmul_eq_mul] field_simp
    Causalean.Estimation.MinimaxATE.obsReal_sum · Causalean/Estimation/MinimaxATE/Model.lean:83
  • obsReal_nonneg theorem — Nonnegativity of obsReal for a valid DGP.
    C :
    Type u_1
    C → ℝ
    Bool → C → ℝ
    shared
    hv :
    z :
    Obs C
    0 ≤ obsReal m g z
    Proof (Lean source)
    theorem obsReal_nonneg {m : C → ℝ} {g : Bool → C → ℝ} (hv : ValidDGP m g) (z : Obs C) : 0 ≤ obsReal m g z := by have hCinv : (0 : ℝ) ≤ (Fintype.card C : ℝ)⁻¹ := by positivity obtain ⟨hm0, hm1⟩ := hv.m_mem z.1 refine mul_nonneg (mul_nonneg hCinv ?_) ?_ · rcases z.2.1 with _ | _ <;> simp <;> linarith · obtain ⟨hg0, hg1⟩ := hv.g_mem z.2.1 z.1 rcases z.2.2 with _ | _ <;> simp <;> linarith
    Causalean.Estimation.MinimaxATE.obsReal_nonneg · Causalean/Estimation/MinimaxATE/Model.lean:98
  • obsLaw_isProb instance — For every finite, nonempty covariate space equipped with a $\sigma$-algebra, propensity function $m$, binary-treatment outcome-regression function $g$, and evidence that these functions constitute a valid data-generating process, the corresponding single-observation law is a probability measure.
    C :
    Type u_1
    Nonempty C
    C → ℝ
    Bool → C → ℝ
    shared
    hv :
    obsLaw_isProb hv :
    by unfold obsLaw; infer_instance
    Causalean.Estimation.MinimaxATE.obsLaw_isProb · Causalean/Estimation/MinimaxATE/Model.lean:128
  • productLaw_isProb instance — For every finite, nonempty covariate space equipped with a $\sigma$-algebra, propensity function $m$, binary-treatment outcome-regression function $g$, evidence that these functions constitute a valid data-generating process, and sample size $n$, the corresponding independent-sample law is a probability measure.
    C :
    Type u_1
    Nonempty C
    C → ℝ
    Bool → C → ℝ
    shared
    hv :
    n :
    productLaw_isProb hv n :
    by unfold productLaw; infer_instance
    Causalean.Estimation.MinimaxATE.productLaw_isProb · Causalean/Estimation/MinimaxATE/Model.lean:176
  • bddAbove_nMiss_range theorem — Each in-class miss probability is bounded above by 1 (it is a probability), so the range of nMiss over the class is bounded above.
    C :
    Type u_1
    Nonempty C
    shared
    mhat :
    C → ℝ
    ghat :
    Bool → C → ℝ
    εg εm :
    n :
    est :
    (Fin n → Obs C) → ℝ
    s :
    BddAbove (Set.range fun p : InClassDGP mhat ghat εg εm => nMiss p.2.valid n est s)
    Proof (Lean source)
    theorem bddAbove_nMiss_range [Nonempty C] (mhat : C → ℝ) (ghat : Bool → C → ℝ) (εg εm : ℝ) (n : ℕ) (est : (Fin n → Obs C) → ℝ) (s : ℝ) : BddAbove (Set.range fun p : InClassDGP mhat ghat εg εm => nMiss p.2.valid n est s) := by refine ⟨1, ?_⟩ rintro y ⟨p, rfl⟩ unfold nMiss calc (productLaw p.2.valid n).real {x | s ≤ |est x - ate p.1.2|} ≤ (productLaw p.2.valid n).real univ := measureReal_mono (Set.subset_univ _) (measure_ne_top _ _) _ = 1 := by rw [probReal_univ]
    Causalean.Estimation.MinimaxATE.bddAbove_nMiss_range · Causalean/Estimation/MinimaxATE/Model.lean:243
  • nMiss_le_minimaxMiss theorem — A specific in-class DGP's miss probability is ≤ minimaxMiss.
    C :
    Type u_1
    Nonempty C
    C → ℝ
    Bool → C → ℝ
    shared
    εg εm :
    n :
    (Fin n → Obs C) → ℝ
    s :
    p :
    nMiss p.2.valid n est s ≤ minimaxMiss mhat ghat εg εm n est s
    Proof (Lean source)
    theorem nMiss_le_minimaxMiss [Nonempty C] {mhat : C → ℝ} {ghat : Bool → C → ℝ} {εg εm : ℝ} {n : ℕ} {est : (Fin n → Obs C) → ℝ} {s : ℝ} (p : InClassDGP mhat ghat εg εm) : nMiss p.2.valid n est s ≤ minimaxMiss mhat ghat εg εm n est s := le_ciSup (bddAbove_nMiss_range mhat ghat εg εm n est s) p
    Causalean.Estimation.MinimaxATE.nMiss_le_minimaxMiss · Causalean/Estimation/MinimaxATE/Model.lean:256
Optimality 4 core · 2 supporting This file combines the cell-varying minimax converse with the finite-sample AIPW upper bound. ★ aipw_inclass_bias_bound★ aipw_minimaxMiss_le

AIPW Optimality

This file combines the cell-varying minimax converse with the finite-sample AIPW upper bound. It records that the structure-agnostic ATE minimax rate is of product-bias order and that the AIPW estimator attains this order up to constants.

The file first proves finite-sample facts for the fixed-center AIPW estimator: aipw_mean_eq identifies its mean, aipw_nMiss_le turns a bias and variance bound into a miss-probability bound, aipw_inclass_bias_bound supplies the uniform product-bias estimate over InClass, and aipw_minimaxMiss_le lifts these bounds to the minimax miss probability. It then defines MinimaxRateThreshold and assembles the lower and upper bounds in aipw_attains_minimax_rate, showing that the cell-varying lower-bound construction and the AIPW upper bound have matching sqrt(εg * εm) separation order.

theorem aipw_inclass_bias_bound reviewed
Causalean.Estimation.MinimaxATE

In-class bias bound. For a positive overlap threshold ε such that the fixed propensity estimate mhat stays at least ε away from both 0 and 1 at every covariate value, and for any data-generating process (m, g) lying in the structure-agnostic nuisance class around the fixed estimates (mhat, ghat) with error budgets εg, εm, the plug-in bias of the fixed-center AIPW estimator's population score is at most ε⁻¹·2·√εg·√εm.

Formal statement
C :
Type u_1
C → ℝ
Bool → C → ℝ
shared
εg εm :
ε :
:
0 < ε
hco :
∀ x, ε ≤ mhat x ∧ ε ≤ 1 - mhat x
m :
C → ℝ
g :
Bool → C → ℝ
hin :
InClass mhat ghat εg εm m g
|(∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z) - ate g|
≤ ε⁻¹ * (2 * sqrt εg * sqrt εm)
Proof (Lean source)
theorem aipw_inclass_bias_bound {mhat : C → ℝ} {ghat : Bool → C → ℝ} {εg εm : ℝ} {ε : ℝ} (hε : 0 < ε) (hco : ∀ x, ε ≤ mhat x ∧ ε ≤ 1 - mhat x) {m : C → ℝ} {g : Bool → C → ℝ} (hin : InClass mhat ghat εg εm m g) : |(∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z) - ate g| ≤ ε⁻¹ * (2 * sqrt εg * sqrt εm) := by refine (aipw_bias_bound mhat ghat hε hco).trans ?_ apply mul_le_mul_of_nonneg_left _ (by positivity : (0:ℝ) ≤ ε⁻¹) have hg1 : sqrt (l2sq (g true) (ghat true)) ≤ sqrt εg := Real.sqrt_le_sqrt (hin.err_g true) have hg0 : sqrt (l2sq (g false) (ghat false)) ≤ sqrt εg := Real.sqrt_le_sqrt (hin.err_g false) have hmm : sqrt (l2sq m mhat) ≤ sqrt εm := Real.sqrt_le_sqrt hin.err_m calc (sqrt (l2sq (g true) (ghat true)) + sqrt (l2sq (g false) (ghat false))) * sqrt (l2sq m mhat) ≤ (2 * sqrt εg) * sqrt εm := mul_le_mul (by linarith) hmm (Real.sqrt_nonneg _) (by positivity) _ = 2 * sqrt εg * sqrt εm := by ring
Causalean.Estimation.MinimaxATE.aipw_inclass_bias_bound · Causalean/Estimation/MinimaxATE/Optimality.lean:108 · uses InClass , Obs , aipwScoreFin , ate , obsReal
theorem aipw_minimaxMiss_le reviewed
Causalean.Estimation.MinimaxATE

Worst-case (minimax) miss bound for AIPW. Suppose the fixed nuisance estimates (mhat, ghat) are themselves valid, for a positive overlap threshold ε such that mhat stays at least ε away from 0 and 1 everywhere, nonnegative error budgets εg, εm, a positive sample size n, and a separation s exceeding the uniform bias bound b = ε⁻¹·2·√εg·√εm. Then the worst-case-over-class miss probability of the fixed-center AIPW estimator at separation s is at most ((1+2/ε)²/n)/(s−b)².

Formal statement
C :
Type u_1
C → ℝ
Bool → C → ℝ
shared
εg εm :
hghat :
ε :
:
0 < ε
hco :
∀ x, ε ≤ mhat x ∧ ε ≤ 1 - mhat x
hεg :
0 ≤ εg
hεm :
0 ≤ εm
n :
hn :
0 < n
s :
hsb :
ε⁻¹ * (2 * sqrt εg * sqrt εm) < s
≤ ((1 + 2 / ε) ^ 2 / n) / (s - ε⁻¹ * (2 * sqrt εg * sqrt εm)) ^ 2
Proof (Lean source)
theorem aipw_minimaxMiss_le {mhat : C → ℝ} {ghat : Bool → C → ℝ} {εg εm : ℝ} (hghat : ValidDGP mhat ghat) {ε : ℝ} (hε : 0 < ε) (hco : ∀ x, ε ≤ mhat x ∧ ε ≤ 1 - mhat x) (hεg : 0 ≤ εg) (hεm : 0 ≤ εm) {n : ℕ} (hn : 0 < n) {s : ℝ} (hsb : ε⁻¹ * (2 * sqrt εg * sqrt εm) < s) : minimaxMiss mhat ghat εg εm n (estAIPW mhat ghat n) s ≤ ((1 + 2 / ε) ^ 2 / n) / (s - ε⁻¹ * (2 * sqrt εg * sqrt εm)) ^ 2 := by haveI : Nonempty (InClassDGP mhat ghat εg εm) := ⟨⟨(mhat, ghat), { valid := hghat err_g := fun d => by rw [l2sq_self]; exact hεg err_m := by rw [l2sq_self]; exact hεm }⟩⟩ refine ciSup_le (fun p => ?_) exact aipw_nMiss_le p.2.valid mhat ghat hn (aipw_inclass_bias_bound hε hco p.2) (aipw_var_bound p.2.valid mhat ghat hghat hε hco n) hsb
Causalean.Estimation.MinimaxATE.aipw_minimaxMiss_le · Causalean/Estimation/MinimaxATE/Optimality.lean:133 · uses ValidDGP , estAIPW , minimaxMiss
structure MinimaxRateThreshold reviewed
Causalean.Estimation.MinimaxATE

Minimax rate threshold (reusable vocabulary). An estimation problem over the finite model exhibits a rate threshold when a single estimator's worst-case miss is bounded above at one separation (sepUpper), while every estimator's worst-case miss is bounded below at a (smaller) separation (sepLower). When sepLower and sepUpper are of the same order, this certifies the minimax rate and that estimator attains it.

Definition (Lean source)
C :
Type u_1
shared
mhat :
C → ℝ
ghat :
Bool → C → ℝ
εg εm :
n :
The rate-optimal estimator.
estimator :
(Fin n → Obs C) → ℝ
Impossibility separation.
sepLower :
Lower bound on every estimator's worst-case miss at `sepLower`.
probLower :
converse :
∀ est : (Fin n → Obs C) → ℝ
then
probLower ≤ minimaxMiss mhat ghat εg εm n est sepLower
Achievability separation (of the same order as `sepLower`).
sepUpper :
Upper bound on `estimator`'s worst-case miss at `sepUpper`.
missUpper :
achievability :
minimaxMiss mhat ghat εg εm n estimator sepUpper ≤ missUpper
Causalean.Estimation.MinimaxATE.MinimaxRateThreshold · Causalean/Estimation/MinimaxATE/Optimality.lean:155
def aipw_attains_minimax_rate reviewed
Causalean.Estimation.MinimaxATE

For a cell-varying construction over a nonzero finite number of paired covariate cells, a positive sample size, and nonnegative outcome-regression and propensity-error budgets, suppose for every pair jj, the squared propensity perturbation (m0jβ/g1j)2(m_{0j}\beta/g_{1j})^2 is at most εm\varepsilon_m, for every pair jj, the squared treated-arm outcome-regression perturbation g1j2(α+β)2/(g1jβ)2g_{1j}^2(\alpha+\beta)^2/(g_{1j}-\beta)^2 is at most εg\varepsilon_g, the normalized overlap coefficients satisfy jΓj/K1\sum_j \Gamma_j/K\leq 1, and their normalized squared sum satisfies (n2/2)j(Γj/K)2log2(n^2/2)\sum_j(\Gamma_j/K)^2\leq\log 2. For a positive overlap constant such that the fitted propensity is between ε\varepsilon and 1ε1-\varepsilon in every covariate cell, and a separation ss strictly larger than ε12εgεm\varepsilon^{-1}2\sqrt{\varepsilon_g}\sqrt{\varepsilon_m}, the minimax-rate threshold certificate specifies the fixed-center augmented inverse-probability-weighted estimator, its upper miss-probability bound at ss, and the construction-induced lower miss-probability bound for every measurable estimator.

Definition (Lean source)
K :
shared
P :
n :
hn :
0 < n
εg εm :
hm :
∀ j, (P.m₀ j * (P.β / P.g₁ j)) ^ 2 ≤ εm
hg :
∀ j, P.g₁ j ^ 2 * (P.α + P.β) ^ 2 / (P.g₁ j - P.β) ^ 2 ≤ εg
hεg :
0 ≤ εg
hεm :
0 ≤ εm
hΓsum :
∑ j, P.ΓV j / (K : ℝ) ≤ 1
hreg :
(n : ℝ) ^ 2 / 2 * ∑ j, (P.ΓV j / (K : ℝ)) ^ 2 ≤ log 2
ε :
:
0 < ε
hco :
∀ x, ε ≤ P.mhatV x ∧ ε ≤ 1 - P.mhatV x
s :
hsb :
ε⁻¹ * (2 * sqrt εg * sqrt εm) < s
aipw_attains_minimax_rate P hn hm hg hεg hεm hΓsum hreg hε hco hsb :
MinimaxRateThreshold P.mhatV P.ghatV εg εm n
clause 1
estimator := estAIPW P.mhatV P.ghatV n
clause 2
sepLower := (card (Fin K × Bool) : ℝ)⁻¹ * (2 * P.β * (P.α + P.β)) * (∑ j : Fin K, P.g₁ j / (P.g₁ j ^ 2 - P.β ^ 2)) / 2
clause 3
probLower := 1 / 4
clause 4
converse := fun _est hest => P.minimax_lower_bound_var hm hg hεg hεm hΓsum hreg hest
clause 5
sepUpper := s
clause 6
missUpper := ((1 + 2 / ε) ^ 2 / n) / (s - ε⁻¹ * (2 * sqrt εg * sqrt εm)) ^ 2
clause 7
achievability := aipw_minimaxMiss_le P.validDGP_hatV hε hco hεg hεm hn hsb
2 supporting declarations (lemmas, instances)
  • aipw_mean_eq theorem — The mean of the AIPW estimator equals the single-observation population mean of the score (mean of an i.i.d. average), for n > 0.
    C :
    Type u_1
    C → ℝ
    Bool → C → ℝ
    shared
    hv :
    mhat :
    C → ℝ
    ghat :
    Bool → C → ℝ
    n :
    hn :
    0 < n
    ∫ sample, estAIPW mhat ghat n sample ∂(productLaw hv n)
    = ∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z
    Proof (Lean source)
    theorem aipw_mean_eq {m : C → ℝ} {g : Bool → C → ℝ} (hv : ValidDGP m g) (mhat : C → ℝ) (ghat : Bool → C → ℝ) {n : ℕ} (hn : 0 < n) : ∫ sample, estAIPW mhat ghat n sample ∂(productLaw hv n) = ∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z := by have hne : (n : ℝ) ≠ 0 := Nat.cast_ne_zero.mpr hn.ne' have hper : ∀ i : Fin n, ∫ sample, aipwScoreFin mhat ghat (sample i) ∂(productLaw hv n) = ∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z := by intro i have hmap : (productLaw hv n).map (fun s : Fin n → Obs C => s i) = obsLaw hv := by rw [productLaw]; exact (measurePreserving_eval (fun _ : Fin n => obsLaw hv) i).map_eq rw [← aipw_pop_mean hv mhat ghat, ← integral_map (φ := fun s : Fin n → Obs C => s i) (measurable_pi_apply i).aemeasurable (measurable_of_finite _).aestronglyMeasurable, hmap] unfold estAIPW rw [integral_const_mul, integral_finset_sum _ (fun i _ => Integrable.of_finite)] simp_rw [hper] rw [Finset.sum_const, Finset.card_univ, Fintype.card_fin, nsmul_eq_mul, ← mul_assoc, inv_mul_cancel₀ hne, one_mul]
    Causalean.Estimation.MinimaxATE.aipw_mean_eq · Causalean/Estimation/MinimaxATE/Optimality.lean:51
  • aipw_nMiss_le theorem — Per-DGP Chebyshev miss bound. If the plug-in bias is ≤ b and the variance is ≤ V, then for any separation s > b the miss probability is ≤ V / (s − b)².
    C :
    Type u_1
    C → ℝ
    Bool → C → ℝ
    shared
    hv :
    mhat :
    C → ℝ
    ghat :
    Bool → C → ℝ
    n :
    hn :
    0 < n
    b V s :
    hbias :
    |(∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z) - ate g| ≤ b
    hvar :
    variance (estAIPW mhat ghat n) (productLaw hv n) ≤ V
    hsb :
    b < s
    nMiss hv n (estAIPW mhat ghat n) s ≤ V / (s - b) ^ 2
    Proof (Lean source)
    theorem aipw_nMiss_le {m : C → ℝ} {g : Bool → C → ℝ} (hv : ValidDGP m g) (mhat : C → ℝ) (ghat : Bool → C → ℝ) {n : ℕ} (hn : 0 < n) {b V s : ℝ} (hbias : |(∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z) - ate g| ≤ b) (hvar : variance (estAIPW mhat ghat n) (productLaw hv n) ≤ V) (hsb : b < s) : nMiss hv n (estAIPW mhat ghat n) s ≤ V / (s - b) ^ 2 := by have hsub0 : 0 < s - b := by linarith set μ' := productLaw hv n with hμ' set X := estAIPW mhat ghat n with hX have hmem : MemLp X 2 μ' := ⟨(measurable_of_finite _).aestronglyMeasurable, eLpNorm_lt_top_of_finite⟩ have hmean : ∫ a, X a ∂μ' = ∑ z : Obs C, obsReal m g z * aipwScoreFin mhat ghat z := aipw_mean_eq hv mhat ghat hn have hEbias : |(∫ a, X a ∂μ') - ate g| ≤ b := by rw [hmean]; exact hbias have hsubset : {sample | s ≤ |X sample - ate g|} ⊆ {sample | s - b ≤ |X sample - ∫ a, X a ∂μ'|} := by intro sample hsample simp only [Set.mem_setOf_eq] at hsample ⊢ have htri : |X sample - ate g| ≤ |X sample - ∫ a, X a ∂μ'| + |(∫ a, X a ∂μ') - ate g| := abs_sub_le _ _ _ linarith have hvar0 : 0 ≤ variance X μ' := variance_nonneg _ _ calc nMiss hv n X s = μ'.real {sample | s ≤ |X sample - ate g|} := rfl _ ≤ μ'.real {sample | s - b ≤ |X sample - ∫ a, X a ∂μ'|} := measureReal_mono hsubset (measure_ne_top _ _) _ ≤ variance X μ' / (s - b) ^ 2 := by rw [Measure.real] refine (ENNReal.toReal_mono ENNReal.ofReal_ne_top (meas_ge_le_variance_div_sq hmem hsub0)).trans ?_ rw [ENNReal.toReal_ofReal (by positivity)] _ ≤ V / (s - b) ^ 2 := by gcongr
    Causalean.Estimation.MinimaxATE.aipw_nMiss_le · Causalean/Estimation/MinimaxATE/Optimality.lean:73