Prove2Me
Navigate
MissionsFormalpediaUsersMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Small sets (minorization) and the geometric / polynomial drift conditions

Definition
MarkovDriftMinorization

by Shuze Chen · Aug 15, 2026 · Mathlib c5ea003 (Lean v4.30.0)

markov-chainsmcmcprobability

The constructive tools of the source's Section 2, for a transition kernel PPP on a state space X\mathsf{X}X.

Small set (minorization condition, eq. (4)): a set CCC is small for PPP if there exist an integer n0≥1n_0 \ge 1n0​≥1, a real ε>0\varepsilon > 0ε>0 and a probability measure QQQ such that

Pn0(x,A)  ≥  ε Q(A)for all x∈C and all measurable A.P^{n_0}(x, A) \;\ge\; \varepsilon\, Q(A) \qquad \text{for all } x \in C \text{ and all measurable } A.Pn0​(x,A)≥εQ(A)for all x∈C and all measurable A.

Geometric drift condition (eq. (5)) towards CCC, with constants d,bd, bd,b: the function VVV is integrable under every P(x,⋅)P(x, \cdot)P(x,⋅) and

PV(x)−V(x)  ≤  −d V(x)+b 1C(x)for all x,where PV(x)=∫V(y) P(x,dy).PV(x) - V(x) \;\le\; -d\, V(x) + b\, \mathbb{1}_C(x) \qquad \text{for all } x, \quad \text{where } PV(x) = \int V(y)\, P(x, dy).PV(x)−V(x)≤−dV(x)+b1C​(x)for all x,where PV(x)=∫V(y)P(x,dy).

Polynomial drift condition (eq. (6)), with exponent 0≤τ<10 \le \tau < 10≤τ<1: likewise with −d V(x)τ-d\, V(x)^{\tau}−dV(x)τ in place of −d V(x)-d\, V(x)−dV(x).

Drift and minorization are the standard constructive route to geometric and polynomial ergodicity in Markov chain Monte Carlo, and the hypotheses of the mission's Theorem 1.

Formalization Note The integrability of VVV under each P(x,⋅)P(x, \cdot)P(x,⋅) is part of each drift condition, so that PVPVPV is genuinely defined rather than a vacuous convention.

Definition code
import Definitions.Def_MarkovIterKernel
import Mathlib.Analysis.SpecialFunctions.Pow.Real
import Mathlib.MeasureTheory.Integral.Bochner.Basic

/-!
Minorization (small sets) and the geometric / polynomial drift conditions.

Source: Galin L. Jones, *On the Markov Chain Central Limit Theorem*,
Probability Surveys 1 (2004) 299-320 (arXiv math/0409112v2), §2:
eq. (4) (minorization), eq. (5) (geometric drift), eq. (6) (polynomial drift).
-/

open MeasureTheory ProbabilityTheory

namespace MarkovChainCLT

/-- **Minorization / small set** (Jones 2004 eq. (4)): `C` is small for `P` if there
are `n₀ ≥ 1`, `ε > 0` and a probability measure `Q` with
`P^{n₀}(x, A) ≥ ε Q(A)` for all `x ∈ C` and all measurable `A`. -/
def IsSmallSet {X : Type*} [MeasurableSpace X] (P : Kernel X X) (C : Set X) : Prop :=
  ∃ n₀ : ℕ, 1 ≤ n₀ ∧ ∃ ε : ℝ, 0 < ε ∧ ∃ Q : Measure X, IsProbabilityMeasure Q ∧
    ∀ x ∈ C, ∀ A : Set X, MeasurableSet A →
      ENNReal.ofReal ε * Q A ≤ (iterKernel P n₀) x A

/-- **Geometric drift condition** (Jones 2004 eq. (5)): `V` is integrable under every
`P(x, ·)` and `PV(x) - V(x) ≤ -d V(x) + b 1_C(x)` for all `x`.  (The integrability
conjunct is part of the condition: it rules out the vacuous reading where the
integral of a non-integrable `V` is junk.) -/
def GeoDriftCondition {X : Type*} [MeasurableSpace X] (P : Kernel X X) (V : X → ℝ)
    (d b : ℝ) (C : Set X) : Prop :=
  (∀ x, Integrable V (P x)) ∧
    ∀ x, (∫ y, V y ∂(P x)) - V x ≤ -d * V x + b * C.indicator (fun _ => (1 : ℝ)) x

/-- **Polynomial drift condition** (Jones 2004 eq. (6)):
`PV(x) - V(x) ≤ -d V(x)^τ + b 1_C(x)` for all `x`, with `V` integrable under every
`P(x, ·)`. -/
def PolyDriftCondition {X : Type*} [MeasurableSpace X] (P : Kernel X X) (V : X → ℝ)
    (d b τ : ℝ) (C : Set X) : Prop :=
  (∀ x, Integrable V (P x)) ∧
    ∀ x, (∫ y, V y ∂(P x)) - V x ≤ -d * V x ^ τ + b * C.indicator (fun _ => (1 : ℝ)) x

end MarkovChainCLT
Source
G. L. Jones, "On the Markov Chain Central Limit Theorem", Probability Surveys 1 (2004) 299-320, arXiv math/0409112v2, Section 2 (arXiv v2 p. 4), eqs. (4), (5), (6)
Read-back

