Markov-chain Monte Carlo algorithms for studying cycle...

241
Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary Markov-chain Monte Carlo algorithms for studying cycle spaces, with some applications to graph colouring Tim Garoni Department of Mathematics and Statistics University of Melbourne (?) April 20, 2011 Monash Discrete Maths Seminar

Transcript of Markov-chain Monte Carlo algorithms for studying cycle...

Page 1: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Markov-chain Monte Carlo algorithms forstudying cycle spaces, with some

applications to graph colouring

Tim Garoni

Department of Mathematics and StatisticsUniversity of Melbourne (?)

April 20, 2011Monash Discrete Maths Seminar

Page 2: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Collaborators/References

1. Qingquan Liu, Youjin Deng, TGLoop models in three dimensions,in preparation.

2. Qingquan Liu, Youjin Deng, TG, and Jesús SalasIrreducible Markov-chain Monte Carlo algorithm for zero-temperature Pottsantiferromagnets,in preparation.

3. Qingquan Liu, Youjin Deng, and TG,Worm Monte Carlo study of the honeycomb-lattice loop model,Nucl. Phys. B 846, 283-315 (2011).

4. Wei Zhang, TG, and Youjin Deng,A worm algorithm for the fully-packed loop model,Nucl. Phys. B 814, 461-484 (2009).

5. Youjin Deng, TG, and Alan D. Sokal,Dynamic Critical Behavior of the Worm Algorithm for the Ising Model,Phys. Rev. Lett. 99, 110601 (2007).

Page 3: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms

Page 4: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models

Page 5: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method

Page 6: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models

Page 7: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

Page 8: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature

Page 9: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm

Page 10: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm◮ (Non)-irreducibility of WSK algorithm at zero temperature

Page 11: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Outline

◮ Loops & Worms◮ O(n)-loop models◮ Basics of the Markov-chain Monte Carlo method◮ Worm algorithm for O(n)-loop models◮ Proof of irreducibility in fully-packed limit

◮ Antiferromagnetic Potts models at zero temperature◮ Review of Wang-Swendsen-Kotecký (WSK) algorithm◮ (Non)-irreducibility of WSK algorithm at zero temperature◮ Using worm algorithm instead

Page 12: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

Page 13: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3

Page 14: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds

Page 15: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

Page 16: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

Page 17: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

◮ If G is large its infeasible to calculate ZG,n,x =∑

A∈C(G) nc(A) x |A|

Page 18: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Loop models◮ Consider a finite graph G

◮ Physicists love the honeycomb lattice◮ (Regular map of type {6, 3} on the torus)

◮ Take state space to be C(G)◮ Cycle space of G◮ {A ⊂ E : (V ,A) has no odd vertices}◮ = all disjoint unions of loops on G when

∆(G) ≤ 3◮ Assign probabilities via

φG,n,x(A) =nc(A) x |A|

ZG,n,x, A ∈ C(G)

◮ c(A) is cyclomatic number, |A| the number of bonds◮ Mathematical physics want to compute expectations wrt φG,n,x(·)

◮ As |V | → ∞ such models display critical phenomena: correlationson all scales, fractals,. . .

◮ If G is large its infeasible to calculate ZG,n,x =∑

A∈C(G) nc(A) x |A|

◮ So how can we sample from φG,n,x(·)?

Page 19: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

Page 20: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

Page 21: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π

Page 22: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

Page 23: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity

Page 24: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S

Page 25: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S◮ If P is irreducible it has a unique stationary distribution π

Page 26: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Elementary theory of finite Markov chains◮ Consider:

◮ A finite set S (state space)◮ A stochastic matrix P : S × S → [0, 1] (transition matrix)◮ A probability vector α : S → [0, 1] (initial distribution)

◮ Defines a Markov chain X1,X2, . . . on S◮ P(X0 = s) = α(s)◮ P(Xn+1 = s′|Xn = s) = P(s → s′)

◮ Probability vector π is a stationary distribution if π P = π◮ Don’t need to know Z to prove stationarity

