27.08.2014 Views

Analysis of Markov chain algorithms on spanning trees, rooted ...

Analysis of Markov chain algorithms on spanning trees, rooted ...

Analysis of Markov chain algorithms on spanning trees, rooted ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<str<strong>on</strong>g>Analysis</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <str<strong>on</strong>g>algorithms</str<strong>on</strong>g><br />

<strong>on</strong> <strong>spanning</strong> <strong>trees</strong>, <strong>rooted</strong> forests, and<br />

c<strong>on</strong>nected subgraphs<br />

Johannes Fehrenbach and Ludger Rüschendorf<br />

University <str<strong>on</strong>g>of</str<strong>on</strong>g> Freiburg<br />

Abstract<br />

In this paper we analyse a natural edge exchange <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong><br />

the set <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> an undirected graph by the method <str<strong>on</strong>g>of</str<strong>on</strong>g> multicommodity<br />

flows. The analysis then is refined to obtain a can<strong>on</strong>ical<br />

path analysis too. The c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the flow and the can<strong>on</strong>ical paths<br />

is based <strong>on</strong> related path c<strong>on</strong>structi<strong>on</strong>s in a paper <str<strong>on</strong>g>of</str<strong>on</strong>g> Cordovil and Moreira<br />

(1993) <strong>on</strong> block matroids. The estimates <str<strong>on</strong>g>of</str<strong>on</strong>g> the c<strong>on</strong>gesti<strong>on</strong> measure<br />

imply a polynomial bound <strong>on</strong> the mixing time. The can<strong>on</strong>ical paths<br />

for <strong>spanning</strong> <strong>trees</strong> also yield polynomial time mixing rates for some related<br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s <strong>on</strong> the set <str<strong>on</strong>g>of</str<strong>on</strong>g> forests with roots and <strong>on</strong> the set<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> c<strong>on</strong>nected <strong>spanning</strong> subgraphs. We obtain a parametric class <str<strong>on</strong>g>of</str<strong>on</strong>g> stati<strong>on</strong>ary<br />

distributi<strong>on</strong>s from which we can efficiently sample. For <strong>rooted</strong><br />

forests this includes the uniform distributi<strong>on</strong>. For c<strong>on</strong>nected <strong>spanning</strong><br />

subgraphs the uniform distributi<strong>on</strong> is not covered.<br />

Keywords: <strong>spanning</strong> <strong>trees</strong>, randomized algorithm, multicommodity flow,<br />

can<strong>on</strong>ical paths, <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>, <strong>rooted</strong> forests, c<strong>on</strong>nected subgraphs<br />

1 Introducti<strong>on</strong><br />

Counting the number <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> in an undirected, c<strong>on</strong>nected, loop-free<br />

graph is <strong>on</strong>e <str<strong>on</strong>g>of</str<strong>on</strong>g> the few counting problems <strong>on</strong> graphs G = (V, E) which can be<br />

solved deterministically in polynomial time. Remind that a <strong>spanning</strong> tree is a<br />

maximum cardinality cycle free subgraph (V, S) <str<strong>on</strong>g>of</str<strong>on</strong>g> G. If D = diag(d 0 , . . . , d n−1 )<br />

is the diag<strong>on</strong>al matrix with the degrees d 0 , . . . , d n−1 <str<strong>on</strong>g>of</str<strong>on</strong>g> the n vertices in V <strong>on</strong><br />

its main diag<strong>on</strong>al and if A denotes the adjacency matrix <str<strong>on</strong>g>of</str<strong>on</strong>g> V, then the classical<br />

Kirchh<str<strong>on</strong>g>of</str<strong>on</strong>g>f-formula states that for all 0≤ i≤n−1:<br />

# <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> G = det(D − A) ii (1.1)<br />

where (D − A) ii is the (n − 1) × (n − 1) principal submatrix <str<strong>on</strong>g>of</str<strong>on</strong>g> D − A obtained<br />

by deleting the ith row and the ith column. Since the determinant <str<strong>on</strong>g>of</str<strong>on</strong>g> a matrix<br />

may be computed in time O(n 3 ) by the Gaussian eliminati<strong>on</strong> algorithm


2 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

this formula implies a polynomial time algorithm for counting <strong>spanning</strong> <strong>trees</strong><br />

in an undirected graph. Various techniques have been developed to establish<br />

randomized approximati<strong>on</strong> schemes (RAS) in particular for the approximative<br />

counting <str<strong>on</strong>g>of</str<strong>on</strong>g> combinatorial and graph-theoretic structures. For a survey see Jerrum<br />

and Sinclair (1996) or Jerrum (2003). These <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M<strong>on</strong>te Carlo<br />

methods have been successfully applied to establish approximative polynomial<br />

time counting <str<strong>on</strong>g>algorithms</str<strong>on</strong>g> for a series <str<strong>on</strong>g>of</str<strong>on</strong>g> difficult counting and approximati<strong>on</strong><br />

problems like the number <str<strong>on</strong>g>of</str<strong>on</strong>g> perfect matchings, the graph colouring problem,<br />

the approximati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the partiti<strong>on</strong> functi<strong>on</strong> in the Ising model, the volume <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

c<strong>on</strong>vex bodies, and many others.<br />

The basic problem is as follows. Let Ω = Ω n be a finite set depending <strong>on</strong> the<br />

length n <str<strong>on</strong>g>of</str<strong>on</strong>g> the input (like the number <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes n in a graph-theoretic problem).<br />

Let N = N n be the (unknown) number <str<strong>on</strong>g>of</str<strong>on</strong>g> elements <str<strong>on</strong>g>of</str<strong>on</strong>g> Ω. Then a random<br />

algorithm A = A n is called a fully polynomial randomized approximati<strong>on</strong><br />

scheme (FPRAS) <str<strong>on</strong>g>of</str<strong>on</strong>g> N if for all n and for all small ε, δ ∈ (0, 1)<br />

P ((1 − ε)N ≤ A ≤ (1 + ε)N) ≥ 1 − δ (1.2)<br />

where the algorithm runs in time bounded by a polynomial in n, ε −1 and δ −1 .<br />

Note that N = N(n, ε, δ), A = A(n, ε, δ) depend <strong>on</strong> n, ε, δ and typically N<br />

grows exp<strong>on</strong>entially fast in n. Therefore, a naive M<strong>on</strong>te-Carlo algorithm will<br />

not work in this case. The dependence <strong>on</strong> δ can be easily neglected by repeated<br />

sampling.<br />

Jerrum, Valiant, and Vazirani (1986) suggested a RAS by reducing the<br />

problem <str<strong>on</strong>g>of</str<strong>on</strong>g> approximative counting <str<strong>on</strong>g>of</str<strong>on</strong>g> N = |Ω| to that <str<strong>on</strong>g>of</str<strong>on</strong>g> almost uniform<br />

random sampling in the following way:<br />

Assume that there is some decreasing sequence <str<strong>on</strong>g>of</str<strong>on</strong>g> subsets Ω = Ω 0 ⊃ Ω 1 ⊃<br />

· · · ⊃ Ω r with the following properties:<br />

a) |Ω r | can be calculated (1.3)<br />

b) |Ω i | / |Ω i+1 | is polynomial bounded in n for 0 ≤ i < r<br />

c) r = r n is polynomially bounded in n<br />

d) For 0 ≤ i < r elements <str<strong>on</strong>g>of</str<strong>on</strong>g> Ω i can be sampled approximatively uniformly<br />

in polynomial time with respect to n.<br />

Then by iterative sampling in Ω i as in d) <strong>on</strong>e obtains an estimator ¯X i <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

|Ω i+1 | / |Ω i | for 0 ≤ i < r. By b) a polynomial number <str<strong>on</strong>g>of</str<strong>on</strong>g> samples in n and ε −1<br />

is sufficient. Define the RAS A by<br />

A := |Ω r | | ¯X| −1 (1.4)<br />

where ¯X := ∏ r−1<br />

i=0 ¯X i . By a) and c) ¯X can be calculated in polynomial time.<br />

Typically it will be not difficult to c<strong>on</strong>struct natural subsequences Ω i such<br />

that a), b), c) hold. In typical applicati<strong>on</strong>s the Ω i are <str<strong>on</strong>g>of</str<strong>on</strong>g> the same structure<br />

as Ω (with different size). So solving d) for Ω 0 = Ω yields soluti<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> d)


J. Fehrenbach and L. Rüschendorf 3<br />

for any Ω i . This property is called self-reducibility in Jerrum et al. (1986).<br />

But the challenge is c<strong>on</strong>diti<strong>on</strong> d) for Ω = Ω 0 The main tool for c<strong>on</strong>structing<br />

approximatively uniform samples is to c<strong>on</strong>struct a suitable <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M<br />

which has as its stati<strong>on</strong>ary distributi<strong>on</strong> the uniform distributi<strong>on</strong> <strong>on</strong> Ω. (A<br />

well-known applicati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> this method is the simulated annealing algorithm.)<br />

The main technical problem is to establish that the used <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> is<br />

rapidly mixing. This property then yields that sampling can be d<strong>on</strong>e efficiently<br />

(in polynomial time). Several tools have been developed to this aim. The main<br />

tools are various eigenvalue estimates for the sec<strong>on</strong>d largest eigenvalue <str<strong>on</strong>g>of</str<strong>on</strong>g> the<br />

transiti<strong>on</strong> matrix (Diac<strong>on</strong>is and Stroock (1991)), coupling methods (see e.g.,<br />

Aldous (1983) or Diac<strong>on</strong>is (1988)) the c<strong>on</strong>ductance method and the method <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

can<strong>on</strong>ical paths (see Diac<strong>on</strong>is and Stroock (1991) and Sinclair (1993)). Here the<br />

basic idea to obtain a good upper bound <strong>on</strong> the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g><br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g> is to select a set Γ = {γ xy ; x, y ∈ Ω} <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical paths γ xy for each<br />

pair (x, y) such that no transiti<strong>on</strong> e = (v, w) <str<strong>on</strong>g>of</str<strong>on</strong>g> the graph <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>chain</str<strong>on</strong>g> is too<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g>ten used in the corresp<strong>on</strong>ding flow problem. Define the c<strong>on</strong>gesti<strong>on</strong> measure<br />

ϱ = ϱ(Γ) by<br />

ϱ(Γ) =<br />

max<br />

e=(v,w)∈E<br />

1<br />

π(v)P (v, w)<br />

∑<br />

(x,y):γ xy∋e<br />

π(x)π(y)|γ xy |. (1.5)<br />

Here P (v, w) is the transiti<strong>on</strong> matrix <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>, π is the stati<strong>on</strong>ary<br />

distributi<strong>on</strong> and |γ xy | is the length <str<strong>on</strong>g>of</str<strong>on</strong>g> the path γ xy . The sum term is the total<br />

flow through edge e while the first term is the inverse capacity <str<strong>on</strong>g>of</str<strong>on</strong>g> edge e. By<br />

a result <str<strong>on</strong>g>of</str<strong>on</strong>g> Diac<strong>on</strong>is and Stroock (1991) <strong>on</strong>e obtains for irreducible, aperiodic,<br />

reversible <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s with P (x, x) ≥ 1 for all x ∈ Ω the following estimate<br />

2<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> the mixing time τ = τ(ε):<br />

τ(ε) ≤ ϱ(Γ)(log ̂π −1 + log ε −1 ) (1.6)<br />

with ̂π = min x∈Ω π(x). So the problem to bound the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g><br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g> can be reduced to obtain bounds <strong>on</strong> the c<strong>on</strong>gesti<strong>on</strong> measure. Note that<br />

for the uniform distributi<strong>on</strong> π the term log ̂π −1 is polynomial in n, when as<br />

typically N = |Ω| is exp<strong>on</strong>ential in n.<br />

To obtain bounds <strong>on</strong> ϱ(Γ) an important technique is coding <str<strong>on</strong>g>of</str<strong>on</strong>g> the transiti<strong>on</strong>s<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> the can<strong>on</strong>ical path. For e ∈ T = {(x, y) ∈ Ω × Ω : P (x, y) > 0}<br />

define P c (e) = {(x, y) ∈ Ω × Ω : γ xy ∋ e}, the set <str<strong>on</strong>g>of</str<strong>on</strong>g> pairs whose can<strong>on</strong>ical<br />