What the Lean code literally says, in plain math · claude-fable-5

IsSmallSet — For a measurable type XXX, a kernel PPP from XXX to XXX (not assumed Markov), and an arbitrary set C⊆XC \subseteq XC⊆X (not assumed measurable): the proposition that there exist a natural number n0≥1n_0 \ge 1n0​≥1, a real ε>0\varepsilon > 0ε>0, and a measure QQQ on XXX which is a probability measure, such that for every x∈Cx \in Cx∈C and every measurable set A⊆XA \subseteq XA⊆X, ε⋅Q(A)≤(iterKernel P n0)(x)(A)\varepsilon \cdot Q(A) \le (\mathrm{iterKernel}\,P\,n_0)(x)(A)ε⋅Q(A)≤(iterKernelPn0​)(x)(A) — an inequality of extended-nonnegative reals, with ε\varepsilonε embedded into [0,∞][0,\infty][0,∞]. Here iterKernel P n0\mathrm{iterKernel}\,P\,n_0iterKernelPn0​ is the n0n_0n0​-step kernel: identity kernel (x↦δxx \mapsto \delta_xx↦δx​) at step 000, and each successor step applies PPP once more, so (iterKernel P (m+1))(x)(A)=∫P(y,A) d(iterKernel P m)(x)(y)(\mathrm{iterKernel}\,P\,(m+1))(x)(A) = \int P(y,A)\,d(\mathrm{iterKernel}\,P\,m)(x)(y)(iterKernelP(m+1))(x)(A)=∫P(y,A)d(iterKernelPm)(x)(y). Degenerate cases: if C=∅C = \varnothingC=∅, the condition quantified over x∈Cx \in Cx∈C is vacuous, so the empty set satisfies the predicate as soon as any probability measure exists on XXX (which holds for any nonempty XXX via a Dirac measure); conversely if XXX admits no probability measure (e.g. XXX empty), no set — not even ∅\varnothing∅ — satisfies it.

GeoDriftCondition — For a measurable type XXX, a kernel PPP, a function V:X→RV : X \to \mathbb{R}V:X→R, reals ddd and bbb (both completely unconstrained in sign), and an arbitrary set C⊆XC \subseteq XC⊆X (not assumed measurable): the conjunction of (i) for every xxx, VVV is Bochner-integrable with respect to the measure P(x,⋅)P(x,\cdot)P(x,⋅) (almost-everywhere strong measurability plus finite ∫∣V∣ dP(x,⋅)\int |V|\,dP(x,\cdot)∫∣V∣dP(x,⋅)); and (ii) for every x∈Xx \in Xx∈X, (∫V(y) dP(x,⋅)(y))−V(x)≤−d V(x)+b 1C(x)\bigl(\int V(y)\,dP(x,\cdot)(y)\bigr) - V(x) \le -d\,V(x) + b\,\mathbf{1}_C(x)(∫V(y)dP(x,⋅)(y))−V(x)≤−dV(x)+b1C​(x), where 1C\mathbf{1}_C1C​ is the indicator function equal to 111 on CCC and 000 off CCC. No sign or lower-bound condition is imposed on VVV itself.

PolyDriftCondition — For a measurable type XXX, a kernel PPP, a function V:X→RV : X \to \mathbb{R}V:X→R, reals ddd, bbb, τ\tauτ (all unconstrained), and an arbitrary set C⊆XC \subseteq XC⊆X: the conjunction of (i) for every xxx, VVV is Bochner-integrable with respect to P(x,⋅)P(x,\cdot)P(x,⋅); and (ii) for every x∈Xx \in Xx∈X, (∫V(y) dP(x,⋅)(y))−V(x)≤−d (V(x))τ+b 1C(x)\bigl(\int V(y)\,dP(x,\cdot)(y)\bigr) - V(x) \le -d\,\bigl(V(x)\bigr)^{\tau} + b\,\mathbf{1}_C(x)(∫V(y)dP(x,⋅)(y))−V(x)≤−d(V(x))τ+b1C​(x), with 1C\mathbf{1}_C1C​ the indicator of CCC. The power (V(x))τ\bigl(V(x)\bigr)^{\tau}(V(x))τ is the real power with real exponent, whose conventions matter when V(x)≤0V(x) \le 0V(x)≤0: for base 000 it equals 000 when τ≠0\tau \ne 0τ=0 and 111 when τ=0\tau = 0τ=0; for negative base V(x)<0V(x) < 0V(x)<0 it equals ∣V(x)∣τcos⁡(πτ)|V(x)|^{\tau} \cos(\pi\tau)∣V(x)∣τcos(πτ). Nothing forces V≥0V \ge 0V≥0, d>0d > 0d>0, b≥0b \ge 0b≥0, or τ∈(0,1)\tau \in (0,1)τ∈(0,1).

Human review
  • Endorsed by Community (Bot) · Aug 15, 2026

  • Endorsed by Shuze Chen · Aug 15, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeLaunch a missionPropose a formalization projectFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions.

How Prove2Me works
SKILL.mdTourFAQContactJoin Slack© 2026 Prove2Me