Estimation.OrthogonalMoments
Neyman-orthogonal moment functions: construction, cross-fitting, parametric examples, and automatic debiasing.
MomentFunctional 6 core · 0 supporting This file defines the moment-functional interface used by the double machine learning layer. ★ J₀_mul_J₀_inv
Abstract Moment Functionals
This file defines the moment-functional interface used by the double machine learning layer. The interface records the observed-data moment, the true nuisance and scalar target, the local perturbation set, bilinear seminorms for product-rate bounds, and the nonzero Jacobian of the population moment. Concrete double-machine-learning instances reduce to filling this interface, which centralizes the generic asymptotic-linearity machinery.
A general moment bundles a score function of a nuisance, an observation, and a scalar parameter, a truth nuisance η₀ and truth parameter θ₀, a set of admissible nuisance perturbations, and a pair of bilinear seminorms used to bound product-rate remainders, subject to: the score is jointly measurable in the observation for every nuisance and parameter value, the truth nuisance belongs to the perturbation set, and the population moment's parameter-derivative at the truth (its Jacobian) is nonzero, so that its inverse is well-defined.
The inverse Jacobian is the reciprocal of the nonzero population Jacobian.
Definition (Lean source)
Jacobian times its inverse is one. For a general orthogonal-moment system, the population Jacobian times its inverse equals one.
Formal statement
Proof (Lean source)
The moment has zero population mean at the true nuisance and target.
Definition (Lean source)
The perturbation set is closed under line segments from the true nuisance to any nuisance already in the set.
Definition (Lean source)
A linear moment is a general moment whose score is affine in the scalar target parameter.
Definition (Lean source)
DirectionalDeriv 1 core · 0 supporting This file packages the pointwise nuisance directional derivative data required by the abstract double machine learning framework.
Directional Derivatives for Abstract Moments
This file packages the pointwise nuisance directional derivative data required by the abstract double machine learning framework. The data include convergence of difference quotients along nuisance line segments and measurability of the derivative functions.
For a general moment, a candidate pointwise directional-derivative function dM of the score along the line segment from the truth to a perturbed nuisance, evaluated at each observation, together with the witnesses that for every perturbation in the admissible set and every observation, the score's difference quotient along that segment tends to dM's value there as the step size shrinks to zero, and that dM at each perturbation is measurable in the observation.
Definition (Lean source)
DMLChernozhukov 2 core · 0 supporting This file proves the abstract one-shot double machine learning theorem in the classical Chernozhukov form. ★ dml_chernozhukov_asymptoticLinear
Chernozhukov-Form Double Machine Learning
This file proves the abstract one-shot double machine learning theorem in the classical Chernozhukov form. The estimator evaluates the moment at the true target, rescales by the inverse Jacobian, and yields asymptotic linearity with the corresponding influence function.
Chernozhukov one-step DML estimator. Evaluates the score at the truth M.θ₀ and rescales by the Jacobian inverse:
Definition (Lean source)
Asymptotic linearity of the Chernozhukov DML estimator. Drops the zero-centering hypothesis hθ_zero from dml_asymptoticLinear. Given a general moment M with mean zero at the truth, assume the truth-evaluated score is square-integrable (finite variance). Given an i.i.d. sample with a one-shot fold split whose fold-B fraction converges to a strictly positive limit c > 0 along card (foldB n) / n → c, and a sequence of cross-fitted nuisance estimators η̂, suppose the population moment at η̂ is bounded by a constant times the product of the two bilinear-remainder seminorms, at every fold and sample point. Assume the technical regularity package that the moment at η̂ is jointly measurable, fold-A-measurable in ω, and, at every fold and sample point, integrable and square-integrable. Finally suppose the L² score difference between the estimated and true nuisance is o_P(1), and the product of the two nuisance-error rates decays at the parametric rate o_P(n^{-1/2}). Then the Chernozhukov one-step estimator is asymptotically linear at the truth M.θ₀, with influence function −J₀⁻¹ · m(η₀, ·, θ₀) and asymptotic variance J₀⁻¹ Σ J₀⁻ᵀ where Σ := ∫ m(η₀, z, θ₀)² dP_Z, indexed over split.foldB.
Formal statement
Proof (Lean source)
NeymanOrthogonal 3 core · 0 supporting This file defines Neyman orthogonality for a moment functional through the vanishing population integral of its nuisance directional derivative. ★ integratedMoment_diffQuotient_tendsto_zero
Neyman Orthogonality for Abstract Moments
This file defines Neyman orthogonality for a moment functional through the vanishing population integral of its nuisance directional derivative. It also records the dominated-convergence envelope needed to pass pointwise directional derivatives through integration.
Neyman orthogonality for the (M, D) pair: the population integral of the directional derivative vanishes at every nuisance perturbation.
Definition (Lean source)
DiffQuotientEnvelope M asserts that, locally near t = 0, the difference quotient of m along the segment η₀ → η is dominated by a fixed L¹(P_Z) function.
Definition (Lean source)
Abstract DCT bridge. Given a general moment M with directional-derivative structure D, assume Neyman orthogonality — the population directional derivative vanishes at every admissible nuisance perturbation, and an L¹(P_Z) envelope dominating the difference quotient of the moment near t = 0. Suppose η lies in the admissible nuisance neighborhood M.H_ε, that the moment along the segment from η₀ to η is integrable at every nonzero t, and that the moment at η₀ is integrable. Then the integrated difference quotient (∫ m(η₀ + t · (η − η₀)) dP_Z − ∫ m(η₀) dP_Z) / t tends to zero as t → 0 along the punctured neighborhood.
Formal statement
Proof (Lean source)
RemainderBound 2 core · 0 supporting This file formalizes the product-rate remainder condition for abstract orthogonal moments. ★ bilinear_remainder_of_smoothness
Bilinear Remainder Bounds
This file formalizes the product-rate remainder condition for abstract orthogonal moments. It also gives a smoothness bridge showing that Neyman orthogonality plus a uniform second-order envelope implies such a bilinear population bias bound.
Bilinear remainder predicate: the population moment at any η ∈ H_ε is bounded by C · ρ₁(η, η₀) · ρ₂(η, η₀).
Definition (Lean source)
Smoothness bridge to a bilinear remainder bound. For a general moment M with directional derivative D satisfying Neyman orthogonality, given an envelope g that is P_Z-integrable, suppose the linearization residual obeys a uniform second-order envelope with constant K: for every perturbation η in the nuisance neighborhood, |m(η,·,θ₀) − m(η₀,·,θ₀) − dM(η,·)| ≤ K·ρ₁(η,η₀)·ρ₂(η,η₀)·g almost everywhere, with the directional derivative integrable at every such η, the moment integrable at the baseline η₀, the moment integrable at every perturbed η, and the moment having population mean zero. Then some constant C makes the population moment obey the bilinear remainder bound C·ρ₁(η,η₀)·ρ₂(η,η₀) uniformly over the nuisance neighborhood.
Formal statement
Proof (Lean source)
Riesz 3 core · 1 supporting This file provides the Riesz-representation pattern for linear-in-regression causal functionals. ★ rieszScore_meanZero
Riesz Scores for Orthogonal Moments
This file provides the Riesz-representation pattern for linear-in-regression causal functionals. It defines the representer, the corresponding orthogonal score, and the mean-zero and bilinear-remainder identities used by automatic debiasing and double machine learning.
A Riesz representation for a continuous linear functional on a regression class under a covariate measure: a function α₀ on the covariate space that is measurable, integrable against the covariate measure, and that represents the functional's value at every element of the regression class as the covariate-measure integral of α₀ against that element's evaluation.
Definition (Lean source)
Generic Riesz orthogonal score. Given a Riesz representation, the orthogonal moment for the target θ(P) := L(γ_0) is
Definition (Lean source)
Mean-zero of the Riesz score at the truth. Given a Riesz representation rep of a linear functional L on the regression class H_γ under P_X, with true regression function γ₀, and observed data given by the covariate projection proj_X and the outcome Y_obs, suppose the representer residual α₀(proj_X z)·(Y_obs z − γ_target γ₀ (proj_X z)) has population mean zero under P_Z — which holds when γ_target γ₀ is the conditional expectation of Y_obs given proj_X, since residuals are orthogonal to all square-integrable functions of proj_X. Then the orthogonal score rieszScore evaluated at the truth (γ₀, α₀, L γ₀) integrates to zero under P_Z:
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
rieszScore_bilinearRemtheorem — Bilinear remainder identity for the Riesz score.hypothesesH_γ :P_X :Measure Xrep :RieszRepresentation H_γ γ_target L P_Xγ₀ γ :H_γα :X → ℝproj_X :Z → XY_obs :Z → ℝh_pushforward :P_X = P_Z.map proj_Xh_proj_meas :Measurable proj_Xh_orthog_α₀ :∫ z, rep.α₀ (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z)) ∂P_Z = 0h_orthog_α :∫ z, α (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z)) ∂P_Z = 0h_int_resid_α :Integrable (fun z => α (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z))) P_Zh_int_αγ :Integrable (fun z => α (proj_X z) * γ_target γ (proj_X z)) P_Zh_int_αγ₀ :Integrable (fun z => α (proj_X z) * γ_target γ₀ (proj_X z)) P_Zh_int_α₀γ :Integrable (fun x => rep.α₀ x * γ_target γ x) P_Xh_int_α₀γ₀ :Integrable (fun x => rep.α₀ x * γ_target γ₀ x) P_Xh_int_α :Integrable α P_Xh_int_γ :Integrable (γ_target γ) P_Xh_int_γ₀ :Integrable (γ_target γ₀) P_Xconclusion(∫ z, rieszScore γ_target L proj_X Y_obs γ α (L γ₀) z ∂P_Z)- (∫ z, rieszScore γ_target L proj_X Y_obs γ₀ rep.α₀ (L γ₀) z ∂P_Z)= - ∫ x, (α x - rep.α₀ x) * (γ_target γ x - γ_target γ₀ x) ∂P_XProof (Lean source)
theorem rieszScore_bilinearRem {H_γ : Type*} [AddCommGroup H_γ] [Module ℝ H_γ] {γ_target : H_γ → X → ℝ} {L : H_γ → ℝ} {P_X : Measure X} [IsProbabilityMeasure P_Z] (rep : RieszRepresentation H_γ γ_target L P_X) (γ₀ γ : H_γ) (α : X → ℝ) (proj_X : Z → X) (Y_obs : Z → ℝ) (h_pushforward : P_X = P_Z.map proj_X) (h_proj_meas : Measurable proj_X) (h_orthog_α₀ : ∫ z, rep.α₀ (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z)) ∂P_Z = 0) (h_orthog_α : ∫ z, α (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z)) ∂P_Z = 0) (h_int_resid_α : Integrable (fun z => α (proj_X z) * (Y_obs z - γ_target γ₀ (proj_X z))) P_Z) (h_int_αγ : Integrable (fun z => α (proj_X z) * γ_target γ (proj_X z)) P_Z) (h_int_αγ₀ : Integrable (fun z => α (proj_X z) * γ_target γ₀ (proj_X z)) P_Z) (h_int_α₀γ : Integrable (fun x => rep.α₀ x * γ_target γ x) P_X) (h_int_α₀γ₀ : Integrable (fun x => rep.α₀ x * γ_target γ₀ x) P_X) (h_int_α : Integrable α P_X) (h_int_γ : Integrable (γ_target γ) P_X) (h_int_γ₀ : Integrable (γ_target γ₀) P_X) : (∫ z, rieszScore γ_target L proj_X Y_obs γ α (L γ₀) z ∂P_Z) - (∫ z, rieszScore γ_target L proj_X Y_obs γ₀ rep.α₀ (L γ₀) z ∂P_Z) = - ∫ x, (α x - rep.α₀ x) * (γ_target γ x - γ_target γ₀ x) ∂P_X := by have h_int_αγ_X : Integrable (fun x => α x * γ_target γ x) P_X := by rw [h_pushforward] have h_asm : AEStronglyMeasurable (fun x => α x * γ_target γ x) (P_Z.map proj_X) := by rw [← h_pushforward] exact h_int_α.aestronglyMeasurable.fun_mul h_int_γ.aestronglyMeasurable exact (MeasureTheory.integrable_map_measure h_asm h_proj_meas.aemeasurable).2 h_int_αγ have h_int_αγ₀_X : Integrable (fun x => α x * γ_target γ₀ x) P_X := by rw [h_pushforward] have h_asm : AEStronglyMeasurable (fun x => α x * γ_target γ₀ x) (P_Z.map proj_X) := by rw [← h_pushforward] exact h_int_α.aestronglyMeasurable.fun_mul h_int_γ₀.aestronglyMeasurable exact (MeasureTheory.integrable_map_measure h_asm h_proj_meas.aemeasurable).2 h_int_αγ₀ have hscore : ∫ z, rieszScore γ_target L proj_X Y_obs γ α (L γ₀) z ∂P_Z = L γ - L γ₀ - ∫ z, α (proj_X z) * γ_target γ (proj_X z) ∂P_Z + ∫ z, α (proj_X z) * γ_target γ₀ (proj_X z) ∂P_Z := rieszScore_integral_eq γ₀ γ α proj_X Y_obs h_orthog_α h_int_resid_α h_int_αγ h_int_αγ₀ have htruth : ∫ z, rieszScore γ_target L proj_X Y_obs γ₀ rep.α₀ (L γ₀) z ∂P_Z = 0 := rieszScore_meanZero rep γ₀ proj_X Y_obs h_orthog_α₀ have hmap_αγ : ∫ z, α (proj_X z) * γ_target γ (proj_X z) ∂P_Z = ∫ x, α x * γ_target γ x ∂P_X := integral_comp_proj_eq h_pushforward h_proj_meas h_int_αγ_X have hmap_αγ₀ : ∫ z, α (proj_X z) * γ_target γ₀ (proj_X z) ∂P_Z = ∫ x, α x * γ_target γ₀ x ∂P_X := integral_comp_proj_eq h_pushforward h_proj_meas h_int_αγ₀_X have hrhs : ∫ x, (α x - rep.α₀ x) * (γ_target γ x - γ_target γ₀ x) ∂P_X = (∫ x, α x * γ_target γ x ∂P_X - ∫ x, rep.α₀ x * γ_target γ x ∂P_X) - (∫ x, α x * γ_target γ₀ x ∂P_X - ∫ x, rep.α₀ x * γ_target γ₀ x ∂P_X) := by let aγ : X → ℝ := fun x => α x * γ_target γ x let rγ : X → ℝ := fun x => rep.α₀ x * γ_target γ x let aγ₀ : X → ℝ := fun x => α x * γ_target γ₀ x let rγ₀ : X → ℝ := fun x => rep.α₀ x * γ_target γ₀ x have hpoint : (fun x => (α x - rep.α₀ x) * (γ_target γ x - γ_target γ₀ x)) = fun x => (aγ x - rγ x) - (aγ₀ x - rγ₀ x) := by funext x simp [aγ, rγ, aγ₀, rγ₀] ring rw [hpoint] change ∫ x, ((aγ - rγ) - (aγ₀ - rγ₀)) x ∂P_X = (∫ x, aγ x ∂P_X - ∫ x, rγ x ∂P_X) - (∫ x, aγ₀ x ∂P_X - ∫ x, rγ₀ x ∂P_X) have haγ : Integrable aγ P_X := h_int_αγ_X have hrγ : Integrable rγ P_X := h_int_α₀γ have haγ₀ : Integrable aγ₀ P_X := h_int_αγ₀_X have hrγ₀ : Integrable rγ₀ P_X := h_int_α₀γ₀ calc ∫ x, aγ x - rγ x - (aγ₀ x - rγ₀ x) ∂P_X = ∫ x, aγ x - rγ x ∂P_X - ∫ x, aγ₀ x - rγ₀ x ∂P_X := by exact integral_sub (haγ.sub hrγ) (haγ₀.sub hrγ₀) _ = (∫ x, aγ x ∂P_X - ∫ x, rγ x ∂P_X) - (∫ x, aγ₀ x ∂P_X - ∫ x, rγ₀ x ∂P_X) := by rw [integral_sub haγ hrγ] rw [integral_sub haγ₀ hrγ₀] rw [hscore, htruth, hmap_αγ, hmap_αγ₀, rep.representation γ, rep.representation γ₀] rw [hrhs] ring
AIPWInstance 2 core · 2 supporting This file instantiates the abstract orthogonal-moment framework with the augmented inverse-probability weighted moment for the back-door average treatment effect. ★ aipw_dml_isAsymLinear
AIPW General-Moment Instance
This file instantiates the abstract orthogonal-moment framework with the augmented inverse-probability weighted moment for the back-door average treatment effect. It packages mean-zero, finite-variance, and bilinear remainder facts so the general double-machine-learning theorem applies to the AIPW estimator.
The main declarations are aipwGeneralMoment, aipw_meanZero,
aipw_bilinearRem, and the headline theorem aipw_dml_isAsymLinear, which
specializes dml_chernozhukov_asymptoticLinear to the AIPW score.
AIPW instance of the abstract GeneralMoment. The bilinear seminorms are the L²(P_X) norms of the μ_fn and e_fn differences; ρ₁ aggregates both treatment arms of μ_fn (matching the Σ_a ‖Δμ_a‖ factor produced by aipw_remainder_bound).
Definition (Lean source)
Headline AIPW DML asymptotic-linearity theorem, derived from the abstract dml_chernozhukov_asymptoticLinear in Estimation/OrthogonalMoments/DMLChernozhukov.lean. For the back-door AIPW estimator with true nuisance η₀ known to lie in the ε-ball H_ε_aeL2 S ε, assume the propensity score has ε-strict overlap, that the identification assumptions of the back-door system hold, and that the factual and potential outcomes are square-integrable. Given an i.i.d. sample with a one-shot fold split whose fold-B fraction converges to a strictly positive limit c > 0 along card (foldB n) / n → c, and a sequence of cross-fitted nuisance estimators η̂ that stay in the ε-ball at every fold and sample point with outcome-regression and propensity-score differences from the truth square-integrable in S.P_X. Assume the technical regularity package that the AIPW moment functional at η̂ is jointly measurable, fold-A-measurable in ω, and, at every fold and sample point, integrable and square-integrable under S.P_Z. Finally suppose the two nuisance-error rates are individually negligible ρ₁(η̂, η₀) = o_P(1), ρ₂(η̂, η₀) = o_P(1), and their product decays at the parametric rate ρ₁(η̂, η₀) · ρ₂(η̂, η₀) = o_P(n^{-1/2}). Then the Chernozhukov one-step AIPW-DML estimator is asymptotically linear at the true parameter S.θ₀ with the standard AIPW influence function ψ(z) = −J₀⁻¹ · ψ_AIPW(η₀, z), indexed over the fold-B subsample.
Formal statement
Proof (Lean source)
2 supporting declarations (lemmas, instances)
-
aipw_meanZerotheorem — AIPW satisfies MeanZero.hypothesesS :ε :ℝhη₀_mem :S.η₀ ∈ H_ε_aeL2 S εh_overlap :S.StrictOverlap εhA :S.toPOBackdoorSystem.Assumptionsh_y2 :Integrable (fun ω => (S.toPOBackdoorSystem.factualY ω) ^ 2) P.μh_yd2 :∀ d : Bool, Integrable (fun ω => (S.toPOBackdoorSystem.YofD d ω) ^ 2) P.μconclusionMeanZero (aipwGeneralMoment S hη₀_mem)Proof (Lean source)
theorem aipw_meanZero (S : BackdoorEstimationSystem P γ) {ε : ℝ} (hη₀_mem : S.η₀ ∈ H_ε_aeL2 S ε) (h_overlap : S.StrictOverlap ε) (hA : S.toPOBackdoorSystem.Assumptions) (h_y2 : Integrable (fun ω => (S.toPOBackdoorSystem.factualY ω) ^ 2) P.μ) (h_yd2 : ∀ d : Bool, Integrable (fun ω => (S.toPOBackdoorSystem.YofD d ω) ^ 2) P.μ) : MeanZero (aipwGeneralMoment S hη₀_mem) := by unfold MeanZero aipwGeneralMoment exact aipw_mean_zero_of_square_integrable S h_overlap hA h_y2 h_yd2 -
aipw_bilinearRemtheorem — AIPW satisfies BilinearRemainder with constant aipw_rem_const ε.hypothesesS :ε :ℝhη₀_mem :S.η₀ ∈ H_ε_aeL2 S εh_overlap :S.StrictOverlap εhA :S.toPOBackdoorSystem.Assumptionsh_y2 :Integrable (fun ω => (S.toPOBackdoorSystem.factualY ω) ^ 2) P.μh_yd2 :∀ d : Bool, Integrable (fun ω => (S.toPOBackdoorSystem.YofD d ω) ^ 2) P.μconclusion∃ C, BilinearRemainder (aipwGeneralMoment S hη₀_mem) CProof (Lean source)
theorem aipw_bilinearRem (S : BackdoorEstimationSystem P γ) {ε : ℝ} (hη₀_mem : S.η₀ ∈ H_ε_aeL2 S ε) (h_overlap : S.StrictOverlap ε) (hA : S.toPOBackdoorSystem.Assumptions) (h_y2 : Integrable (fun ω => (S.toPOBackdoorSystem.factualY ω) ^ 2) P.μ) (h_yd2 : ∀ d : Bool, Integrable (fun ω => (S.toPOBackdoorSystem.YofD d ω) ^ 2) P.μ) (h_L2 : ∀ η ∈ H_ε_aeL2 S ε, (∀ d, MemLp (fun x => η.μ_fn d x - S.μ_val d x) 2 S.P_X) ∧ MemLp (fun x => η.e_fn x - S.e_val x) 2 S.P_X) : ∃ C, BilinearRemainder (aipwGeneralMoment S hη₀_mem) C := by refine ⟨aipw_rem_const ε, ?_⟩ intro η hη obtain ⟨hμ, hΔe⟩ := h_L2 η hη have h := BackdoorEstimationSystem.aipw_remainder_bound S h_overlap hA h_y2 h_yd2 η hη hμ hΔe -- Convert the Σ_a (‖Δμ_a‖ * ‖Δe‖) RHS shape into (‖Δμ_T‖ + ‖Δμ_F‖) * ‖Δe‖. have hsum : ∑ a : Bool, (eLpNorm (fun x => η.μ_fn a x - S.μ_val a x) 2 S.P_X).toReal * (eLpNorm (fun x => η.e_fn x - S.e_val x) 2 S.P_X).toReal = ((eLpNorm (fun x => η.μ_fn true x - S.μ_val true x) 2 S.P_X).toReal + (eLpNorm (fun x => η.μ_fn false x - S.μ_val false x) 2 S.P_X).toReal) * (eLpNorm (fun x => η.e_fn x - S.e_val x) 2 S.P_X).toReal := by rw [Fintype.sum_bool, add_mul] rw [hsum] at h -- After unfolding `M = aipwGeneralMoment`, the goal reduces to `h` -- (η₀.μ_fn = S.μ_val, η₀.e_fn = S.e_val by the constructor of η₀). change |∫ z, aipwMomentFunctional η z S.θ₀ ∂(S.P_Z)| ≤ aipw_rem_const ε * ((eLpNorm (fun x => η.μ_fn true x - S.μ_val true x) 2 S.P_X).toReal + (eLpNorm (fun x => η.μ_fn false x - S.μ_val false x) 2 S.P_X).toReal) * (eLpNorm (fun x => η.e_fn x - S.e_val x) 2 S.P_X).toReal linarith [h]
DMLCrossFit 2 core · 0 supporting This file proves the K-fold analogue of the Chernozhukov-form DML theorem. ★ dml_crossFit_asymptoticLinear
Cross-Fitted Double Machine Learning
This file proves the K-fold analogue of the Chernozhukov-form DML theorem.
The estimator dmlCrossFitEstimator evaluates each fold with a nuisance
learner trained on the complementary data and averages the fold scores. The
main theorem dml_crossFit_asymptoticLinear shows asymptotic linearity with
influence function -J₀⁻¹ · m(η₀, ·, θ₀) under the same mean-zero,
finite-variance, score-difference, individual-rate, and product-rate
hypotheses as the one-shot theorem, but imposed fold by fold.
K-fold cross-fitted Chernozhukov DML estimator. At each fold k, the nuisance estimator η_hat n k ω : H is trained on the complement of fold k. The fold-k score is the empirical mean of m(η̂^{(-k)}, ·, θ₀) over fold k, rescaled by −J₀⁻¹ and shifted by θ₀. The final estimator averages these K fold scores.
Definition (Lean source)
Asymptotic linearity of the K-fold cross-fitted Chernozhukov DML estimator. Same Chernozhukov form as dml_chernozhukov_asymptoticLinear, but with K folds. Given a general moment M with mean zero at the truth, assume the truth-evaluated score is square-integrable (finite variance), that there are at least two folds, K > 1, and a sequence of per-fold cross-fitted nuisance estimators η̂. Suppose the population moment at η̂, trained on each fold's complement, is bounded by a constant times the product of the two bilinear-remainder seminorms, at every fold count, fold index, and sample point. Assume the technical regularity package that the moment at η̂ is jointly measurable at every fold, measurable with respect to the fold's training complement, and, at every fold count, fold index, and sample point, integrable and square-integrable. Finally suppose that, at every fold, the L² score difference between the fold's estimated and true nuisance is o_P(1), each of the two nuisance-error rates is individually o_P(1), and their product decays at the parametric rate o_P(n^{-1/2}). Then the K-fold cross-fitted estimator is asymptotically linear at the truth M.θ₀ with influence function −J₀⁻¹ · m(η₀, ·, θ₀), indexed over the full sample (the fold-level sub-aggregations sum to a full-sample average asymptotically).
Formal statement
Proof (Lean source)
LinearSmoother 5 core · 1 supporting This file specializes the abstract second-stage regression operator to weighted linear smoothers. ★ smoother_bias_holder★ smoother_bias_product_holder
Linear Smoother Second-Stage Operators
This file specializes the abstract second-stage regression operator to weighted linear smoothers. It records the weighted-sum representation and proves Hölder-type bias bounds for smoothed single functions and products of functions.
Linear-smoother operator (Def def:est-cate-second-stage, smoother form). A second-stage regression operator extended with an abstract array of smoothing weights indexed by sample size, randomness scope, query point, and data tuple, from which the weighted-sum representation of the operator's output can be built; the linear-combination identity itself is not required here but recorded separately as a predicate below.
Definition (Lean source)
Predicate witnessing that the operator is genuinely a linear smoother: the value of evalAt n ω f x is the weighted sum Σ_{i ∈ B} w i · f (xs i), where B : Finset ι enumerates the data fold, w : ι → ℝ provides the weights, and xs : ι → γ × Bool × ℝ provides the data tuples. The exact relationship between w and op.weights is left to the caller.
Definition (Lean source)
The weighted norm is the normalized absolute-weight empirical norm of a real-valued function on the sample indices.
Definition (Lean source)
Single-function Hölder bound for a linear smoother. Assume op realises a linear smoother at sample size n, randomness ω, and query point x — its evaluation of any function on the fold B is the weighted sum Σ w_i · f(xs_i), and that the absolute weights sum to at most c_n. Then the absolute smoothed bias of g (evaluated on the γ-component of the data) at x is bounded by c_n times the weighted L¹ norm of g ∘ xs.1.
Formal statement
Proof (Lean source)
Product Hölder bound for a linear smoother (Prop prop:est-cate-linear-smoother-bound). Assume op realises a linear smoother at sample size n, randomness ω, and query point x, that the absolute weights sum to at most c_n, and that p and q are Hölder-conjugate exponents, 1/p + 1/q = 1. Then the absolute smoothed bias of the product g₁ · g₂ (evaluated on the γ-component of the data) at x is bounded by c_n times the weighted L^p norm of g₁ ∘ xs.1 times the weighted L^q norm of g₂ ∘ xs.1.
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
WeightedNorm_nonneglemma — The weighted norm is non-negative.Proof (Lean source)
lemma WeightedNorm_nonneg {ι : Type*} (B : Finset ι) (w : ι → ℝ) (g : ι → ℝ) (p : ℝ) : 0 ≤ WeightedNorm B w g p := by unfold WeightedNorm refine Real.rpow_nonneg ?_ _ refine sum_nonneg ?_ intro i _ refine mul_nonneg ?_ (Real.rpow_nonneg (abs_nonneg _) _) exact div_nonneg (abs_nonneg _) (sum_nonneg fun _ _ => abs_nonneg _)
Parametric 2 core · 0 supporting This file shows how the orthogonal-moment machinery specializes to ordinary parametric one-step estimators with no separate nuisance function, covering the classical score-based template behind regression, instrumental v ★ parametric_asymptoticLinear
Parametric Orthogonal Moments
This file shows how the orthogonal-moment machinery specializes to ordinary
parametric one-step estimators with no separate nuisance function, covering the
classical score-based template behind regression, instrumental variables, and
maximum likelihood examples. The definition parametricMoment encodes the
no-nuisance GeneralMoment with H = Unit, and
parametric_asymptoticLinear proves that the resulting Chernozhukov estimator
has an identically zero remainder after subtracting its influence-function
partial sum.
Parametric moment: the moment depends only on θ (no nuisance). m_par θ z is the user-supplied moment; J₀ : ℝ is its scalar Jacobian at θ₀.
Definition (Lean source)
Asymptotic linearity of the parametric one-step estimator. Fix a score m_par with a nonzero scalar Jacobian J₀ at the true parameter θ₀, where m_par θ is measurable for every θ. If the score m_par θ₀ has population mean zero and it has finite second moment, then for an i.i.d. sample and a one-shot fold split of it, the parametric one-step estimator built from m_par and J₀ is asymptotically linear at θ₀ with influence function ψ(z) := −J₀⁻¹·m_par(θ₀, z).
Formal statement
Proof (Lean source)
SecondStageOperator 6 core · 0 supporting This file defines the target-agnostic second-stage operator used in DR-Learner CATE estimation. ★ oracle_expansion
Abstract Second-Stage Regression Operators
This file defines the target-agnostic second-stage operator used in DR-Learner
CATE estimation. The public API consists of SecondStageOperator, the
input-linearity predicate SecondStageOperator.IsLinearInInput, the oracle
estimator and oracle risk scale, the stability predicate Stable, and the
abstract oracle-expansion theorem oracle_expansion. It separates the operator
itself from linearity and conditional-bias identification assumptions.
Abstract bundle for a second-stage regression operator (Def def:est-cate-second-stage): an operator mapping a sample size, a randomness scope, a real-valued pseudo-outcome function of a data tuple, and a query point to a real-valued estimate, together with the minimal requirement that for every sample size and constant pseudo-outcome, the map from randomness scope and query point to the operator's value is jointly measurable; stronger measurability, and any linearity of the operator in its function input, are deferred to concrete instances or the separate IsLinearInInput predicate.
Definition (Lean source)
Linearity of the operator in its pseudo-outcome input. A second-stage operator is linear in input iff evalAt n ω (f + g) x = evalAt n ω f x + evalAt n ω g x for all sample sizes, randomness, pseudo-outcomes, and query points. Linear smoothers satisfy this predicate; kernel-or-tree mean estimators with random splits need not satisfy it.
Definition (Lean source)
Oracle estimator: the operator applied to a fixed "true" pseudo-outcome f (Def def:est-cate-dr-learner, \tilde\tau_n).
Definition (Lean source)
Oracle pointwise risk scale R^*_n(x) from def:est-cate-dr-learner:
Definition (Lean source)
Stability of a second-stage regression operator at a query point x with respect to a distance d_n between pseudo-outcomes (Def def:est-cate-stability).
Definition (Lean source)
Oracle expansion for the DR-Learner (Thm thm:est-cate-dr-oracle, abstract operator-level form). Given a second-stage regression operator op that is stable at the query point x for target function target, with respect to a distance d_n between pseudo-outcomes and a caller-supplied conditional-bias identification predicate BiasIdent, suppose d_n converges to zero in probability under μ, i.e. the first-stage pseudo-outcome estimate is consistent, and suppose the estimated pseudo-outcome fHat_n, the true pseudo-outcome f, and the claimed conditional bias bHat_n satisfy BiasIdent. Then the discrepancy between the operator applied to fHat_n and to f, minus the operator applied to bHat_n, is o_p of the oracle risk scale under μ: the operator-level oracle expansion holds modulo o_p(R^*_n(x)).