path uses edge e. Then a coding is a system (η e ) <str<strong>on</strong>g>of</str<strong>on</strong>g> injective mappings<br />

η e : P c (e) → Ω, e ∈ T . If π is the uniform distributi<strong>on</strong> <strong>on</strong> Ω and (η e ) a coding,<br />

then we obtain the estimate<br />

ϱ(Γ) =<br />

≤<br />

≤<br />

max<br />

e=(v,w)∈T<br />

max<br />

e=(v,w)∈T<br />

max<br />

e=(v,w)∈T<br />

1<br />

π(v)P (v, w)<br />

l max<br />

P (v, w)<br />

l max<br />

P (v, w)<br />

∑<br />

(x,y)∈P(e)<br />

∑<br />

(x,y)∈P(e)<br />

π(x)π(y)|γ xy | (1.7)<br />

π(η e (x, y))


4 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

where l max denotes the maximal length <str<strong>on</strong>g>of</str<strong>on</strong>g> the can<strong>on</strong>ical paths. If π is not the<br />

uniform distributi<strong>on</strong> then a similar estimate holds if the coding is c<strong>on</strong>structed<br />

such that<br />

π(v)P (v, w)π(η e (x, y)) ≈ π(x)π(y). (1.8)<br />

The multicommodity flow technique is a natural extensi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical<br />

paths introduced in Sinclair (1992). Let P xy<br />

denote the set <str<strong>on</strong>g>of</str<strong>on</strong>g> all directed<br />

paths from x to y in the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> Ω. Let f xy<br />

: P xy<br />

→ IR + 0 for x, y ∈ Ω<br />

be a set <str<strong>on</strong>g>of</str<strong>on</strong>g> functi<strong>on</strong>s such that ∑ p∈P xy<br />

f xy<br />

(p) = 1. Then each f xy<br />

is called a<br />

1-flow from x to y. In particular any can<strong>on</strong>ical path defines a 1-flow. Then the<br />

set F = {f xy<br />

; x, y ∈ Ω} is called a multicommodity flow. Sinclair (1992) proved<br />

that the estimate <str<strong>on</strong>g>of</str<strong>on</strong>g> the mixing time in (1.7) extends to multicommodity flows<br />

F,<br />

where<br />

τ(ε) ≤ ϱ(F )(log ̂π −1 + log ε −1 ) (1.9)<br />

ϱ(F ) =<br />

max<br />

e=(v,w)∈T<br />

1<br />

π(v)P (v, w)<br />

∑<br />

p xy∋e<br />

π(x)π(y)f xy (p xy )|p xy | (1.10)<br />

is the c<strong>on</strong>gesti<strong>on</strong> measure <str<strong>on</strong>g>of</str<strong>on</strong>g> the flow F . To bound ϱ(F ) we define for a transiti<strong>on</strong><br />

e ∈ T <str<strong>on</strong>g>of</str<strong>on</strong>g> M the set P(e) := ⋃ x,y∈Ω {p ∈ P xy<br />

: e ∈ p and f xy<br />

(p) > 0}.<br />

A coding (η e ), for a multicommodity flow F is a system <str<strong>on</strong>g>of</str<strong>on</strong>g> (not necessarily<br />

injective) mappings η e : P(e) → Ω such that for all z ∈ Ω<br />

∑<br />

f xy<br />

(p xy<br />

) ≤ 1. (1.11)<br />

p xy ∈P(e):<br />

ηe(pxy)=z<br />

Multicommodity flows are in some cases easier to c<strong>on</strong>struct than can<strong>on</strong>ical<br />

paths. In some recent papers these were instrumental for c<strong>on</strong>structing<br />

improved bounds for several basic counting problems (see Sinclair (1992)) and<br />

to obtain randomized approximati<strong>on</strong> schemes for l<strong>on</strong>g time open problems as<br />

for the knapsack problem (Morris and Sinclair (2004)) and for the counting <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

c<strong>on</strong>tingency tables (Cryan, Dyer, Goldberg, and Jerrum (2002)).<br />

In this paper we c<strong>on</strong>struct and analyse at first a multicommodity flow for<br />

the <strong>spanning</strong> tree problem and then refine the analysis to can<strong>on</strong>ical paths which<br />

needs some technically involved c<strong>on</strong>siderati<strong>on</strong>s. In secti<strong>on</strong> two we introduce the<br />

natural <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> for this problem. The mixing time τ s <str<strong>on</strong>g>of</str<strong>on</strong>g> this <str<strong>on</strong>g>chain</str<strong>on</strong>g> had<br />

been bounded from above using coupling arguments by Broder (1989) and<br />

Aldous (1990) who obtained a bound for the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> the order<br />

τ s (ε) = O(m 2 n 4 (n log m + log ε −1 )) (1.12)<br />

with n = |V |, m = |E|. Feder and Mihail (1992) improved this bound using<br />

the c<strong>on</strong>ductance method to the order<br />

τ s (ε) = O(mn 2 (n log m + log ε −1 )). (1.13)


J. Fehrenbach and L. Rüschendorf 5<br />

In fact they c<strong>on</strong>sidered an extensi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the problem to matroids which satisfy<br />

a certain balance-c<strong>on</strong>diti<strong>on</strong>. Since for a graph G = (V, E) the pair M =<br />

(E, ST(G)) – ST(G) the set <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> G – is a graphical matroid<br />

satisfying this balance c<strong>on</strong>diti<strong>on</strong>, the <strong>spanning</strong> tree problem is included in<br />

their result. In a recent paper Jerrum and S<strong>on</strong> (2002)found a bound for the<br />

log Sobolev c<strong>on</strong>stant which leads to an improvement <str<strong>on</strong>g>of</str<strong>on</strong>g> the Feder and Mihail<br />

mixing result <str<strong>on</strong>g>of</str<strong>on</strong>g> the bases exchange walk for balanced matroids to the order<br />

O(nm log n).<br />

Jerrum (1998) suggested that the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> Cordovil and Moreira<br />

(1993) for paths in graphic block matroids is ‘ideally suited to this purpose’<br />

but no further analysis is given in that paper. We prove in detail that based <strong>on</strong><br />

the paths <str<strong>on</strong>g>of</str<strong>on</strong>g> Cordovil and Moreira (1993) a multicommodity flow and can<strong>on</strong>ical<br />

paths can be defined such that no transiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> carries too<br />

much weight. This is not at all obvious but needs some careful c<strong>on</strong>siderati<strong>on</strong><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> the can<strong>on</strong>ical paths (see the pro<str<strong>on</strong>g>of</str<strong>on</strong>g>s <str<strong>on</strong>g>of</str<strong>on</strong>g> Lemma 3.1 and <str<strong>on</strong>g>of</str<strong>on</strong>g> Theorem 3.2). As a<br />

result we establish that by the method <str<strong>on</strong>g>of</str<strong>on</strong>g> multicommodity flow <strong>on</strong>e obtains the<br />

same bound for the mixing time obtained by Feder and Mihail (1992) by the<br />

c<strong>on</strong>ductance method but <strong>on</strong>e does not reach the improved bound <str<strong>on</strong>g>of</str<strong>on</strong>g> Jerrum<br />

and S<strong>on</strong> (2002).<br />

In the final secti<strong>on</strong>s we show that the can<strong>on</strong>ical paths for <strong>spanning</strong> <strong>trees</strong><br />

are also useful for the analysis <str<strong>on</strong>g>of</str<strong>on</strong>g> some related <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s <strong>on</strong> the set <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

forests with roots and <strong>on</strong> the set <str<strong>on</strong>g>of</str<strong>on</strong>g> c<strong>on</strong>nected <strong>spanning</strong> subgraphs. In both<br />

cases the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s can be shown to be rapidly mixing. Their stati<strong>on</strong>ary<br />

distributi<strong>on</strong> however is some distributi<strong>on</strong> with weights given by the number<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> comp<strong>on</strong>ents (for the forest problem) and by the number <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong><br />

(for the c<strong>on</strong>nected <strong>spanning</strong> subgraphs problem). For c<strong>on</strong>nected subgraphs the<br />

interesting case <str<strong>on</strong>g>of</str<strong>on</strong>g> the uniform distributi<strong>on</strong> remains open.<br />

2 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> <strong>spanning</strong> <strong>trees</strong><br />

In this secti<strong>on</strong> we introduce a <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> the set ST(G) <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong><br />

<strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> an undirected graph G = (V, E) whose stati<strong>on</strong>ary distributi<strong>on</strong> is the<br />

uniform distributi<strong>on</strong> <strong>on</strong> ST(G). We also introduce some noti<strong>on</strong>s from graph<br />

theory and <strong>on</strong> matroids which are used for the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> multicommodity<br />

flows in secti<strong>on</strong> 3.<br />

The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M s (G) = (X t ) t∈IN <strong>on</strong> ST(G) is defined by the transiti<strong>on</strong><br />

probabilities. If X t = X ∈ ST(G) is the state <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) at time t ∈ IN, then<br />

we draw uniformly and independent e ∈ X and f ∈ E and set<br />

1) Y = (X \ {e}) ∪ {f}<br />

2) If Y ∈ ST(G) then we set<br />

X t+1 =<br />

{ Y<br />

X each with probability 1 2 . (2.1)


6 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

If Y ∉ ST(G), then we set X t+1 = X. We denote the transiti<strong>on</strong> matrix <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

M s (G) by P s .<br />

So the transiti<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> this <str<strong>on</strong>g>chain</str<strong>on</strong>g> are given by simple random exchanges <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

two edges as l<strong>on</strong>g as they lead again to <strong>spanning</strong> <strong>trees</strong>.<br />

Propositi<strong>on</strong> 2.1 The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M s (G) is ergodic and the stati<strong>on</strong>ary distributi<strong>on</strong><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) is the uniform distributi<strong>on</strong> <strong>on</strong> ST(G).<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: Ergodicity is equivalent to irreducibility and aperiodicity. The aperiodicity<br />

is obvious from c<strong>on</strong>structi<strong>on</strong> and also for any X ∈ ST(G) holds<br />

P s (X, X) > 1 . For any X, Y ∈ ST(G) we prove by inducti<strong>on</strong> <strong>on</strong> k = |X ⊕ Y |,<br />

2<br />

the cardinality <str<strong>on</strong>g>of</str<strong>on</strong>g> the symmetric difference <str<strong>on</strong>g>of</str<strong>on</strong>g> X and Y , that Ps(X, t Y ) > 0 for<br />

some t ∈ IN. Note that k = |X ⊕ Y | ∈ 2IN. If k = 2, X ⊕ Y = {a, b}, a ∈ X, b ∈<br />

Y . Then choosing (with positive probability) e = a and f = b in the definiti<strong>on</strong><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong>e gets X t+1 = Y and P s (X, Y ) > 0. If k > 2 and b ∈ Y \ X then<br />

X ∪{b} c<strong>on</strong>tains a circle C with some edge a in C such that a ∈ X \Y . Choosing<br />

(with positive probability) e = a, f = b, then X ′ = (X \{a})∪{b} ∈ ST(G)<br />

and P s (X, X ′ ) > 0. Furthermore, |X ′ ⊕ Y | = k − 2 and so by the inducti<strong>on</strong><br />

hypothesis Ps(X t ′ , Y ) > 0 for some t ∈ IN and thus Ps t+1 (X, Y ) > 0.<br />

For any X, Y ∈ ST(G) with P s (X, Y ) > 0, X ≠ Y holds P s (X, Y ) =<br />

1<br />

= P 2(n−1)m s(Y, X) where n = |V |, m = |E|, i.e. the transiti<strong>on</strong> matrix is symmetric<br />

and thus reversible w.r.t. the uniform distributi<strong>on</strong> π <strong>on</strong> ST(G). This<br />

implies that the uniform distributi<strong>on</strong> π is the stati<strong>on</strong>ary distributi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G).<br />

✷<br />

The c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the multicommodity flow in secti<strong>on</strong> three uses for its<br />

pro<str<strong>on</strong>g>of</str<strong>on</strong>g> an idea <str<strong>on</strong>g>of</str<strong>on</strong>g> Cordovil and Moreira (1993) for graphical block-matroids.<br />

For the ease <str<strong>on</strong>g>of</str<strong>on</strong>g> reference we remind that a matroid M = (S, B) is a pair <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

n<strong>on</strong>empty sets, B ⊂ P(S), such that for all X, Y ∈ B holds: ∀x ∈ X \ Y exists<br />