◮ Detailed balance (πsPss′ = πs′Ps′s) implies stationarity◮ P is irreducible if s ↔ s′ for all s, s′ ∈ S◮ If P is irreducible it has a unique stationary distribution π

Theorem (Ergodic Theorem)If P is irreducible with stationary distribution π then for any initialdistribution

1N

N∑

n=1

f (Xn) −−−−→N→∞

s∈S

π(s) f (s) a.s.

Page 27: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π

Page 28: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

Page 29: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)

Page 30: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)

Page 31: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

Page 32: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

Page 33: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case

Page 34: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

Page 35: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is

Page 36: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random

Page 37: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random

Page 38: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

Page 39: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

Page 40: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Metropolized Chains◮ We want a transition matrix P in detailed balance with π◮ Suppose we have a symmetric transition matrix Ψ

◮ Construct P from Ψ by introducing acceptance probabilities◮ Accept proposed transitions Ψ(s → s′) with probability a(s → s′)◮ P(s → s′) = a(s → s′)Ψ(s → s′)◮ Demanding P be in detailed balance with π implies

π(s) a(s → s′)Ψ(s → s′) = π(s′) a(s′ → s)Ψ(s′ → s)

◮ a(s → s′) = min(1, π(s′)/π(s)) is maximal solution

◮ Irreducibility of P needs to be checked case-by-case◮ E.g. Ising model on G = (V ,E)

◮ S = {−1, 1}V

◮ π(σ) ∝ e−H(σ)

◮ Simplest Ψ for Ising model is◮ Pick v ∈ V uniformly at random◮ Propose σv → −σv

◮ Local moves from S → S easy to construct

Page 41: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious

Page 42: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)

Page 43: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)

Page 44: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

Page 45: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)

Page 46: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

Page 47: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

Page 48: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 49: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 50: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 51: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 52: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 53: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

Page 54: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm chains◮ Local moves on C(G) not so obvious◮ Enlarge C(G) to include two defects (odd vertices)◮ Move the defects via random walk

◮ Let ∂A be the set of all odd vertices in (V ,A)◮ State space of worm algorithm is

S(G) = {(A,u, v) : ∂A = {u, v}}

◮ When u = v we take ∂A = ∅

◮ Proposal matrix

Ψn,x [(A,u, v) → (A△uu′,u′, v)] =1

2 d(u)

◮ Use Metropolis to construct Pn,x in detailed balance with

πn,x(A,u, v) ∝ nc(A) x |A|

Page 55: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

Page 56: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V

Page 57: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

Page 58: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

◮ Only observe Pn,x chain when u = v

Page 59: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm transition matrix

Pn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

