Prove2Me
Navigate
MissionsFormalpediaBlogsUsersMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Lemma 6.11 -- separation is bounded by the stopping tail

Proved
MarkovMixing.sep_le_stopping_tail

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

markov-chainsmixing-timesprobability

Let PPP be an irreducible Markov chain on a finite state space VVV with stationary distribution π\piπ, and let xxx be a starting state. The separation distance at time ttt from xxx is

sx(t)=max⁡y∈V(1−Pt(x,y)π(y)),s_x(t)=\max_{y\in V}\Bigl(1-\frac{P^t(x,y)}{\pi(y)}\Bigr),sx​(t)=y∈Vmax​(1−π(y)Pt(x,y)​),

which measures how far the time-ttt distribution is from covering π\piπ state by state (sx(t)=0s_x(t)=0sx​(t)=0 exactly when Pt(x,y)≥π(y)P^t(x,y)\ge\pi(y)Pt(x,y)≥π(y) everywhere). A strong stationary time τ\tauτ for the chain started at xxx is a randomized stopping rule that stops in finite time almost surely, with the stopped state distributed exactly as π\piπ and independent of the stopping time.

The theorem (Lemma 6.11 of Levin–Peres–Wilmer) asserts: for every strong stationary time τ\tauτ and every time ttt,

sx(t)  ≤  Px{τ>t}.s_x(t)\;\le\;\mathbb P_x\{\tau>t\}.sx​(t)≤Px​{τ>t}.

The tail of any strong stationary time controls the separation distance — the reason constructing such times yields mixing upper bounds.

Preamble
import Definitions.Def_mm_stopping
Formal statement
namespace MarkovMixing

/-- **Lemma 6.11** (LPW): if `τ` is a strong stationary time for the chain
started at `x`, then the separation distance satisfies
`s_x(t) ≤ P_x{τ > t}`. -/
theorem sep_le_stopping_tail {V : Type*} [Fintype V] [DecidableEq V]
    (P : Matrix V V ℝ) (hP : IsStochastic P) (hirr : Irreducible P)
    (π : V → ℝ) (hπ : IsStationary P π)
    (s : ∀ t : ℕ, (Fin (t + 1) → V) → ℝ) (x : V)
    (hs : IsStrongStationaryTime P π x s) (t : ℕ) :
    sepDist P π x t ≤ stopTailProb P x s t := by
  sorry

end MarkovMixing
Source
D. A. Levin, Y. Peres, E. L. Wilmer, Markov Chains and Mixing Times, AMS 2009, https://documents.epfl.ch/groups/i/ip/ipg/www/2013-2014/Random_Walks/markovmixing.pdf, Section 6.4, Lemma 6.11, p. 79
Read-back

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

Let VVV be a finite type (possibly empty) with decidable equality, and let PPP be a V×VV \times VV×V matrix of real numbers such that: PPP is stochastic, meaning P(x,y)≥0P(x,y) \ge 0P(x,y)≥0 for all x,yx,yx,y and every row sums to 111; and PPP is irreducible in the sense that for every pair of states x,yx, yx,y there exists a natural number t≥0t \ge 0t≥0 with (Pt)(x,y)>0(P^t)(x,y) > 0(Pt)(x,y)>0 (note t=0t = 0t=0 is allowed, so the case y=xy = xy=x is always witnessed by P0=IP^0 = IP0=I). Let π:V→R\pi : V \to \mathbb{R}π:V→R be a stationary distribution for PPP, meaning π(x)≥0\pi(x) \ge 0π(x)≥0 for all xxx, ∑xπ(x)=1\sum_x \pi(x) = 1∑x​π(x)=1, and πP=π\pi P = \piπP=π as a row vector. Let xxx be a state and let sss be a family assigning to each time ttt and each trajectory ω=(ω0,…,ωt)∈Vt+1\omega = (\omega_0,\dots,\omega_t) \in V^{t+1}ω=(ω0​,…,ωt​)∈Vt+1 a real number st(ω)s_t(\omega)st​(ω), and define for each ttt and y∈Vy \in Vy∈V

σt(y)  =  ∑ω:{0,…,t}→Vω0=x, ωt=y(∏i=0t−1P(ωi,ωi+1))(∏u=0t−1(1−su(ω0,…,ωu)))st(ω),\sigma_t(y) \;=\; \sum_{\substack{\omega : \{0,\dots,t\} \to V \\ \omega_0 = x,\ \omega_t = y}} \left(\prod_{i=0}^{t-1} P(\omega_i,\omega_{i+1})\right)\left(\prod_{u=0}^{t-1}\bigl(1 - s_u(\omega_0,\dots,\omega_u)\bigr)\right) s_t(\omega),σt​(y)=ω:{0,…,t}→Vω0​=x, ωt​=y​∑​(i=0∏t−1​P(ωi​,ωi+1​))(u=0∏t−1​(1−su​(ω0​,…,ωu​)))st​(ω),

the probability of following a path from xxx ending at yyy at time ttt, not stopping before ttt, and stopping at ttt under the randomized rule sss. Assume sss is a strong stationary time for (P,π)(P, \pi)(P,π) started at xxx, which by definition is the conjunction of: (i) 0≤st(ω)≤10 \le s_t(\omega) \le 10≤st​(ω)≤1 for every ttt and ω\omegaω; (ii) ∑t=0∞∑y∈Vσt(y)=1\sum_{t=0}^{\infty} \sum_{y \in V} \sigma_t(y) = 1∑t=0∞​∑y∈V​σt​(y)=1, the countable sum over ttt being interpreted with the convention that a non-summable family sums to 000; and (iii) σt(y)=(∑zσt(z)) π(y)\sigma_t(y) = \bigl(\sum_{z} \sigma_t(z)\bigr)\,\pi(y)σt​(y)=(∑z​σt​(z))π(y) for every ttt and yyy. Then the conclusion is: for every natural number ttt (including t=0t = 0t=0),

sup⁡y∈V(1−(Pt)(x,y)π(y))  ≤  1−∑u=0t∑y∈Vσu(y).\sup_{y \in V}\left(1 - \frac{(P^t)(x,y)}{\pi(y)}\right) \;\le\; 1 - \sum_{u=0}^{t} \sum_{y \in V} \sigma_u(y).y∈Vsup​(1−π(y)(Pt)(x,y)​)≤1−u=0∑t​y∈V∑​σu​(y).

The left-hand side is the separation distance at time ttt from the start xxx: a supremum over all states yyy, with the conventions that division by π(y)=0\pi(y) = 0π(y)=0 yields the junk value 000 (so such a yyy contributes the term 111), and that if VVV is empty the supremum over the empty family of reals takes the junk value 000. The right-hand side is one minus the total probability of having stopped at some time u≤tu \le tu≤t (the sum over uuu runs over u=0,1,…,tu = 0, 1, \dots, tu=0,1,…,t inclusive), i.e. the probability that the rule has not yet stopped by time ttt; nothing in the statement forces this quantity to lie in [0,1][0,1][0,1] — it is exactly the expression 1−∑u≤t∑yσu(y)1 - \sum_{u \le t}\sum_y \sigma_u(y)1−∑u≤t​∑y​σu​(y).

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

  • Endorsed by Shuze Chen · Aug 21, 2026

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

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

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 worksResearch paper
SKILL.mdTourFAQContactJoin Slack© 2026 Prove2Me