some y ∈ Y \ X such that (X \ {x}) ∪ {y} ∈ B. Elements <str<strong>on</strong>g>of</str<strong>on</strong>g> B are called bases<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> M. A matroid M = (S, B) is called block-matroid if S = X ∪ Y for some<br />

X, Y ∈ B.<br />

In our c<strong>on</strong>text we c<strong>on</strong>sider the graphical matroid (E, ST(G)) which is a<br />

graphical block-matroid if G can be decomposed into two disjoint <strong>spanning</strong><br />

<strong>trees</strong>, see Figure 1.<br />

❅<br />

<br />

<br />

<br />

<br />

<br />

❅<br />

❅ ❅❅❅<br />

❅ <br />

<br />

<br />

❅<br />

❅<br />

❅<br />

<br />

❅ ❅<br />

❅<br />

❅<br />

Figure 1: A graphical block-matroid <strong>on</strong> the left with a decompositi<strong>on</strong> into<br />

two <strong>spanning</strong> <strong>trees</strong>.


J. Fehrenbach and L. Rüschendorf 7<br />

For a block-matroid M = (S, B) a basis element X ∈ B is a basis-cobasis<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> M if S \ X ∈ B. The basis-cobasis graph H = (V ′ , E ′ ) is defined by V ′ =<br />

{X ∈ B; X is basis-cobasis <str<strong>on</strong>g>of</str<strong>on</strong>g> M}, E ′ = {{X 1 , X 2 } ⊂ B; |X 1 ⊕ X 2 | = 2}.<br />

Cordovil and Moreira (1993) proved c<strong>on</strong>structively the following result:<br />

Theorem 2.2 Let M be a graphical block-matroid with basis-cobasis graph<br />

H = (V ′ , E ′ ). Then for any X, Y ∈ V ′ there exists a c<strong>on</strong>necting path from X<br />

to Y in H <str<strong>on</strong>g>of</str<strong>on</strong>g> length 1 |X ⊕ Y |.<br />

2<br />

We will use the c<strong>on</strong>tracti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> graphs al<strong>on</strong>g edges e in order to reduce our <strong>spanning</strong><br />

tree problem to the framework <str<strong>on</strong>g>of</str<strong>on</strong>g> block-matroids and the basis-cobasis<br />

graph. To explain the c<strong>on</strong>tracti<strong>on</strong> G/e <strong>on</strong> an edge e see the following example.<br />

G<br />

w<br />

✉<br />

❚<br />

✔✔<br />

❚<br />

✑ ✉<br />

✔ ✔ ✔ e ❚<br />

❚<br />

v◗ ◗◗<br />

❚<br />

✔<br />

✔✉<br />

✑ ✑✑ ❚<br />

◗❚ ✉<br />

v e<br />

✉<br />

❅ ❅<br />

❅<br />

✉<br />

❅❅ ✉<br />

G/e<br />

Figure 2: C<strong>on</strong>tracti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> a graph <strong>on</strong> edge e.<br />

Here the graph is c<strong>on</strong>tracted <strong>on</strong> edge e with end nodes v, w, These c<strong>on</strong>tracted<br />

nodes give rise to a new node v e , while edge e disappeared. For a<br />

formal definiti<strong>on</strong> see Diestel (1996). For any subset S ⊂ E let G/S denote the<br />

c<strong>on</strong>tracti<strong>on</strong> <strong>on</strong> all edges in S.<br />

3 Bounding the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> M s<br />

We show now how to bound the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) via the multicommodity<br />

flow technique described in secti<strong>on</strong> 1.<br />

C<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the multicommodity flow F G<br />

:<br />

For a graph G = (V, E), we have to define for each pair X, Y ∈ ST(G) a 1-flow<br />

f XY<br />

: P XY<br />

→ IR + 0 with<br />

∑<br />

p∈P XY<br />

f XY<br />

(p) = 1. (3.1)<br />

To do this, we set M := (V, X ∪ Y ) / (X ∩ Y ) as the graph with the nodes <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

G and the edges <str<strong>on</strong>g>of</str<strong>on</strong>g> X ∪ Y c<strong>on</strong>tracted <strong>on</strong> the edges <str<strong>on</strong>g>of</str<strong>on</strong>g> X ∩ Y . While the nodes<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> M corresp<strong>on</strong>d to the c<strong>on</strong>nected comp<strong>on</strong>ents <str<strong>on</strong>g>of</str<strong>on</strong>g> (V, X ∩ Y ), the edges <str<strong>on</strong>g>of</str<strong>on</strong>g> M<br />

are those <str<strong>on</strong>g>of</str<strong>on</strong>g> the symmetric difference X ⊕ Y := (X ∪ Y ) \ (X ∩ Y ).<br />

Now X \ Y and Y \ X are two disjoint <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> M and thus<br />

M forms a graphic block-matroid. Each <strong>spanning</strong> tree <str<strong>on</strong>g>of</str<strong>on</strong>g> M can be enhanced


8 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

to an element <str<strong>on</strong>g>of</str<strong>on</strong>g> ST(G) by adding the edges <str<strong>on</strong>g>of</str<strong>on</strong>g> X ∩ Y . So the basis-cobasis<br />

graph <str<strong>on</strong>g>of</str<strong>on</strong>g> M corresp<strong>on</strong>ds to a subgraph <str<strong>on</strong>g>of</str<strong>on</strong>g> the transiti<strong>on</strong> graph <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G).<br />

A path p ′ = (B i) ′ 0≤i≤l in this basis-cobasis graph can be transferred to a<br />

path p = (B i ) 0≤i≤l in M s by setting B i := B i ′ ∪ (X ∩ Y ) for all 0 ≤ i ≤ l.<br />

Exactly to these paths f XY<br />

will assign a positive weight. The c<strong>on</strong>structi<strong>on</strong> due<br />

to Cordovil and Moreira (1993) is inductive over the number |M| <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes in<br />

M. We next show that this c<strong>on</strong>structi<strong>on</strong> can be used to establish inductively<br />

a multicommodity flow <strong>on</strong> ST(G).<br />

If |M| = 1, then X = Y and nothing is to do. In the case |M| = 2, X and<br />

Y are neighbours in M s (G). We define f XY<br />

(p) = 1 for the path p = (B i ) 0≤i≤1<br />

which c<strong>on</strong>sists <strong>on</strong>ly <str<strong>on</strong>g>of</str<strong>on</strong>g> the transiti<strong>on</strong> from X to Y , i.e. B 0 := X and B 1 := Y .<br />

For all other p ′ ∈ P XY<br />

\ {p} we set f XY<br />

(p ′ ) := 0, so equati<strong>on</strong> (3.1) holds.<br />

Generally we encode a transiti<strong>on</strong> (B i , B i+1 ) in a path (B i ) 0≤i≤l that carries<br />

any weight in F G<br />

by ¯B i := B 0 ⊕ B l ⊕ B i . We have also to take care that<br />

this encoding is a <strong>spanning</strong> tree. For the above path p from X to Y we get<br />

¯B 0 = X ⊕ Y ⊕ X = Y , which is clearly an element <str<strong>on</strong>g>of</str<strong>on</strong>g> ST(G).<br />

For |M| = l + 1 let d min be the minimal degree <str<strong>on</strong>g>of</str<strong>on</strong>g> a node in M and D<br />

the set <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes <str<strong>on</strong>g>of</str<strong>on</strong>g> degree d min . Then d min = 2 or d min = 3 because X and Y<br />

are <strong>spanning</strong> <strong>trees</strong>. Next for each v ∈ D we select a pair X v , Y v ∈ ST(G) that<br />

satisfies the inducti<strong>on</strong> hypothesis, and thus f XvYv<br />

is already defined. Further<br />

for each path p ′ ∈ P XvYv<br />

with f XvYv<br />

(p ′ ) > 0 we c<strong>on</strong>struct an extensi<strong>on</strong> p ∈ P XY<br />

and we say p is based <strong>on</strong> p ′ . Let<br />

V(p) := ⋃ v∈D{p ′ ∈ P XvYv<br />

| p is based <strong>on</strong> p ′ }<br />

be the set <str<strong>on</strong>g>of</str<strong>on</strong>g> all paths p is based <strong>on</strong>. Then we define<br />

f XY<br />

(p) :=<br />

∑<br />

p ′ ∈V(p)<br />

1<br />

|D| f X ′ Y ′ (p ′ ),<br />

where X ′ and Y ′ are start and end nodes <str<strong>on</strong>g>of</str<strong>on</strong>g> p ′ respectiveley. As for all X, Y ∈<br />

ST(G)<br />

⋃<br />

{p ′ ∈ P X ′ Y ′ | f X ′ Y ′(p ′ ) > 0},<br />

p∈P XY<br />

V(p) = ⋃ v∈D<br />

the inducti<strong>on</strong> hypothesis gives<br />

∑<br />

f XY<br />

(p) = ∑ ∑<br />

p∈P XY<br />

p∈P XY<br />

p ′ ∈V(p)<br />

1<br />

|D| · f X ′ Y ′ (p ′ )<br />

= 1<br />

|D| · ∑ ∑<br />

f XvYv<br />

(p ′ )<br />

v∈D p ′ ∈P XvYv<br />

= 1<br />

|D| · ∑<br />

1<br />

= 1.<br />

v∈D


J. Fehrenbach and L. Rüschendorf 9<br />

So f XY<br />

satisfies equati<strong>on</strong> (3.1). We show now how to select for v ∈ D the pair<br />

X v , Y v and how to derive from the paths in P XvYv<br />

the paths <str<strong>on</strong>g>of</str<strong>on</strong>g> P XY<br />

.<br />

If d min = 2 let a ∈ X and b ∈ Y be the two edges in M at this node<br />

v and set X v := (X \ {a}) ∪ {b} and Y v := Y . For this pair the inducti<strong>on</strong><br />

hypothesis holds because M v := (V, X v ∪ Y v )/(X v ∩ Y v ) = (M/b) \ {a} has<br />

exactly l nodes. A path p ′ = (B i) ′ 0≤i


10 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

have to make sure that the encodings ¯B i = X ⊕Y ⊕B i are also <strong>spanning</strong> <strong>trees</strong>.<br />

By definiti<strong>on</strong> is<br />