min(1, x n) uu′ 6∈ A and u ↔ u′ in (V ,A)min(1, x) uu′ 6∈ A and u 6↔ u′ in (V ,A)min(1,1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

min(1,1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ Let πn,x = restriction of πn,x to {(A,u, v) ∈ S : u = v} = C(G)×V◮ πn,x(A, v , v) = φn,x(A)/V◮ So 〈X 〉πn,x = 〈X 〉φn,x for all X : C(G) → R

◮ Only observe Pn,x chain when u = v

◮ Get new chain, Pn,x , in detailed balance with πn,x

Page 60: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

Page 61: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

S

Σ

Page 62: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

S

Σ

Page 63: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

◮ Transition matrix is

(P)ss′ := (P)ss′ +

∞∑

n=0

s0,s1,...,sn∈Σ

(P)ss0

n∏

l=1

(P)sl−1sl (P)sns′

S

Σ

Page 64: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Induced Markov chain on subspace

◮ Consider an irreducible P on a finite state space S

◮ In detailed balance with π

◮ Only observe the process when s ∈ Σ ⊆ S

◮ New process is irreducible Markov chain on Σ

◮ Transition matrix is

(P)ss′ := (P)ss′ +

∞∑

n=0

s0,s1,...,sn∈Σ

(P)ss0

n∏

l=1

(P)sl−1sl (P)sns′

S

Σ

◮ P is in detailed balance with

πs =πs∑

s′∈Σ πs′

, s ∈ Σ

Page 65: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

S

Σ

Page 66: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

Page 67: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

Page 68: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

◮ P ′ is in detailed balance with

π′s =

{πs s ∈ Σ

(1 − (P)ss)πs s ∈ Σ

Page 69: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rejection-free algorithm◮ We don’t care about states in Σ := S \ Σ

◮ Therefore we can safely avoid rejections when (A,u, v) ∈ Σ

S

Σ

◮ Use rejection-free chain instead

(P ′)ss′ :=

(P)ss′ s ∈ Σ(P)ss′

1 − (P)sss ∈ Σ, s′ 6= s

0 s ∈ Σ, s′ = s

◮ P ′ is in detailed balance with

π′s =

{πs s ∈ Σ

(1 − (P)ss)πs s ∈ Σ

◮ P ′ is in detailed balance with π′s = πs = πs∑

s′∈Σ πs′, s ∈ Σ

Page 70: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

Page 71: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

Page 72: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)

Page 73: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching

Page 74: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles

Page 75: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings

Page 76: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model

Page 77: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

Page 78: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞

Page 79: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞◮ Rejection-free algorithm remains valid

Page 80: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Fully-packed loopsLet G be bicubic and take x → ∞

◮ State space is

F(G) := {A ∈ C(G) : |A| = |V |}

◮ Assign probabilities via

φG,n(A) ∝ nc(A), A ∈ F(G)

◮ c(A) is cyclomatic number

◮ F(G) is subset of cycle space with maximal |A| (= |V |)◮ A ∈ F(G) iff (V ,A) is a 2-factor iff E \ A is a perfect matching◮ n = 0 corresponds to uniformly sampling Hamiltonian cycles◮ n = 1 corresponds to uniformly sampling dimer coverings◮ n = 1 corresponds to dual Ising model◮ n = 2 related to q > 2 Potts models (more later. . . )

◮ The simple worm algorithm is absorbing when x = +∞◮ Rejection-free algorithm remains valid

◮ n = 1 similar to Jerrum & Sinclair’s perfect matching algorithm

Page 81: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

Page 82: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

Page 83: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

Page 84: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

Page 85: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

Page 86: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

Page 87: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

Page 88: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 89: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 90: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 91: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 92: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 93: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 94: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 95: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 96: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 97: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

Page 98: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)

Page 99: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

Page 100: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

◮ Pn is in detailed balance with φn(A) ∝ nc(A)

Page 101: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Worm algorithm for fully-packed loops

P ′n,∞ allows the following transitions:

◮ If dA(u) = dA(v) = 2 then◮ Move one of the defects across uu′ 6∈ A

◮ If dA(u) = dA(v) = 3 then◮ Delete one of the occupied edges at u or v

◮ If dA(u) = 1 and dA(v) = 3 then◮ Add one of the two vacant edges at u

◮ R(G) = {(A,u, v) ∈ S(G) : |A| ≥ |V |} is closed under P ′n,∞

◮ If (A, v , v) ∈ R(G) then A ∈ F(G)◮ Let Pn be the restriction of P′

n,∞ to R(G)

◮ Pn is in detailed balance with φn(A) ∝ nc(A)

◮ Pn is irreducible

Page 102: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducible

Page 103: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

Page 104: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

◮ If u 6= v then Pn always lets us to do the following:

Page 105: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u

Page 106: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′ w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u

Page 107: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′ w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

Page 108: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

Page 109: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

u′′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 110: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 111: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 112: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 113: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 114: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 115: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 116: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 117: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge

Page 118: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)

Page 119: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge

Page 120: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge

Page 121: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge◮ Add vacant B-edge and start again

Page 122: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Pn is irreducibleWe show (A,u, v) ↔ (B,w ,w) for any fixed B ∈ F(G) and w ∈ V

v ′

w

◮ If u 6= v then Pn always lets us to do the following:◮ If du(A) = 1 add one of the missing B-edges at u◮ If du′(A) = dv (A) = 3 delete the occupied non-B-edge at u′

◮ New state has either one more B-edge or one less non-B-edge◮ We can prove that (A, v , v) ↔ (A, v ′, v ′)◮ We can move defect to a v ′ adjacent to a vacant B-edge◮ Add vacant B-edge and start again

Page 123: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ V

Page 124: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

v v ′

Page 125: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

Page 126: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

Page 127: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 128: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 129: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 130: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 131: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 132: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 133: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)

