Stat.MEstimation
M- and Z-estimation: consistency, asymptotic normality, and influence-function representations.
ZEstimator 1 core · 0 supporting This module records the public regularity bundle ZEstimatorRegularity for parametric Z-estimator and M-estimator central limit theorems. ★ ZEstimatorRegularity
Z-estimator regularity
This module records the public regularity bundle ZEstimatorRegularity for
parametric Z-estimator and M-estimator central limit theorems. The structure
collects population identification, derivative invertibility, finite variance,
measurability, and local integrability. Empirical-process control is supplied
separately by the smooth-score, local-Lipschitz, or high-level stochastic-
equicontinuity routes.
Regularity conditions for the Z-estimator central limit theorem. Bundles, for a score function and target parameter θ₀ under a sampling law, the population identification condition that the score vanishes in mean at the truth, a Jacobian of the population score at θ₀ together with a witnessed inverse, finite variance of the score at the truth, measurability of the score at every parameter value, and local integrability of the score on a neighborhood of θ₀.
Definition (Lean source)
FinitePoisson 4 core · 6 supporting This module defines a finite Poisson criterion composed with a linear design and proves its continuity, existence and uniqueness of the pseudo-true maximizer, and the equivalence between global optimality and vanishing d ★ finitePoissonObjective_exists_unique_max
Finite positive-mean Poisson projections
This module defines a finite Poisson criterion composed with a linear design and proves its continuity, existence and uniqueness of the pseudo-true maximizer, and the equivalence between global optimality and vanishing directional scores.
Given a real-valued criterion on a domain and a point in that domain, the assertion that the point is its unique global maximizer means that every domain point has criterion value no larger than this point's value, and that equality can occur only at this point.
Definition (Lean source)
Given a domain equipped with a distinguished zero and a real-valued criterion on that domain, the selected maximizer or zero is a global maximizer when one exists and is the distinguished zero otherwise.
Given a finite index set, cell weights, cell means, a real-linear map from the parameter space to cell predictors, and a parameter value, the finite Poisson objective is the sum over cells of each weight times its mean times its predictor minus its predictor's exponential.
Definition (Lean source)
Existence and uniqueness of the finite Poisson pseudo-true parameter. If every cell weight is strictly positive, every cell mean is strictly positive, and the linear design map is injective, then the finite Poisson criterion attains its supremum over the parameter space at a unique point.
Formal statement
Proof (Lean source)
6 supporting declarations (lemmas, instances)
-
poissonCell_linear_coercive_boundlemma — A positive-mean Poisson cell log likelihood is bounded above by a linearly coercive function. This is the elementary tail estimate used in the finite Poisson maximizer existence argument.Proof (Lean source)
lemma poissonCell_linear_coercive_bound (m x : ℝ) (hm : 0 < m) : m * x - exp x ≤ (m + 1) ^ 2 / 2 - min m 1 * |x| := by have hc0 : 0 < min m 1 := lt_min hm zero_lt_one by_cases hx : x ≤ 0 · rw [abs_of_nonpos hx] have he : 0 ≤ exp x := (Real.exp_pos x).le have hc : min m 1 ≤ m := min_le_left _ _ have hK : 0 ≤ (m + 1) ^ 2 / 2 := div_nonneg (sq_nonneg _) (by norm_num) nlinarith · have hx0 : 0 ≤ x := le_of_not_ge hx have he := Real.pow_div_factorial_le_exp x hx0 2 norm_num [factorial] at he have hc : min m 1 ≤ 1 := min_le_right _ _ have hs : 0 ≤ (x - (m + 1)) ^ 2 := sq_nonneg _ rw [abs_of_nonneg hx0] nlinarith -
poissonCell_strictConcave_midpointlemma — Strict midpoint concavity of a positive-weight Poisson cell whenever the two linear predictors differ.hypothesesq m x y :ℝhq :0 < qhxy :x ≠ yProof (Lean source)
lemma poissonCell_strictConcave_midpoint (q m x y : ℝ) (hq : 0 < q) (hxy : x ≠ y) : (q * (m * x - exp x) + q * (m * y - exp y)) / 2 < q * (m * ((x + y) / 2) - exp ((x + y) / 2)) := by have hconv := strictConvexOn_exp.2 (Set.mem_univ x) (Set.mem_univ y) hxy (show 0 < (1 / 2 : ℝ) by norm_num) (show 0 < (1 / 2 : ℝ) by norm_num) (by norm_num : (1 / 2 : ℝ) + 1 / 2 = 1) simp only [smul_eq_mul] at hconv have := mul_lt_mul_of_pos_left hconv hq have harg : (1 / 2 : ℝ) * x + (1 / 2 : ℝ) * y = (x + y) / 2 := by ring rw [harg] at this calc _ = q * (m * ((x + y) / 2) - (exp x + exp y) / 2) := by ring _ < q * (m * ((x + y) / 2) - exp ((x + y) / 2)) := by nlinarith -
finitePoissonObjective_continuouslemma — The finite Poisson criterion is continuous in its parameter whenever the linear design acts on a finite-dimensional normed space.hypothesesE I :q m :I → ℝA :E →ₗ[ℝ] (I → ℝ)conclusionContinuous (finitePoissonObjective q m A)Proof (Lean source)
@[fun_prop] lemma finitePoissonObjective_continuous {E I : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E] [Fintype I] (q m : I → ℝ) (A : E →ₗ[ℝ] (I → ℝ)) : Continuous (finitePoissonObjective q m A) := by unfold finitePoissonObjective fun_prop -
finitePoissonObjective_scorelemma — Every directional score vanishes at a global maximizer.hypothesesE I :q m :I → ℝA :E →ₗ[ℝ] (I → ℝ)x d :Ehx :∀ y, finitePoissonObjective q m A y ≤ finitePoissonObjective q m A xconclusion∑ i, q i * A d i * (m i - exp (A x i)) = 0Proof (Lean source)
lemma finitePoissonObjective_score {E I : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [Fintype I] (q m : I → ℝ) (A : E →ₗ[ℝ] (I → ℝ)) (x d : E) (hx : ∀ y, finitePoissonObjective q m A y ≤ finitePoissonObjective q m A x) : ∑ i, q i * A d i * (m i - exp (A x i)) = 0 := by let path : ℝ → E := fun s => x + s • d have heta (i : I) : HasDerivAt (fun s => A (path s) i) (A d i) 0 := by have hfun : (fun s : ℝ => A (path s) i) = fun s : ℝ => A x i + s * A d i := by funext s simp [path, map_add, map_smul, smul_eq_mul] rw [hfun] have h : HasDerivAt (fun s : ℝ => A x i + s * A d i) (0 + 1 * A d i) 0 := (hasDerivAt_const (𝕜 := ℝ) 0 (A x i)).fun_add ((hasDerivAt_id (𝕜 := ℝ) 0).mul_const (A d i)) simpa using h have hderiv : HasDerivAt (fun s => finitePoissonObjective q m A (path s)) (∑ i, q i * A d i * (m i - exp (A x i))) 0 := by have hraw : HasDerivAt (fun s : ℝ => ∑ i, q i * (m i * A (path s) i - exp (A (path s) i))) (∑ i, q i * (m i * A d i - exp (A (path 0) i) * A d i)) 0 := HasDerivAt.fun_sum (u := univ) (fun i _ => (((heta i).const_mul (m i)).sub (heta i).exp).const_mul (q i)) have hpath0 : path 0 = x := by simp [path] have hval : (∑ i, q i * (m i * A d i - exp (A (path 0) i) * A d i)) = ∑ i, q i * A d i * (m i - exp (A x i)) := by rw [hpath0] exact Finset.sum_congr rfl fun i _ => by ring have hfe : (fun s : ℝ => finitePoissonObjective q m A (path s)) = fun s : ℝ => ∑ i, q i * (m i * A (path s) i - exp (A (path s) i)) := rfl rw [hfe, ← hval] exact hraw have hlocal : IsLocalMax (fun s => finitePoissonObjective q m A (path s)) 0 := Filter.Eventually.of_forall fun s => by simpa [path] using hx (path s) exact hlocal.hasDerivAt_eq_zero hderiv -
finitePoissonObjective_isMax_of_scorelemma — For a nonnegative weighted Poisson objective, vanishing of every directional score is sufficient for global maximality.hypothesesE I :q m :I → ℝA :E →ₗ[ℝ] (I → ℝ)x :Ehq :∀ i, 0 ≤ q ihscore :∀ d : E, ∑ i, q i * A d i * (m i - exp (A x i)) = 0y :conclusionfinitePoissonObjective q m A y ≤ finitePoissonObjective q m A xProof (Lean source)
lemma finitePoissonObjective_isMax_of_score {E I : Type*} [AddCommGroup E] [Module ℝ E] [Fintype I] (q m : I → ℝ) (A : E →ₗ[ℝ] (I → ℝ)) (x : E) (hq : ∀ i, 0 ≤ q i) (hscore : ∀ d : E, ∑ i, q i * A d i * (m i - exp (A x i)) = 0) : ∀ y, finitePoissonObjective q m A y ≤ finitePoissonObjective q m A x := by intro y have hterm (i : I) : q i * (m i * A y i - exp (A y i)) - q i * (m i * A x i - exp (A x i)) ≤ q i * A (y - x) i * (m i - exp (A x i)) := by have he : 1 + (A y i - A x i) ≤ exp (A y i - A x i) := by simpa [add_comm] using Real.add_one_le_exp (A y i - A x i) have hexp : exp (A x i) * (1 + (A y i - A x i)) ≤ exp (A y i) := by calc exp (A x i) * (1 + (A y i - A x i)) ≤ exp (A x i) * exp (A y i - A x i) := mul_le_mul_of_nonneg_left he (Real.exp_pos _).le _ = exp (A y i) := by rw [← Real.exp_add] congr 1 ring have hqexp := mul_le_mul_of_nonneg_left hexp (hq i) simp only [map_sub, Pi.sub_apply] nlinarith unfold finitePoissonObjective have hsum := Finset.sum_le_sum fun i (_ : i ∈ univ) => hterm i rw [hscore (y - x), Finset.sum_sub_distrib] at hsum linarith -
uniqueGlobalMax_maximizerOrZerolemma — A criterion with a unique global maximum is maximized uniquely by its total maximizer selector.hypothesesconclusionProof (Lean source)
lemma uniqueGlobalMax_maximizerOrZero {E : Type*} [Zero E] (f : E → ℝ) (h : ∃! x : E, ∀ y, f y ≤ f x) : IsUniqueGlobalMax f (maximizerOrZero f) := by obtain ⟨x, hx, huniq⟩ := h have hex : ∃ z, ∀ y, f y ≤ f z := ⟨x, hx⟩ have hsel : maximizerOrZero f = x := by rw [maximizerOrZero, dif_pos hex] exact huniq _ (Classical.choose_spec hex) rw [hsel] exact ⟨hx, fun y hy => huniq y (fun z => (hx z).trans_eq hy.symm)⟩
InfluenceFunction 1 core · 0 supporting This module defines InfluenceFunction, the common data-layer predicate used by estimator families to record measurability, mean zero, and an integrable squared norm. ★ InfluenceFunction
Influence-function data layer
This module defines InfluenceFunction, the common data-layer predicate used
by estimator families to record measurability, mean zero, and an integrable
squared norm. It does not encode pathwise differentiability or efficiency.
For a sampling law and a candidate function, the influence-function regularity predicate records that the candidate is measurable, mean-zero, and square-integrable.
Definition (Lean source)
ψ has mean zero under P.
SmoothZEstimator 5 core · 4 supporting This module proves asymptotic linearity and normality for smooth-score Z-estimators without assuming stochastic equicontinuity or a root-sample-size rate. ★ zEstimator_asymLinear_of_smoothScore★ zEstimator_tendsto_normal_of_smoothScore
Smooth-score Z-estimators
This module proves asymptotic linearity and normality for smooth-score Z-estimators without assuming stochastic equicontinuity or a root-sample-size rate. A deterministic mean-value bound controls the score remainder, a Banach-valued iid weak law controls the empirical Jacobian, and a stochastic absorption argument derives the rate before establishing the influence-function expansion.
The direct analogue is van der Vaart (1998), Theorem 5.41. Newey and McFadden
(1994), Theorem 3.1 supplies the corresponding smooth extremum-estimator
argument only when the score is the derivative of an objective criterion. The
empirical estimating equation here is allowed to have an o_p(n⁻¹/²) residual;
an eventual exact root is a special case.
Use this route for observationwise differentiable scores. Use the Lipschitz route for van der Vaart (1998), Theorem 5.21, and the high-level equicontinuity route for nonsmooth scores covered by Newey--McFadden (1994), Theorem 7.2, or Andrews (1994).
For a score, target parameter, and population law, the smooth-score Z-estimator regularity package records population identification, score measurability, a finite score second moment, the observationwise score derivative, its derivative identity, measurability and integrability of the derivative at the target, an integrable Lipschitz envelope for derivative changes, and an inverse for the expected target derivative.
Definition (Lean source)
For a score, target, population law, and smooth regularity package, the population Jacobian is the expected observationwise derivative at the target.
Definition (Lean source)
For a score, target, population law, and smooth regularity package, the influence function applies the negative inverse population Jacobian to the target score.
Definition (Lean source)
Smooth-score Z-estimator asymptotic linearity. Given a score, target, population law, and smooth regularity package, if an estimator based on an iid sample is consistent and its normalized estimating-equation residual is o_p(1), then the estimator is asymptotically linear with influence function -V⁻¹ ψ(θ₀,·).
Formal statement
Proof (Lean source)
Smooth-score Z-estimator asymptotic normality. Given a score, target, population law, and smooth regularity package, if an iid-sample estimator is consistent, has an o_p(n⁻¹/²) estimating-equation residual, and has measurable rescalings, then its rescaled laws converge to the centered Gaussian generated by the influence function -V⁻¹ ψ(θ₀,·).
Formal statement
Proof (Lean source)
4 supporting declarations (lemmas, instances)
-
influenceFunctiontheorem — For a score, target, population law, and smooth regularity package, its canonical influence function satisfies the common influence-function regularity interface.hypothesesX :sharedType u_2E :sharedType u_3E → X → EEP :Measure Xreg :SmoothZEstimatorRegularity ψ θ₀ PconclusionInfluenceFunction P reg.influenceProof (Lean source)
theorem influenceFunction {ψ : E → X → E} {θ₀ : E} {P : Measure X} (reg : SmoothZEstimatorRegularity ψ θ₀ P) [IsFiniteMeasure P] : InfluenceFunction P reg.influence := by have hmeas : Measurable reg.influence := reg.jacobianInv.continuous.measurable.comp reg.score_meas |>.neg have hbound : ∀ x, ‖reg.influence x‖ ^ 2 ≤ ‖reg.jacobianInv‖ ^ 2 * ‖ψ θ₀ x‖ ^ 2 := by intro x have hop := reg.jacobianInv.le_opNorm (ψ θ₀ x) have hleft : 0 ≤ ‖reg.jacobianInv (ψ θ₀ x)‖ := norm_nonneg _ have hright : 0 ≤ ‖reg.jacobianInv‖ * ‖ψ θ₀ x‖ := mul_nonneg (norm_nonneg _) (norm_nonneg _) dsimp [influence] rw [norm_neg] nlinarith have hvar : Integrable (fun x => ‖reg.influence x‖ ^ 2) P := by refine (reg.score_finite_var.const_mul (‖reg.jacobianInv‖ ^ 2)).mono' ?_ ?_ · exact hmeas.norm.pow_const 2 |>.aestronglyMeasurable · filter_upwards with x have hx : 0 ≤ ‖reg.influence x‖ ^ 2 := sq_nonneg _ simpa [Real.norm_eq_abs, abs_of_nonneg hx] using hbound x have hψint : Integrable (ψ θ₀) P := ((memLp_two_iff_integrable_sq_norm reg.score_meas.aestronglyMeasurable).2 reg.score_finite_var).integrable (by norm_num) have hmean : ∫ x, reg.influence x ∂P = 0 := by calc ∫ x, reg.influence x ∂P = -(∫ x, reg.jacobianInv (ψ θ₀ x) ∂P) := by simp only [influence] rw [MeasureTheory.integral_neg] _ = -(reg.jacobianInv (∫ x, ψ θ₀ x ∂P)) := by rw [ContinuousLinearMap.integral_comp_comm reg.jacobianInv hψint] _ = 0 := by simp [reg.identification] exact ⟨hmeas, hmean, hvar⟩ -
influence_measurabletheorem — For a score, target, population law, and smooth regularity package, its influence function is measurable.hypothesesX :sharedType u_2E :sharedType u_3E → X → EEP :Measure Xreg :SmoothZEstimatorRegularity ψ θ₀ PconclusionMeasurable reg.influenceProof (Lean source)
@[fun_prop] theorem influence_measurable {ψ : E → X → E} {θ₀ : E} {P : Measure X} (reg : SmoothZEstimatorRegularity ψ θ₀ P) : Measurable reg.influence := reg.jacobianInv.continuous.measurable.comp reg.score_meas |>.neg -
influence_integrable_sqtheorem — For a score, target, population law, and smooth regularity package, the squared norm of its influence function is integrable.hypothesesX :sharedType u_2E :sharedType u_3E → X → EEP :Measure Xreg :SmoothZEstimatorRegularity ψ θ₀ PconclusionIntegrable (fun x => ‖reg.influence x‖ ^ 2) PProof (Lean source)
@[fun_prop] theorem influence_integrable_sq {ψ : E → X → E} {θ₀ : E} {P : Measure X} (reg : SmoothZEstimatorRegularity ψ θ₀ P) : Integrable (fun x => ‖reg.influence x‖ ^ 2) P := by have hbound : ∀ x, ‖reg.influence x‖ ^ 2 ≤ ‖reg.jacobianInv‖ ^ 2 * ‖ψ θ₀ x‖ ^ 2 := by intro x have hop := reg.jacobianInv.le_opNorm (ψ θ₀ x) have hleft : 0 ≤ ‖reg.jacobianInv (ψ θ₀ x)‖ := norm_nonneg _ have hright : 0 ≤ ‖reg.jacobianInv‖ * ‖ψ θ₀ x‖ := mul_nonneg (norm_nonneg _) (norm_nonneg _) dsimp [influence] rw [norm_neg] nlinarith refine (reg.score_finite_var.const_mul (‖reg.jacobianInv‖ ^ 2)).mono' ?_ ?_ · exact reg.influence_measurable.norm.pow_const 2 |>.aestronglyMeasurable · filter_upwards with x have hx : 0 ≤ ‖reg.influence x‖ ^ 2 := sq_nonneg _ simpa [Real.norm_eq_abs, abs_of_nonneg hx] using hbound x -
score_taylor_remainder_letheorem — For a score, target, population law, comparison parameter, and smooth regularity package, suppose an envelope is nonnegative and bounds how much the score's derivative can change across a closed ball around the target, and suppose the comparison parameter lies in that ball. At an observation, the first-order Taylor remainder is bounded by the envelope times the squared parameter displacement.hypothesesX :sharedType u_2E :sharedType u_3E → X → EEP :Measure Xreg :SmoothZEstimatorRegularity ψ θ₀ PL :X → ℝδ :ℝhLnonneg :∀ x, 0 ≤ L xhLbound :∀ η ∈ closedBall θ₀ δ,∀ η' ∈ closedBall θ₀ δ, ∀ x, ‖reg.deriv η x - reg.deriv η' x‖ ≤ L x * ‖η - η'‖hθ :θ ∈ closedBall θ₀ δx :Xconclusion‖ψ θ x - ψ θ₀ x - reg.deriv θ₀ x (θ - θ₀)‖ ≤ L x * ‖θ - θ₀‖ ^ 2Proof (Lean source)
theorem score_taylor_remainder_le {ψ : E → X → E} {θ₀ θ : E} {P : Measure X} (reg : SmoothZEstimatorRegularity ψ θ₀ P) {L : X → ℝ} {δ : ℝ} (hLnonneg : ∀ x, 0 ≤ L x) (hLbound : ∀ η ∈ closedBall θ₀ δ, ∀ η' ∈ closedBall θ₀ δ, ∀ x, ‖reg.deriv η x - reg.deriv η' x‖ ≤ L x * ‖η - η'‖) (hθ : θ ∈ closedBall θ₀ δ) (x : X) : ‖ψ θ x - ψ θ₀ x - reg.deriv θ₀ x (θ - θ₀)‖ ≤ L x * ‖θ - θ₀‖ ^ 2 := by exact norm_taylor_remainder_le_of_fderiv_lipschitz (fun η => ψ η x) (fun η => reg.deriv η x) θ₀ θ (hLnonneg x) (fun η hη η' hη' => hLbound η hη η' hη' x) (fun η => reg.hasFDeriv η x) hθ
ArgmaxStability 1 core · 0 supporting This module proves convergence of exact maximizers from uniform convergence on an eventually common compact set and uniqueness of the limiting maximizer. ★ tendsto_argmax_of_eventually_mem_compact
Deterministic argmax stability
This module proves convergence of exact maximizers from uniform convergence on an eventually common compact set and uniqueness of the limiting maximizer.
Deterministic argmax stability. Let criterion : ℕ → E → ℝ be a sequence of objective functions with pointwise limit limitCriterion, over a compact set K. Suppose the limiting maximizer limitArgmax lies in K, limitCriterion is continuous on K, limitArgmax maximizes limitCriterion over K, and it is the unique maximizer over K, up to equal criterion values. If criterion converges to limitCriterion uniformly on K, each argmax N eventually lies in K, and argmax N eventually maximizes criterion N over K, then the sequence argmax converges to limitArgmax.
Formal statement
Proof (Lean source)
EmpiricalExpansion 1 core · 3 supporting This module supplies the population expansion and the high-level stochastic-equicontinuity route used by zEstimator_asymLinear. ★ localStochasticExpansion
Empirical expansion for Z-estimators
This module supplies the population expansion and the high-level
stochastic-equicontinuity route used by zEstimator_asymLinear. It derives
empiricalScoreDiff_isLittleOp_sqrt from an assumed StochEquicontAt package
and consistency, restates the population derivative as
populationScoreDiff_eq_jacobian_plus_remainder, and combines those inputs in
localStochasticExpansion. It also proves the standalone mean-square score
control score_diff_L2_isLittleOp_sqrt; no bridge from that result to
StochEquicontAt is formalized here.
Local stochastic expansion for Z-estimators. For a criterion function ψ with population Fréchet-Jacobian reg.J₀ at θ₀, an i.i.d. sample S, and an estimator sequence θn, suppose θn is consistent for θ₀, the centered empirical process of ψ is stochastically equicontinuous at θ₀ along θn, and θn approaches θ₀ at the parametric rate, ‖θn − θ₀‖ = O_p(1/√n). Then the empirical average score difference (1/√n) Σᵢ (ψ(θn,Zᵢ) − ψ(θ₀,Zᵢ)) agrees with its linearization √n · reg.J₀(θn − θ₀) up to an o_p(1) remainder in norm.
Formal statement
Proof (Lean source)
3 supporting declarations (lemmas, instances)
-
score_diff_L2_isLittleOp_sqrttheorem — (a) Score difference is o_p(1) in mean square. For a score, target parameter, sampling law, iid sample, and estimator sequence, if the score has the stated almost-everywhere square-integrable local envelope and the estimator is consistent, then the empirical mean-square score difference is o_p(1).hypothesesΩ :sharedType u_1X :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure XS :IIDSample Ω X μ Pθn :ℕ → Ω → EhScoreEnvelope :∃ δ : ℝif0 < δ ∧ ∃ F : Xandthen‖ψ θ z - ψ θ₀ z‖ ≤ ‖θ - θ₀‖ * F zconclusionIsLittleOp (fun n ω => (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖^2) (fun _ => (1 : ℝ)) μProof (Lean source)
theorem score_diff_L2_isLittleOp_sqrt (ψ : E → X → E) (θ₀ : E) (P : Measure X) [IsProbabilityMeasure μ] (S : IIDSample Ω X μ P) (θn : ℕ → Ω → E) (hScoreEnvelope : ∃ δ : ℝ, 0 < δ ∧ ∃ F : X → ℝ, Measurable F ∧ (∀ z, 0 ≤ F z) ∧ Integrable (fun z => F z ^ 2) P ∧ ∀ᵐ z ∂P, ∀ θ : E, ‖θ - θ₀‖ < δ → ‖ψ θ z - ψ θ₀ z‖ ≤ ‖θ - θ₀‖ * F z) (hConsistent : ∀ ε > 0, Tendsto (fun n => μ {ω | ε < ‖θn n ω - θ₀‖}) atTop (𝓝 0)) : IsLittleOp (fun n ω => (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖^2) (fun _ => (1 : ℝ)) μ := by apply (Modes.isLittleOpF_iff_strict (fun _ => μ) (fun (n : ℕ) ω => (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2) atTop (fun _ => (1 : ℝ)) (Eventually.of_forall fun _ => zero_lt_one)).2 intro ε hε rw [ENNReal.tendsto_nhds_zero] intro γ hγ by_cases hγtop : γ = ⊤ · filter_upwards with n simp [hγtop] have hγpos : 0 < γ.toReal := ENNReal.toReal_pos (ne_of_gt hγ) hγtop let α : ℝ := γ.toReal / 4 have hαpos : 0 < α := by dsimp [α] linarith rcases hScoreEnvelope with ⟨δenv, hδenv, F, hFmeas, hFnonneg, hFint, hFbound⟩ let K : ℝ := ∫ z, F z ^ 2 ∂P have hK_nonneg : 0 ≤ K := by dsimp [K] exact integral_nonneg fun z => sq_nonneg (F z) let M : ℝ := (K + 1) / α have hK1pos : 0 < K + 1 := by linarith have hMpos : 0 < M := div_pos hK1pos hαpos have hKM_nonneg : 0 ≤ K / M := div_nonneg hK_nonneg (le_of_lt hMpos) have hKM_le : K / M ≤ α := by dsimp [M] field_simp [hαpos.ne', hK1pos.ne'] nlinarith [hK_nonneg, hαpos] let τ : ℝ := min δenv (sqrt (ε / (M + 1))) have hM1pos : 0 < M + 1 := by linarith have hτpos : 0 < τ := by dsimp [τ] exact lt_min hδenv (Real.sqrt_pos.mpr (div_pos hε hM1pos)) have hτhalf_pos : 0 < τ / 2 := by linarith have hτ_le_env : τ ≤ δenv := by dsimp [τ] exact min_le_left _ _ have hτ_le_sqrt : τ ≤ sqrt (ε / (M + 1)) := by dsimp [τ] exact min_le_right _ _ have hτsq_le : τ ^ 2 ≤ ε / (M + 1) := by have hs := pow_le_pow_left₀ (le_of_lt hτpos) hτ_le_sqrt 2 simpa [Real.sq_sqrt (div_nonneg (le_of_lt hε) (le_of_lt hM1pos))] using hs have hτsqM_lt : τ ^ 2 * M < ε := by have hmul := mul_le_mul_of_nonneg_right hτsq_le (le_of_lt hMpos) have hfrac : ε / (M + 1) * M < ε := by rw [div_mul_eq_mul_div] rw [div_lt_iff₀ hM1pos] nlinarith [hε, hMpos] exact lt_of_le_of_lt hmul hfrac let Mn : ℕ → Ω → ℝ := fun n ω => (n : ℝ)⁻¹ * ∑ i ∈ range n, F (S.Z i ω) ^ 2 have hFpow_meas : Measurable fun z => F z ^ 2 := hFmeas.pow_const 2 have hmap_i : ∀ i, μ.map (S.Z i) = P := by intro i calc μ.map (S.Z i) = μ.map (S.Z 0) := (S.identDist i).map_eq.symm _ = P := S.law have hint_i : ∀ i, Integrable (fun ω => F (S.Z i ω) ^ 2) μ := by intro i have hi : Integrable (fun z => F z ^ 2) (μ.map (S.Z i)) := by simpa [hmap_i i] using hFint simpa [Function.comp_def] using hi.comp_measurable (S.meas i) have hint_eq_i : ∀ i, (∫ ω, F (S.Z i ω) ^ 2 ∂μ) = K := by intro i calc (∫ ω, F (S.Z i ω) ^ 2 ∂μ) = ∫ z, F z ^ 2 ∂(μ.map (S.Z i)) := by exact (integral_map (S.meas i).aemeasurable hFpow_meas.aestronglyMeasurable).symm _ = K := by rw [hmap_i i] have hMn_nonneg_point : ∀ n ω, 0 ≤ Mn n ω := by intro n ω dsimp [Mn] exact mul_nonneg (inv_nonneg.mpr (Nat.cast_nonneg n)) (Finset.sum_nonneg fun i _hi => sq_nonneg (F (S.Z i ω))) have hMn_nonneg : ∀ n, 0 ≤ᵐ[μ] Mn n := by intro n exact Eventually.of_forall (hMn_nonneg_point n) have hMn_int : ∀ n, Integrable (Mn n) μ := by intro n dsimp [Mn] exact (integrable_finset_sum (range n) (fun i _hi => hint_i i)).const_mul _ have hMn_integral_le : ∀ n, (∫ ω, Mn n ω ∂μ) ≤ K := by intro n by_cases hn : n = 0 · subst n dsimp [Mn, K] simpa using hK_nonneg · have hnpos : 0 < n := Nat.pos_of_ne_zero hn have hnR : (n : ℝ) ≠ 0 := by exact_mod_cast hn dsimp [Mn] rw [integral_const_mul] rw [MeasureTheory.integral_finset_sum (range n)] · simp_rw [hint_eq_i] simp [Finset.sum_const, hnR] · intro i _hi exact hint_i i have hMn_markov : ∀ n, μ {ω | M < Mn n ω} ≤ ofReal (K / M) := by intro n have hge_real : (μ {ω | M ≤ Mn n ω}).toReal ≤ K / M := by have hmark := MeasureTheory.mul_meas_ge_le_integral_of_nonneg (hMn_nonneg n) (hMn_int n) M have hdiv : μ.real {ω | M ≤ Mn n ω} ≤ (∫ ω, Mn n ω ∂μ) / M := by rw [measureReal_def] exact (le_div_iff₀ hMpos).mpr (by simpa [measureReal_def, mul_comm] using hmark) exact le_trans hdiv (div_le_div_of_nonneg_right (hMn_integral_le n) (le_of_lt hMpos)) exact le_trans (measure_mono (by intro ω hω change M ≤ Mn n ω exact le_of_lt hω)) ((ENNReal.le_ofReal_iff_toReal_le (measure_ne_top μ _) hKM_nonneg).mpr hge_real) have hCons_le := (ENNReal.tendsto_nhds_zero.mp (hConsistent (τ / 2) hτhalf_pos)) (ofReal α) (ENNReal.ofReal_pos.mpr hαpos) have htwo_alpha_lt_gamma : ofReal (2 * α) < γ := by rw [ENNReal.ofReal_lt_iff_lt_toReal] · dsimp [α] linarith · dsimp [α] linarith [le_of_lt hγpos] · exact hγtop filter_upwards [hCons_le] with n hnCons exact le_of_lt <| calc μ {ω | ε * (fun _ => (1 : ℝ)) n < |(n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2|} ≤ μ ({ω | τ / 2 < ‖θn n ω - θ₀‖} ∪ {ω | M < Mn n ω}) := by apply measure_mono_ae have hFbound_i : ∀ i : ℕ, ∀ᵐ ω ∂μ, ∀ θ : E, ‖θ - θ₀‖ < δenv → ‖ψ θ (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ≤ ‖θ - θ₀‖ * F (S.Z i ω) := by intro i have hbound_map : ∀ᵐ z ∂(μ.map (S.Z i)), ∀ θ : E, ‖θ - θ₀‖ < δenv → ‖ψ θ z - ψ θ₀ z‖ ≤ ‖θ - θ₀‖ * F z := by simpa [hmap_i i] using hFbound exact ae_of_ae_map (S.meas i).aemeasurable hbound_map have hFbound_all : ∀ᵐ ω ∂μ, ∀ i ∈ range n, ∀ θ : E, ‖θ - θ₀‖ < δenv → ‖ψ θ (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ≤ ‖θ - θ₀‖ * F (S.Z i ω) := by rw [Finset.eventually_all] intro i _hi exact hFbound_i i filter_upwards [hFbound_all] with ω hFboundω hω replace hω : ε * (fun _ => (1 : ℝ)) n < |(n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2| := hω by_cases hn0 : n = 0 · subst n have hω0 : ε < 0 := by simpa using hω exact False.elim (not_lt_of_ge hε.le hω0) · have hnR_nonneg : 0 ≤ (n : ℝ)⁻¹ := inv_nonneg.mpr (Nat.cast_nonneg n) have hT_nonneg : 0 ≤ (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2 := by exact mul_nonneg hnR_nonneg (Finset.sum_nonneg fun i _hi => sq_nonneg _) have hTgt : ε < (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2 := by have hω' : ε < |(n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2| := by simpa using hω simpa [abs_of_nonneg hT_nonneg] using hω' by_cases hθsmall : ‖θn n ω - θ₀‖ ≤ τ / 2 · by_cases hMsmall : Mn n ω ≤ M · have hθ_lt_env : ‖θn n ω - θ₀‖ < δenv := by have hθ_lt_τ : ‖θn n ω - θ₀‖ < τ := by linarith [hθsmall, hτpos] exact lt_of_lt_of_le hθ_lt_τ hτ_le_env have hsum_le : (∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2) ≤ ‖θn n ω - θ₀‖ ^ 2 * ∑ i ∈ range n, F (S.Z i ω) ^ 2 := by rw [Finset.mul_sum] refine Finset.sum_le_sum ?_ intro i _hi have henv := hFboundω i _hi (θn n ω) hθ_lt_env have hrhs_nonneg : 0 ≤ ‖θn n ω - θ₀‖ * F (S.Z i ω) := mul_nonneg (norm_nonneg _) (hFnonneg _) have hsquare : ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2 ≤ (‖θn n ω - θ₀‖ * F (S.Z i ω)) ^ 2 := by have hnorm_nonneg : 0 ≤ ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ := norm_nonneg _ exact sq_le_sq' (by linarith) henv simpa [mul_pow] using hsquare have hT_le : (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2 ≤ ‖θn n ω - θ₀‖ ^ 2 * Mn n ω := by have hmul := mul_le_mul_of_nonneg_left hsum_le hnR_nonneg dsimp [Mn] nlinarith have hθsq_le : ‖θn n ω - θ₀‖ ^ 2 ≤ τ ^ 2 := by exact pow_le_pow_left₀ (norm_nonneg _) (by linarith) 2 have hprod_le : ‖θn n ω - θ₀‖ ^ 2 * Mn n ω ≤ τ ^ 2 * M := by have hMn_nonnegω : 0 ≤ Mn n ω := hMn_nonneg_point n ω exact mul_le_mul hθsq_le hMsmall hMn_nonnegω (sq_nonneg τ) have hT_lt : (n : ℝ)⁻¹ * ∑ i ∈ range n, ‖ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)‖ ^ 2 < ε := lt_of_le_of_lt (le_trans hT_le hprod_le) hτsqM_lt exact False.elim (not_lt_of_ge hT_lt.le hTgt) · exact inr (lt_of_not_ge hMsmall) · exact inl (lt_of_not_ge hθsmall) -- … truncated; follow the source link for the rest … -
empiricalScoreDiff_isLittleOp_sqrttheorem — (b) Empirical-process score difference is o_p(√n). For a score, target parameter, sampling law, iid sample, and estimator sequence, if the estimator is consistent and the score is stochastically equicontinuous along it, then the centered empirical score difference is o_p(√n).hypothesesΩ :sharedType u_1X :sharedType u_2Θ V :ψ :Θ → X → Vθ₀ :ΘP :Measure XS :IIDSample Ω X μ Pθn :ℕ → Ω → ΘhStochEquicont :StochEquicontAt ψ θ₀ P μ S θnconclusionIsLittleOp (fun n ω => ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖) (fun _ => (1 : ℝ)) μProof (Lean source)
theorem empiricalScoreDiff_isLittleOp_sqrt {Θ V : Type*} [NormedAddCommGroup Θ] [NormedSpace ℝ Θ] [NormedAddCommGroup V] [NormedSpace ℝ V] (ψ : Θ → X → V) (θ₀ : Θ) (P : Measure X) [IsProbabilityMeasure μ] (S : IIDSample Ω X μ P) (θn : ℕ → Ω → Θ) (hConsistent : ∀ ε > 0, Tendsto (fun n => μ {ω | ε < ‖θn n ω - θ₀‖}) atTop (𝓝 0)) (hStochEquicont : StochEquicontAt ψ θ₀ P μ S θn) : IsLittleOp (fun n ω => ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖) (fun _ => (1 : ℝ)) μ := by apply (Modes.isLittleOpF_iff_strict (fun _ => μ) (fun (n : ℕ) ω => ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖) atTop (fun _ => (1 : ℝ)) (Eventually.of_forall fun _ => zero_lt_one)).2 intro ε hε rw [ENNReal.tendsto_nhds_zero] intro γ hγ by_cases hγtop : γ = ⊤ · filter_upwards with n simp [hγtop] have hγpos : 0 < γ.toReal := ENNReal.toReal_pos (ne_of_gt hγ) hγtop let α : ℝ := γ.toReal / 4 have hαpos : 0 < α := by dsimp [α] linarith rcases hStochEquicont ε hε with ⟨δ, hδ_pos, hStoch⟩ have hδhalf_pos : 0 < δ / 2 := by linarith have hStoch_le := (ENNReal.tendsto_nhds_zero.mp hStoch) (ofReal α) (ENNReal.ofReal_pos.mpr hαpos) have hCons_le := (ENNReal.tendsto_nhds_zero.mp (hConsistent (δ / 2) hδhalf_pos)) (ofReal α) (ENNReal.ofReal_pos.mpr hαpos) have htwo_alpha_lt_gamma : ofReal (2 * α) < γ := by rw [ENNReal.ofReal_lt_iff_lt_toReal] · dsimp [α] linarith · dsimp [α] linarith [le_of_lt hγpos] · exact hγtop filter_upwards [hStoch_le, hCons_le] with n hnStoch hnCons exact le_of_lt <| calc μ {ω | ε * (fun _ => (1 : ℝ)) n < |‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖|} ≤ μ ({ω | ‖θn n ω - θ₀‖ < δ ∧ ε < ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖} ∪ {ω | δ / 2 < ‖θn n ω - θ₀‖}) := by apply measure_mono intro ω hω have hR : ε < ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖ := by simpa [abs_of_nonneg (norm_nonneg _)] using hω by_cases hθ : ‖θn n ω - θ₀‖ < δ · exact inl ⟨hθ, hR⟩ · exact inr (by have hδle : δ ≤ ‖θn n ω - θ₀‖ := le_of_not_gt hθ have hhalf_lt_delta : δ / 2 < δ := by linarith [hδ_pos] exact lt_of_lt_of_le hhalf_lt_delta hδle) _ ≤ μ {ω | ‖θn n ω - θ₀‖ < δ ∧ ε < ‖(sqrt (n : ℝ))⁻¹ • (∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω))) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P‖} + μ {ω | δ / 2 < ‖θn n ω - θ₀‖} := MeasureTheory.measure_union_le _ _ _ ≤ ofReal α + ofReal α := add_le_add hnStoch hnCons _ = ofReal (2 * α) := by rw [← ENNReal.ofReal_add] · congr 1 ring · linarith · linarith _ < γ := htwo_alpha_lt_gamma -
populationScoreDiff_eq_jacobian_plus_remaindertheorem — (c) Population Fréchet expansion of the score difference. The population mean of the score difference has the linearisation ∫ (ψ(θ,·) − ψ(θ₀,·)) dP = J₀ (θ − θ₀) + o(‖θ − θ₀‖) near θ₀.hypothesesX :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :ZEstimatorRegularity ψ θ₀ Pconclusion(fun θ => ∫ z, (ψ θ z - ψ θ₀ z) ∂P - reg.J₀ (θ - θ₀)) =o[𝓝 θ₀] fun θ => ‖θ - θ₀‖Proof (Lean source)
theorem populationScoreDiff_eq_jacobian_plus_remainder (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : ZEstimatorRegularity ψ θ₀ P) : (fun θ => ∫ z, (ψ θ z - ψ θ₀ z) ∂P - reg.J₀ (θ - θ₀)) =o[𝓝 θ₀] fun θ => ‖θ - θ₀‖ := by rcases reg.psi_int_neighborhood with ⟨δ, hδ_pos, hδ_int⟩ have hψ₀ : Integrable (ψ θ₀) P := by exact hδ_int θ₀ (by simpa using hδ_pos) have hbase : (fun θ => (∫ z, ψ θ z ∂P) - (∫ z, ψ θ₀ z ∂P) - reg.J₀ (θ - θ₀)) =o[𝓝 θ₀] fun θ => θ - θ₀ := reg.J₀_spec.isLittleO have hbase_norm : (fun θ => (∫ z, ψ θ z ∂P) - (∫ z, ψ θ₀ z ∂P) - reg.J₀ (θ - θ₀)) =o[𝓝 θ₀] fun θ => ‖θ - θ₀‖ := (Asymptotics.isLittleO_norm_right).mpr hbase refine hbase_norm.congr' ?_ EventuallyEq.rfl have hnear : ∀ᶠ θ in 𝓝 θ₀, ‖θ - θ₀‖ < δ := by refine Metric.eventually_nhds_iff.mpr ⟨δ, hδ_pos, ?_⟩ intro θ hθ simpa [dist_eq_norm] using hθ filter_upwards [hnear] with θ hθ rw [MeasureTheory.integral_sub (hδ_int θ (by simpa [dist_eq_norm] using hθ)) hψ₀]
ExtremumConsistency 3 core · 1 supporting This module packages primitive extremum-estimation conditions that imply the consistency assumptions used by Z-estimator and GMM asymptotic-linearity results. ★ zEstimator_asymLinear_of_extremum★ zEstimator_asymLinear_of_asymptoticEquicont★ zEstimator_asymLinear_of_extremum_asymptoticEquicont
Extremum consistency for M-estimation
This module packages primitive extremum-estimation conditions that imply the
consistency assumptions used by Z-estimator and GMM asymptotic-linearity results. The
format bridge consistent_lt_norm_of_le_dist adapts the empirical-process
consistency theorem to the linearization layer, while zEstimator_asymLinear_of_extremum,
zEstimator_asymLinear_of_asymptoticEquicont, and
zEstimator_asymLinear_of_extremum_asymptoticEquicont discharge
opaque consistency and equicontinuity hypotheses from Glivenko-Cantelli,
well-separated-optimum, and class-level equicontinuity inputs. (The parallel GMM
reductions live in Causalean/Stat/GMM/AsymptoticNormality.lean.)
Z-estimator asymptotic linearity from extremum primitives. Identical conclusion to zEstimator_asymLinear, but with consistency derived rather than assumed: given an auxiliary criterion function m, suppose the criterion class indexed by the parameter obeys a uniform law of large numbers, i.e. is Glivenko–Cantelli, the estimator approximately maximises the empirical criterion with a slack vanishing in probability, and the population criterion has a well-separated maximum at the target parameter. Then, provided the score process is stochastically equicontinuous at the target parameter along the estimator sequence, the estimator has a normalized empirical-score residual that is negligible in probability, then the estimator is asymptotically linear at the target parameter, with influence function minus the inverse Jacobian applied to the score at the target.
Formal statement
Proof (Lean source)
Z-estimator asymptotic linearity with the equicontinuity hypothesis discharged. If the estimator converges in probability to the target, the score family is locally asymptotically equicontinuous, and the normalized empirical-score residual is negligible in probability, then the estimator is asymptotically linear with the inverse-Jacobian score influence function.
Formal statement
Proof (Lean source)
Z-estimator asymptotic linearity from primitive conditions: both opaque hypotheses discharged. If the criterion class is Glivenko–Cantelli, the estimator approximately maximizes it with vanishing slack, the population criterion has a well-separated target maximum, the score family is locally asymptotically equicontinuous, and the normalized empirical-score residual is negligible in probability, then the estimator is asymptotically linear with the inverse-Jacobian score influence function.
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
consistent_lt_norm_of_le_disttheorem — Format bridge. On a normed group dist x θ₀ = ‖x − θ₀‖, so the consistency statement produced by mEstimator_consistent_of_glivenkoCantelli (phrased with ε ≤ dist (θn n) θ₀) implies the strictly-larger-radius form ε < ‖θn n − θ₀‖ consumed by the CLT layer. {ε < ‖·‖} ⊆ {ε ≤ dist}, so the measures are squeezed to 0.hypothesesE :Type*θn :ℕ → Ω → Eθ₀ :Eε > 0 :Proof (Lean source)
theorem consistent_lt_norm_of_le_dist {E : Type*} [NormedAddCommGroup E] (θn : ℕ → Ω → E) (θ₀ : E) (h : ∀ ε : ℝ, 0 < ε → Tendsto (fun n => μ {ω | ε ≤ dist (θn n ω) θ₀}) atTop (𝓝 0)) : ∀ ε > 0, Tendsto (fun n => μ {ω | ε < ‖θn n ω - θ₀‖}) atTop (𝓝 0) := by intro ε hε refine tendsto_of_tendsto_of_tendsto_of_le_of_le' tendsto_const_nhds (h ε hε) (Eventually.of_forall fun n => zero_le) (Eventually.of_forall fun n => measure_mono ?_) intro ω hω simp only [Set.mem_setOf_eq, dist_eq_norm] at hω ⊢ exact le_of_lt hω
FiniteModelSelection 4 core · 4 supporting This module supplies a paper-independent finite-model consistency argument. ★ finite_penalized_argmin_consistent
Consistency of finite penalized model selection
This module supplies a paper-independent finite-model consistency argument. Coordinatewise convergence in probability is first upgraded to convergence of the largest coordinate error. It then shows that a selector minimizing a sample-size-scaled empirical loss plus deterministic sublinear penalties eventually lies in the population-minimizer class. The selector is expressed with an explicit tie rank so applications can impose a fixed deterministic tie rule; consistency does not require the rank to be injective.
For an indexed real vector and a deterministic target vector, the largest absolute coordinate error is the maximum of their coordinatewise absolute differences over a finite nonempty index type.
Definition (Lean source)
For a population-loss vector, the population-minimizer class contains exactly the model indices attaining its smallest loss.
Definition (Lean source)
Given a deterministic tie rank, a criterion vector, and a selected model index, the ranked-minimizer condition says that the selected model has a smaller criterion than each competitor, or an equal criterion and no larger rank.
Definition (Lean source)
Let empirical losses have population losses under a probability measure, with deterministic penalties, a deterministic tie rank, and a selected model. If each empirical loss converges in probability, population minimizers are separated by a positive gap, each penalty is sublinear, the selector is always the ranked minimizer of the penalized empirical criterion, and each success event is measurable, then the probability of selecting a population minimizer converges to one.
Formal statement
Proof (Lean source)
4 supporting declarations (lemmas, instances)
-
tendsto_inProb_finiteMaxErrortheorem — If empirical loss vectors have coordinatewise population targets under a sampling measure, and each coordinate converges in probability, then the largest absolute coordinate error converges in probability to zero.hypothesesΩ :sharedType u_1empirical :ℕ → Ω → ι → ℝpopulation :ι → ℝμ :Measure Ωhcoord :∀ i,Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)conclusionModes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => finiteMaxError (empirical n ω) population) atTop (fun _ _ => 0)Proof (Lean source)
theorem tendsto_inProb_finiteMaxError [Fintype ι] [Nonempty ι] (empirical : ℕ → Ω → ι → ℝ) (population : ι → ℝ) (μ : Measure Ω) (hcoord : ∀ i, Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)) : Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => finiteMaxError (empirical n ω) population) atTop (fun _ _ => 0) := by classical have hcontinuous : ContinuousAt (fun x => finiteMaxError x population) population := by apply Continuous.continuousAt exact Continuous.finset_sup'_apply univ_nonempty fun i _ => ((continuous_apply i).sub continuous_const).abs simpa [finiteMaxError] using (Modes.TendstoInProbability.pi_comp_continuousAt hcontinuous hcoord) -
tendsto_measure_finiteMaxError_ge_zerotheorem — If empirical loss vectors have coordinatewise population targets under a sampling measure, and each coordinate converges in probability, then, for a positive tolerance, the probability that the largest coordinate error exceeds that tolerance converges to zero.hypothesesΩ :sharedType u_1empirical :ℕ → Ω → ι → ℝpopulation :ι → ℝμ :Measure Ωhcoord :∀ i,Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)ε :ℝhε :0 < εconclusionProof (Lean source)
theorem tendsto_measure_finiteMaxError_ge_zero [Fintype ι] [Nonempty ι] (empirical : ℕ → Ω → ι → ℝ) (population : ι → ℝ) (μ : Measure Ω) (hcoord : ∀ i, Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)) {ε : ℝ} (hε : 0 < ε) : Tendsto (fun n => μ {ω | ε ≤ finiteMaxError (empirical n ω) population}) atTop (𝓝 0) := by classical have hconv := tendsto_inProb_finiteMaxError empirical population μ hcoord rw [Tendsto_inProb_iff, tendstoInMeasure_iff_dist] at hconv have hnonneg : ∀ n ω, 0 ≤ finiteMaxError (empirical n ω) population := by intro n ω obtain ⟨i⟩ := ‹Nonempty ι› exact (abs_nonneg (empirical n ω i - population i)).trans (Finset.le_sup' (s := univ) (f := fun j => |empirical n ω j - population j|) (Finset.mem_univ i)) simpa [Real.dist_eq, abs_of_nonneg (hnonneg _ _)] using hconv ε hε -
letheorem — If a selected model is a ranked minimizer, then, for each competing model, its criterion value is no larger than the competitor's.hypothesesconclusioncriterion selected ≤ criterion jProof (Lean source)
theorem IsRankedMinimizer.le {rank : ι → ℕ} {criterion : ι → ℝ} {selected : ι} (h : IsRankedMinimizer rank criterion selected) (j : ι) : criterion selected ≤ criterion j := by rcases h j with hlt | ⟨heq, _⟩ · exact hlt.le · exact heq.le -
finite_penalized_argmin_failure_tendsto_zerotheorem — Let empirical losses have population losses under a probability measure, with deterministic penalties, a deterministic tie rank, and a selected model. If each empirical loss converges in probability, population minimizers are separated by a positive gap, each penalty is sublinear, and the selector is always the ranked minimizer of the penalized empirical criterion, then the probability of selecting outside the population-minimizer class converges to zero.hypothesesΩ :sharedType u_1empirical :ℕ → Ω → ι → ℝpopulation :ι → ℝpenalty :ℕ → ι → ℝrank :ι → ℕselector :ℕ → Ω → ιμ :hcoord :∀ i,Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)hgap :∃ gap : ℝ,0 < gap ∧∀ i ∈ populationMinimizers population,∀ j ∉ populationMinimizers population, population i + gap ≤ population jhselect :∀ (n : ℕ) (ω : Ω),IsRankedMinimizer rank (fun i => (n : ℝ) * empirical n ω i + penalty n i) (selector n ω)conclusionProof (Lean source)
theorem finite_penalized_argmin_failure_tendsto_zero [Fintype ι] [Nonempty ι] (empirical : ℕ → Ω → ι → ℝ) (population : ι → ℝ) (penalty : ℕ → ι → ℝ) (rank : ι → ℕ) (selector : ℕ → Ω → ι) (μ : Measure Ω) [IsProbabilityMeasure μ] (hcoord : ∀ i, Modes.TendstoInProbability (fun _ : ℕ => μ) (fun n ω => empirical n ω i) atTop (fun _ _ => population i)) (hgap : ∃ gap : ℝ, 0 < gap ∧ ∀ i ∈ populationMinimizers population, ∀ j ∉ populationMinimizers population, population i + gap ≤ population j) (hpenalty : ∀ i, Tendsto (fun n => penalty n i / (n : ℝ)) atTop (𝓝 0)) (hselect : ∀ (n : ℕ) (ω : Ω), IsRankedMinimizer rank (fun i => (n : ℝ) * empirical n ω i + penalty n i) (selector n ω)) : Tendsto (fun n => μ {ω | selector n ω ∉ populationMinimizers population}) atTop (𝓝 0) := by classical rcases Finset.exists_min_image univ population univ_nonempty with ⟨i₀, _, hi₀⟩ have hi₀min : i₀ ∈ populationMinimizers population := by intro j exact hi₀ j (Finset.mem_univ j) rcases hgap with ⟨gap, hgap_pos, hgap⟩ let δ : ℝ := gap / 8 have hδ_pos : 0 < δ := by dsimp [δ] positivity have hpen_event : ∀ᶠ n in atTop, ∀ i, |penalty n i / (n : ℝ)| < δ := by rw [Filter.eventually_all] intro i have hi := (hpenalty i).eventually (Metric.ball_mem_nhds 0 hδ_pos) simpa only [Metric.mem_ball, Real.dist_eq, sub_zero] using hi have hn_event : ∀ᶠ n : ℕ in atTop, 0 < n := by filter_upwards [eventually_ge_atTop 1] with n hn omega have hsubset : ∀ᶠ n : ℕ in atTop, {ω | selector n ω ∉ populationMinimizers population} ⊆ {ω | δ ≤ finiteMaxError (empirical n ω) population} := by filter_upwards [hpen_event, hn_event] with n hpen hn intro ω hfail by_contra hsmall_not have hsmall : finiteMaxError (empirical n ω) population < δ := lt_of_not_ge hsmall_not have hcoord_bound : ∀ i, |empirical n ω i - population i| < δ := by intro i exact lt_of_le_of_lt (Finset.le_sup' (s := univ) (f := fun j => |empirical n ω j - population j|) (Finset.mem_univ i)) hsmall have hnreal : 0 < (n : ℝ) := by exact_mod_cast hn have hnreal_ne : (n : ℝ) ≠ 0 := hnreal.ne' have hopt := IsRankedMinimizer.le (hselect n ω) i₀ have hoptdiv : empirical n ω (selector n ω) + penalty n (selector n ω) / (n : ℝ) ≤ empirical n ω i₀ + penalty n i₀ / (n : ℝ) := by calc empirical n ω (selector n ω) + penalty n (selector n ω) / (n : ℝ) = ((n : ℝ) * empirical n ω (selector n ω) + penalty n (selector n ω)) / (n : ℝ) := by field_simp _ ≤ ((n : ℝ) * empirical n ω i₀ + penalty n i₀) / (n : ℝ) := (div_le_div_iff_of_pos_right hnreal).2 hopt _ = empirical n ω i₀ + penalty n i₀ / (n : ℝ) := by field_simp have hgap_sel := hgap i₀ hi₀min (selector n ω) hfail have hsel_error := hcoord_bound (selector n ω) have hi₀_error := hcoord_bound i₀ have hsel_pen := hpen (selector n ω) have hi₀_pen := hpen i₀ rw [abs_lt] at hsel_error hi₀_error hsel_pen hi₀_pen dsimp [δ] at hsel_error hi₀_error hsel_pen hi₀_pen linarith have hmax := tendsto_measure_finiteMaxError_ge_zero empirical population μ hcoord hδ_pos exact tendsto_of_tendsto_of_tendsto_of_le_of_le' tendsto_const_nhds hmax (Filter.Eventually.of_forall fun _ => bot_le) (hsubset.mono fun n hn => measure_mono hn)
FinitePoissonConsistency 2 core · 2 supporting This module proves uniform convergence of finite Poisson objectives, compact containment and convergence of their maximizers, and continuity of the selected maximizer under perturbations of the finite mean vector. ★ finitePoissonObjective_argmax_tendsto★ finitePoissonObjective_argmax_continuousAt_mean
Consistency and continuity of finite Poisson projections
This module proves uniform convergence of finite Poisson objectives, compact containment and convergence of their maximizers, and continuity of the selected maximizer under perturbations of the finite mean vector.
Stability of finite Poisson maximizers under convergence of weights and means. Given a sequence of finite Poisson criteria with weights qN N and means mN N, suppose the limiting weights are strictly positive, the limiting means are strictly positive, the linear design map is injective, the weights qN N converge cellwise to the limiting weights q, and the means mN N converge cellwise to the limiting means m. If argmax N maximizes the N-th criterion, eventually in N, and limitArgmax is the unique global maximizer of the limiting criterion, then the maximizer sequence argmax converges to limitArgmax.
Formal statement
Proof (Lean source)
Continuity of the finite Poisson maximizer in the means. If every cell weight is strictly positive and the base mean vector m₀ has every entry strictly positive, and the linear design map is injective, then the selected maximizer of the finite Poisson criterion is continuous, as a function of the mean vector, at m₀.
Formal statement
Proof (Lean source)
2 supporting declarations (lemmas, instances)
-
finitePoissonObjective_tendstoUniformlyOnlemma — Pointwise convergence of the finitely many weights and means gives uniform convergence of the finite Poisson objective on every compact parameter set.hypothesesconclusionTendstoUniformlyOn (fun N => finitePoissonObjective (qN N) (mN N) A) (finitePoissonObjective q m A) atTop KProof (Lean source)
lemma finitePoissonObjective_tendstoUniformlyOn {E I : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E] [Fintype I] (qN mN : ℕ → I → ℝ) (q m : I → ℝ) (A : E →ₗ[ℝ] (I → ℝ)) (K : Set E) (hK : IsCompact K) (hq : ∀ i, Tendsto (fun N => qN N i) atTop (nhds (q i))) (hm : ∀ i, Tendsto (fun N => mN N i) atTop (nhds (m i))) : TendstoUniformlyOn (fun N => finitePoissonObjective (qN N) (mN N) A) (finitePoissonObjective q m A) atTop K := by let cN : ℕ → (I → ℝ) × (I → ℝ) := fun N => (qN N, mN N) let c : (I → ℝ) × (I → ℝ) := (q, m) let F : ((I → ℝ) × (I → ℝ)) → E → ℝ := fun p x => finitePoissonObjective p.1 p.2 A x have hc : Tendsto cN atTop (nhds c) := by exact (tendsto_pi_nhds.mpr hq).prodMk_nhds (tendsto_pi_nhds.mpr hm) let U := closedBall c 1 letI : ProperSpace ((I → ℝ) × (I → ℝ)) := FiniteDimensional.proper_real _ have hU : IsCompact U := ProperSpace.isCompact_closedBall c 1 have hcU : c ∈ U := by simp [U] have hevent : ∀ᶠ N in atTop, cN N ∈ U := by have := (Metric.tendsto_nhds.mp hc 1 zero_lt_one) filter_upwards [this] with N hN exact Metric.mem_closedBall.mpr hN.le have hcWithin : Tendsto cN atTop (nhdsWithin c U) := by rw [nhdsWithin] exact tendsto_inf.2 ⟨hc, tendsto_principal.2 hevent⟩ have hcont : Continuous (uncurry F) := by unfold F finitePoissonObjective fun_prop have hUC : UniformContinuousOn (uncurry F) (U ×ˢ K) := (hU.prod hK).uniformContinuousOn_of_continuous hcont.continuousOn have hlocal : TendstoUniformlyOn F (F c) (nhdsWithin c U) K := hUC.tendstoUniformlyOn hcU intro V hV exact hcWithin.eventually (hlocal V hV) -
finitePoissonObjective_eventually_common_compactlemma — Convergent positive coefficients and a fixed injective design put any eventual sequence of global maximizers in one common compact ball.hypothesesE I :qN mN :ℕ → I → ℝq m :I → ℝA :E →ₗ[ℝ] (I → ℝ)argmax :ℕ → Ehqpos :∀ i, 0 < q ihmpos :∀ i, 0 < m ihA :hmax :∀ᶠ N in atTop, ∀ y, finitePoissonObjective (qN N) (mN N) A y≤ finitePoissonObjective (qN N) (mN N) A (argmax N)Proof (Lean source)
lemma finitePoissonObjective_eventually_common_compact {E I : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [FiniteDimensional ℝ E] [Fintype I] (qN mN : ℕ → I → ℝ) (q m : I → ℝ) (A : E →ₗ[ℝ] (I → ℝ)) (argmax : ℕ → E) (hqpos : ∀ i, 0 < q i) (hmpos : ∀ i, 0 < m i) (hA : Injective A) (hq : ∀ i, Tendsto (fun N => qN N i) atTop (nhds (q i))) (hm : ∀ i, Tendsto (fun N => mN N i) atTop (nhds (m i))) (hmax : ∀ᶠ N in atTop, ∀ y, finitePoissonObjective (qN N) (mN N) A y ≤ finitePoissonObjective (qN N) (mN N) A (argmax N)) : ∃ K : Set E, IsCompact K ∧ ∀ᶠ N in atTop, argmax N ∈ K := by classical let w : I → ℝ := fun i => q i / 2 * min (m i / 2) 1 let B : E →ₗ[ℝ] (I → ℝ) := { toFun := fun x i => w i * A x i map_add' := by intro x y; funext i; simp; ring map_smul' := by intro c x; funext i; simp; ring } have hwpos : ∀ i, 0 < w i := by intro i exact mul_pos (half_pos (hqpos i)) (lt_min (half_pos (hmpos i)) zero_lt_one) have hB : Injective B := by intro x y hxy apply hA funext i have hi := congrFun hxy i dsimp [B] at hi exact (mul_left_cancel₀ (ne_of_gt (hwpos i)) hi) obtain ⟨L, hL, hanti⟩ := (LinearMap.injective_iff_antilipschitz B).mp hB let kappa : ℝ := L⁻¹ have hkappa : 0 < kappa := inv_pos.mpr hL have hBnorm (x : E) : kappa * ‖x‖ ≤ ‖B x‖ := by have h := hanti x 0 have hh := ENNReal.toReal_mono (by finiteness) h have h' : ‖x‖ ≤ (L : ℝ) * ‖B x‖ := by simpa [edist_dist, dist_eq_norm, ENNReal.toReal_mul] using hh change (L : ℝ)⁻¹ * ‖x‖ ≤ ‖B x‖ calc (L : ℝ)⁻¹ * ‖x‖ ≤ (L : ℝ)⁻¹ * ((L : ℝ) * ‖B x‖) := mul_le_mul_of_nonneg_left h' (inv_nonneg.mpr hL.le) _ = ((L : ℝ)⁻¹ * (L : ℝ)) * ‖B x‖ := by ring _ = ‖B x‖ := by rw [inv_mul_cancel₀ (show (L : ℝ) ≠ 0 by exact_mod_cast ne_of_gt hL)] simp have hbounds : ∀ᶠ N in atTop, ∀ i, q i / 2 < qN N i ∧ qN N i < 2 * q i ∧ m i / 2 < mN N i ∧ mN N i < 2 * m i := by rw [Filter.eventually_all] intro i filter_upwards [ (tendsto_order.1 (hq i)).1 (q i / 2) (by linarith [hqpos i]), (tendsto_order.1 (hq i)).2 (2 * q i) (by linarith [hqpos i]), (tendsto_order.1 (hm i)).1 (m i / 2) (by linarith [hmpos i]), (tendsto_order.1 (hm i)).2 (2 * m i) (by linarith [hmpos i])] with N hqlo hqhi hmlo hmhi exact ⟨hqlo, hqhi, hmlo, hmhi⟩ let M : ℝ := ∑ i, (2 * q i) * ((2 * m i + 1) ^ 2 / 2) let Q : ℝ := ∑ i, 2 * q i have hM : 0 ≤ M := Finset.sum_nonneg fun i _ => mul_nonneg (mul_nonneg (by norm_num) (hqpos i).le) (div_nonneg (sq_nonneg _) (by norm_num)) have hQ : 0 ≤ Q := Finset.sum_nonneg fun i _ => mul_nonneg (by norm_num) (hqpos i).le let R : ℝ := (M + Q) / kappa have hR : 0 ≤ R := div_nonneg (add_nonneg hM hQ) hkappa.le let K : Set E := closedBall 0 R letI : ProperSpace E := proper_real E refine ⟨K, ProperSpace.isCompact_closedBall 0 R, ?_⟩ filter_upwards [hbounds, hmax] with N hb hmaxN have htail (x : E) : finitePoissonObjective (qN N) (mN N) A x ≤ M - ‖B x‖ := by have hterm : ∀ i, qN N i * (mN N i * A x i - exp (A x i)) ≤ (2 * q i) * ((2 * m i + 1) ^ 2 / 2) - |B x i| := by intro i have hc := poissonCell_linear_coercive_bound (mN N i) (A x i) (lt_trans (half_pos (hmpos i)) (hb i).2.2.1) have hqn : 0 ≤ qN N i := (lt_trans (half_pos (hqpos i)) (hb i).1).le have hlower : w i ≤ qN N i * min (mN N i) 1 := by exact mul_le_mul (le_of_lt (hb i).1) (min_le_min (le_of_lt (hb i).2.2.1) le_rfl) (le_min (half_pos (hmpos i)).le zero_le_one) hqn have habs : |B x i| = w i * |A x i| := by dsimp [B] rw [abs_mul, abs_of_pos (hwpos i)] rw [habs] have hcoarse := mul_le_mul_of_nonneg_left hc hqn have hconst : qN N i * ((mN N i + 1) ^ 2 / 2) ≤ (2 * q i) * ((2 * m i + 1) ^ 2 / 2) := by have hmn0 : 0 ≤ mN N i := (lt_trans (half_pos (hmpos i)) (hb i).2.2.1).le have hmupper := (hb i).2.2.2 have hsq : (mN N i + 1) ^ 2 ≤ (2 * m i + 1) ^ 2 := by nlinarith exact mul_le_mul (le_of_lt (hb i).2.1) (div_le_div_of_nonneg_right hsq (by norm_num)) (div_nonneg (sq_nonneg _) (by norm_num)) (mul_nonneg (by norm_num) (hqpos i).le) nlinarith [mul_le_mul_of_nonneg_right hlower (abs_nonneg (A x i))] calc finitePoissonObjective (qN N) (mN N) A x ≤ ∑ i, ((2 * q i) * ((2 * m i + 1) ^ 2 / 2) - |B x i|) := Finset.sum_le_sum fun i _ => hterm i _ = M - ∑ i, |B x i| := by rw [Finset.sum_sub_distrib] _ ≤ M - ‖B x‖ := by gcongr rw [Pi.norm_def] have hnn : (Finset.univ.sup fun i => ‖B x i‖₊) ≤ ∑ i, ‖B x i‖₊ := Finset.sup_le fun i _ => Finset.single_le_sum (f := fun j => ‖B x j‖₊) (fun j _ => zero_le) (Finset.mem_univ i) calc ((Finset.univ.sup fun i => ‖B x i‖₊ : NNReal) : ℝ) ≤ ((∑ i, ‖B x i‖₊ : NNReal) : ℝ) := NNReal.coe_le_coe.mpr hnn _ = ∑ i, |B x i| := by simp [Real.norm_eq_abs] have hzero : -Q ≤ finitePoissonObjective (qN N) (mN N) A 0 := by unfold finitePoissonObjective simp only [map_zero, Pi.zero_apply, mul_zero, Real.exp_zero, zero_sub, mul_neg, mul_one, Finset.sum_neg_distrib, neg_le_neg_iff] exact Finset.sum_le_sum fun i _ => (hb i).2.1.le have hchain := (hzero.trans (hmaxN 0)).trans (htail (argmax N)) have hbn := hBnorm (argmax N) have hnorm : ‖argmax N‖ ≤ R := by dsimp [R] apply (le_div_iff₀ hkappa).2 linarith simpa [K, Metric.mem_closedBall, dist_eq_norm] using hnorm
FinitePoissonDerivative 2 core · 0 supporting This module differentiates the unique maximizer of a full-rank finite Poisson criterion when one cell mean follows a positive exponential path. ★ finitePoissonObjective_expCell_argmax_snd_hasDerivAt
One-cell derivatives of finite Poisson projections
This module differentiates the unique maximizer of a full-rank finite Poisson criterion when one cell mean follows a positive exponential path.
Given a finite index set with decidable equality, a real-valued vector of cell means, one cell index, a real scale, and a real path coordinate, the exponentially updated cell-mean vector agrees with the original vector at every cell other than the selected one and assigns the selected cell the value .
Definition (Lean source)
Derivative of the finite Poisson maximizer under one exponentially perturbed cell mean. Suppose every cell weight is strictly positive, every base cell mean is strictly positive, the perturbation scale B is strictly positive, and the linear design map is injective; consider replacing cell j's mean by the exponential path x ↦ B · exp x. If betaDot is the unique value solving the score equation linearized at the maximizer for base point x₀, for every perturbation direction, then the second (scalar) coordinate of the maximizer, as a function of x, has derivative betaDot at x₀.
Formal statement
Proof (Lean source)
FinitePoissonSign 1 core · 0 supporting This module characterizes the sign of one selected coefficient from the score at a conditional nuisance fit with that coefficient fixed at zero. ★ finitePoissonObjective_snd_sign_of_nuisance_score
Conditional sign characterization for finite Poisson projections
This module characterizes the sign of one selected coefficient from the score at a conditional nuisance fit with that coefficient fixed at zero.
Sign of the selected scalar coefficient from the nuisance score. Suppose every cell weight is strictly positive, every cell mean is strictly positive, the linear design map is injective, and the conditional nuisance fit u₀, with the scalar coordinate held at zero, clears every nuisance-direction score. Then the selected scalar coefficient of the finite Poisson maximizer has exactly the sign of the remaining scalar score: it is negative, zero, or positive exactly when the scalar score is.
Formal statement
Proof (Lean source)
LogLinearScore 4 core · 1 supporting This module is the worked counterexample motivating the neighbourhood form of the Lipschitz hypotheses in Stat/EmpiricalProcess/Equicontinuity/ and Stat/MEstimation/SmoothZEstimator.lean. ★ logLinearScoreDeriv_lipschitz_on_ball★ logLinearScoreDeriv_not_globally_lipschitz
The log-linear (Poisson) score is locally but not globally Lipschitz
This module is the worked counterexample motivating the neighbourhood form of the Lipschitz
hypotheses in Stat/EmpiricalProcess/Equicontinuity/ and Stat/MEstimation/SmoothZEstimator.lean.
For Poisson regression with a log link the observationwise score is
ψ(θ, (x,y)) = (y - exp (θ x)) x, with parameter derivative -(exp (θ x) x²). Two facts about
that derivative are proved here:
* on any ball around a target it is Lipschitz in the parameter, with the explicit envelope
|x|³ exp ((|θ₀| + δ) |x|), which is integrable under a standard exponential-moment condition
on the regressor;
* there is no global Lipschitz envelope at all — already for the single observation with
regressor and outcome one, the requirement is contradicted, because exp outgrows every
linear function.
Together these say the neighbourhood hypothesis is satisfiable exactly where the global one is not, so localizing it is what admits Poisson regression, exponential-mean GMM and nonlinear least squares with an exponential link.
For a parameter and an observation consisting of a regressor and an outcome, the log-link Poisson score is the regressor times the outcome's deviation from the modeled mean exp (θ x).
Definition (Lean source)
For a parameter and an observation, the parameter derivative of the log-link Poisson score is minus the modeled mean times the squared regressor.
Definition (Lean source)
For an observation, a target, and two parameters in the ball of radius δ around it, the score derivative moves by at most the exponential-moment envelope times the parameter distance.
Formal statement
Proof (Lean source)
No radius-free Lipschitz envelope exists for the log-link Poisson score derivative, already at the single observation whose regressor and outcome are one.
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
hasDerivAt_logLinearScoretheorem — For a parameter and an observation, the log-link Poisson score is differentiable in the parameter with the stated derivative.hypothesesθ :ℝz :ℝ × ℝconclusionProof (Lean source)
theorem hasDerivAt_logLinearScore (θ : ℝ) (z : ℝ × ℝ) : HasDerivAt (fun s => logLinearScore s z) (logLinearScoreDeriv θ z) θ := by have hexp : HasDerivAt (fun s : ℝ => exp (s * z.1)) (exp (θ * z.1) * z.1) θ := by simpa using ((hasDerivAt_id θ).mul_const z.1).exp have h : HasDerivAt (fun s : ℝ => (z.2 - exp (s * z.1)) * z.1) ((0 - exp (θ * z.1) * z.1) * z.1) θ := ((hasDerivAt_const θ z.2).sub hexp).mul_const z.1 have hval : logLinearScoreDeriv θ z = (0 - exp (θ * z.1) * z.1) * z.1 := by simp only [logLinearScoreDeriv] ring rw [hval] exact h
SmoothTaylor 1 core · 0 supporting This module provides the Banach-space Taylor remainder bound shared by smooth Z-estimation and smooth GMM. ★ norm_taylor_remainder_le_of_fderiv_lipschitz
Taylor bounds from locally Lipschitz derivatives
This module provides the Banach-space Taylor remainder bound shared by smooth Z-estimation and smooth GMM. It turns a derivative Lipschitz bound on a closed ball into a quadratic first-order remainder bound between the ball's center and any comparison point in the ball.
For a function between normed real vector spaces and its derivative field, a center and comparison point, suppose the derivative field is the Fréchet derivative everywhere, its changes on a closed ball are bounded by a nonnegative Lipschitz constant, and the comparison point lies in that ball. Then the first-order Taylor remainder between the center and comparison point is bounded by the Lipschitz constant times their squared distance.
Formal statement
Proof (Lean source)
SmoothZEstimatorSampleFn 1 core · 1 supporting This module specializes the smooth-score asymptotic-linearity and normality theorems to estimators implemented as functions of IIDSample.sampleVector. ★ zEstimator_tendsto_normal_of_smoothScore_of_sampleFn
Smooth-score Z-estimators defined on finite sample vectors
This module specializes the smooth-score asymptotic-linearity and normality
theorems to estimators implemented as functions of IIDSample.sampleVector.
The wrappers retain the approximate estimating-equation condition and inherit
the internally derived root-sample-size rate.
Sample-function smooth-score asymptotic normality. Given a score, target, population law, and smooth regularity package, evaluate an estimator on finite sample vectors using an iid sample. If it is consistent, has an o_p(n⁻¹/²) estimating-equation residual, and has measurable rescalings, then its rescaled laws converge to the centered Gaussian generated by -V⁻¹ ψ(θ₀,·).
Formal statement
Proof (Lean source)
1 supporting declaration (lemmas, instances)
-
zEstimator_asymLinear_of_smoothScore_of_sampleFntheorem — Sample-function smooth-score asymptotic linearity. Given a score, target, population law, and smooth regularity package, evaluate an estimator on finite sample vectors using an iid sample. If the resulting estimator is consistent and has an o_p(n⁻¹/²) estimating-equation residual, then it is asymptotically linear with influence function -V⁻¹ ψ(θ₀,·).hypothesesΩ :sharedType u_1X :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :SmoothZEstimatorRegularity ψ θ₀ PS :IIDSample Ω X μ Pest :(n : ℕ) → (Fin n → X) → EhMoment :IsLittleOp (fun n ω => ‖(sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ (est n (S.sampleVector n ω)) (S.Z i ω)‖) (fun _ => (1 : ℝ)) μconclusionIsAsymLinearVec (E := E) (fun n ω => est n (S.sampleVector n ω)) θ₀ reg.influence S (fun n => range n)Proof (Lean source)
theorem zEstimator_asymLinear_of_smoothScore_of_sampleFn (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : SmoothZEstimatorRegularity ψ θ₀ P) [IsProbabilityMeasure μ] (S : IIDSample Ω X μ P) (est : (n : ℕ) → (Fin n → X) → E) (hConsistent : ∀ ε > 0, Tendsto (fun n => μ {ω | ε < ‖est n (S.sampleVector n ω) - θ₀‖}) atTop (𝓝 0)) (hMoment : IsLittleOp (fun n ω => ‖(sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ (est n (S.sampleVector n ω)) (S.Z i ω)‖) (fun _ => (1 : ℝ)) μ) : IsAsymLinearVec (E := E) (fun n ω => est n (S.sampleVector n ω)) θ₀ reg.influence S (fun n => range n) := zEstimator_asymLinear_of_smoothScore ψ θ₀ P reg S (fun n ω => est n (S.sampleVector n ω)) hConsistent hMoment
ZEstimatorCLT 2 core · 3 supporting This file establishes asymptotic linearity and normality for parametric estimators defined by empirical estimating equations. ★ zEstimator_asymLinear★ zEstimator_tendsto_normal
Z-estimator Asymptotic Linearity
This file establishes asymptotic linearity and normality for parametric estimators defined by empirical estimating equations. It turns a local stochastic expansion into an influence-function representation and then applies the concrete multivariate central limit theorem to obtain the centered Gaussian limit with the influence-function covariance.
Use this high-level route when stochastic equicontinuity is supplied directly,
as in Newey--McFadden (1994), Theorem 7.2, or Andrews (1994); it is the route
intended for nonsmooth scores. For observationwise smooth scores use
SmoothZEstimator, and for scores with a square-integrable Lipschitz envelope
use LipschitzZEstimator (van der Vaart 1998, Theorem 5.21).
Z-estimator asymptotic linearity. For a score, target, population law, and regularity package, an iid sample and estimator sequence, if the estimator is consistent, the centered score process is stochastically equicontinuous along the estimator, and the normalized empirical score at the estimator is negligible in probability, then the estimator has the influence-function representation obtained by applying the negative inverse Jacobian to the target score.
Formal statement
Proof (Lean source)
Z-estimator asymptotic normality. For a score, target, population law, and regularity package, if an estimator based on an iid sample is consistent, its score is stochastically equicontinuous along the estimator, its normalized estimating-equation residual is negligible in probability, and its rescaled version is measurable almost everywhere, then its rescaled laws converge to the concrete centered Gaussian generated by the inverse-Jacobian influence function.
Formal statement
Proof (Lean source)
3 supporting declarations (lemmas, instances)
-
influenceFunctiontheorem — For a Z-estimation score, target, population law, and regularity package, the negative inverse-Jacobian score satisfies the common influence-function regularity interface.hypothesesX :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :ZEstimatorRegularity ψ θ₀ PconclusionInfluenceFunction P (fun z => -(reg.J₀_inv (ψ θ₀ z)))Proof (Lean source)
theorem ZEstimatorRegularity.influenceFunction (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : ZEstimatorRegularity ψ θ₀ P) : InfluenceFunction P (fun z => -(reg.J₀_inv (ψ θ₀ z))) := by have hmeas : Measurable (fun z => -(reg.J₀_inv (ψ θ₀ z))) := reg.J₀_inv.continuous.measurable.comp (reg.psi_meas θ₀) |>.neg have hbound : ∀ z, ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 ≤ ‖reg.J₀_inv‖ ^ 2 * ‖ψ θ₀ z‖ ^ 2 := by intro z have hnorm : ‖reg.J₀_inv (ψ θ₀ z)‖ ≤ ‖reg.J₀_inv‖ * ‖ψ θ₀ z‖ := reg.J₀_inv.le_opNorm (ψ θ₀ z) have hleft_nonneg : 0 ≤ ‖reg.J₀_inv (ψ θ₀ z)‖ := norm_nonneg _ have hop_nonneg : 0 ≤ ‖reg.J₀_inv‖ := norm_nonneg _ have hψ_nonneg : 0 ≤ ‖ψ θ₀ z‖ := norm_nonneg _ calc ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 = ‖reg.J₀_inv (ψ θ₀ z)‖ ^ 2 := by rw [norm_neg] _ ≤ ‖reg.J₀_inv‖ ^ 2 * ‖ψ θ₀ z‖ ^ 2 := by nlinarith have hvar : Integrable (fun z => ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2) P := by refine (reg.finite_var.const_mul (‖reg.J₀_inv‖ ^ 2)).mono' ?_ ?_ · exact hmeas.norm.pow_const 2 |>.aestronglyMeasurable · refine Eventually.of_forall fun z => ?_ have hz_nonneg : 0 ≤ ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 := sq_nonneg _ simpa [Real.norm_eq_abs, abs_of_nonneg hz_nonneg] using hbound z have hmean : ∫ z, -(reg.J₀_inv (ψ θ₀ z)) ∂P = 0 := by rcases reg.psi_int_neighborhood with ⟨δ, hδ_pos, hδ_int⟩ have hψ₀ : Integrable (ψ θ₀) P := hδ_int θ₀ (by simpa using hδ_pos) calc ∫ z, -(reg.J₀_inv (ψ θ₀ z)) ∂P = -(∫ z, reg.J₀_inv (ψ θ₀ z) ∂P) := by rw [MeasureTheory.integral_neg] _ = -(reg.J₀_inv (∫ z, ψ θ₀ z ∂P)) := by rw [ContinuousLinearMap.integral_comp_comm reg.J₀_inv hψ₀] _ = 0 := by simp [reg.identification] exact ⟨hmeas, hmean, hvar⟩ -
zEstimatorInfluence_measurabletheorem — For a Z-estimation score, target, population law, and regularity package, the resulting influence function is measurable.hypothesesX :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :ZEstimatorRegularity ψ θ₀ PconclusionMeasurable (fun z => -(reg.J₀_inv (ψ θ₀ z)))Proof (Lean source)
@[fun_prop] theorem zEstimatorInfluence_measurable (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : ZEstimatorRegularity ψ θ₀ P) : Measurable (fun z => -(reg.J₀_inv (ψ θ₀ z))) := reg.J₀_inv.continuous.measurable.comp (reg.psi_meas θ₀) |>.neg -
integrable_sq_zEstimatorInfluencetheorem — For a Z-estimation score, target, population law, and regularity package, the squared norm of the resulting influence function is integrable.hypothesesX :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :ZEstimatorRegularity ψ θ₀ PconclusionIntegrable (fun z => ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2) PProof (Lean source)
@[fun_prop] theorem integrable_sq_zEstimatorInfluence (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : ZEstimatorRegularity ψ θ₀ P) : Integrable (fun z => ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2) P := by have hbound : ∀ z, ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 ≤ ‖reg.J₀_inv‖ ^ 2 * ‖ψ θ₀ z‖ ^ 2 := by intro z have hnorm : ‖reg.J₀_inv (ψ θ₀ z)‖ ≤ ‖reg.J₀_inv‖ * ‖ψ θ₀ z‖ := reg.J₀_inv.le_opNorm (ψ θ₀ z) have hleft_nonneg : 0 ≤ ‖reg.J₀_inv (ψ θ₀ z)‖ := norm_nonneg _ have hop_nonneg : 0 ≤ ‖reg.J₀_inv‖ := norm_nonneg _ have hψ_nonneg : 0 ≤ ‖ψ θ₀ z‖ := norm_nonneg _ calc ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 = ‖reg.J₀_inv (ψ θ₀ z)‖ ^ 2 := by rw [norm_neg] _ ≤ ‖reg.J₀_inv‖ ^ 2 * ‖ψ θ₀ z‖ ^ 2 := by nlinarith refine (reg.finite_var.const_mul (‖reg.J₀_inv‖ ^ 2)).mono' ?_ ?_ · exact (zEstimatorInfluence_measurable ψ θ₀ P reg).norm.pow_const 2 |>.aestronglyMeasurable · refine Eventually.of_forall fun z => ?_ have hz_nonneg : 0 ≤ ‖-(reg.J₀_inv (ψ θ₀ z))‖ ^ 2 := sq_nonneg _ simpa [Real.norm_eq_abs, abs_of_nonneg hz_nonneg] using hbound z
ZEstimatorRate 1 core · 2 supporting This module derives the root-sample-size stochastic rate for a consistent Z-estimator from population differentiability, nonsingularity, stochastic equicontinuity, and an approximate estimating equation. ★ zEstimator_rootRate
Root-sample-size rates for Z-estimators
This module derives the root-sample-size stochastic rate for a consistent Z-estimator from population differentiability, nonsingularity, stochastic equicontinuity, and an approximate estimating equation. The proof is the Newey--McFadden (1994), Theorem 7.2, stochastic-absorption argument, with Andrews (1994) stochastic equicontinuity retained as a high-level condition.
Root-sample-size rate for an approximate-root Z-estimator. For a score, target, population law, and regularity package, an iid sample and estimator sequence, if the estimator is consistent, the centered score process is stochastically equicontinuous, and the normalized estimating equation residual is negligible in probability, then the root-sample-size estimation error is bounded in probability.
Formal statement
Proof (Lean source)
2 supporting declarations (lemmas, instances)
-
zEstimator_rootRate_of_scoreBoundtheorem — Z-estimator rate from an absorbable score bound. For a score, target, population law, and regularity package, an iid sample, and an estimator sequence, suppose the estimator is consistent, its centered score process is stochastically equicontinuous, a nonnegative random coefficient is negligible, a nonnegative forcing term is bounded in probability, and the normalized score at the estimator is bounded by that forcing term plus the coefficient times the rescaled estimation error. Then the rescaled estimation error is bounded in probability.hypothesesΩ :sharedType u_1X :sharedType u_2E :sharedType u_3ψ :E → X → Eθ₀ :EP :Measure Xreg :ZEstimatorRegularity ψ θ₀ PS :IIDSample Ω X μ Pθn :ℕ → Ω → EhStochEquicont :StochEquicontAt ψ θ₀ P μ S θnA B :ℕ → Ω → ℝhAlittle :IsLittleOp A (fun _ => (1 : ℝ)) μhBbig :IsBigOp B (fun _ => (1 : ℝ)) μhA_nonneg :∀ n ω, 0 ≤ A n ωhB_nonneg :∀ n ω, 0 ≤ B n ωProof (Lean source)
theorem zEstimator_rootRate_of_scoreBound (ψ : E → X → E) (θ₀ : E) (P : Measure X) (reg : ZEstimatorRegularity ψ θ₀ P) [IsProbabilityMeasure μ] (S : IIDSample Ω X μ P) (θn : ℕ → Ω → E) (hConsistent : ∀ ε > 0, Tendsto (fun n => μ {ω | ε < ‖θn n ω - θ₀‖}) atTop (𝓝 0)) (hStochEquicont : StochEquicontAt ψ θ₀ P μ S θn) (A B : ℕ → Ω → ℝ) (hAlittle : IsLittleOp A (fun _ => (1 : ℝ)) μ) (hBbig : IsBigOp B (fun _ => (1 : ℝ)) μ) (hA_nonneg : ∀ n ω, 0 ≤ A n ω) (hB_nonneg : ∀ n ω, 0 ≤ B n ω) (hScoreBound : ∀ (n : ℕ) (ω : Ω), ‖(sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ (θn n ω) (S.Z i ω)‖ ≤ B n ω + A n ω * ‖Real.sqrt (n : ℝ) • (θn n ω - θ₀)‖) : IsBigOp (fun n ω => sqrt (n : ℝ) * ‖θn n ω - θ₀‖) (fun _ => (1 : ℝ)) μ := by let : IsProbabilityMeasure P := by rw [← S.law] exact Measure.isProbabilityMeasure_map (S.meas 0).aemeasurable let U : ℕ → Ω → E := IsAsymLinearVec.normalizedSum S (ψ θ₀) (fun n => range n) let T : ℕ → Ω → E := fun n ω => (sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ (θn n ω) (S.Z i ω) let Q : ℕ → Ω → E := fun n ω => (sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, (ψ (θn n ω) (S.Z i ω) - ψ θ₀ (S.Z i ω)) - sqrt (n : ℝ) • ∫ z, (ψ (θn n ω) z - ψ θ₀ z) ∂P let R : E → E := fun θ => (∫ z, (ψ θ z - ψ θ₀ z) ∂P) - reg.J₀ (θ - θ₀) let d : ℕ → Ω → ℝ := fun n ω => ‖θn n ω - θ₀‖ let C : ℕ → Ω → ℝ := fun n ω => if d n ω = 0 then 0 else ‖R (θn n ω)‖ / d n ω let Y : ℕ → Ω → ℝ := fun n ω => ‖Real.sqrt (n : ℝ) • (θn n ω - θ₀)‖ let c : ℝ := ‖reg.J₀_inv‖ + 1 let Ac : ℕ → Ω → ℝ := fun n ω => c * (A n ω + C n ω) let Bb : ℕ → Ω → ℝ := fun n ω => c * (B n ω + ‖U n ω‖ + ‖Q n ω‖) have hc : 0 < c := by dsimp [c] linarith [norm_nonneg reg.J₀_inv] have hJleft : ∀ x : E, reg.J₀_inv (reg.J₀ x) = x := by have hsurj : Surjective reg.J₀ := fun y => ⟨reg.J₀_inv y, by have h := congrArg (fun L : E →L[ℝ] E => L y) reg.J₀_inverse simpa using h⟩ have hinj : Injective reg.J₀ := (LinearMap.injective_iff_surjective (f := (reg.J₀ : E →ₗ[ℝ] E))).mpr hsurj intro x apply hinj have h := congrArg (fun L : E →L[ℝ] E => L (reg.J₀ x)) reg.J₀_inverse simpa using h have hU_def : ∀ n ω, U n ω = (sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ θ₀ (S.Z i ω) := by intro n ω simp [U, IsAsymLinearVec.normalizedSum_def] have hUmeas : ∀ n, AEMeasurable (U n) μ := by intro n rw [show U n = fun ω => (sqrt (n : ℝ))⁻¹ • ∑ i ∈ range n, ψ θ₀ (S.Z i ω) by funext ω exact hU_def n ω] exact ((Finset.measurable_sum _ (fun i _ => (reg.psi_meas θ₀).comp (S.meas i))).const_smul _).aemeasurable have hUclt : Modes.TendstoInLaw (fun _ : ℕ => μ) U atTop (gaussianLimit (reg.psi_meas θ₀) reg.finite_var) := by exact S.clt_normalizedSum_vec (reg.psi_meas θ₀) reg.finite_var reg.identification have hNormUclt := Modes.TendstoInLaw.map_continuous (hX := hUclt) continuous_norm have hUbig : IsBigOp (fun n ω => ‖U n ω‖) (fun _ => (1 : ℝ)) μ := by letI : IsProbabilityMeasure ((gaussianLimit (reg.psi_meas θ₀) reg.finite_var).map norm) := Measure.isProbabilityMeasure_map continuous_norm.measurable.aemeasurable exact Modes.TendstoInLaw.tightness ((Tendsto_dist_iff _ _ _ (fun n => continuous_norm.measurable.comp_aemeasurable (hUmeas n))).2 hNormUclt) have hQlittle : IsLittleOp (fun n ω => ‖Q n ω‖) (fun _ => (1 : ℝ)) μ := by simpa [Q] using empiricalScoreDiff_isLittleOp_sqrt ψ θ₀ P S θn hConsistent hStochEquicont have hQbig := hQlittle.isBigOp_one have hF : R =o[𝓝 θ₀] fun θ => ‖θ - θ₀‖ := by simpa [R] using populationScoreDiff_eq_jacobian_plus_remainder ψ θ₀ P reg have hClittle : IsLittleOp C (fun _ => (1 : ℝ)) μ := by intro ε hε have hhalf_pos : 0 < ε / 2 := by linarith have hnear0 := hF.def hhalf_pos have hnear : ∀ᶠ θ in 𝓝 θ₀, ‖R θ‖ ≤ (ε / 2) * ‖θ - θ₀‖ := by filter_upwards [hnear0] with θ hθ simpa [Real.norm_eq_abs, abs_of_nonneg (norm_nonneg (θ - θ₀))] using hθ rcases Metric.eventually_nhds_iff.mp hnear with ⟨ρ, hρpos, hρ⟩ have hρhalf : 0 < ρ / 2 := by linarith have hcons := hConsistent (ρ / 2) hρhalf refine tendsto_of_tendsto_of_tendsto_of_le_of_le' tendsto_const_nhds hcons (Eventually.of_forall fun _ => bot_le) ?_ filter_upwards with n apply measure_mono intro ω hω have hCge : ε ≤ C n ω := by simpa [abs_of_nonneg (by positivity : 0 ≤ C n ω)] using hω by_contra hnot have hdle : d n ω ≤ ρ / 2 := le_of_not_gt hnot have hdlt : d n ω < ρ := lt_of_le_of_lt hdle (by linarith) have hRle : ‖R (θn n ω)‖ ≤ (ε / 2) * d n ω := by exact hρ (by simpa [dist_eq_norm, d] using hdlt) by_cases hd0 : d n ω = 0 · have hCzero : C n ω = 0 := by simp [C, hd0] linarith · have hdpos : 0 < d n ω := lt_of_le_of_ne (norm_nonneg _) (Ne.symm hd0) have hCle : C n ω ≤ ε / 2 := by dsimp [C] rw [if_neg hd0] exact (div_le_iff₀ hdpos).2 hRle linarith have hC_nonneg : ∀ n ω, 0 ≤ C n ω := by intro n ω dsimp [C] split_ifs · exact le_rfl · positivity have hRbound : ∀ n ω, ‖R (θn n ω)‖ ≤ C n ω * d n ω := by intro n ω by_cases hd0 : d n ω = 0 · have hθ : θn n ω = θ₀ := by have : θn n ω - θ₀ = 0 := norm_eq_zero.mp (by simpa [d] using hd0) exact sub_eq_zero.mp this simp [R, C, d, hθ] · have hdpos : 0 < d n ω := lt_of_le_of_ne (norm_nonneg _) (Ne.symm hd0) dsimp [C] rw [if_neg hd0] exact le_of_eq ((div_mul_cancel₀ _ hd0).symm) have hExpansion : ∀ n ω, ‖T n ω - (U n ω + reg.J₀ (sqrt (n : ℝ) • (θn n ω - θ₀)))‖ ≤ ‖Q n ω‖ + C n ω * Y n ω := by intro n ω have hid : T n ω - (U n ω + reg.J₀ (sqrt (n : ℝ) • (θn n ω - θ₀))) = Q n ω + sqrt (n : ℝ) • R (θn n ω) := by rw [hU_def] dsimp [T, U, Q, R] simp only [Finset.sum_sub_distrib, map_smul] module rw [hid] refine (norm_add_le _ _).trans (add_le_add le_rfl ?_) rw [norm_smul_of_nonneg (Real.sqrt_nonneg _)] calc sqrt (n : ℝ) * ‖R (θn n ω)‖ ≤ sqrt (n : ℝ) * (C n ω * d n ω) := mul_le_mul_of_nonneg_left (hRbound n ω) (Real.sqrt_nonneg _) _ = C n ω * Y n ω := by simp [Y, d, norm_smul, Real.norm_eq_abs, abs_of_nonneg (Real.sqrt_nonneg _)] ring have hAclittle : IsLittleOp Ac (fun _ => (1 : ℝ)) μ := by have hsum := hAlittle.add_one hClittle refine IsLittleOp.of_abs_le_const_mul_one hc hsum ?_ intro n ω simp [Ac, abs_mul, abs_of_pos hc] have hBsumBig : IsBigOp (fun n ω => B n ω + ‖U n ω‖ + ‖Q n ω‖) (fun _ => (1 : ℝ)) μ := by exact IsBigOp.add (IsBigOp.add hBbig hUbig) hQbig have hBbbig : IsBigOp Bb (fun _ => (1 : ℝ)) μ := by intro δ hδ obtain ⟨M, hM, htail⟩ := hBsumBig δ hδ refine ⟨c * M, mul_pos hc hM, ?_⟩ filter_upwards [htail] with n hn refine (measure_mono fun ω hω => ?_).trans hn simp only [Set.mem_setOf_eq, mul_one] at hω ⊢ dsimp [Bb] at hω rw [abs_mul, abs_of_pos hc] at hω rw [Real.norm_eq_abs] nlinarith have hAc_nonneg : ∀ n ω, 0 ≤ Ac n ω := by intro n ω exact mul_nonneg hc.le (add_nonneg (hA_nonneg n ω) (hC_nonneg n ω)) have hBb_nonneg : ∀ n ω, 0 ≤ Bb n ω := by intro n ω exact mul_nonneg hc.le <| add_nonneg (add_nonneg (hB_nonneg n ω) (norm_nonneg _)) (norm_nonneg _) have hY_nonneg : ∀ n ω, 0 ≤ Y n ω := fun n ω => norm_nonneg _ have hRateBound : ∀ n ω, Y n ω ≤ Bb n ω + Ac n ω * Y n ω := by intro n ω let v : E := sqrt (n : ℝ) • (θn n ω - θ₀) let err : E := T n ω - (U n ω + reg.J₀ v) have hvid : v = reg.J₀_inv (T n ω - U n ω - err) := by have hinside : T n ω - U n ω - err = reg.J₀ v := by dsimp [err] abel rw [hinside, hJleft] calc Y n ω = ‖v‖ := rfl _ = ‖reg.J₀_inv (T n ω - U n ω - err)‖ := by rw [hvid] _ ≤ ‖reg.J₀_inv‖ * ‖T n ω - U n ω - err‖ := reg.J₀_inv.le_opNorm _ _ ≤ ‖reg.J₀_inv‖ * (‖T n ω‖ + ‖U n ω‖ + ‖err‖) := by gcongr exact (norm_sub_le _ _).trans (add_le_add_left (norm_sub_le _ _) _) _ ≤ c * ((B n ω + A n ω * Y n ω) + ‖U n ω‖ + (‖Q n ω‖ + C n ω * Y n ω)) := by apply mul_le_mul · dsimp [c] linarith [norm_nonneg reg.J₀_inv] · exact add_le_add (add_le_add (hScoreBound n ω) le_rfl) (by simpa [err, v] using hExpansion n ω) · positivity · positivity _ = Bb n ω + Ac n ω * Y n ω := by simp only [Bb, Ac] ring have hYbig := hAclittle.isBigOp_of_absorption hBbbig hAc_nonneg hBb_nonneg hY_nonneg (Eventually.of_forall fun n => Eventually.of_forall fun ω => hRateBound n ω) simpa [Y, norm_smul, Real.norm_eq_abs, abs_of_nonneg (Real.sqrt_nonneg _)] using hYbig -
inverseRootRate_of_rootRatetheorem — If the root-sample-size estimation error is bounded in probability, then the unscaled error is bounded in probability at the inverse-root sample-size rate for the estimator and target.hypothesesE :sharedType u_3θn :ℕ → Ω → Eθ₀ :EProof (Lean source)
theorem inverseRootRate_of_rootRate (θn : ℕ → Ω → E) (θ₀ : E) (hRate : IsBigOp (fun n ω => sqrt (n : ℝ) * ‖θn n ω - θ₀‖) (fun _ => (1 : ℝ)) μ) : IsBigOp (fun n ω => ‖θn n ω - θ₀‖) (fun n => (sqrt (n : ℝ))⁻¹) μ := by intro ε hε rcases hRate ε hε with ⟨M₀, hM₀pos, hM₀tail⟩ let M := max M₀ 0 have hM₀M : M₀ ≤ M := le_max_left _ _ have hMpos : 0 < M := hM₀pos.trans_le hM₀M refine ⟨M, hMpos, ?_⟩ filter_upwards [hM₀tail, eventually_gt_atTop (0 : ℕ)] with n hnTail hn refine (measure_mono fun ω hω => ?_).trans hnTail have hsqrt : 0 < sqrt (n : ℝ) := Real.sqrt_pos.2 (by exact_mod_cast hn) have hnorm : M * (sqrt (n : ℝ))⁻¹ ≤ ‖θn n ω - θ₀‖ := by simpa [abs_of_nonneg (norm_nonneg _)] using hω have hM : M ≤ sqrt (n : ℝ) * ‖θn n ω - θ₀‖ := by calc M = sqrt (n : ℝ) * (M * (sqrt (n : ℝ))⁻¹) := by field_simp [hsqrt.ne'] _ ≤ sqrt (n : ℝ) * ‖θn n ω - θ₀‖ := mul_le_mul_of_nonneg_left hnorm hsqrt.le change M₀ * 1 ≤ |sqrt (n : ℝ) * ‖θn n ω - θ₀‖| rw [abs_of_nonneg (mul_nonneg hsqrt.le (norm_nonneg _))] simpa only [mul_one] using hM₀M.trans hM