{<br />

( ¯B′<br />

¯B i = i \ {a}) ∪ {c}, i < j<br />

¯B i−1,<br />

′ i > j<br />

for all i ∈ {0, . . . , l − 1} \ {j}. It follows as before, that these are all <strong>spanning</strong><br />

<strong>trees</strong>. ¯B j = X ⊕Y ⊕B j needs a little more work. In the first case in (3.3) holds<br />

¯B j = X ⊕ ((Y v \ {c}) ∪ {a}) ⊕ ( (B ′ j−1 \ {c}) ∪ {a} )<br />

= X ⊕ Y v ⊕ B ′ j−1<br />

= ¯B ′ j−1<br />

Obviously this is a <strong>spanning</strong> tree by the hypothesis. In the sec<strong>on</strong>d case in (3.3)<br />

we have<br />

¯B j = X ⊕ ((Y v \ {c}) ∪ {a}) ⊕ ( (B ′ j−1 \ {c}) ∪ {b} )<br />

= X ⊕ Y v ⊕ B ′ j−1 ⊕ {a, b}<br />

= ( ¯B ′ j−1 \ {a}) ∪ {b}.<br />

The circle in ¯B ′ j−1 ∪ {b} must include a and that is why ¯B j also in this case is<br />

a <strong>spanning</strong> tree.<br />

The multicommodity flow F G<br />

:= {f XY<br />

| X, Y ∈ ST(G)} <strong>on</strong> M s (G) and its<br />

codings are now defined. Because the functi<strong>on</strong>s f XY<br />

: P XY<br />

→ IR + 0 are defined<br />

<strong>on</strong> disjoint sets we can look at F G<br />

as a functi<strong>on</strong> <strong>on</strong> P := ⋃ X,Y ∈ST(G) P to XY<br />

IR + 0 and we write<br />

F G<br />

(p) = f XY<br />

(p) for all p ∈ P XY<br />

and all X, Y ∈ ST(G).<br />

The inductive c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> F G<br />

has the positive effect that a 1-flow f XY<br />

∈ F G<br />

does not differ much to another flow f X ′ Y ′ ∈ F G<br />

if the <strong>spanning</strong> <strong>trees</strong> X, X ′ and<br />

Y, Y ′ are very similar. The following lemma makes this clear.<br />

Lemma 3.1 Given X, Y ∈ ST(G) and a node w in M := (V, X ∪ Y )/(X ∩ Y )<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3. The three edges in M at w are a, b ∈ Y and c ∈ X. Then X a :=<br />

(X \{c})∪{a} and X b := (X \{c})∪{b} are also <strong>spanning</strong> <strong>trees</strong>. Furthermore,<br />

let p a = (A i ) 0≤i≤l ∈ P X a Y<br />

and p b = (B i ) 0≤i≤l ∈ P<br />

X b Y<br />

be the paths with<br />

A i =<br />

B i ,<br />

{<br />

Bi ⊕ {a, b}, 0 ≤ i ≤ j<br />

j < i ≤ l<br />

(3.4)<br />

where j is that step in p a which exchanges b, i.e. b ∈ A j ⊕A j+1 . Then for these<br />

paths p a , p b and the multicommodity flow F G<br />

holds<br />

F G<br />

(p a ) = F G<br />

(p b ).


J. Fehrenbach and L. Rüschendorf 11<br />

Similary, for p ′ a ∈ (A ′ i) 0≤i≤l ∈ P Y X a and p ′ b = (B′ i) 0≤i≤l ∈ P<br />

Y X b with<br />

A ′ i =<br />

{<br />

B<br />

′<br />

i , 0 ≤ i ≤ j<br />

B ′ i ⊕ {a, b}, j < i ≤ l<br />

where again j ∈ {0, . . . , l − 1} with b ∈ A ′ j ⊕ A ′ j+1 holds F G (p ′ a) = F G (p ′ b ).<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: By definiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> X a and X b , <strong>on</strong>e can easily see that the graphs M a :=<br />

(V, X a ∪ Y )/(X a ∩ Y ) and M b := (V, X b ∪ Y )/(X b ∩ Y ) are isomorph. If a<br />

c<strong>on</strong>nects the nodes w and t and b the nodes w and s in M, then I : M a → M b<br />

given by<br />

⎧<br />

⎨ v, v /∈ {v a , s}<br />

I(v) := t, v = v a<br />

⎩<br />

v b , v = s<br />

und I(e) :=<br />

{ e, e ≠ b<br />

a, e = b<br />

for all nodes v and edges e in M a defines an isomorphism. Figure ?? shows an<br />

example.<br />

t<br />

✉<br />

❚<br />

✔✔<br />

✔ ✔ ❚<br />

a ❚<br />

w<br />

✑ ✉ ❚<br />

✑✔ ✉<br />

✔ ✔ ◗ ◗◗<br />

❚<br />

✑✑ c b ❚<br />

◗❚ ✉<br />

u<br />

s<br />

M<br />

v a<br />

✉<br />

❅ ❅<br />

✉<br />

b ❅<br />

❅ ✉<br />

u<br />

s<br />

M a = (M/a) \ {c}<br />

t<br />

✉<br />

❅ ❅<br />

a ❅<br />

✉<br />

❅ ✉<br />

u<br />

v b<br />

M b = (M/b) \ {c}<br />

Figure 3: An example for a graph M from Lemma 3.1. The resulting graphs<br />

M a and M b are isomorph.<br />

The number <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes in M a is the same as that in M b . The pro<str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> Lemma<br />

3.1 is given by inducti<strong>on</strong> over |M a |:<br />

For |M a | = 2 the path p a = (A i ) 0≤i≤1 given by A 0 = X a and A 1 = Y is the<br />

<strong>on</strong>ly path in P X a Y<br />

with a positive weight in F G<br />

, i.e. F G<br />

(p a ) = 1. The same holds<br />

for p b = (B i ) 0≤i≤1 given by B 0 = X b = (A 0 \ {a}) ∪ {b} and B 1 = Y = A 1 . So<br />

in this case the lemma is proved.<br />

If |M a | = l + 1 let D a be the set <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes in M a <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree d min<br />

and D b the analogous set <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes in M b . Each node in D a corresp<strong>on</strong>ds to a<br />

node in D b via the isomorphism I.<br />

The value <str<strong>on</strong>g>of</str<strong>on</strong>g> F G<br />

(p a ) is based by c<strong>on</strong>structi<strong>on</strong> <strong>on</strong> the paths in V(p a ). For<br />

v ∈ D a each path p ′ a ∈ P ∩ V(p X a v Yv<br />

a) corresp<strong>on</strong>ds to a path p ′ b ∈ P ∩ V(p<br />

Xu b b ),<br />

Yu<br />

u := I(v) ∈ D b . Is a an edge at v in M a , so b is an edge at u in M b . This leads to<br />

Xv a = Xv b and Y v = Y u and, therefore, p ′ a = p ′ b . Otherwise, if a is not an edge at<br />

v we have v = u. In this case either X a arises from Xv a and Y v = Y or Xv a = X a<br />

and Y arises from Y v by exchanging two edges. The same holds for Xv b and Y v .<br />

This modificati<strong>on</strong> can also be d<strong>on</strong>e at X and Y and for the resulting <strong>spanning</strong>


12 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

<strong>trees</strong> X v , Y v and the node w the inducti<strong>on</strong> hypothesis holds for all paths in<br />

P and P X a v<br />

that satisfy (3.4). This c<strong>on</strong>diti<strong>on</strong> is in particular satisfied by<br />

Yv Xv b<br />

p ′ Yv a and p ′ b and, therefore, F G (p′ a) = F G<br />

(p ′ b ). It follows F G (p′ a) = F G<br />

(p ′ b ) for all<br />

p ′ a ∈ V(p a ) and for the corresp<strong>on</strong>ding p ′ b ∈ V(p b). Finally<br />

F G<br />

(p a ) = 1<br />

|D a |<br />

∑<br />

F G<br />

(p ′ a) = 1<br />

|D b |<br />

p ′ a ∈V(pa)<br />

∑<br />

p ′ b ∈V(p b)<br />

F G<br />

(p ′ b) = F G<br />

(p b ).<br />

The multicommodity flow F G<br />

yields good upper bounds for the mixing time<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) if no transiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> carries too much weight. The<br />

following theorem shows that this holds for F G<br />

.<br />

Theorem 3.2 Let B and ¯B be two <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> a graph G = (V, E)<br />

and let e ∈ B ⊕ ¯B be an edge. Define B := B(B, ¯B, e) as the set <str<strong>on</strong>g>of</str<strong>on</strong>g> paths<br />

p = (B i ) 0≤i≤l ∈ P such that there exists j ∈ {0, . . . , l − 1} with<br />

✷<br />

(a)<br />

(b)<br />

(c)<br />

B = B j , i.e., p c<strong>on</strong>tains B<br />

¯B = B0 ⊕ B l ⊕ B, i.e., the coding <str<strong>on</strong>g>of</str<strong>on</strong>g> B in p is ¯B<br />

e ∈ B j ⊕ B j+1 , i.e., p leaves B by exchanging e<br />

(d) F G<br />

(p) > 0<br />

Then<br />

∑<br />

F G<br />

(p) = 1.<br />

p∈B<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: We set M := (V, B ∪ ¯B)/(B ∩ ¯B) and again we proceed inductive over<br />

|M|. For |M| = 2 the set B ⊕ ¯B c<strong>on</strong>tains exactly two edges. Thus B c<strong>on</strong>tains<br />

<strong>on</strong>ly the path p = (B i ) 0≤i≤1 with B 0 = B and B 1 = ¯B. By definiti<strong>on</strong> F G<br />

(p) = 1.<br />

Now let |M| = l + 1 and D be the set <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes in M <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree<br />

d min . For each v ∈ D we c<strong>on</strong>struct a set B v ⊂ P with<br />

∑<br />

(i) F G<br />

(p ′ ) = 1,<br />

p ′ ∈B v<br />

(ii)<br />

∑<br />

F G<br />

(p) = ∑ ∑ 1<br />

|D| F G (p′ ).<br />

p∈B v∈D p ′ ∈B v<br />

The theorem follows then easily, because<br />

∑<br />

F G<br />

(p) = ∑ ∑ 1<br />

|D| F G (p′ ) = 1<br />

|D| · ∑<br />

1 = 1.<br />

p∈B v∈D p ′ ∈B v v∈D<br />

If d min = 2, let b ∈ B and let a ∈ ¯B be the two edges at a fixed v ∈ D.<br />

If e /∈ {a, b}, we define B v := B and ¯B v := ( ¯B \ {a}) ∪ {b}. The graph<br />

M v := (V, B v ∪ ¯B v )/(B v ∩ ¯B v ) has l nodes. Therefore, the properties (a), (b),<br />

(c), (d) and also (i) are satisfied by the set B v := B(B v , ¯B v , e). If e ∈ {a, b},


J. Fehrenbach and L. Rüschendorf 13<br />

we set B v := (B \ {b}) ∪ {a} and ¯B v := B v . Then B v := P Bv<br />

satisfies (i) by<br />

¯Bv<br />

definiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> F G<br />

. To ensure (ii), we show<br />

⋃<br />

B w . (3.5)<br />

p∈B<br />

V(p) = ⋃ w∈D<br />

This gives immediately (ii):<br />

∑<br />

p∈B<br />

F G<br />

(p) = ∑ p∈B<br />

∑<br />

p ′ ∈V(p)<br />

1<br />

|D| F G (p′ ) = ∑ ∑ 1<br />

|D| F G (p′ ).<br />

v∈D p ′ ∈B v<br />

While in (3.5) ⋃ V(p) ⊆ ⋃ ⋃ ⋃<br />

B w is a c<strong>on</strong>sequence <str<strong>on</strong>g>of</str<strong>on</strong>g> the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> F G<br />

,<br />

V(p) ⊇ Bw <strong>on</strong>e obtains as follows: Take p ∈ B and p ′ ∈ V(p), which is<br />

based <strong>on</strong> p via a node w ∈ D. If e /∈ {a, b}, p ′ is extended to p by adding the<br />

exchange <str<strong>on</strong>g>of</str<strong>on</strong>g> a and b at the first step. By definiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> B, p leaves the <strong>spanning</strong><br />

tree B = B v by exchanging e. The same holds, therefore, for p ′ . But in p ′ this<br />

transiti<strong>on</strong> is coded by ¯B ′ := ( ¯B \ {a}) ∪ {b} and so p ′ ∈ B(B v , ¯B v , e) = B v .<br />

If e ∈ {a, b} we get p ∈ P B ¯B,<br />

because a, b are exchanged first in p. Thus the<br />

path p ′ is a path from B ′ := (B \ {b}) ∪ {a} = B v to ¯B = B v and hence<br />

p ′ ∈ B v = P Bv<br />

. ¯Bv<br />

The case d min = 3 we treat analog<strong>on</strong>sly. For v ∈ D let w.l.o.g. a, b ∈ B<br />

and c ∈ ¯B be the tree edges at v in M. We further define B v := B, ¯Ba v :=<br />

( ¯B \ {c}) ∪ {a} and ¯B v b := ( ¯B \ {c}) ∪ {b}. Let X, Y ∈ ST(G) be the start<br />

and end node <str<strong>on</strong>g>of</str<strong>on</strong>g> a path p ∈ B that is based <strong>on</strong> p ′ ∈ V(p) via a node w ∈ D.<br />

We c<strong>on</strong>sider at first e /∈ {a, b, c} and again w.l.o.g. a, b ∈ X, c ∈ Y . According<br />

to the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> F G<br />

, the edges a, b, and c are exchanged in p in two<br />

c<strong>on</strong>secutive transiti<strong>on</strong>s. Because a, b ∈ B, both edges are either in X or in<br />

Y . The <strong>on</strong>ly circle in X ∪ {c} c<strong>on</strong>tains either a or b. If it c<strong>on</strong>tains a then<br />

p ′ ∈ B a := (B v , ¯B v, a e), else p ′ ∈ B b := B(B v , ¯B v, b e). For p ′ = (B i ) 0≤i≤l ∈ B a ,<br />

we define p ′′ = (A i ) 0≤i≤l ∈ B b by<br />

{<br />

Bi , 0 ≤ i ≤ j<br />

A i :=<br />

B i ⊕ {a, b}, j < i ≤ l<br />

with j ∈ {0, . . . , l−1} such that b ∈ B j ⊕B j+1 . These paths p ′ , p ′′ , the <strong>spanning</strong><br />

<strong>trees</strong> X, Y and the node w <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3 satisfy the prerequisite <str<strong>on</strong>g>of</str<strong>on</strong>g> Lemma 3.1<br />

and hence F G<br />

(p ′ ) = F G<br />

(p ′′ ). Furthermore, p ′′ cannot be in any other V(˜p). If<br />

this would be the case, then p ∈ P XY<br />

and so ˜p = p. For any p ∈ B, the path<br />

p ′ ∈ V(p) according to w ∈ D is c<strong>on</strong>tained either in B a or in B b , while the<br />

corresp<strong>on</strong>ding p ′′ cannot be in another set V(˜p). Thus F G<br />

(p ′ ) = F G<br />

(p ′′ ) and by<br />

the inducti<strong>on</strong> hypothesis<br />

∑<br />

F G<br />

(p ′ ) = ∑<br />

F G<br />

(p ′ ) = 1.<br />

p ′ ∈B a p ′ ∈B b<br />

The set<br />

B v := {p ′ ∈ B a ∪ B b | ∃˜p ∈ B : p ′ ∈ V(˜p)}, (3.6)


14 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

satisfies (i)<br />

∑<br />

p ′ ∈B v<br />

F G<br />

(p ′ ) = ∑<br />

p ′ ∈B a F G<br />

(p ′ ) = ∑<br />

p ′ ∈B b F G<br />

(p ′ ) = 1.<br />

If e ∈ {a, b, c}, then we set B a := B(B v , ¯B v, a b) and B b := B(B v , ¯B v, b a) and<br />

proceed as above. We also get in this case a set B v with property (i). The<br />

definiti<strong>on</strong> (3.6) <str<strong>on</strong>g>of</str<strong>on</strong>g> B v ensures that<br />

⋃<br />

B v .<br />

p∈B<br />

V(p) = ⋃ v∈D<br />

holds, and, therefore, B v satisfies (ii). Now the theorem follows as in the case<br />

d min = 2.<br />

✷<br />

It is not difficult to see that Theorem 3.2 guarantees (1.11). All preparati<strong>on</strong>s<br />

are made now to obtain an efficient upper bound <strong>on</strong> the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G).<br />

Theorem 3.3 For a graph G = (V, E) the mixing time τ s <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g><br />

M s (G) is bounded by<br />

τ s (ε) ≤ 2n 2 m · (n log m + log ε −1 )<br />

for all ε ∈ (0, 1) with n := |V | and m := |E|.<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: In Propositi<strong>on</strong> 2.1 we have seen, that the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M s (G) meets<br />

the prerequisites <str<strong>on</strong>g>of</str<strong>on</strong>g> the result <str<strong>on</strong>g>of</str<strong>on</strong>g> Diac<strong>on</strong>is and Stroock (1991) menti<strong>on</strong>ed in<br />

(1.6) and its extensi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> Sinclair (1992) in (1.12). Hence we already have<br />

τ s (ε) ≤ ϱ(F G<br />

) · (log ˆπ −1 + log ε −1 ) (3.7)<br />

with ˆπ := min x∈ST(G) π(x), and<br />

ϱ(F G<br />

) :=<br />

max<br />

v,w∈Ω<br />

P s (v,w)>0<br />

1<br />

π(v) · P s<br />

(v, w) ·<br />

∑<br />

p xy ∈P(v,w)<br />

π(x)π(y) · f xy<br />

(p xy<br />

) · |p xy<br />

|,<br />

where P(v, w) as set <str<strong>on</strong>g>of</str<strong>on</strong>g> paths p, that c<strong>on</strong>tain the transiti<strong>on</strong> (v, w) and F G<br />

(p) ><br />

0. By c<strong>on</strong>structi<strong>on</strong> the length <str<strong>on</strong>g>of</str<strong>on</strong>g> path p with positive weight in F G<br />

is at most in<br />

n−1, because two <strong>spanning</strong> <strong>trees</strong> differ in at most 2(n − 1) edges. Furthermore<br />

the stati<strong>on</strong>ary distributi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) is the uniform distributi<strong>on</strong> <strong>on</strong> ST(G) and<br />

1<br />

the transiti<strong>on</strong> probabilities are either or 0.<br />

2m(n−1)<br />

This gives<br />

ϱ(F G<br />

) ≤<br />

2n2 m<br />

| ST(G)| · max<br />

v,w∈Ω<br />

P s (v,w)>0<br />

∑<br />

p∈P(v,w)<br />

F G<br />

(p). (3.8)<br />

We now use Theorem 2.2 to bound the sec<strong>on</strong>d factor <str<strong>on</strong>g>of</str<strong>on</strong>g> this estimate: For an<br />

arbitrary transiti<strong>on</strong> (v, w) <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) and p = (B i ) 0≤i≤1 ∈ P(v, w) there is some


J. Fehrenbach and L. Rüschendorf 15<br />

j ∈ {0, . . . , l − 1} with v = B j . Let this v be encoded by ¯v. As v \ w c<strong>on</strong>tains<br />

exactly <strong>on</strong>e edge e we obtain p ∈ B(v, ¯v, e) and hence<br />

P(v, w) ⊂<br />

⋃<br />

¯v∈ST(G)<br />

B(v, ¯v, e).<br />

We deduce with Theorem 2.2<br />

∑<br />

F G<br />

(p) ≤<br />

∑<br />

p∈P(v,w)<br />

¯v∈ST(G)<br />

∑<br />

p∈B(v,¯v,e)<br />

F G<br />

(p) = |Ω|,<br />

and with (3.8)<br />

ϱ(F G<br />

) ≤<br />

2n2 m<br />

| ST(G)| · | ST(G)| = 2n2 m.<br />

Together with the rough bound | ST(G)| ≤ m n in (3.7) we finally get for all<br />

ε ∈ (0, 1)<br />

τ s (ε) ≤ 2n 2 m · (n log m + log ε −1 ).<br />

✷<br />

4 Can<strong>on</strong>ical paths for M s<br />

For the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical paths for M s (G) we shall make use <str<strong>on</strong>g>of</str<strong>on</strong>g> the<br />

multicommodity flow F G<br />

in secti<strong>on</strong> 3. For X, Y ∈ ST(G) for the c<strong>on</strong>structi<strong>on</strong><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> a 1-flow f XY<br />

for any node v <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree in the c<strong>on</strong>tracted graph M =<br />

(V, X ∪ Y ) / (X ∩ Y ) we used by inducti<strong>on</strong> a 1-flow f XvYv<br />

already c<strong>on</strong>structed.<br />

If in this recursi<strong>on</strong> this node v is always uniquely determined, then f XY<br />

is in<br />

fact a 1-flow al<strong>on</strong>g some path in M s (G) since the c<strong>on</strong>structi<strong>on</strong> begins with a<br />

simple transiti<strong>on</strong> between neighbours. To obtain can<strong>on</strong>ical paths for M s (G)<br />

we have to determine which <str<strong>on</strong>g>of</str<strong>on</strong>g> the nodes <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree has to be chosen<br />

in the recursi<strong>on</strong> step. We call this node in the following the starting node in<br />

M.<br />

To c<strong>on</strong>struct the starting node in M we assume w.l.g. that M has at least<br />

three nodes. If there is exactly <strong>on</strong>e node <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree we call it the starting<br />

node. In the other case we numerate the nodes in V by indices 1, . . . , n and<br />

c<strong>on</strong>sider the subgraph M ′ := (V, X ∪ Y ). Each node with minimal degree in<br />

M we map injectively to the index <str<strong>on</strong>g>of</str<strong>on</strong>g> a node in V and choose as starting<br />

node <str<strong>on</strong>g>of</str<strong>on</strong>g> M that <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal index. A node w in M corresp<strong>on</strong>ds to a c<strong>on</strong>nected<br />

comp<strong>on</strong>ent <str<strong>on</strong>g>of</str<strong>on</strong>g> X ∩ Y and thus to a subtree t w <str<strong>on</strong>g>of</str<strong>on</strong>g> M ′ . A node <str<strong>on</strong>g>of</str<strong>on</strong>g> t w is called<br />

boundary node if it is an endnode <str<strong>on</strong>g>of</str<strong>on</strong>g> edges in M ′ which are not in X ∩ Y but<br />

in X ⊕Y . These edges we call boundary edges. In the tree t w any pair <str<strong>on</strong>g>of</str<strong>on</strong>g> nodes<br />

is c<strong>on</strong>nected by exactly <strong>on</strong>e path in t w . By s w we denote the subgraph <str<strong>on</strong>g>of</str<strong>on</strong>g> M ′<br />

c<strong>on</strong>sisting <str<strong>on</strong>g>of</str<strong>on</strong>g> the paths which c<strong>on</strong>nect boundary node pairs supplemented by<br />

boundary edges. A node in t w is called internal node if its degree in s w is ≥ 3.


16 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

w<br />

<br />

❝ <br />

❝<br />

❅ ❅ <br />

❅❡❝<br />

❅ <br />

❅<br />

❅ ❝ t w<br />

<br />

❝ ❝<br />

❅ ❅ <br />

❅ ❅ <br />

❅<br />

❅ ❝ s w<br />

Figure 4: Boundary nodes in t w = 0, boundary edges = – – –, internal node<br />

❡❝ is <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3 in sw .<br />

If w in M has minimal degree d min = 3, then t w has exactly <strong>on</strong>e internal<br />

node whose index we attach to w. This can be seen as follows. If t w has <strong>on</strong>ly<br />

<strong>on</strong>e boundary node p, then the boundary edges are the <strong>on</strong>ly edges in s w and<br />

so p is the <strong>on</strong>ly node from t w in s w <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3. If there are 2 boundary nodes<br />

p and q, then s w c<strong>on</strong>sists <str<strong>on</strong>g>of</str<strong>on</strong>g> the path between p and q and the three boundary<br />

edges. In s w thus <strong>on</strong>ly <strong>on</strong>e boundary node <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3 exists with 2 boundary<br />

edges. In case t w has 3 different boundary nodes p, q and r in the first case the<br />

path in t w between two <str<strong>on</strong>g>of</str<strong>on</strong>g> these nodes might c<strong>on</strong>tain the third <strong>on</strong>e. If e.g. r is<br />

in the path from p to q, then <strong>on</strong>ly r can have degree 3 in s w induced by the<br />

boundary edge at this node. If no boundary node is <strong>on</strong> the path between the<br />

two others, then the final segments <str<strong>on</strong>g>of</str<strong>on</strong>g> the path from q to p and from r to p<br />

coincide. Let u besides p denote the other end node <str<strong>on</strong>g>of</str<strong>on</strong>g> this segment, then s w<br />

c<strong>on</strong>sists <str<strong>on</strong>g>of</str<strong>on</strong>g> three disjoint paths to the boundary nodes starting in u and u is<br />

the <strong>on</strong>ly node from t w in s w <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3 (see figure 4). Since w is attached this<br />

way the index <str<strong>on</strong>g>of</str<strong>on</strong>g> a node in t w , this mapping to the index is injective.<br />

If in M the minimal degree d min = 2, then for no node w <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 2<br />

the corresp<strong>on</strong>ding subtree t w in M ′ has an inner node since it has at most<br />

two boundary nodes. Further, those w are not neighbours to further nodes <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

degree 2 as M is the uni<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> two disjoint <strong>spanning</strong> <strong>trees</strong>. We now attach to<br />

both edges at w in M a node in V and then choose as partner <str<strong>on</strong>g>of</str<strong>on</strong>g> w the smaller<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> these two indices. The following procedure is dem<strong>on</strong>strated in Figure 5,6:<br />

Let e be an edge in M c<strong>on</strong>necting w with a node v. e is also in M ′ and c<strong>on</strong>nects<br />

there a boundary node w ′ <str<strong>on</strong>g>of</str<strong>on</strong>g> t w with a boundary node v ′ in t v . If v ′ is an inner<br />

node <str<strong>on</strong>g>of</str<strong>on</strong>g> t v then we attach to e the node w ′ . In the other case we c<strong>on</strong>sider the<br />

subgraph s v where v ′ has degree 2 since it is a boundary node <str<strong>on</strong>g>of</str<strong>on</strong>g> t v but it is<br />

not an inner node. Therefore, by c<strong>on</strong>structi<strong>on</strong> all other boundary nodes are<br />

c<strong>on</strong>nected by a path in s v with v ′ and coincide <strong>on</strong> the initial segment from v ′<br />

to some inner point v ′′ . We attach to e not the inner node v ′′ but its neighbour<br />

in this segment. As a result our mapping is injective.


J. Fehrenbach and L. Rüschendorf 17<br />

❞ ❢❞<br />

<br />

❞ ❢❞<br />

<br />

❞ <br />

v w✓<br />

✏f<br />

❞<br />

❞ e ❞<br />

<br />

✒ ✑<br />

u<br />

❞ ❞ ❞ ❞ ❢<br />

❞ ❞ ❞ ❢ <br />

❞<br />

❅<br />

❅<br />

❢❞ ❞<br />

Figure 5: In the middle part we have node w c<strong>on</strong>nected via e, f with v and<br />

u in M. Boundary nodes = 0, inner nodes = ❡❝ .<br />

❞ ❢❞ ❞<br />

<br />

v<br />

❞ ❢❞ v ′′ ′<br />

❞ ❞<br />

s v<br />

<br />

❞ <br />

f<br />

s u<br />

❞ ❞ ❞ ❞ ❢<br />

u ′ ❞ ❞ <br />

<br />

❞ ❢ ❞<br />

❢❞ ❞<br />

u ′′<br />

Figure 6: Corresp<strong>on</strong>ding subgraphs s v and s u . Determining the index <str<strong>on</strong>g>of</str<strong>on</strong>g> node<br />

w <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 2. In s v all paths from v ′ to boundary nodes coincide <strong>on</strong> initial<br />

edge part up to v ′′ . Neighbour <str<strong>on</strong>g>of</str<strong>on</strong>g> v ′′ = |. Analogously in s u . The smaller index<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> the |-node is attached to w.<br />

After this involved determinati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the starting point we can follow the<br />

c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> multicommodity flows in secti<strong>on</strong> 3 and c<strong>on</strong>struct can<strong>on</strong>ical<br />

paths for the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M s .<br />

C<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical paths in M s (G): For X, Y ∈ ST(G) and M :=<br />

(V, X ∪Y ) / (X ∩Y ) let F G<br />

be the multi-commodity flow <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) as in secti<strong>on</strong><br />

