Experimentation.ExposureMappingInterference.Asymptotics
Asymptotics for exposure-mapping interference: HT consistency, local-dependence CLTs, variance-estimator consistency, and Wald coverage.
Consistency 4 core · 1 supporting Along a sequence of nested finite-population experiments, the HT exposure-mean estimator converges in probability to its estimand under versions of the two assumptions used for Aronow–Samii (2017), Proposition 6.1: * Con ★ Experiment★ htMean_consistent_of_bounded_dependency
Horvitz–Thompson exposure-mean consistency
Along a sequence of nested finite-population experiments, the HT exposure-mean estimator converges in probability to its estimand under versions of the two assumptions used for Aronow–Samii (2017), Proposition 6.1:
* Condition 3 (boundedness): outcomes and inverse exposure probabilities are bounded,
so each weighted summand y_i(d)/π_i(d) is bounded by a constant c.
* Condition 4 (pairwise dependence): ∑_{i,j} g_{ij} = o(N²), where g_{ij}=0
whenever the exposure indicators of i and j are uncorrelated.
The proof is the lightweight-layer Chebyshev inequality applied to the O((N+∑g)/N²)
variance bound; no central limit theorem is needed. The theorem is the one-exposure component
used to obtain the paper's effect-estimator conclusion, rather than Proposition 6.1 itself.
A design-based experiment on a finite population: a finite assignment space Ω equipped with a randomization design D over it, a finite population of units ι each assigned a trait in a trait space Θ, exposure-indexed potential outcomes y, one real value per unit and exposure in an exposure space Δ, and an exposure mapping f sending each assignment and unit trait to a realized exposure.
Definition (Lean source)
Given an experiment, an exposure level, and two units, the pairwise dependency indicator equals zero when their indicators for that exposure have zero design covariance, and equals one otherwise.
Definition (Lean source)
Given an experiment, the population size is the number of units in its finite population.
Definition (Lean source)
One-exposure consistency ingredient for Aronow--Samii (2017), Proposition 6.1. Along a sequence of experiments and exposures of interest, suppose every exposure probability is nonzero, weighted outcomes are uniformly bounded by nonnegative c, population size tends to infinity, and the normalized dependency sum tends to zero. Then, for every positive threshold, the Horvitz--Thompson exposure mean converges in probability.
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
Var_htMean_letheorem — Variance bound. Under a uniform bound c on |y_i(d)/π_i(d)|, the variance of the HT mean estimator is O((N + ∑_{i,j} g_{ij})/N²).hypothesesconclusionE.D.Var (htMean E.D E.y E.f E.θ d)≤ c ^ 2 * ((E.N : ℝ) + ∑ i, ∑ j ∈ Finset.univ.erase i, E.gdep d i j) / (E.N : ℝ) ^ 2Proof (Lean source)
theorem Var_htMean_le (d : E.Δ) {c : ℝ} (hc : 0 ≤ c) (hbound : ∀ i, |E.y i d / prop E.D E.f E.θ i d| ≤ c) : E.D.Var (htMean E.D E.y E.f E.θ d) ≤ c ^ 2 * ((E.N : ℝ) + ∑ i, ∑ j ∈ Finset.univ.erase i, E.gdep d i j) / (E.N : ℝ) ^ 2 := by classical -- Abbreviations. set w : E.ι → ℝ := fun i => E.y i d / prop E.D E.f E.θ i d with hw set Cov : E.ι → E.ι → ℝ := fun i j => E.D.Cov (expoInd E.f E.θ i d) (expoInd E.f E.θ j d) with hCov -- Covariance bound: `|Cov i j| ≤ 1` for all `i, j`. have hCovBound : ∀ i j, |Cov i j| ≤ 1 := by intro i j exact abs_Cov_le_one_of_mem_unit E.D _ _ (fun z => FiniteDesign.ind_nonneg _ z) (fun z => FiniteDesign.ind_le_one _ z) (fun z => FiniteDesign.ind_nonneg _ z) (fun z => FiniteDesign.ind_le_one _ z) -- Termwise bound: `|w i * w j * Cov i j| ≤ c ^ 2`. have hTerm : ∀ i j, |w i * w j * Cov i j| ≤ c ^ 2 := by intro i j rw [abs_mul, abs_mul] have h1 : |w i| * |w j| ≤ c * c := mul_le_mul (hbound i) (hbound j) (abs_nonneg _) hc calc |w i| * |w j| * |Cov i j| ≤ (c * c) * 1 := mul_le_mul h1 (hCovBound i j) (abs_nonneg _) (by positivity) _ = c ^ 2 := by ring -- Off-diagonal termwise bound: `w i * w j * Cov i j ≤ c ^ 2 * gdep d i j`. have hOff : ∀ i, ∀ j ∈ Finset.univ.erase i, w i * w j * Cov i j ≤ c ^ 2 * E.gdep d i j := by intro i j _ unfold Experiment.gdep by_cases hz : E.D.Cov (expoInd E.f E.θ i d) (expoInd E.f E.θ j d) = 0 · rw [if_pos hz, mul_zero] have : Cov i j = 0 := hz rw [this, mul_zero] · rw [if_neg hz, mul_one] exact le_trans (le_abs_self _) (hTerm i j) -- Diagonal termwise bound: `w i * w i * Cov i i ≤ c ^ 2`. have hDiag : ∀ i, w i * w i * Cov i i ≤ c ^ 2 := fun i => le_trans (le_abs_self _) (hTerm i i) -- Bound `Var (htTotal) ≤ c ^ 2 * (N + S)`. set S : ℝ := ∑ i, ∑ j ∈ Finset.univ.erase i, E.gdep d i j with hS have hTotal : E.D.Var (htTotal E.D E.y E.f E.θ d) ≤ c ^ 2 * ((E.N : ℝ) + S) := by rw [Var_htTotal_cov] -- Split each inner sum into the diagonal `j = i` plus the `erase i` remainder. have hsplit : (∑ i, ∑ j, w i * w j * Cov i j) = (∑ i, w i * w i * Cov i i) + ∑ i, ∑ j ∈ Finset.univ.erase i, w i * w j * Cov i j := by rw [← Finset.sum_add_distrib] refine Finset.sum_congr rfl (fun i _ => ?_) rw [← Finset.add_sum_erase univ (fun j => w i * w j * Cov i j) (Finset.mem_univ i)] rw [hsplit] have hDiagSum : (∑ i, w i * w i * Cov i i) ≤ c ^ 2 * (E.N : ℝ) := by calc (∑ i, w i * w i * Cov i i) ≤ ∑ _i : E.ι, c ^ 2 := Finset.sum_le_sum (fun i _ => hDiag i) _ = c ^ 2 * (E.N : ℝ) := by rw [Finset.sum_const, nsmul_eq_mul, Experiment.N, Finset.card_univ, mul_comm] have hOffSum : (∑ i, ∑ j ∈ Finset.univ.erase i, w i * w j * Cov i j) ≤ c ^ 2 * S := by rw [hS, Finset.mul_sum] refine Finset.sum_le_sum (fun i _ => ?_) rw [Finset.mul_sum] exact Finset.sum_le_sum (fun j hj => hOff i j hj) rw [mul_add] exact add_le_add hDiagSum hOffSum -- Reduce the HT mean variance to the HT total variance. have hmean : htMean E.D E.y E.f E.θ d = fun z => (Fintype.card E.ι : ℝ)⁻¹ * htTotal E.D E.y E.f E.θ d z := by funext z; rw [htMean, div_eq_inv_mul] rw [hmean, FiniteDesign.Var_const_mul] -- Now: `(card)⁻¹ ^ 2 * Var(htTotal) ≤ c ^ 2 * (N + S) / N ^ 2`. have hNdef : (E.N : ℝ) = (Fintype.card E.ι : ℝ) := by rw [Experiment.N] rw [hNdef] by_cases hN0 : (Fintype.card E.ι : ℝ) = 0 · rw [hN0]; simp · have hpos2 : (0 : ℝ) ≤ ((Fintype.card E.ι : ℝ)⁻¹) ^ 2 := by positivity have hVarNonneg := mul_le_mul_of_nonneg_left hTotal hpos2 refine le_trans hVarNonneg ?_ rw [hNdef] at hTotal ⊢ -- `(card)⁻² * (c²(N+S)) = c²(N+S)/N²`. rw [div_eq_mul_inv, inv_pow] ring_nf rfl
SteinCLT 2 core · 0 supporting Asymptotic normality of the Horvitz–Thompson effect estimator under interference rests on a central limit theorem for locally dependent random fields, proved via Stein's method (Chen & Shao 2004, Thm 2.7). ★ LocalDependenceCLT
Local-dependence CLT interface (Aronow-Samii 2017, via Chen-Shao 2004)
Asymptotic normality of the Horvitz–Thompson effect estimator under interference rests on a
central limit theorem for locally dependent random fields, proved via Stein's method
(Chen & Shao 2004, Thm 2.7). The LocalDependenceCLT structure packages the exact convergence
statement consumed by the interval theorem, while SteinInstance.lean connects this interface to
the dependency-graph Stein CLT developed elsewhere in the library.
Given an experiment, two target exposure levels, and a realized assignment, the studentized Horvitz--Thompson effect statistic is the estimated effect minus the corresponding finite-population effect, divided by the true standard deviation of the estimator under the randomization design.
Definition (Lean source)
Chen-Shao local-dependence CLT interface, bounded-neighborhood case. Along a sequence of experiments Exp with a chosen pair of exposure levels dk, dl at each sample size, this records that the design probability that the studentized Horvitz–Thompson effect statistic falls below any fixed threshold converges, as the sample size grows, to the standard normal CDF at that threshold.
Definition (Lean source)
Convergence in distribution of the studentized statistic to 𝒩(0,1), via the CDF.
SteinInstance 5 core · 4 supporting This file bridges the finite-design Horvitz-Thompson effect statistic to the measure-theoretic dependency-graph Stein CLT. ★ localDependenceCLT_of_stein★ wald_coverage_of_conditions★ localDependenceCLT_of_bounded_degree_scaled_variance
Discharging LocalDependenceCLT via the abstract Stein CLT
This file bridges the finite-design Horvitz-Thompson effect statistic to the measure-theoretic dependency-graph Stein CLT. The studentized effect statistic is written as a sum of per-unit summands
Xₙᵢ = (rawᵢ − E[rawᵢ]) / (N · σₙ), σₙ = √(Var[τ̂]),
where rawᵢ = 1(Dᵢ=dk)Yᵢ/πᵢ(dk) − 1(Dᵢ=dl)Yᵢ/πᵢ(dl) is unit i's contribution to N·τ̂.
Then ∑ᵢ Xₙᵢ = studentizedEffect, the summands are mean-zero with Var(∑Xₙᵢ)=1, and the
abstract dependency-graph CLT stein_cdf_clt yields P[studentizedEffect ≤ t] → Φ(t), i.e.
LocalDependenceCLT.
The main public results are localDependenceCLT_of_stein, which assumes the Stein negligibility
limits directly, localDependenceCLT_of_conditions, which derives those limits from a bounded
dependency graph and uniformly negligible summands, and
localDependenceCLT_of_bounded_degree_scaled_variance,
which packages bounded outcomes, positive propensities, population growth, a bounded-degree
dependency graph, and an assumed positive scaled-variance limit. These are alternative sufficient
conditions, not a derivation of Aronow–Samii's exact Conditions 3, 5, and 6. The corresponding
wald_coverage_of_* theorems compose these CLT
discharges with the oracle Wald-coverage theorem.
Given an experiment, two target exposure levels, a unit, and a realized assignment, the raw effect contribution is that unit's inverse-propensity-weighted observed outcome under the first exposure level minus its analogous weighted observed outcome under the second exposure level.
Given an experiment, two target exposure levels, a unit, and a realized assignment, the standardized effect summand is the unit's raw effect contribution minus its design expectation, divided by the population size times the true standard deviation of the Horvitz--Thompson effect estimator.
Definition (Lean source)
Local-dependence CLT from the abstract Stein conditions. For a pair of treatment sequences dk, dl and a choice of dependency neighbourhoods N n i, suppose the design variance of the Horvitz–Thompson effect estimator is everywhere positive, every unit has nonzero exposure probability under dk and under dl, and the per-unit effect summands are pointwise bounded by a nonnegative sequence B n. If each summand is independent of the sum of summands outside its neighbourhood, and the two Stein negligibility limits hold — the design variance of the neighbourhood cross-term sum tends to 0 and the summed third-moment-type error term tends to 0 — then the studentized Horvitz–Thompson effect statistic converges in distribution to a standard normal.
Formal statement
Proof (Lean source)
Oracle Wald coverage from bounded-degree primitive conditions. For a sequence of experiments and treatment contrasts, suppose the effect summands have a dependency graph with neighbourhood cardinality at most m, the effect-estimator variance is everywhere positive, both exposure propensities are nonzero, and the summands have nonnegative pointwise bounds such that the bounds tend to zero and population size times the cubed bounds tends to zero. If a nonnegative quantile has the required CDF value, then the oracle Wald interval has liminf coverage at least 1 − α.
Formal statement
Proof (Lean source)
Local-dependence CLT from bounded degree and a positive scaled-variance limit. For a sequence of experiments and treatment contrasts, suppose the effect summands have a dependency graph of degree at most m, the dk outcomes are uniformly bounded and the dl outcomes are uniformly bounded, and the dk exposure propensities and the dl exposure propensities are bounded away from 0 by a positive constant c2. If the population size diverges, the effect-estimator variance is everywhere positive, and the scaled variance converges to positive cVar, then the studentized effect statistic obeys the local-dependence CLT.
Formal statement
Proof (Lean source)
4 supporting declarations (lemmas, instances)
-
instMeasurableSpaceΩinstance — For every exposure-mapping experiment, the measurable structure on its finite assignment space is the top σ-algebra, under which every subset is measurable. -
instMeasurableSingletonΩinstance — For every exposure-mapping experiment, every singleton subset of its assignment space is measurable under the experiment's measurable structure.parametersE :instancegiven by⟨fun _ => trivial⟩ -
wald_coverage_of_steintheorem — Oracle Wald coverage from primitive Stein-discharge conditions. For a sequence of experiments and treatment contrasts, choose dependency neighbourhoods. Suppose the effect-estimator variance is everywhere positive, both exposure propensities are nonzero, and the summands have nonnegative pointwise bounds. If each summand is independent of the outside-neighbourhood sum, both Stein error terms tend to zero, and a nonnegative quantile has the required CDF value, then the oracle Wald interval has liminf coverage at least 1 − α.hypothesesExp :ℕ → Experimentdk dl :∀ n, (Exp n).ΔN :∀ nif(Exp n).ιthenFinset ((Exp n).ι)hVar :∀ n, 0 < (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))hposk :∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dk n) ≠ 0hposl :∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dl n) ≠ 0B :ℕ → ℝhB :∀ n, 0 ≤ B nhbound :∀ n i z, |(Exp n).effSummand (dk n) (dl n) i z| ≤ B nhindep :∀ n i,IndepFun ((Exp n).effSummand (dk n) (dl n) i) (fun z => ∑ j ∈ univ \ N n i, (Exp n).effSummand (dk n) (dl n) j z) (Exp n).D.toMeasureherr1 :Tendsto (fun n => (Exp n).D.Var (fun z => ∑ i, (Exp n).effSummand (dk n) (dl n) i z * ∑ j ∈ N n i, (Exp n).effSummand (dk n) (dl n) j z)) atTop (𝓝 0)herr2 :Tendsto (fun n => ∑ i, (Exp n).D.E (fun z => |(Exp n).effSummand (dk n) (dl n) i z| * (∑ j ∈ N n i, (Exp n).effSummand (dk n) (dl n) j z) ^ 2)) atTop (𝓝 0)α :ℝzq :ℝhzq0 :0 ≤ zqhzq :stdNormalCdf zq = 1 - α / 2Proof (Lean source)
theorem wald_coverage_of_stein (Exp : ℕ → Experiment) (dk dl : ∀ n, (Exp n).Δ) (N : ∀ n, (Exp n).ι → Finset ((Exp n).ι)) (hVar : ∀ n, 0 < (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) (hposk : ∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dk n) ≠ 0) (hposl : ∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dl n) ≠ 0) (B : ℕ → ℝ) (hB : ∀ n, 0 ≤ B n) (hbound : ∀ n i z, |(Exp n).effSummand (dk n) (dl n) i z| ≤ B n) (hindep : ∀ n i, IndepFun ((Exp n).effSummand (dk n) (dl n) i) (fun z => ∑ j ∈ univ \ N n i, (Exp n).effSummand (dk n) (dl n) j z) (Exp n).D.toMeasure) (herr1 : Tendsto (fun n => (Exp n).D.Var (fun z => ∑ i, (Exp n).effSummand (dk n) (dl n) i z * ∑ j ∈ N n i, (Exp n).effSummand (dk n) (dl n) j z)) atTop (𝓝 0)) (herr2 : Tendsto (fun n => ∑ i, (Exp n).D.E (fun z => |(Exp n).effSummand (dk n) (dl n) i z| * (∑ j ∈ N n i, (Exp n).effSummand (dk n) (dl n) j z) ^ 2)) atTop (𝓝 0)) {α : ℝ} (zq : ℝ) (hzq0 : 0 ≤ zq) (hzq : stdNormalCdf zq = 1 - α / 2) : 1 - α ≤ liminf (fun n => (Exp n).D.Pr (fun z => |htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n) z - tauTrue (Exp n).y (dk n) (dl n)| ≤ zq * sqrt ((Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))))) atTop := wald_coverage Exp dk dl (localDependenceCLT_of_stein Exp dk dl N hVar hposk hposl B hB hbound hindep herr1 herr2) hVar zq hzq0 hzq -
localDependenceCLT_of_conditionstheorem — Local-dependence CLT from a bounded-degree dependency graph. For a sequence of experiments and treatment contrasts, suppose the effect summands have a dependency graph with neighbourhood cardinality at most m, the effect-estimator variance is everywhere positive, both exposure propensities are nonzero, and the summands have nonnegative pointwise bounds such that the bounds tend to zero and population size times the cubed bounds tends to zero. Then the studentized effect statistic satisfies the local-dependence CLT.hypothesesExp :ℕ → Experimentdk dl :∀ n, (Exp n).ΔDg :∀ n, DepGraph (fun i => (Exp n).effSummand (dk n) (dl n) i) (Exp n).D.toMeasurem :ℕhdeg :∀ n i, ((Dg n).nbhd i).card ≤ mhVar :∀ n, 0 < (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))hposk :∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dk n) ≠ 0hposl :∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dl n) ≠ 0B :ℕ → ℝhB :∀ n, 0 ≤ B nhbound :∀ n i z, |(Exp n).effSummand (dk n) (dl n) i z| ≤ B nconclusionLocalDependenceCLT Exp dk dlProof (Lean source)
theorem localDependenceCLT_of_conditions (Exp : ℕ → Experiment) (dk dl : ∀ n, (Exp n).Δ) (Dg : ∀ n, DepGraph (fun i => (Exp n).effSummand (dk n) (dl n) i) (Exp n).D.toMeasure) (m : ℕ) (hdeg : ∀ n i, ((Dg n).nbhd i).card ≤ m) (hVar : ∀ n, 0 < (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) (hposk : ∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dk n) ≠ 0) (hposl : ∀ n i, prop (Exp n).D (Exp n).f (Exp n).θ i (dl n) ≠ 0) (B : ℕ → ℝ) (hB : ∀ n, 0 ≤ B n) (hbound : ∀ n i z, |(Exp n).effSummand (dk n) (dl n) i z| ≤ B n) (hB0 : Tendsto B atTop (𝓝 0)) (hNB3 : Tendsto (fun n => (card (Exp n).ι : ℝ) * (B n) ^ 3) atTop (𝓝 0)) : LocalDependenceCLT Exp dk dl := by classical -- Abbreviations matching `stein_cdf_clt_of_depGraph`. set μ : ∀ n, Measure (Exp n).Ω := fun n => (Exp n).D.toMeasure with hμ set X : ∀ n, (Exp n).ι → (Exp n).Ω → ℝ := fun n i => (Exp n).effSummand (dk n) (dl n) i with hX -- Each summand is measurable (the assignment space carries the top σ-algebra). have hmeas : ∀ n i, Measurable (X n i) := fun n i => measurable_from_top -- Mean-zero: `∫ Xₙᵢ ∂μₙ = D.E (effSummand) = 0`. have hmean : ∀ n i, ∫ z, X n i z ∂(μ n) = 0 := by intro n i rw [hμ, hX, FiniteDesign.integral_toMeasure, Experiment.E_effSummand] -- `depSum (Xₙ) = studentizedEffect`. have hdep : ∀ n, depSum (X n) = (Exp n).studentizedEffect (dk n) (dl n) := fun n => Experiment.depSum_effSummand _ _ _ (hposk n) (hposl n) -- Unit total variance: `∫ (depSum Xₙ)² ∂μₙ = 1`. have hvar : ∀ n, ∫ z, (depSum (X n) z) ^ 2 ∂(μ n) = 1 := by intro n rw [hdep n, hμ, FiniteDesign.integral_toMeasure, Experiment.E_studentizedEffect_sq _ _ _ (hVar n) (hposk n) (hposl n)] -- Assemble the dependency-graph Stein CLT (negligibility derived internally), at each threshold. refine ⟨fun t => ?_⟩ have hclt := stein_cdf_clt_of_depGraph μ X Dg m hdeg B hB hbound hB0 hNB3 hmean hvar t -- Rewrite the limit point: `Φ(t) = (gaussianReal 0 1).real (Iic t)` by definition. rw [show stdNormalCdf t = (gaussianReal 0 1).real (Iic t) from rfl] -- Match the prelimit sequences pointwise. refine hclt.congr (fun n => ?_) -- `D.Pr {studentized ≤ t} = (μₙ.map (depSum Xₙ)).real (Iic t)`. have hWmeas : Measurable (depSum (X n)) := by rw [hdep n]; exact measurable_from_top have hset : {z | (Exp n).studentizedEffect (dk n) (dl n) z ≤ t} = (depSum (X n)) ⁻¹' Iic t := by rw [hdep n]; rfl rw [hμ] at * rw [← FiniteDesign.toMeasure_real_setOf, hset, MeasureTheory.map_measureReal_apply hWmeas measurableSet_Iic]
VarEstQuadBound 9 core · 3 supporting The feasible Wald-coverage theorem reduces, via relVar_of_NsqVar_tendsto, to Var[N·V̂] → 0. ★ var_htEdgeStat_le
Finite-grid variance bound for the conservative variance estimator
The feasible Wald-coverage theorem reduces, via relVar_of_NsqVar_tendsto, to Var[N·V̂] → 0.
This file establishes the per-population core of that limit, the appendix quadruple-sum bound
Var[ V̂_raw ] ≤ 8·M²·m³·N, V̂_raw = ŷVar(dk) + ŷVar(dl) − 2·Ĉov,
where V̂ = N⁻²·V̂_raw (so Var[N·V̂] = N⁻²·Var[V̂_raw] ≤ 8M²m³/N). The estimator V̂_raw is
rewritten as a single edge-sum ∑_{i,j} vb i j over ordered pairs (diagonal i=j folds in
the three single-index sums; off-diagonal folds the three pairwise sums), and the abstract
var_edge_sum_le is applied with:
* boundedness |vb i j z| ≤ M from the bounded outcomes and inverse propensities in
Aronow–Samii's Condition 3, plus an explicit additional joint-overlap bound
1/π_{ij} ≤ c₃ on all ordered pairs;
* off-edge vanishing vb i j = 0 for non-adjacent i ≠ j, since then the exposures are
independent and the centered-cross factors π_{ij} − π_iπ_j = Cov[1ᵢ,1ⱼ] vanish;
* edge-covariance vanishing Cov[vb i j, vb k l] = 0 for graph-unlinked edge pairs.
The last two assumptions are explicit factorization and covariance conditions for this finite-grid argument. Together with bounded degree, they are an alternative sufficient-condition route toward the variance consistency used in the paper's Proposition 6.2, not a formalization of its exact Conditions 3, 5, and 6.
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, an exposure level, a unit, and an assignment, the diagonal variance summand is the observed exposure indicator times one minus that unit's exposure probability times the square of its inverse-propensity-weighted observed outcome.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, an exposure level, two units, and an assignment, the off-diagonal variance summand is the product of their observed exposure indicators, their centered joint-exposure probability divided by their joint-exposure probability, and their two inverse-propensity-weighted observed outcomes.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, two exposure levels, two units, and an assignment, the off-diagonal covariance summand is the product of the corresponding two exposure indicators, their centered cross-exposure probability divided by their cross-exposure probability, and their two inverse-propensity-weighted observed outcomes.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, two exposure levels, a unit, and an assignment, the diagonal covariance correction summand is one half of the inverse-propensity-weighted squared observed outcome for each target exposure, added together.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, two exposure levels, a unit, and an assignment, the diagonal edge term is the sum of the two diagonal variance summands plus twice the diagonal covariance correction.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, two exposure levels, two units, and an assignment, the off-diagonal edge term is the sum of the two off-diagonal variance summands minus twice the off-diagonal covariance summand.
Definition (Lean source)
For a finite assignment space, a finite unit population, a unit-trait space, an exposure space, a randomization design, exposure-indexed potential outcomes, an exposure mapping, unit traits, two exposure levels, two units, and an assignment, the edge function for the unscaled effect-variance estimator equals the diagonal edge term when the two units coincide and the off-diagonal edge term otherwise.
Definition (Lean source)
For three real constants, the edge-function bound is .
Definition (Lean source)
Finite-grid per-population quadruple-sum bound. For a finite design, potential outcomes, exposure mapping, and unit traits, suppose the two treatment arms are distinct and outcomes are uniformly bounded by a nonnegative constant c₁. Suppose the marginal exposure propensities under each arm are positive with inverses uniformly bounded by a nonnegative constant c₂, and the same-arm and cross-arm joint exposure propensities have inverses uniformly bounded by a nonnegative constant c₃. Suppose further a symmetric, reflexive dependency relation G of degree at most m makes every non-adjacent pair's joint exposure propensities factor as if independent and ensures graph-unlinked kernel terms have zero covariance. Then the raw estimator variance is at most 8·(vbBound c₁ c₂ c₃)²·m³·N.
Formal statement
Proof (Lean source)
3 supporting declarations (lemmas, instances)
-
htVarEst_add_sub_eq_edgeSumtheorem — Edge-sum identity. V̂_raw = ∑_{i,j} vb i j: the three single-index sums of ŷVar(dk), ŷVar(dl), Ĉov fold into the diagonal i = j, and the three pairwise sums into the off-diagonal i ≠ j.hypothesesΩ :sharedType u_1ι :sharedType u_2Θ :sharedType u_3Δ :sharedType u_4D :y :ι → Δ → ℝf :Ω → Θ → Δθ :ι → Θdk dl :ΔProof (Lean source)
theorem htVarEst_add_sub_eq_edgeSum (D : FiniteDesign Ω) (y : ι → Δ → ℝ) (f : Ω → Θ → Δ) (θ : ι → Θ) (dk dl : Δ) : (fun z => htVarEst D y f θ dk z + htVarEst D y f θ dl z - 2 * htCovEst D y f θ dk dl z) = (fun z => ∑ i, ∑ j, vb D y f θ dk dl i j z) := by funext z -- Split each inner edge-sum into the diagonal term (`i = j`) plus the off-diagonal remainder. have hRHS : (∑ i, ∑ j, vb D y f θ dk dl i j z) = (∑ i, vbDiag D y f θ dk dl i z) + (∑ i, ∑ j ∈ Finset.univ.erase i, vbOff D y f θ dk dl i j z) := by rw [← Finset.sum_add_distrib] refine Finset.sum_congr rfl (fun i _ => ?_) rw [← Finset.add_sum_erase univ (fun j => vb D y f θ dk dl i j z) (mem_univ i)] congr 1 · rw [vb, if_pos rfl] · refine Finset.sum_congr rfl (fun j hj => ?_) rw [vb, if_neg ((Finset.mem_erase.mp hj).1).symm] rw [hRHS] unfold htVarEst htCovEst vbDiag vbOff diagVar offVar offCov diagCov simp only [Finset.sum_add_distrib, Finset.sum_sub_distrib, ← Finset.mul_sum] ring -
abs_vb_letheorem — Boundedness of the edge function. For a finite design, potential outcomes, exposure mapping, and unit traits, two distinct exposure levels, nonnegative bounds, bounded outcomes, positive marginal propensities, bounded marginal inverse propensities, bounded joint inverse propensities, two units, and an assignment, |vb i j z| ≤ vbBound c₁ c₂ c₃.hypothesesΩ :sharedType u_1ι :sharedType u_2Θ :sharedType u_3Δ :sharedType u_4D :y :ι → Δ → ℝf :Ω → Θ → Δθ :ι → Θdk dl :Δ_hne :dk ≠ dlc₁ c₂ c₃ :ℝ_hc₁ :0 ≤ c₁hc₂ :0 ≤ c₂hc₃ :0 ≤ c₃hy :∀ i d, |y i d| ≤ c₁hπk :∀ i, 0 < prop D f θ i dkhπl :∀ i, 0 < prop D f θ i dlhπinvk :∀ i, 1 / prop D f θ i dk ≤ c₂hπinvl :∀ i, 1 / prop D f θ i dl ≤ c₂hjk :∀ i j, 1 / propPairSame D f θ i j dk ≤ c₃hjl :∀ i j, 1 / propPairSame D f θ i j dl ≤ c₃hjc :∀ i j, 1 / propPairCross D f θ i j dk dl ≤ c₃i j :ιz :ΩProof (Lean source)
theorem abs_vb_le (D : FiniteDesign Ω) (y : ι → Δ → ℝ) (f : Ω → Θ → Δ) (θ : ι → Θ) (dk dl : Δ) (_hne : dk ≠ dl) {c₁ c₂ c₃ : ℝ} (_hc₁ : 0 ≤ c₁) (hc₂ : 0 ≤ c₂) (hc₃ : 0 ≤ c₃) (hy : ∀ i d, |y i d| ≤ c₁) (hπk : ∀ i, 0 < prop D f θ i dk) (hπl : ∀ i, 0 < prop D f θ i dl) (hπinvk : ∀ i, 1 / prop D f θ i dk ≤ c₂) (hπinvl : ∀ i, 1 / prop D f θ i dl ≤ c₂) (hjk : ∀ i j, 1 / propPairSame D f θ i j dk ≤ c₃) (hjl : ∀ i j, 1 / propPairSame D f θ i j dl ≤ c₃) (hjc : ∀ i j, 1 / propPairCross D f θ i j dk dl ≤ c₃) (i j : ι) (z : Ω) : |vb D y f θ dk dl i j z| ≤ vbBound c₁ c₂ c₃ := by -- Marginal propensities are at most `1` (used to bound `1 - π` and `πᵢ·πⱼ`). have hπk1 : ∀ a, prop D f θ a dk ≤ 1 := fun a => (prop_mem_unit D f θ a dk).2 have hπl1 : ∀ a, prop D f θ a dl ≤ 1 := fun a => (prop_mem_unit D f θ a dl).2 unfold vb split_ifs with hij · -- Diagonal case `i = j`. unfold vbDiag have hbk := abs_diagVar_le D y f θ dk i z hy (hπk i) (hπk1 i) (hπinvk i) have hbl := abs_diagVar_le D y f θ dl i z hy (hπl i) (hπl1 i) (hπinvl i) have hbc := abs_diagCov_le D y f θ dk dl i z hy (hπk i) (hπl i) (hπinvk i) (hπinvl i) have htri : |diagVar D y f θ dk i z + diagVar D y f θ dl i z + 2 * diagCov D y f θ dk dl i z| ≤ |diagVar D y f θ dk i z| + |diagVar D y f θ dl i z| + 2 * |diagCov D y f θ dk dl i z| := by refine le_trans (abs_add_le _ _) ?_ gcongr · exact abs_add_le _ _ · rw [abs_mul]; simp refine le_trans htri ?_ -- `c₁²c₂² + c₁²c₂² + 2·(2c₁²c₂) = 2c₁²c₂² + 4c₁²c₂ ≤ vbBound`. have hsum : |diagVar D y f θ dk i z| + |diagVar D y f θ dl i z| + 2 * |diagCov D y f θ dk dl i z| ≤ c₁ ^ 2 * c₂ ^ 2 + c₁ ^ 2 * c₂ ^ 2 + 2 * (2 * c₁ ^ 2 * c₂) := by gcongr refine le_trans hsum ?_ unfold vbBound nlinarith [sq_nonneg c₁, hc₂, hc₃, mul_nonneg (sq_nonneg c₁) hc₂, mul_nonneg (mul_nonneg (sq_nonneg c₁) hc₂) hc₃, mul_nonneg (mul_nonneg (sq_nonneg c₁) hc₂) hc₂, mul_nonneg (mul_nonneg (mul_nonneg (sq_nonneg c₁) hc₂) hc₂) hc₃] · -- Off-diagonal case `i ≠ j`. unfold vbOff have hvk := abs_offVar_le D y f θ dk i j z hc₃ hy (hπk i) (hπk j) (hπk1 i) (hπk1 j) (hπinvk i) (hπinvk j) (hjk i j) have hvl := abs_offVar_le D y f θ dl i j z hc₃ hy (hπl i) (hπl j) (hπl1 i) (hπl1 j) (hπinvl i) (hπinvl j) (hjl i j) have hcv := abs_offCov_le D y f θ dk dl i j z hc₃ hy (hπk i) (hπl j) (hπk1 i) (hπl1 j) (hπinvk i) (hπinvl j) (hjc i j) have htri : |offVar D y f θ dk i j z + offVar D y f θ dl i j z - 2 * offCov D y f θ dk dl i j z| ≤ |offVar D y f θ dk i j z| + |offVar D y f θ dl i j z| + 2 * |offCov D y f θ dk dl i j z| := by refine le_trans (abs_sub _ _) ?_ gcongr · exact abs_add_le _ _ · rw [abs_mul]; simp refine le_trans htri ?_ have hsum : |offVar D y f θ dk i j z| + |offVar D y f θ dl i j z| + 2 * |offCov D y f θ dk dl i j z| ≤ (1 + c₃) * c₁ ^ 2 * c₂ ^ 2 + (1 + c₃) * c₁ ^ 2 * c₂ ^ 2 + 2 * ((1 + c₃) * c₁ ^ 2 * c₂ ^ 2) := by gcongr refine le_trans hsum ?_ unfold vbBound nlinarith [sq_nonneg c₁, hc₂, hc₃, mul_nonneg (sq_nonneg c₁) hc₂, mul_nonneg (mul_nonneg (sq_nonneg c₁) hc₂) hc₃, mul_nonneg (mul_nonneg (sq_nonneg c₁) (sq_nonneg c₂)) (by linarith : (0:ℝ) ≤ 1 + c₃)] -
vb_eq_zero_of_indeptheorem — Off-edge vanishing. If the same-exposure and cross-exposure pair propensities factor as products for an off-diagonal pair i ≠ j, then the centered-cross factors vanish and vb i j = 0; the theorem assumes these factorization hypotheses directly.hypothesesΩ :sharedType u_1ι :sharedType u_2Θ :sharedType u_3Δ :sharedType u_4D :y :ι → Δ → ℝf :Ω → Θ → Δθ :ι → Θdk dl :Δi j :ιhij :i ≠ jhsame_k :hsame_l :hcross :conclusionvb D y f θ dk dl i j = fun _ => 0Proof (Lean source)
theorem vb_eq_zero_of_indep (D : FiniteDesign Ω) (y : ι → Δ → ℝ) (f : Ω → Θ → Δ) (θ : ι → Θ) (dk dl : Δ) (i j : ι) (hij : i ≠ j) (hsame_k : propPairSame D f θ i j dk = prop D f θ i dk * prop D f θ j dk) (hsame_l : propPairSame D f θ i j dl = prop D f θ i dl * prop D f θ j dl) (hcross : propPairCross D f θ i j dk dl = prop D f θ i dk * prop D f θ j dl) : vb D y f θ dk dl i j = fun _ => 0 := by funext z rw [vb, if_neg hij, vbOff, offVar, offVar, offCov, hsame_k, hsame_l, hcross] ring
Intervals 2 core · 0 supporting Given the local-dependence CLT interface and rowwise positive variances, this module transfers asymptotic normality into oracle Wald coverage. ★ wald_coverage★ wald_coverage_feasible
Wald-coverage transfer lemmas
Given the local-dependence CLT interface and rowwise positive variances, this module transfers
asymptotic normality into oracle Wald coverage. It also gives the corresponding feasible transfer
when variance-estimator undershoot probabilities vanish. These lemmas assume the main analytic
inputs; they do not by themselves formalize Aronow–Samii (2017), Proposition 6.2 or its
Conditions 3, 5, and 6. An alternative finite-grid sufficient-condition result, based on explicit
bounded-degree, factorization, covariance-vanishing, and scaled-variance hypotheses, is
wald_coverage_feasible_of_bounded_degree_factorization_covariance in
VarEstConsistencyConditions.lean.
The oracle theorem uses only the lower half of the CLT: the event |τ̂ − τ| ≤ z·√Var contains
{−z < W ≤ z} (with W the studentized statistic), whose probability is
Pr[W ≤ z] − Pr[W ≤ −z] → Φ(z) − Φ(−z) = 1 − α by the interface plus CDF symmetry
Φ(−z) = 1 − Φ(z). (The matching upper bound — exact convergence to 1 − α — would need
Gaussian-CDF continuity; the paper only claims "at least", so it is not pursued here.)
Oracle Wald-coverage transfer from a CLT. For a sequence of experiments and treatment contrasts, suppose the studentized statistic satisfies the local-dependence CLT and the effect-estimator variance is everywhere positive. Then for a nonnegative quantile satisfying Φ(zq) = 1 − α/2, the oracle Wald interval has liminf coverage at least 1 − α.
Formal statement
Proof (Lean source)
Feasible Wald-coverage transfer from a CLT and variance control. For a sequence of experiments and treatment contrasts, suppose the studentized statistic satisfies the local-dependence CLT, the effect-estimator variance is everywhere positive, and variance-estimator undershoot probabilities vanish. Then for a nonnegative quantile satisfying Φ(zq) = 1 − α/2, the feasible Wald interval has liminf coverage at least 1 − α.
Formal statement
Proof (Lean source)
VarEstConsistencyConditions 2 core · 0 supporting Assembles the per-population quadruple-sum bound (var_htEdgeStat_le) into the asymptotic limit N²·Var[V̂_n] → 0 along a sequence of growing experiments, under uniform boundedness, single-propensity overlap, inverse joint ★ var_NsqVhat_tendsto_zero_of_conditions★ wald_coverage_feasible_of_bounded_degree_factorization_covariance
Variance-estimator consistency from boundedness and dependency-graph conditions
Assembles the per-population quadruple-sum bound (var_htEdgeStat_le) into the asymptotic limit
N²·Var[V̂_n] → 0 along a sequence of growing experiments, under uniform boundedness,
single-propensity overlap, inverse joint-propensity bounds, and dependency-graph covariance
conditions. Combined with the Stein dependency-graph CLT discharge, the Chebyshev reduction
(relVar_of_NsqVar_tendsto), and the feasible-coverage capstone
(wald_coverage_feasible_of_relVar), this proves feasible Wald coverage from primitive
boundedness, overlap, dependency-graph, and variance-growth conditions.
N²·Var[V̂_n] = N⁻²·Var[V̂_raw,n] ≤ N⁻²·(8·M²·m³·N) = 8·M²·m³/N → 0 as N → ∞.
Finite-grid scaled variance-estimator variance vanishes. Along a sequence of experiments with distinct treatment arms whose outcomes are uniformly bounded by c₁, suppose the marginal exposure propensities are positive with inverse propensities bounded by c₂, and joint inverse propensities bounded by c₃. Suppose further a symmetric, reflexive dependency relation of degree at most m such that off-edge joint propensities factor, graph-unlinked kernel terms have zero covariance, and the population size diverges. Then N²·Var[V̂_n] tends to zero.
Formal statement
Proof (Lean source)
Feasible Wald coverage from bounded-degree, factorization, and covariance conditions. Along a sequence of experiments with distinct treatment arms whose outcomes are uniformly bounded by c₁, suppose the marginal exposure propensities under dk and dl are positive with inverse propensities bounded by c₂ — taken strictly positive — and the joint-propensity inverses are bounded by a nonnegative c₃, with all off-diagonal joint propensities strictly positive. Suppose a symmetric, reflexive dependency relation G of degree at most m makes off-edge joint propensities factor and gives graph-unlinked kernel pairs zero covariance; suppose also the per-unit effect summands have a Stein dependency graph Dg of degree at most m, that the population size diverges while the scaled true variance tends to positive cVar and that variance is everywhere positive, and that zq is a nonnegative quantile satisfying Φ(zq) = 1 − α/2. Then the feasible Wald interval has liminf coverage at least 1 − α.
Formal statement
Proof (Lean source)
VarianceConsistency 2 core · 1 supporting The feasible Wald interval in Aronow–Samii (2017), Proposition 6.2, uses the *estimated* variance Vh (htEffectVarEst). ★ htEffectVarEst_undershoot_tendsto_zero★ wald_coverage_feasible_of_relVar
Consistency of the conservative variance estimator
The feasible Wald interval in Aronow–Samii (2017), Proposition 6.2, uses the estimated variance
Vh (htEffectVarEst). Its asymptotic coverage (wald_coverage_feasible) consumes a single
analytic input: the conservative estimate undershoots the true variance only with vanishing
probability,
∀ ε > 0, Pr[ Vh < (1−ε)·Var[τ̂] ] → 0.
This file reduces that input to one clean L²-relative-consistency limit
Var[Vh] / Var[τ̂]² → 0
via the finite Chebyshev inequality and the already-proven conservativeness
Var[τ̂] ≤ E[Vh] (E_htEffectVarEst_ge, a positive-joint-probability specialization of
Proposition 5.6):
{ Vh < (1−ε)·Var } ⊆ { ε·Var ≤ |Vh − E Vh| } (using E Vh ≥ Var),
Pr[ ε·Var ≤ |Vh − E Vh| ] ≤ Var[Vh]/(ε·Var)² = (1/ε²)·(Var[Vh]/Var²),
and the right side tends to 0. The hypothesis Var[Vh]/Var² → 0 is the precise isolated
remaining input. Under the separately assumed scaled-variance limit N·Var → c > 0, this
relative limit follows from Var[N·Vh] → 0. The bounded-degree, factorization, and
covariance-vanishing hypotheses used elsewhere in this development are alternative sufficient
conditions, not a restatement of the paper's Conditions 3, 5, and 6.
Reduction of feasible-interval variance consistency to L²-relative consistency. For a sequence of experiments and treatment contrasts, suppose the two arms are distinct, every unit has nonzero dk exposure propensity, every unit has nonzero dl exposure propensity, same-arm joint propensities are nonzero, and cross-arm joint propensities are nonzero. If the true effect-estimator variance is everywhere positive and the L²-relative-consistency limit holds, then the variance-estimator undershoot probability vanishes for every positive threshold.
Formal statement
Proof (Lean source)
Feasible Wald coverage from L²-relative variance consistency. For a sequence of experiments and treatment contrasts with distinct arms in every experiment, suppose the studentized effect statistic satisfies the local-dependence CLT, all marginal propensities are nonzero, and all off-diagonal joint propensities are nonzero. If the true effect-estimator variance is everywhere positive and the L²-relative-consistency limit holds, then for a nonnegative quantile satisfying Φ(zq) = 1 − α/2, the feasible Wald interval has liminf coverage at least 1 − α.
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
relVar_of_NsqVar_tendstotheorem — Bridge from scaled variance-estimator control to L²-relative consistency. For a sequence of experiments and exposure contrasts, if the limiting scaled true variance is a positive constant, the scaled true variances converge to that constant, and the scaled variance-estimator variances converge to zero, then the relative limit Var[V̂_n]/Var[τ̂_n]² → 0.hypothesesExp :ℕ → Experimentdk dl :∀ n, (Exp n).Δc :ℝhc :0 < chScaledVar :hVN :Tendsto (fun n => (card (Exp n).ι : ℝ) ^ 2 * (Exp n).D.Var (htEffectVarEst (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) atTop (𝓝 0)conclusionTendsto (fun n => (Exp n).D.Var (htEffectVarEst (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n)) / ((Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) ^ 2) atTop (𝓝 0)Proof (Lean source)
theorem relVar_of_NsqVar_tendsto (Exp : ℕ → Experiment) (dk dl : ∀ n, (Exp n).Δ) {c : ℝ} (hc : 0 < c) (hScaledVar : Tendsto (fun n => (card (Exp n).ι : ℝ) * (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) atTop (𝓝 c)) (hVN : Tendsto (fun n => (card (Exp n).ι : ℝ) ^ 2 * (Exp n).D.Var (htEffectVarEst (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) atTop (𝓝 0)) : Tendsto (fun n => (Exp n).D.Var (htEffectVarEst (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n)) / ((Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n))) ^ 2) atTop (𝓝 0) := by set card : ℕ → ℝ := fun n => (card (Exp n).ι : ℝ) with hcard set Vr : ℕ → ℝ := fun n => (Exp n).D.Var (htEffect (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n)) with hVrdef set Vh : ℕ → ℝ := fun n => (Exp n).D.Var (htEffectVarEst (Exp n).D (Exp n).y (Exp n).f (Exp n).θ (dk n) (dl n)) with hVhdef -- `(N·Vr)² → c² ≠ 0`, and `N²·Vh → 0`, so the quotient tends to `0/c² = 0`. have hf : Tendsto (fun n => card n ^ 2 * Vh n / (card n * Vr n) ^ 2) atTop (𝓝 0) := by have h := hVN.div (hScaledVar.pow 2) (pow_ne_zero 2 hc.ne') rw [zero_div] at h exact h -- Eventually `N·Vr > 0`, hence `N ≠ 0` and `Vr ≠ 0`, giving the algebraic identity. have hpos : ∀ᶠ n in atTop, 0 < card n * Vr n := hScaledVar.eventually (eventually_gt_nhds hc) have hev : (fun n => card n ^ 2 * Vh n / (card n * Vr n) ^ 2) =ᶠ[atTop] (fun n => Vh n / Vr n ^ 2) := by filter_upwards [hpos] with n hn have hne : card n * Vr n ≠ 0 := hn.ne' have hcardn : card n ≠ 0 := fun h => hne (by rw [h, zero_mul]) rw [mul_pow, mul_div_mul_left _ _ (pow_ne_zero 2 hcardn)] exact hf.congr' hev