Page 134: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 135: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 136: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 137: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 138: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 139: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

Page 140: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Lemma: (A, u, u) ↔ (A, v , v) for all A ∈ F(G) and u, v ∈ VWe show that (A, v , v) ↔ (A, v ′, v ′) for each v ′ ∼ v

◮ Lemma: There always exists an odd path Pv v ′ from v to v ′ ∼ vwhich alternates vacant, occupied,. . . , vacant

v v ′ vv ′

◮ Can move first defect along Pv v ′ so (A, v , v) ↔ (A′, v ′, v)◮ Then move second defect along Pv v ′ so (A, v , v) ↔ (A′′, v ′, v ′)

◮ But each edge is traversed (flipped) exactly twice so A′′ = A

Page 141: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

Page 142: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

Page 143: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

Page 144: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green

Page 145: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green

Page 146: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

Page 147: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

Page 148: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

Page 149: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

◮ Cycle must be even◮ alternates green, red, . . . , green, red

Page 150: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Colouring LemmaLemmaLet G be a finite bicubic graph. For every A ∈ F(G) and every v ∈ V,there is a path to each neighbor such that the edges alternate vacant,occupied, . . . , vacant

Proof.

v

u

w x

v

u

w

t

x

◮ Independently colour each cycle,alternating red, blue

◮ Colour vacant edges green◮ Ared ∪ Agreen ∈ F(G)

◮ u, v , w all connected in Ared ∪ Agreen

◮ So u, v , w all in same cyclev u . . . t w v ∈ Ared ∪ Agreen

◮ Cycle must be even◮ alternates green, red, . . . , green, red

◮ v u . . . t w is the desired path

Page 151: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

Page 152: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic

Page 153: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings

Page 154: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

Page 155: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

◮ Wang-Swendsen-Kotecký (WSK)◮ Extension of SW to treat antiferromagnetic Potts

Page 156: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Potts models and Wang-Swendsen-Kotecký algorithm◮ q-state Potts model on graph G = (V ,E)

◮ Spin configurations σ ∈ {1, 2, . . . , q}V with q ∈ {2, 3, . . .}◮ H(σ) = −β

∑uv∈E δ(σu , σv )

◮ P(σ) ∝ e−H(σ)

◮ |β| = 1/T

◮ β > 0 is ferromagnetic, β < 0 is antiferromagnetic◮ When β = −∞ we uniformly sample q-vertex colourings◮ The Swendsen-Wang (SW) cluster algorithm (ferromagnetic):

◮ Introduce auxiliary edge variables ω ∈ {0, 1}E

◮ Consider joint (Edwards-Sokal) model P(σ, ω)◮ Update spins using P(σ|ω) then update bonds using P(ω|σ)

◮ Wang-Swendsen-Kotecký (WSK)◮ Extension of SW to treat antiferromagnetic Potts

◮ WSK at T = 0 equivalent to “Kempe changes”◮ Each cluster is a Kempe chain

Page 157: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

Page 158: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

Page 159: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithmµ = ν =

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

Page 160: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithmµ = ν =

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}

Page 161: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}

Page 162: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

Page 163: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

Page 164: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 165: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm C1 C2

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 166: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

WSK algorithm

◮ Uniformly at random, choose two of the q possible colorsµ, ν ∈ {1,2 . . . q}

◮ Freeze all the σv 6∈ {µ, ν}◮ For each edge uv with with σu 6= σv , σu = µ and σv = ν

◮ Draw a bond with probability p = 1 − e−1/T and identify clusters

◮ For each cluster Ci flip the colouring with probability 1/2