3. The can<strong>on</strong>ical path γ<br />

XY<br />

form X to Y in M s (G) is defined by inducti<strong>on</strong><br />

<strong>on</strong> |M|: If |M| = 2 then X and Y are neighbours and the can<strong>on</strong>ical path<br />

is γ<br />

XY<br />

= (B i ) 0≤i≤1<br />

, B 0 := X, B 1 = Y . Since F G (γ<br />

XY<br />

) = 1 we choose the<br />

corresp<strong>on</strong>ding coding ¯B 0 := Y , ¯B1 := X. For the inducti<strong>on</strong> step |M| = l + 1<br />

we proceed as in the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> F G . There however we determined for any<br />

node v the set D <str<strong>on</strong>g>of</str<strong>on</strong>g> G all nodes <str<strong>on</strong>g>of</str<strong>on</strong>g> minimal degree in M, X v , Y v ∈ ST(G),<br />

c<strong>on</strong>structed for any path p ′ ∈ P XvYv with F G (p ′ ) > 0 a path p ∈ P XY and<br />

determined f XY (p) as sum <str<strong>on</strong>g>of</str<strong>on</strong>g> all f XvYv (p ′ ) over all v ∈ D and p ′ ∈ P XvYv<br />

normed<br />

by 1 . Now by inducti<strong>on</strong> hypothesis we have for the starting node v |D| 0 <str<strong>on</strong>g>of</str<strong>on</strong>g> M<br />

