Cutting down trees with a Markov chainsaw L. AddarioBerry 1 N. - - PowerPoint PPT Presentation

cutting down trees with a markov chainsaw
SMART_READER_LITE
LIVE PREVIEW

Cutting down trees with a Markov chainsaw L. AddarioBerry 1 N. - - PowerPoint PPT Presentation

Cutting down trees with a Markov chainsaw L. AddarioBerry 1 N. Broutin 2 C. Holmgren 2 1 Department of Mathematics and Statistics McGill University 2 Projet Algorithms INRIA Paris-Rocquencourt October 18, 2010 Cutting down trees with a Markov


slide-1
SLIDE 1

Cutting down trees with a Markov chainsaw

  • L. Addario–Berry 1
  • N. Broutin 2
  • C. Holmgren 2

1Department of Mathematics and Statistics

McGill University

2Projet Algorithms

INRIA Paris-Rocquencourt

October 18, 2010

Cutting down trees with a Markov chainsaw 1 / 27

slide-2
SLIDE 2

Plan of the talk

1 Cutting down trees 2 The record point of view 3 Generating random Cayley trees 4 Large random Cayley trees and the CRT 5 Cutting down trees to plant a forest 6 Cutting down lattice paths 7 Algorithms and the additive coalescent Cutting down trees with a Markov chainsaw 2 / 27

slide-3
SLIDE 3

Introduction