Page 167: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rigorous results for WSK algorithm

◮ Irreducible on all graphs when T > 0◮ Irreducible on all graphs G when T = 0 and q ≥ ∆(G) + 1◮ Irreducible on all bipartite graphs when T = 0◮ Non-irreducible at T = 0:

◮ q = 4 on triangular lattice (on torus) (Mohar & Salas 2009)◮ q = 3 on kagome lattice (on torus) (Mohar & Salas 2010)

Page 168: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Rigorous results for WSK algorithm

◮ Irreducible on all graphs when T > 0◮ Irreducible on all graphs G when T = 0 and q ≥ ∆(G) + 1◮ Irreducible on all bipartite graphs when T = 0◮ Non-irreducible at T = 0:

◮ q = 4 on triangular lattice (on torus) (Mohar & Salas 2009)◮ q = 3 on kagome lattice (on torus) (Mohar & Salas 2010)

◮ Worm algorithm for honeycomb-lattice fully-packed loop modelcan be used to simulate both these models

Page 169: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

Page 170: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

Page 171: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

Page 172: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

Page 173: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice

Page 174: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice

Page 175: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)

Page 176: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)

Page 177: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)◮ Both models display critical phenomena

Page 178: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Zero-temperature Potts antiferromagnets

Use n = 2 worm algorithm to simulate coloured loop configurations

◮ Independently color each cycle,alternating red, blue, red, . . .

◮ Gives dynamics on coloured loop states

Pcolor [a → a′] =1

2c(A′)Pworm

2 [A → A′]

◮ Uniformly sample 3-edge-colorings of honeycomb lattice◮ Uniformly sample 3-vertex-colorings of kagome lattice◮ Uniformly sample 4-vertex-colorings on triangular lattice (Baxter)◮ Both models display critical phenomena◮ Wang-Swendsen-Kotecký algorithm proved non-irreducible

Page 179: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

Page 180: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +

Page 181: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +

Page 182: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

Page 183: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

Page 184: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

Page 185: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

Page 186: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0

Page 187: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0◮ Single-spin-flip algorithms non-irreducible at T = 0

Page 188: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Triangular-lattice Ising antiferromagnetLoops form boundaries of Ising spin domains on dual lattice

◮ Exact correspondence when n = 1 and x = e−2β

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ φH,n,x(Aσ) = 2µH∗,β(σ)

◮ Aσ := {ij ∈ E : σi∗ 6= σj∗}

◮ x > 1 implies antiferromagnetic β

◮ x = +∞ corresponds to β = −∞

◮ Both models are critical in this limit

◮ Can use worm to simulate AF Ising on △-lattice at T = 0◮ Single-spin-flip algorithms non-irreducible at T = 0◮ Tailor-made cluster algorithms non-irreducible at T = 0

Page 189: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

Loops & Worms Fully-packed Loops & Worms WSK Worm & Potts Summary

Summary

◮ Worm algorithms provide a simple way to simulatehoneycomb-lattice loop models

◮ Proven valid for all n, x > 0, including x = +∞

◮ For n = 1,2 also provide provably irreducible algorithms forcertain critical antiferromagnetic models

◮ Cluster algorithms fail for these models

Page 190: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 191: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 192: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Page 193: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Structure of the defect clusterPartition R(G) according to structure of defect cluster

R = E ∪ T ∪ D ∪Θ

b b

b

u,v

(A,u, v) ∈ E

Cycle

b b

b

bb

uv

(A,u, v) ∈ D

Dumbbell

b b

b

bb

uv

(A,u, v) ∈ T

Tadpole

b b

b

b

b

u

v

(A,u, v) ∈ Θ

Theta graph

Page 194: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Worm algorithm for fully-packed loop model

◮ Transition matrix:

Pn[(A,u, v) → (A△uu′,u′, v)] = Pn[(A, v ,u) → (A△uu′, v ,u′)]

=

1/2 (A,u, v) ∈ E ,

1/2 (A,u, v) ∈ T ,

1/6 (A,u, v) ∈ Θ,