and the corresp<strong>on</strong>ding X ′ := X v0 , Y ′ := Y v0 that there exists already exactly<br />

<strong>on</strong>e can<strong>on</strong>ical path γX ′ Y ′. Like the c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> p ∈ P XY from p ′ ∈ P XvY v<br />

we<br />

obtain a can<strong>on</strong>ical path γ<br />

XY<br />

from γX ′ Y ′ and the coding <str<strong>on</strong>g>of</str<strong>on</strong>g> a transiti<strong>on</strong> (B i, B i+1 )<br />

in γ<br />

XY<br />

is given in the same way by ¯B i := X ⊕ Y ⊕ B i . The set <str<strong>on</strong>g>of</str<strong>on</strong>g> all can<strong>on</strong>ical<br />

paths in M s (G) we denote by Γ G .<br />

We next obtain results analogously to Lemma 3.1 and Theorem 3.2. The<br />

can<strong>on</strong>ical path γ<br />

XY<br />

and γX ′ Y ′ are similar if the pairs X, Y and X′ , Y ′ are close.<br />

Lemma 4.1 Let X, Y ∈ ST(G) and w a node <str<strong>on</strong>g>of</str<strong>on</strong>g> degree 3 in M. If a, b ∈ Y


18 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

and c ∈ X are edges to w in M, then X a := (X − {c}) ∪ {a} and X b :=<br />

(X −{c})∪{b} are in ST(G) and for the can<strong>on</strong>ical paths γ<br />

X a Y<br />

:= (A i ) 0≤i≤l<br />

and<br />

γX b Y := (B i) 0≤i≤l<br />

holds<br />

{<br />

Bi ⊕ {a, b}, 0 ≤ i ≤ k<br />

A i =<br />

B i , k < i ≤ l<br />

where k is the place in γ<br />

X a Y<br />

where the edge b is added, i.e. b ∈ A k ⊕ A k+1 .<br />

Similarly for γ<br />

Y X a := (A ′ i) 0≤i≤l<br />

, γY X b := (B′ i) 0≤i≤l<br />

holds<br />

{ B<br />

A ′ ′<br />

i = i , 0 ≤ i ≤ k with k ∈ {0, . . . , l − 1}<br />

B i ⊕ {a, b}, k < i ≤ l<br />

such that b ∈ A ′ k ⊕ A′ k+1 .<br />

The injectivity <str<strong>on</strong>g>of</str<strong>on</strong>g> the coding is needed to prove that no transiti<strong>on</strong>s are<br />

used in to many <str<strong>on</strong>g>of</str<strong>on</strong>g> the can<strong>on</strong>ical paths. This is a c<strong>on</strong>sequence <str<strong>on</strong>g>of</str<strong>on</strong>g> the following<br />

theorem which is parallel to Theorem 3.2.<br />

Theorem 4.2 For B, ¯B ∈ ST(G) and edge e ∈ B ⊕ ¯B there exists exactly <strong>on</strong>e<br />

can<strong>on</strong>ical path γ<br />

X,Y<br />

:= (B i ) 1≤i≤l and some j ∈ {0, . . . , l − 1} such that<br />

a) B = B j , i.e. γ<br />

XY<br />

c<strong>on</strong>tains B<br />

b) ¯B = X ⊕ Y ⊕ B, i.e. B is coded in γ<br />

XY<br />

by ¯B<br />

c) e ∈ B j ⊕ B j+1 , i.e. in γ<br />

XY<br />

directly after B the edge e is replaced.<br />

Detailed pro<str<strong>on</strong>g>of</str<strong>on</strong>g>s <str<strong>on</strong>g>of</str<strong>on</strong>g> Lemma 4.1 and Theorem 4.2 are given in Fehrenbach (2003).<br />

As c<strong>on</strong>sequence we obtain a pro<str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> the mixing time bound in Theorem 3.3<br />

by can<strong>on</strong>ical paths:<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> Theorem 3.3 by can<strong>on</strong>ical paths:<br />

We have for the mixing time τ = τ(ε) by (1.5)<br />

τ(ε) ≤ ϱ(Γ G )(log ˆπ + log ε −1 ) (4.1)<br />

where π is the stati<strong>on</strong>ary distributi<strong>on</strong>, ˆπ := min x∈Ω π(x) and<br />

ϱ(Γ G ) :=<br />

max<br />

(B,C)∈Ω 2<br />

Ps(B,C)>0<br />

1<br />

π(B) P s (B, C)<br />

∑<br />

γ<br />

XY<br />

∈P(B,C)<br />

π(X)π(Y )|γ<br />

XY<br />

|, (4.2)<br />

P(B, C) the set <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical paths which c<strong>on</strong>tain the transiti<strong>on</strong> (B, C). The<br />

maximal length <str<strong>on</strong>g>of</str<strong>on</strong>g> a can<strong>on</strong>ical path in Γ G is n − 1 since at most 2(n − 1) edges<br />

1<br />

are exchanged. Further P s (B, C) = , m = |E|. Thus we get for the<br />

2(n−1)m<br />

c<strong>on</strong>gesti<strong>on</strong> measure<br />

ϱ(Γ G ) ≤ 2n2 m<br />

|Ω|<br />

max |P(B, C)|. (4.3)<br />

(B,C)∈Ω 2<br />

Ps(B,C)>0


J. Fehrenbach and L. Rüschendorf 19<br />

The max expressi<strong>on</strong> can be estimated using Theorem 4.2. For a transisti<strong>on</strong><br />

(B, C) <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G) let e be the unique edge in B\C. In any can<strong>on</strong>ical path<br />

γ<br />

XY<br />

∈ P(B, C) the transiti<strong>on</strong> (B, C) is coded by some ¯B ∈ Ω. By Theorem 4.2<br />

there exists exactly <strong>on</strong>e can<strong>on</strong>ical path in Γ G with these properties. Since this<br />

path not necessarily c<strong>on</strong>tains (B, C) we c<strong>on</strong>clude that |P(B, C)| ≤ |Ω|. This<br />

implies<br />

ϱ(Γ G ) ≤ 2n2 m<br />

|Ω|<br />

With |Ω| ≤ m n we thus obtain<br />

· |Ω| = 2n 2 m. (4.4)<br />

τ s (ε) ≤ 2n 2 m(n log m + log ε −1 ). (4.5)<br />

5 Forests with roots<br />

In this secti<strong>on</strong> we apply the multi-commodity flows resp. can<strong>on</strong>ical paths to<br />

the analysis <str<strong>on</strong>g>of</str<strong>on</strong>g> the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> some <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s <strong>on</strong> forests. The <str<strong>on</strong>g>Markov</str<strong>on</strong>g><br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g> M s introduced in secti<strong>on</strong>s 2, 3 <strong>on</strong> the set <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> <strong>on</strong>ly uses<br />

exchanges <str<strong>on</strong>g>of</str<strong>on</strong>g> two edges. These transiti<strong>on</strong>s can also be used <strong>on</strong> the class <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

forests i.e. circle free subgraphs <str<strong>on</strong>g>of</str<strong>on</strong>g> G and the corresp<strong>on</strong>ding <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g><br />

has an stati<strong>on</strong>ary distributi<strong>on</strong> the uniform distributi<strong>on</strong>. But s<str<strong>on</strong>g>of</str<strong>on</strong>g>ar no efficient<br />

bounds for the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> this or related <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s are known and also<br />

no randomized approximati<strong>on</strong> schemes for the number <str<strong>on</strong>g>of</str<strong>on</strong>g> forests are known (see<br />

Welsh and Merino (2000)). It seems that also the can<strong>on</strong>ical paths <str<strong>on</strong>g>of</str<strong>on</strong>g> secti<strong>on</strong> 4<br />

transfered to this problem do not lead to a polynomial bound for the mixing<br />

time. In the following we c<strong>on</strong>sider the modified class <str<strong>on</strong>g>of</str<strong>on</strong>g> forests with roots F r (G)<br />

and show that for this modified space Ω = F r (G) we obtain rapid mixing<br />

results for various <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s by means <str<strong>on</strong>g>of</str<strong>on</strong>g> the corresp<strong>on</strong>ding can<strong>on</strong>ical<br />

paths c<strong>on</strong>structed for the class <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong>.<br />

Definiti<strong>on</strong> 5.1 (Forests with roots) Let G=(V, E) be an undirected graph.<br />

A pair X := (R X , E X ) with R X ⊂ V, E X ⊂ E is called forest with roots if<br />

• the subgraph (V, E X ) <str<strong>on</strong>g>of</str<strong>on</strong>g> G c<strong>on</strong>tains no circle<br />