Natural setting: cutting at edges cut a random edge keep the bit with the root stop when no more edges. Practical setting: cutting at nodes pick a random node remove the subtree stop when no more nodes Two kinds of result: for deterministic and log n trees: (weakly) 1-stable laws for Galton–Watson trees (√n trees), the case we are interested in here. History: Meir-Moon, Janson, Chassaing, Panholzer, Fill, etc... method of moments :(

Cutting down trees with a Markov chainsaw 3 / 27

slide-4
SLIDE 4

Union-Find algorithms and the fragmentation/coalescent

A natural model for merge queries: initially have n sets {1}, {2}, . . . , {n} there is an unknown spanning tree T on 1, 2, . . . , n the merge queries are the edges of T in a random order after n − k merges the collection of sets is forest of k + 1 rooted trees ⇒ kernel is additive An other important one: the queries are edges of Kn the merge queries arrive in random order growth of random graphs/minimum spanning tree: kernel is multiplicative

Cutting down trees with a Markov chainsaw 4 / 27

slide-5
SLIDE 5

Hashing with linear probing/parking

4 6 6 2 1 3 5 3 5 5 7 4 6 5 3 1 7 2 4 6 6 2 1 3 5 3 5 5 8 7 4 6 5 3 1 8 7 2 Cutting down trees with a Markov chainsaw 5 / 27

slide-6
SLIDE 6

Records I

Usual records take a random permutation π = (π1, . . . , πn) of {1, 2, . . . , n} i is a record if πi = min{j ≤ i : πj}. E

  • i

1[i is a record]

  • =

n

  • i=1

1/i ∼ log n Equivalent to records in a rooted path P 6 3 4 7 2 1 5

Cutting down trees with a Markov chainsaw 6 / 27

slide-7
SLIDE 7

Records I

Usual records take a random permutation π = (π1, . . . , πn) of {1, 2, . . . , n} i is a record if πi = min{j ≤ i : πj}. E

  • i

1[i is a record]

  • =

n

  • i=1

1/i ∼ log n Equivalent to records in a rooted path P 6 3 4 7 2 1 5

Cutting down trees with a Markov chainsaw 6 / 27

slide-8
SLIDE 8

Records II: a tree version

Records in rooted trees: R(T) the number of records in a tree T for a tree T rooted at r and a random permutation π a vertex u ∈ T is a record if πu = min{πv : v ∈ u, r}. E [R(T)] = E

  • u∈T

1[u is a record]

  • = nP (U is a record) = nE
  • 1

DU + 1

  • If Tn is a rinary search tree

E [R(Tn)] ∼ n 2 log n If Tn is a simply generated tree E [R(Tn)] ≈ √n

Cutting down trees with a Markov chainsaw 7 / 27

slide-9
SLIDE 9

Records II: a tree version

Records in rooted trees: R(T) the number of records in a tree T for a tree T rooted at r and a random permutation π a vertex u ∈ T is a record if πu = min{πv : v ∈ u, r}. E [R(T)] = E

  • u∈T

1[u is a record]

  • = nP (U is a record) = nE
  • 1

DU + 1

  • If Tn is a rinary search tree

E [R(Tn)] ∼ n 2 log n If Tn is a simply generated tree E [R(Tn)] ≈ √n A coupling Cut the vertices in the order given by π. Then: u is cut ⇔ u is a record

Cutting down trees with a Markov chainsaw 7 / 27

slide-10
SLIDE 10

Generating rooted labelled trees uniformly

Cayley tree: uniformly chosen rooted labelled tree on {1, 2, . . . , n} uniformly random rooted spanning tree of Kn can also generate the shape as a Poisson(1)-Galton–Watson tree conditioned on the size being n. Algorithm 1 Start with vertex 1 For 2 ≤ i ≤ n connect i to Vi =

  • j

w.p. 1/n 1 ≤ j ≤ i − 2 i − 1 w.p. 1 − (i − 2)/n Randomly permute the labels

Cutting down trees with a Markov chainsaw 8 / 27

slide-11
SLIDE 11

Generating rooted labelled trees uniformly

Algorithm 2 (Aldous–Broder) start from a random vertex X0; move in the graph according to a simple random walk X; if X visits Xi for the first time add the edge Xi−1 → Xi. At the cover time, return the tree of directed edges. X0 X1 X2 X3 X4 X5 X6

Cutting down trees with a Markov chainsaw 9 / 27

slide-12
SLIDE 12

Consequences for large random trees

A “building branches” point of view Walk until the first time we go to a vertex already discovered: when the tree has k vertices, we stop the current branch with probability k/n. given that we stop, the current vertex is uniform on the already constructed tree Lengths in Cayley trees P (first branch ≥ k edges) = k

i=1(1 − i/n)

critical scaling k ∼ x√n (birthday paradox) P (first branch ≥ x√n) ∼ e−x2/2.

Cutting down trees with a Markov chainsaw 10 / 27

slide-13
SLIDE 13

A Markov chain of spanning trees

Following the algorithm {Xj, j ≥ 0} a sequence of i.i.d. r.v. uniform in {1, 2, . . . , n} τ(k) = inf{j ≥ 0 : Xj = k} T the tree consisting of {(Xτ(k)−1 → Xτ(k)) : τ(k) > 0} 3 1 1 2 4 4 X0 X1 X2 X4 X5 X6 X7 A stationary sequence of rooted trees: change the starting point {Xj, j ∈ Z} a sequence of i.i.d. r.v. uniform in {1, 2, . . . , n} τi(k) = inf{j ≥ i : Xj = k} Ti the tree consisting of {(Xτi(k)−1 → Xτi(k)), τi(k) > i}

Cutting down trees with a Markov chainsaw 11 / 27

slide-14
SLIDE 14

A Markov chain of spanning trees

Following the algorithm {Xj, j ≥ 0} a sequence of i.i.d. r.v. uniform in {1, 2, . . . , n} τ(k) = inf{j ≥ 0 : Xj = k} T the tree consisting of {(Xτ(k)−1 → Xτ(k)) : τ(k) > 0} 3 2 3 1 1 2 4 4 X−2 X−1 X0 X1 X3 X4 X5 X6 X7 1 A stationary sequence of rooted trees: change the starting point {Xj, j ∈ Z} a sequence of i.i.d. r.v. uniform in {1, 2, . . . , n} τi(k) = inf{j ≥ i : Xj = k} Ti the tree consisting of {(Xτi(k)−1 → Xτi(k)), τi(k) > i}

Cutting down trees with a Markov chainsaw 11 / 27

slide-15
SLIDE 15

Stick breaking construction for the limit of large trees

Theorem (Scaling limit of Cayley trees) Viewed as a metric space, with the graph distance, n−1/2Tn

d−GH

− − − − →

n→∞ T .

Scaling limit of the Aldous–Broder algorithm a Poisson point process with rate xdx splits R>0 into segments; Take the segments in order, and make them into a tree shape hooking them at a uniform position Taking the closure yields the continuum random tree.

Cutting down trees with a Markov chainsaw 12 / 27

slide-16
SLIDE 16

A closer look at the Markov chain construction

Reformulation pick a random node Xi+1 cut it off, together with its subtree Ri+1 Build Ti by appending Ti \ Ri+1 as a child of Xi+1 Ri+1 Ti Xi Xi+1

Cutting down trees with a Markov chainsaw 13 / 27

slide-17
SLIDE 17

A closer look at the Markov chain construction

Reformulation pick a random node Xi+1 cut it off, together with its subtree Ri+1 Build Ti by appending Ti \ Ri+1 as a child of Xi+1 Ri+1 Ti Xi Xi+1 Xi Ri+1 Xi+1 Ti+1

Cutting down trees with a Markov chainsaw 13 / 27

slide-18
SLIDE 18

Observations about the random walk construction

Facts about the construction Conditional on their respective sizes (subset of labels): left-over tree T1 \ R1 is a Cayley tree the cut-off tree R1 is a Cayley tree Idea: Run the procedure without putting edges from X−1 or X0 Conditional on X−1 = X0, this is a random forest of 2 rooted trees.

Cutting down trees with a Markov chainsaw 14 / 27

slide-19
SLIDE 19

A probabilistic correspondence

Theorem There exists a correspondence between: a uniform Cayley tree T and a cutting down sequence, and a uniform Cayley tree T⋆ and a uniformly random node u ∈ T⋆. In the correspondence, the length of the cutting sequence is turned into the depth of u in T⋆(plus one). Idea of the proof:

  • ne step of the Markov chain of spanning tree cuts at a uniformly

random node; for the second step, rather than doing it on the whole tree, just do it on T0 \ R1: replace T0 \ R1 by the its tranformation in one step of the Markov chain stop when you hit the root of initial tree T0.

Cutting down trees with a Markov chainsaw 15 / 27

slide-20
SLIDE 20

A picture is worth a thousand words

X0 v1 v1 X0 v2 X0 v1 v2 v1 v2 vκ−1 X0 T0 T1 T2 Tκ−1

Cutting down trees with a Markov chainsaw 16 / 27

slide-21
SLIDE 21

Sampling a random vertex in a tree

Algorithm with probability |T|−1, return the root u1;

  • therwise, pick a child u2 of u1 with probability proportional to |T(u2)|

and recurse in T(u2) Lemma The vertex U returned by the procedure is uniform in T. Proof. For all u ∈ T, there is a unique path u1, u2, . . . , uκ = u. Then P (U = u):

κ−1

  • i=1
  • 1 −

1 |T(ui)| |T(ui+1)| |T(ui)| − 1 × 1 |T(uκ)| = 1 |T| u1 u2

Cutting down trees with a Markov chainsaw 17 / 27

slide-22
SLIDE 22

Why does it work?

Lemma At time κ, when vκ = X0, the vertex X0 is uniformly random in Tκ−1 Proof. The growth of the path v1, v2, . . . , vκ follows the distribution of the path to a uniformly random node: with probability |Ti(X0)|−1 return X0

  • therwise Ti+1(X0) is size-biased

Cutting down trees with a Markov chainsaw 18 / 27

slide-23
SLIDE 23

About walks associated with trees

1 3 5 8 9 6 7 2 4 Let Tn be a Cayley tree of size n, with contour function C( · ) Theorem (Marckert–Mokkadem) Let e = (e(t), 0 ≤ t ≤ 1) be a standard Brownian excursion. Then, C(⌊2n · ⌋) √n

d

− − − →

n→∞ 2e( · )

Cutting down trees with a Markov chainsaw 19 / 27

slide-24
SLIDE 24

Towards cutting down lattice paths

Let A = {(x, y) : 0 ≤ x ≤ 2n and 0 ≤ y ≤ CT(x)} Say π(p) = i if p ∈ A correspond to the point u ∈ T For p ∈ A let ℓp = #{p′ : π(p′) = π(p)} Sampling nodes uniformly at random pick p = (x, y) with probability proportional to ℓ−1

p

then, π(p) is uniform in T.

Cutting down trees with a Markov chainsaw 20 / 27

slide-25
SLIDE 25

Towards cutting down lattice paths

Let A = {(x, y) : 0 ≤ x ≤ 2n and 0 ≤ y ≤ CT(x)} Say π(p) = i if p ∈ A correspond to the point u ∈ T For p ∈ A let ℓp = #{p′ : π(p′) = π(p)} Sampling nodes uniformly at random pick p = (x, y) with probability proportional to ℓ−1

p

then, π(p) is uniform in T.

Cutting down trees with a Markov chainsaw 20 / 27

slide-26
SLIDE 26

Towards cutting down lattice paths

Let A = {(x, y) : 0 ≤ x ≤ 2n and 0 ≤ y ≤ CT(x)} Say π(p) = i if p ∈ A correspond to the point u ∈ T For p ∈ A let ℓp = #{p′ : π(p′) = π(p)} Sampling nodes uniformly at random pick p = (x, y) with probability proportional to ℓ−1

p

then, π(p) is uniform in T.

Cutting down trees with a Markov chainsaw 20 / 27

slide-27
SLIDE 27

Towards cutting down lattice paths

Let A = {(x, y) : 0 ≤ x ≤ 2n and 0 ≤ y ≤ CT(x)} Say π(p) = i if p ∈ A correspond to the point u ∈ T For p ∈ A let ℓp = #{p′ : π(p′) = π(p)} Sampling nodes uniformly at random pick p = (x, y) with probability proportional to ℓ−1

p

then, π(p) is uniform in T.

Cutting down trees with a Markov chainsaw 20 / 27

slide-28
SLIDE 28

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-29
SLIDE 29

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-30
SLIDE 30

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-31
SLIDE 31

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-32
SLIDE 32

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-33
SLIDE 33

Cutting down lattice paths

Every cut inhibates a region of A: 2#{nodes left in the tree} = length{fully active region}

Cutting down trees with a Markov chainsaw 21 / 27

slide-34
SLIDE 34

Cutting down the mightiest tree with . . . a Herring!

Correct scaling: mass by n distances by √n time by √n Setting: e an excursion Ae = {p = (x, y) : 0 ≤ y ≤ e(x)} p ∈ Ae, let ℓp = |{p′ : π(p) = π(p′)}| P be a Poisson point process on Ae × [0, ∞) with intensity ℓ−1

(x,y)dxdydt

P⋆ ⊆ P the points landing in the active region µ(s) the length of the fully active region (mass left) at time s

Cutting down trees with a Markov chainsaw 22 / 27

slide-35
SLIDE 35

Cutting down the mightiest tree with . . . a Herring!

Poisson Point Process

Correct scaling: mass by n distances by √n time by √n Setting: e an excursion Ae = {p = (x, y) : 0 ≤ y ≤ e(x)} p ∈ Ae, let ℓp = |{p′ : π(p) = π(p′)}| P be a Poisson point process on Ae × [0, ∞) with intensity ℓ−1

(x,y)dxdydt

P⋆ ⊆ P the points landing in the active region µ(s) the length of the fully active region (mass left) at time s

Cutting down trees with a Markov chainsaw 22 / 27

slide-36
SLIDE 36

An other point of view

An ode to Poisson processes Build the CRT from the PPP on [0, ∞) with intensity xdx Cut the CRT with an other PPP on [0, ∞) × R≥0 with intensity dxdt

Cutting down trees with a Markov chainsaw 23 / 27

slide-37
SLIDE 37

An other point of view

An ode to Poisson processes Build the CRT from the PPP on [0, ∞) with intensity xdx Cut the CRT with an other PPP on [0, ∞) × R≥0 with intensity dxdt

Cutting down trees with a Markov chainsaw 23 / 27

slide-38
SLIDE 38

An other point of view

An ode to Poisson processes Build the CRT from the PPP on [0, ∞) with intensity xdx Cut the CRT with an other PPP on [0, ∞) × R≥0 with intensity dxdt 1 2 3 4 5 6 1 2 3 4 5 6

Cutting down trees with a Markov chainsaw 23 / 27

slide-39
SLIDE 39

Number of cuts in terms of the mass left

Lemma Let Tn be a Cayley tree: κ(Tn) √n

d

− − − →

n→∞

∞ µ(s)ds d = R Proof. As n → ∞ κ(Tn) √n = 1 √n

  • i≥0

1[pi ∈ P⋆] ≈ lim

t→∞

1 √n

t√n

  • i=0

1[pi ∈ P⋆] ≈ lim

t→∞

1 √n

t√n

  • i=0

m(i) n ≈ ∞ µ(s)ds

Cutting down trees with a Markov chainsaw 24 / 27

slide-40
SLIDE 40

From an excursion to a reflected bridge

Theorem In the limit, the bijection turns a Brownian excursion e into a Brownian bridge B and κ(Tn) √n

d

− − − →

n→∞ L1(B) d

= R, where (Ls(B), 0 ≤ s ≤ 1) is the local time process of B at 0.

Cutting down trees with a Markov chainsaw 25 / 27

slide-41
SLIDE 41

Extension to all Galton–Watson trees with finite variance

ξ r.v. such that Eξ = 1 and Var [ξ] = σ2 < ∞ Theorem Let Tn be a GW(ξ) conditioned to be of size n: κ(Tn) σ√n

d

− − − →

n→∞ R

Proof. at the scale (n, √n, √n) the process looks the same, but time flows more slowly by factor σ show that when the tree has size o(n) the number of records is o(√n)

Cutting down trees with a Markov chainsaw 26 / 27

slide-42
SLIDE 42

Isolating the randomness of the cut process

Two levels of randomness Random tree/excursion Random cutting process Theorem Conditional on n−1/2Tn → T encoded by 2e, P κ(Tn) √n ≤ x

  • Tn
  • d

− − − →

n→∞ P

∞ µ2e(s)ds ≤ x

  • e
  • Cutting down trees with a Markov chainsaw

27 / 27