n/2(n + 2) (A,u, v) ∈ D and uu′ is a bridge,1/2(n + 2) (A,u, v) ∈ D and uu′ is not a bridge.

◮ Stationary distribution:

πn(A,u, v) =nc(A)

Zn

1/3 (A,u, v) ∈ E ,

1/3 (A,u, v) ∈ T ,

(n + 2)/3n (A,u, v) ∈ D,

1/n (A,u, v) ∈ Θ.

Page 195: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:

Page 196: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

Page 197: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

Page 198: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

Page 199: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

◮ Simultaneous Breadth-First-Search (BFS) much simpler◮ Polynomial-time with small (known) exponent (k -arm)

Page 200: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Connectivity checkingPn,x [(A,u, v) → (A△uu′,u′, v)] = Pn,x [(A, v ,u) → (A△uu′, v ,u′)]

=1

2 d(u)

F (x n) uu′ 6∈ A and u ↔ u′ in (V ,A)F (x) uu′ 6∈ A and u 6↔ u′ in (V ,A)F (1/n x) uu′ ∈ A and u ↔ u′ in (V ,A \ uu′)

F (1/x) uu′ ∈ A and u 6↔ u′ in (V ,A \ uu′)

◮ So far we have glossed over an important caveat:◮ If n 6= 1 we need to compute c(A△uu′)− c(A) at each iteration

◮ But c(A) = |A| − |V |+ k(A)◮ k(A) is the number of components in (V ,A)

◮ Dynamic connectivity-checking algorithms are known◮ Log-time for queries and updates (Holm, de Lichtenberg & Thorup)

◮ Simultaneous Breadth-First-Search (BFS) much simpler◮ Polynomial-time with small (known) exponent (k -arm)

◮ If n > 1 the “colouring method” avoids the issue entirely

Page 201: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G

Page 202: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model

Page 203: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model◮ Loop model corresponds to

W (C) =

{n x |E(C)| C is a cycle or isolated vertex0 otherwise

Page 204: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method◮ Consider a finite graph G = (V ,E)

◮ Let K (A) denote the set of connected components of (V ,A)◮ Define a “generalized random-cluster model”

PW (A) ∝∏

C∈K (A)

W (C) A ⊆ E

◮ W (·) ≥ 0 assigns a weight to each connected subgraph of G◮ If W (C) = q v |E(C)| this is just the Fortuin-Kasteleyn (FK) model◮ Loop model corresponds to

W (C) =

{n x |E(C)| C is a cycle or isolated vertex0 otherwise

◮ Simulate PW by introducing auxiliary vertex variables (colours)◮ Like SW, choose bonds conditioned on colours & vice versa

Page 205: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

Page 206: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

Page 207: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

Page 208: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

Page 209: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate

Page 210: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)

Page 211: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)

Page 212: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)

Page 213: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)◮ Get algorithms for q > 1 FK and n > 1 loop models

Page 214: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

The colouring method (2)◮ Introduce (vertex) m-colourings σ ∈ {1,2, . . .m}V

◮ For each colour α define a new weight function Wα so that

W (C) =

m∑

α=1

Wα(C) and Wα(C) ≥ 0

1. Given A ⊆ E let C be coloured α with P(σC = α) = Wα(C)/W (C)

2. Choose a new bond configuration on Gα using any Markov chainfor which Wα is stationary

◮ Trick is to choose at least one Wα which is easy to simulate◮ Can update other Wα′ by “doing nothing” (identity matrix)◮ FK model: take Wα = 1 (percolation is easy to simulate)◮ Loop model: take Wα = 1 (Ising is easy to simulate using worm)◮ Get algorithms for q > 1 FK and n > 1 loop models

◮ No connectivity-checking needed

Page 215: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

SW for antiferromagnetic Ising

SW for antiferromagnetic Ising model on finite graph G = (V ,E)

P(σ,n) ∝∏

ij∈E

[(1 − p) δωij ,0 + p(1 − δσi ,σj )δωij ,1]

Page 216: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

Page 217: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring

Page 218: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring

Page 219: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

