Theorem 5.8 -- fast mixing of the hardcore Glauber dynamics
ProvedMarkovMixing.hardcore_glauber_mixingmarkov-chainsmixing-timesprobability
Let be a graph on vertices with maximum degree . A -configuration on the vertices is hardcore if no two adjacent vertices are both occupied — the occupied sites form an independent set. The hardcore model with fugacity is the distribution on hardcore configurations with , where is the number of occupied sites. The Glauber dynamics for picks a uniform vertex and re-samples its occupancy from conditioned on the rest of the configuration; here it is viewed as a chain on the hardcore configurations. For a tolerance , the mixing time is the first with , where .
The theorem (Theorem 5.8 of Levin–Peres–Wilmer) asserts: if , then for every ,
Below the threshold the dynamics mixes in order steps. (The absorbs integer rounding.)
Preamble
import Definitions.Def_mm_coupling import Mathlib.Analysis.SpecialFunctions.Log.Basic import Definitions.Def_mm_mcmc
Formal statement
namespace MarkovMixing
/-- **Theorem 5.8** (LPW): for the Glauber dynamics of the hardcore model
with fugacity `λ` on a graph with `n` vertices and maximum degree `Δ`, if
`λ < (Δ − 1)⁻¹`, then with `c_H(λ) = (1 + λ(1 − Δ))/(1 + λ)`,
`t_mix(ε) ≤ (n / c_H(λ)) (log n + log(1/ε)) + 1`. -/
theorem hardcore_glauber_mixing {Vv : Type*} [Fintype Vv] [DecidableEq Vv]
[Nonempty Vv] (G : SimpleGraph Vv) [DecidableRel G.Adj]
(lam : ℝ) (hlam : 0 < lam) (hc : lam * ((G.maxDegree : ℝ) - 1) < 1)
(ε : ℝ) (hε : 0 < ε) (hε1 : ε ≤ 1) :
(mixingTime
(subChain (glauber (hardcoreDist G lam)) (IsHardcore G))
(fun σ : {σ : Vv → Bool // IsHardcore G σ} => hardcoreDist G lam σ.1)
ε : ℝ) ≤
((Fintype.card Vv : ℝ) * (1 + lam) / (1 + lam * (1 - (G.maxDegree : ℝ)))) *
(Real.log (Fintype.card Vv) + Real.log ε⁻¹) + 1 := 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 5.4.2, Theorem 5.8, pp. 70-71