• any c<strong>on</strong>nected comp<strong>on</strong>ent Z <str<strong>on</strong>g>of</str<strong>on</strong>g> (V, E X ) has exactly <strong>on</strong>e node in R X , which<br />

we call the root <str<strong>on</strong>g>of</str<strong>on</strong>g> Z.<br />

F r (G) denotes the set <str<strong>on</strong>g>of</str<strong>on</strong>g> all forests with roots.<br />

Counting forests with roots corresp<strong>on</strong>ds to counting forests X with c<strong>on</strong>nected<br />

comp<strong>on</strong>ents Z 1 , . . . , Z d which are weighted by the number <str<strong>on</strong>g>of</str<strong>on</strong>g> possibilities<br />

to choose a root system i.e. by ∏ d<br />

i=1 |Z i|(n−|X|). The class F r (G) <str<strong>on</strong>g>of</str<strong>on</strong>g> forests<br />

with roots can be identified with the class <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> an extended<br />

graph G ′ .<br />

Lemma 5.2 For any undirected graph G = (V, E) there exists a graph G ′ =<br />

(V ′ , E ′ ), such that there exists a bijecti<strong>on</strong> Sp : F r (G)) −→ ST (G ′ ).


20 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: Let V ′ := V ∪ {r} and E ′ := E ∪ {{r, v} | v ∈ V } i.e. we add a node r<br />

and all edges {r, v} to the new node to obtain G ′ = (V ′ , E ′ ). For X ∈ F r (G) we<br />

define Sp(X) := E X ∪ {{r, v} | v ∈ R X }. Thus Sp(X) is a <strong>spanning</strong> tree <str<strong>on</strong>g>of</str<strong>on</strong>g> G ′<br />

since E X is circlefree and also the additi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the edges {r, v}, v ∈ R X , does not<br />

produce circles. Sp is a bijecti<strong>on</strong> since any X ′ ∈ ST (G ′ ) has a unique origin<br />

Sp −1 (X ′ ) = (R X , E X ) where R X := {v ∈ V | {r, v} ∈ X ′ } and E X := X ′ ∩ E. ✷<br />

The bijecti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> Lemma 5.2 implies that M s (G ′ ) induces a rapidly mixing<br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> F r (G). We now introduce a more general class <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>Markov</str<strong>on</strong>g><br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g>s <strong>on</strong> F r (G) and investigate their mixing behaviour. We allow that the<br />

transiti<strong>on</strong> behaviour <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s depends <strong>on</strong> the degree d X (r) =:<br />

‖X‖, X ∈ ST (G ′ ), <str<strong>on</strong>g>of</str<strong>on</strong>g> the newly added node r i.e. it depends <strong>on</strong> the number <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

c<strong>on</strong>nected comp<strong>on</strong>ents <str<strong>on</strong>g>of</str<strong>on</strong>g> the forest corresp<strong>on</strong>ding to X ∈ SB(G ′ ).<br />

Definiti<strong>on</strong> 5.3 Let G = (V, E) be an undirected graph with extensi<strong>on</strong> G ′ =<br />

(V ′ , E ′ ) as in Lemma 5.2. For any λ ∈ IR + we define the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g><br />

M λ s<br />

(G ′ ) = (X t ) t∈IN<br />

<strong>on</strong> ST (G ′ ) by the transiti<strong>on</strong> probabilities: If X t = X ∈<br />

ST (G ′ ) is the state <str<strong>on</strong>g>of</str<strong>on</strong>g> M s (G ′ ) at the time t ∈ IN, then we draw uniformly and<br />

independent e ∈ X und f ∈ E ′ and set<br />

1. Y := (X \ {e}) ∪ {f}<br />

2. If Y ∈ ST (G ′ ), then we set<br />