Page 220: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

◮ Union of red and vacant edges= spin domain for σ

Page 221: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

− − − −− − − −

− − − −− − − −

− − − −− − − −

− − − −

+ + ++ +

+ + ++ +

+ + ++ +

+ + +◮ Union of red and vacant edges

= spin domain for σ

Page 222: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

− − − − −− − − −

− − − − −− − − −

− − − − −− − − −

− − − − −

+ ++ +

+ ++ +

+ ++ +

+ +◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ

Page 223: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations

Page 224: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−

−− +− −+ −− +− −+

+− −+ −− +− −+ −− +−◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations◮ −− = 1, −+ = 2, +− = 3, ++ = 4

Page 225: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Mapping 3-edge colorings to dual 4-vertex colorings

◮ Randomly color the cycles ⇐⇒ proper edge 3-coloring◮ Use two independent Ising variables on each face, σ, τ

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3

1 3 2 1 3 2

3 2 1 3 2 1 3◮ Union of red and vacant edges

= spin domain for σ◮ Union of blue and vacant edges

= spin domain for τ◮ Combine the σ and τ configurations◮ −− = 1, −+ = 2, +− = 3, ++ = 4

Page 226: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

Page 227: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

Page 228: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

Page 229: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

Page 230: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

◮ Define the autocorrelation function

ρX (t) :=〈XsXs+t〉π − 〈X 〉2

π

varπ(X )

Page 231: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Markov-chain Monte Carlo

◮ Markov chain◮ State space S, with |S| < ∞◮ Transition matrix P◮ Stationary distribution π

◮ Observables (random variables) X , Y , . . .

◮ Simulate Markov chain s0P−→ s1

P−→ s2

P−→ . . . with st ∈ S

◮ Get time series X0,X1,X2, . . . with Xt = X (st)

◮ Define the autocorrelation function

ρX (t) :=〈XsXs+t〉π − 〈X 〉2

π

varπ(X )◮ Stationary process – start “in equilibrium”

Page 232: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

Page 233: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

◮ If X̂ is the sample mean of {Xt}Tt=1 then we have

var(X̂ ) ∼ 2 τint,Xvar(X )

T, T → ∞

Page 234: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Integrated autocorrelation times

◮ The integrated autocorrelation time

τint,X :=12

∞∑

t=−∞

ρX (t)

◮ If X̂ is the sample mean of {Xt}Tt=1 then we have

var(X̂ ) ∼ 2 τint,Xvar(X )

T, T → ∞

◮ 1 “effectively independent” observation every 2 τint,X steps

Page 235: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

Page 236: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

Page 237: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

◮ Start the chain with arbitrary distribution α

◮ Distribution at time t is αP t

Page 238: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Exponential autocorrelation times

◮ ρX (t) typically decays exponentially as t → ∞

◮ The exponential autocorrelation time

τexp,X := lim supt→∞

t− log |ρX (t)|

and τexp := supX

τexp,X

◮ Typically τexp,X = τexp < ∞ and τint,X ≤ τexp for all X

◮ Start the chain with arbitrary distribution α

◮ Distribution at time t is αP t

LemmaαP t tends to π with rate bounded by e−t/τexp

Page 239: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

Page 240: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

◮ More precisely, we have a family of exponents:zexp, and zint,X for each observable X .

Page 241: Markov-chain Monte Carlo algorithms for studying cycle ...users.monash.edu/~gfarr/research/slides/Garoni-worm.pdf · Markov-chain Monte Carlo algorithms for studying cycle spaces,

FPL transition matrix Colouring vs connectivity-checking Details. . . Autocorrelations, critical slowing down . . .

Critical slowing-down

◮ Near a critical point the autocorrelation times typically diverge like

τ ∼ ξz

◮ More precisely, we have a family of exponents:zexp, and zint,X for each observable X .

◮ Different algorithms for the same model can have very different z◮ E.g. d = 2 Ising model

◮ Glauber (Metropolis) algorithm z ≈ 2◮ Swendsen-Wang algorithm z ≈ 0.2