{ Y, with probability p<br />

X t+1 =<br />

X, with probability 1 − p,<br />

where p := 1 2 min {<br />

1, λ ‖Y ‖−‖X‖ }.<br />

If Y /∈ ST (G ′ ), then we set X t+1 := X. We denote the transiti<strong>on</strong> matrix <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

this <str<strong>on</strong>g>chain</str<strong>on</strong>g> by P λ<br />

.<br />

In the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ s<br />

(G ′ ) for 0 < λ < 1 transiti<strong>on</strong>s to forests with<br />

smaller number <str<strong>on</strong>g>of</str<strong>on</strong>g> comp<strong>on</strong>ents are preferred, for 1 < λ transiti<strong>on</strong>s to forests<br />

with bigger number <str<strong>on</strong>g>of</str<strong>on</strong>g> comp<strong>on</strong>ents are preferred while for λ = 1 we have the<br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> secti<strong>on</strong> 2 <strong>on</strong> G ′ , M λ s (G ′ ) = M s (G ′ ). The c<strong>on</strong>sequence for the stati<strong>on</strong>ary<br />

distributi<strong>on</strong> is the following.<br />

Theorem 5.4 For any λ ∈ IR + the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ s (G ′ ) is ergodic. The<br />

stati<strong>on</strong>ary distributi<strong>on</strong> π λ<br />

is given by<br />

π λ<br />

(X) := λ‖X‖<br />

Z(λ)<br />

(5.1)<br />

with normalizati<strong>on</strong> Z(λ) := ∑ X∈ST (G ′ ) λ‖X‖ .<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: M λ s (G ′ ) has the same transiti<strong>on</strong> graph as M s (G ′ ) and thus is irreducible<br />

and aperiodic by step 2 in the definiti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> M λ s (G ′ ). Further for X, Y ∈ ST (G ′ )


J. Fehrenbach and L. Rüschendorf 21<br />

with P λ<br />

(X, Y ) > 0 holds:<br />

π λ<br />

(X) P λ<br />

(X, Y ) =<br />

=<br />

=<br />

1<br />

2m(n − 1)<br />

1<br />

2m(n − 1)<br />

1<br />

2m(n − 1)<br />

= π λ<br />

(Y ) P λ<br />

(Y, X),<br />

{ }<br />

λ ‖X‖<br />

Z(λ) min 1, λ ‖Y ‖−‖X‖<br />

1<br />

{<br />

Z(λ) min λ ‖X‖ , λ<br />

‖Y ‖}<br />

{<br />

λ ‖Y ‖<br />

Z(λ) min λ ‖X‖−‖Y ‖ , 1<br />

}<br />

with n := |V ′ |, m := |E ′ |. Thus π λ<br />

is the stati<strong>on</strong>ary distributi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> M λ s (G ′ ). ✷<br />

In the next theorem we use the can<strong>on</strong>ical paths <str<strong>on</strong>g>of</str<strong>on</strong>g> secti<strong>on</strong> 4 to estimate<br />

the mixing time <str<strong>on</strong>g>of</str<strong>on</strong>g> M λ s (G ′ ) efficiently. In c<strong>on</strong>sequence we have a polynomial<br />

sampling scheme for the set <str<strong>on</strong>g>of</str<strong>on</strong>g> forests <str<strong>on</strong>g>of</str<strong>on</strong>g> any graph G with weights proporti<strong>on</strong>al<br />

to λ d(X) , d(X) the number <str<strong>on</strong>g>of</str<strong>on</strong>g> c<strong>on</strong>nected comp<strong>on</strong>ents <str<strong>on</strong>g>of</str<strong>on</strong>g> X.<br />

Theorem 5.5 Let G ′ = (V ′ , E ′ ) be the extensi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> an undirected graph G =<br />

(V, E) and λ ∈ IR + . Then the mixing time τ λ <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ s (G ′ ) is<br />

bounded by<br />

τ λ (ε) ≤ 2n 2 m · λ ′ · (n log(mλ ′ ) + log ε −1 ), (5.2)<br />

for all ε ∈ (0, 1), where λ ′ := max{λ, λ −1 }, n := |V ′ | and m := |E ′ |.<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s M λ s (G ′ ) and M s (G ′ ) have the same transiti<strong>on</strong><br />

graph. Therefore we can use the can<strong>on</strong>ical paths Γ G<br />

′ w.r.t. M s (G ′ ) <str<strong>on</strong>g>of</str<strong>on</strong>g> secti<strong>on</strong><br />

4. We have to estimate the c<strong>on</strong>gesti<strong>on</strong> measure<br />

ϱ λ<br />

(Γ G<br />

′) :=<br />

max<br />

(B,C)∈SB(G ′ ) 2<br />

P λ<br />

(B,C)>0<br />

1<br />

π λ<br />

(B) P λ<br />

(B, C)<br />

∑<br />

γ<br />

XY<br />

∈P(B,C)<br />

π λ<br />

(X)π λ<br />

(Y ) |γ<br />

XY<br />

|, (5.3)<br />

where P(B, C) is the set <str<strong>on</strong>g>of</str<strong>on</strong>g> can<strong>on</strong>ical paths in Γ G<br />

′ which use transiti<strong>on</strong> (B, C).<br />

The length <str<strong>on</strong>g>of</str<strong>on</strong>g> each can<strong>on</strong>ical path is bounded by n − 1 and for B ≠ C holds<br />

1<br />

P λ (B, C) ≥ . Thus from (5.3)<br />

2m(n−1)λ ′<br />

ϱ λ<br />

(Γ G<br />

′) ≤ 2n2 m λ ′<br />

Z(λ)<br />

max<br />

P λ (B,C)>0<br />

∑<br />

γ<br />

XY<br />

∈P(B,C)<br />

λ ‖X‖+‖Y ‖<br />

λ ‖B‖ .<br />

For any fixed transiti<strong>on</strong> (B, C) <str<strong>on</strong>g>of</str<strong>on</strong>g> M λ s (G ′ ) and γ<br />

XY<br />

∈ P(B, C), this transiti<strong>on</strong><br />

is coded by ¯B = X ⊕ Y ⊕ B. As B\C c<strong>on</strong>tains exactly <strong>on</strong>e edge, say e ∈ E ′ ,<br />

there is by Theorem 4.2 at most <strong>on</strong>e can<strong>on</strong>ical path which codes B by ¯B and<br />

leads from B directly to C. Further, by c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the paths and their<br />

codings it holds that B ⊕ ¯B = X ⊕ Y as well as B ∩ ¯B = X ∩ Y . This implies


22 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

that ‖B‖ + ‖ ¯B‖ = ‖X‖ + ‖Y ‖ and we obtain for all transiti<strong>on</strong>s (B, C) <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

M λ s (G ′ )<br />

∑<br />

γ<br />

XY<br />

∈P(B,C)<br />

As a result,<br />

λ ‖X‖+‖Y ‖<br />

λ ‖B‖ ≤ ∑<br />

¯B∈ST (G ′ )<br />

λ ‖ ¯B‖<br />

= Z(λ).<br />

ϱ λ<br />

(Γ G<br />

′) ≤ 2n 2 mλ ′ (5.4)<br />

and with ˆπ λ<br />

:= min X∈SB(G ′ )<br />

π λ<br />

(X)<br />

τ λ<br />

(ε) ≤ 2n 2 m λ ′ (log ˆπ −1<br />

λ<br />

+ log ε −1 ). (5.5)<br />

For λ < 1 holds ˆπ −1 ≤ λ −n Z(λ) ≤ (λ ′ ) n |ST (G ′ )| and for λ ≥ 1, ˆπ −1<br />

λ<br />

λ<br />

Z(λ) ≤ (λ ′ ) n |ST (G ′ )|. With |ST (G ′ )| ≤ m n this implies<br />

≤<br />

τ λ<br />

(ε) ≤ 2n 2 m · λ ′ (n log(mλ ′ ) + log ε −1 ).<br />

Remark: For the transiti<strong>on</strong> from M λ s (G ′ ) via the bijecti<strong>on</strong> Sp from Lemma 5.2<br />

to the corresp<strong>on</strong>ding <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> F r (G) we have to note that |V | = |V ′ |−1<br />

and |E| = |E ′ | − |V | which changes the bound <strong>on</strong>ly by a polynomical factor.<br />

As a c<strong>on</strong>sequence we obtain a rapidly mixing <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> the class <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

forests with roots F r (G) or equivalently <strong>on</strong> the class <str<strong>on</strong>g>of</str<strong>on</strong>g> <strong>spanning</strong> <strong>trees</strong> in a<br />

<strong>rooted</strong> graph G ′ with stati<strong>on</strong>ary distributi<strong>on</strong> proporti<strong>on</strong>al to λ d(X) , d(X) the<br />

degree <str<strong>on</strong>g>of</str<strong>on</strong>g> the root r.<br />

✷<br />

✷<br />

6 C<strong>on</strong>nected, <strong>spanning</strong> subgraphs<br />

In this secti<strong>on</strong> we c<strong>on</strong>sider the class <str<strong>on</strong>g>of</str<strong>on</strong>g> c<strong>on</strong>nected, <strong>spanning</strong> subgraphs S c (G)<br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> a graph G = (V, E). As any X ∈ S c (G) has node set V we can identify<br />

X with its node set and identify thus X ⊂ E with subsets <str<strong>on</strong>g>of</str<strong>on</strong>g> E which define<br />

c<strong>on</strong>nected <strong>spanning</strong> subgraphs.<br />

Also for S c (G) no efficient randomized approximati<strong>on</strong> scheme and no rapidly<br />

mixing <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> with uniform distributi<strong>on</strong> <strong>on</strong> S c (G) as stati<strong>on</strong>ary distributi<strong>on</strong><br />

is known (see Welsh and Merino (2000)). We have the following<br />

c<strong>on</strong>necti<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> S c (G) to <strong>spanning</strong> <strong>trees</strong>.<br />

Lemma 6.1 For an undirected graph G = (V, E) there exists a graph G ′′ :=<br />

(V ′′ , E ′′ ) such that there exists a bijecti<strong>on</strong> between ST (G ′′ ) and<br />

⋃<br />

A∈S c(G)<br />

{<br />

(A, T ) | T ∈ ST (A)<br />

}


J. Fehrenbach and L. Rüschendorf 23<br />

Pro<str<strong>on</strong>g>of</str<strong>on</strong>g>: Let V E := {v e | e ∈ E} be a set <str<strong>on</strong>g>of</str<strong>on</strong>g> new nodes and define G ′′ := (V ′′ , E ′′ )<br />

with V ′′ := V ∪ V E , E ′′ := ⋃ e∈E<br />

{<br />

{v, ve } | v ∈ e } , i.e. the edge e = {v, w} is<br />

replaced by two edges {v, v e } and {w, v e }. For each node e ∈ E we denote <strong>on</strong>e<br />

endnode by e r as right endnode and <strong>on</strong>e endnode by e l as left endnode. For<br />

X ∈ ST (G ′′ ) the subset A := { e ∈ E | {v e , e r } ∈ X } is a c<strong>on</strong>nected <strong>spanning</strong><br />

subgraph <str<strong>on</strong>g>of</str<strong>on</strong>g> G. Further, T := { e ∈ E | {v e , e r } ∈ X and {v e , e l } ∈ X } is a<br />

<strong>spanning</strong> tree <str<strong>on</strong>g>of</str<strong>on</strong>g> G.<br />

C<strong>on</strong>versely X can be rec<strong>on</strong>structed from A and T since<br />

X = { {v e , e r } | e ∈ A } ∪ { {v e , e l } | e ∈ T ∪ (E\A) } .<br />

Thus this mapping is bijective.<br />

✷<br />

Thus any A ∈ S c (G) corresp<strong>on</strong>ds to as many <strong>spanning</strong> <strong>trees</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> G ′′ as A has<br />

itself. We introduce as in secti<strong>on</strong> 5 a weighting <strong>on</strong> ST (G ′′ ) by<br />

‖X‖ := |A| (6.1)<br />

where X ∈ ST (G ′′ ) corresp<strong>on</strong>ds to (A, T ) in Lemma 6.1.<br />

Definiti<strong>on</strong> 6.2 (<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> <strong>on</strong> ST (G ′′ )) We define for λ ∈ IR + the<br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ S c<br />

(G ′′ ) = (X t ) <strong>on</strong> ST (G ′′ ) as in Definiti<strong>on</strong> 5.3 where the<br />

norm ‖X‖ is defined by (6.1).<br />

Similarly to the argument in secti<strong>on</strong> 5 we obtain (for details <str<strong>on</strong>g>of</str<strong>on</strong>g> the argument<br />

see Fehrenbach (2003))<br />

Theorem 6.3 The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M S λ c<br />

(G ′′ ) is ergodic for any λ ∈ IR + with<br />

stati<strong>on</strong>ary distributi<strong>on</strong><br />

π λ<br />

(X) := λ‖X‖<br />

Z(λ)<br />

with Z(λ) := ∑<br />

X∈ST (G ′ )<br />

for X ∈ ST (G ′′ ). The mixing time τ λ is bounded by<br />

λ ‖X‖ (6.2)<br />

τ λ (ε) ≤ 2n 2 mλ ′ (n log(mλ ′ ) + log ε −1 ), (6.3)<br />

for all ε ∈ (0, 1) with λ ′ := max{λ, λ −1 }, n := |V ′′ | and m := |E ′′ |.<br />

Based <strong>on</strong> Lemma 6.1 we can transfer the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ S c<br />

(G ′′ ) <strong>on</strong> the<br />

basic space ⋃ A∈S {(A, T ); T ∈ ST (A)} and project it <strong>on</strong> S c(G) c(G). Then we<br />

obtain a <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ S c<br />

(G) <strong>on</strong> S c (G). The weight <str<strong>on</strong>g>of</str<strong>on</strong>g> a state A ∈ S c (G)<br />

w.r.t. its stati<strong>on</strong>ary distributi<strong>on</strong> is given by λ |A|<br />

|ST (A)|. The rapid mixing<br />

property remains the same since the number <str<strong>on</strong>g>of</str<strong>on</strong>g> edges and nodes <str<strong>on</strong>g>of</str<strong>on</strong>g> G and G ′′<br />

<strong>on</strong>ly differ by a polynomial factor. Thus we obtain<br />

Corollary 6.4 The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M λ S c<br />

(G) induced by M λ S c<br />

(G ′′ ) <strong>on</strong> S c (G) is<br />

rapidly mixing with stati<strong>on</strong>ary distributi<strong>on</strong><br />

π λ (A) = λ |A| |ST (A)|, A ∈ S c (G). (6.4)


24 <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> algorithm <strong>on</strong> <strong>spanning</strong> <strong>trees</strong> <strong>rooted</strong> forests<br />

Remark: As c<strong>on</strong>sequnce <str<strong>on</strong>g>of</str<strong>on</strong>g> Corollary 6.4 we do not get a polynomial randomized<br />

approximati<strong>on</strong> scheme for |S c (G)| as π λ is not the uniform distributi<strong>on</strong>. We<br />

may however obtain such a scheme for some functi<strong>on</strong>als like ∑ A∈S c(G)<br />

|ST (A)|.<br />

This however can also directly be obtained from |ST (G)| since<br />

∑<br />

|ST (A)| = 2 m−(n−1) |ST (G)|<br />

A∈S c(G)<br />

since |E − T | = m − (n − 1) for all T ∈ ST (G).<br />

✷<br />

References<br />

Aldous, D. (1983). Random walks <strong>on</strong> finite groups and rapidly mixing <str<strong>on</strong>g>Markov</str<strong>on</strong>g><br />

<str<strong>on</strong>g>chain</str<strong>on</strong>g>s, Volume 986 <str<strong>on</strong>g>of</str<strong>on</strong>g> Lecture Notes in Mathematics, pp. 243–297. Springer.<br />

Aldous, D. (1990). The random walk c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> uniform <strong>spanning</strong> <strong>trees</strong><br />

and uniform labelled <strong>trees</strong>. SIAM Journal <strong>on</strong> Discrete Mathematics 3, 450–<br />

465.<br />

Broder, A. (1989). Generating random <strong>spanning</strong> <strong>trees</strong>. In Proceedings <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

the 30th Annual IEEE Symposium <strong>on</strong> Foundati<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> Computer Science<br />

(FOCS), pp. 442–447.<br />

Cordovil, R. and M. Moreira (1993). Bases-cobases graphs and polytopes <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

matroids. Combinatorica 13, 157–165.<br />

Cryan, M., M. Dyer, L. A. Goldberg, and M. Jerrum (2002). Rapidly mixing<br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s for sampling c<strong>on</strong>tingency tables with a c<strong>on</strong>stant number <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

rows. In Proceedings <str<strong>on</strong>g>of</str<strong>on</strong>g> the 43rd Symposium <strong>on</strong> Foundati<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> Computer<br />

Science (FOCS), pp. 711–720.<br />

Diac<strong>on</strong>is, P. (1988). Group Representati<strong>on</strong>s in Probability and Statistics. Number<br />

11 in IMS – Lecture Notes, M<strong>on</strong>ograph Series. Hayward.<br />

Diac<strong>on</strong>is, P. and D. Stroock (1991). Geometric bounds for eigenvalues <str<strong>on</strong>g>of</str<strong>on</strong>g><br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s. Ann. Appl. Prob. 1, 36–61.<br />

Diestel, R. (1996). Graphentheorie. Springer.<br />

Feder, T. and M. Mihail (1992). Balanced matroids. In Proceedings <str<strong>on</strong>g>of</str<strong>on</strong>g> the 24th<br />

Annual ACM Symposium <strong>on</strong> Theory <str<strong>on</strong>g>of</str<strong>on</strong>g> Computing, pp. 26–38.<br />

Fehrenbach, J. (2003). Design und Analyse stochastischer Algorithmen auf<br />

kombinatorischen Strukturen. PhD thesis, University <str<strong>on</strong>g>of</str<strong>on</strong>g> Freiburg.<br />

Jerrum, M. (1998). Mathematical foundati<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M<strong>on</strong>te<br />

Carlo method. In M. Habib et al. (Eds.), Probabilistic Methods for Algorithmic<br />

Discrete Mathematics, Number 16 in Algorithms Comb., pp. 116–165.<br />

Springer.<br />

Jerrum, M. (2003). Counting, Sampling and Integrating: Algorithms and Complexity.<br />

Lectures in Mathematics. Birkhäuser.


J. Fehrenbach and L. Rüschendorf 25<br />

Jerrum, M. and A. Sinclair (1996). The <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g> M<strong>on</strong>te Carlo method:<br />

an approach to approximate counting and integrati<strong>on</strong>. In D. Hochbaum<br />

(Ed.), Approximati<strong>on</strong> Algorithms for NP-hard problems, pp. 482–520. PWS<br />

Publishing.<br />

Jerrum, M. and J.-B. S<strong>on</strong> (2002). Spectral gap and log-Sobolev c<strong>on</strong>stant for<br />

balanced matroids. In 43rd IEEE Symposium <strong>on</strong> Foundati<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> Computer<br />

Science, pp. 721–729. Computer Society Press.<br />

Jerrum, M., L. G. Valiant, and V. V. Vazirani (1986). Random generati<strong>on</strong><br />

<str<strong>on</strong>g>of</str<strong>on</strong>g> combinatorial structures from a uniform distributi<strong>on</strong>. Theor. Comput.<br />

Sci. 43, 169–188.<br />

Morris, B. and A. Sinclair (2004). Random walks <strong>on</strong> truncated cubes and<br />

sampling 0 − 1 knapsack soluti<strong>on</strong>s. SIAM, Journal <strong>on</strong> Computing 34, 195–<br />

226.<br />

Sinclair, A. (1992). Improved bounds for mixing rates <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>Markov</str<strong>on</strong>g> <str<strong>on</strong>g>chain</str<strong>on</strong>g>s and<br />

multicommodity flow. Comb. Probab. Comput. 1, 351–370.<br />

Sinclair, A. (1993). Algorithms for Random Generati<strong>on</strong> and Counting: a<br />

<str<strong>on</strong>g>Markov</str<strong>on</strong>g> Chain Approach. Progress in Theoretical Computer Science.<br />

Birkhäuser. viii +146 p.<br />

Welsh, D. and C. Merino (2000). The Potts model and the Tutte polynomial.<br />

Math. Physics 41, 1127–1152.<br />

Johannes Fehrenbach<br />

Department <str<strong>on</strong>g>of</str<strong>on</strong>g> Mathematics<br />

University <str<strong>on</strong>g>of</str<strong>on</strong>g> Freiburg<br />

Eckerstr. 1<br />

79104 Freiburg<br />

Germany<br />

Ludger Rüschendorf<br />

Department <str<strong>on</strong>g>of</str<strong>on</strong>g> Mathematics<br />

University <str<strong>on</strong>g>of</str<strong>on</strong>g> Freiburg<br />

Eckerstr. 1<br />

79104 Freiburg<br />

Germany

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!