Ranked Schrder Trees Olivier Bodini , Antoine Genitrini and Mehdi - - PowerPoint PPT Presentation

ranked schr der trees
SMART_READER_LITE
LIVE PREVIEW

Ranked Schrder Trees Olivier Bodini , Antoine Genitrini and Mehdi - - PowerPoint PPT Presentation

Ranked Schrder Trees Olivier Bodini , Antoine Genitrini and Mehdi Naima March 18th 2019 University of Paris Nord Sorbonne University Laboratoire dInformatique de Paris Nord. Laboratoire dInformatique de Paris 6.


slide-1
SLIDE 1

Ranked Schröder Trees

Olivier Bodini∗, Antoine Genitrini † and Mehdi Naima∗

March 18th 2019

∗ University of Paris Nord † Sorbonne University

Laboratoire d’Informatique de Paris Nord. Laboratoire d’Informatique de Paris 6.

slide-2
SLIDE 2

Outline

  • 1. Introduction Schröder Trees
  • 2. Strongly Increasing Schröder Trees
  • 3. Weakly Increasing Schröder Trees
  • 4. Relaxed Weakly Increasing Schröder Trees

2

slide-3
SLIDE 3

Schröder trees: The simplest combinatorial model

1870: Original model by Schröder S = Z + Seq≥2 S. First elements of the enumeration (sn)n = (0, 1, 1, 3, 11, 45, 197, 903, 4279, 20793, . . . )

3

slide-4
SLIDE 4

Schröder trees: The simplest combinatorial model

Limitations

  • 1. almost a simply generated tree: long trunk
  • 2. many nodes of arity larger than 3
  • 3. no temporal steps

2

slide-5
SLIDE 5

Strongly Increasing Schröder trees

slide-6
SLIDE 6

First extension: tree with chronology

1 2 3 6 4 5 8 7 9

Strongly increasing Schröder trees:

  • tree-structure: a Schröder tree
  • internal nodes increasingly labeled
  • uniqueness of each label
  • size: number of leaves

3

slide-7
SLIDE 7

First extension: tree with chronology

1 2 3 6 4 5 8 7 9

Strongly increasing Schröder trees:

  • tree-structure: a Schröder tree
  • internal nodes increasingly labeled
  • uniqueness of each label
  • size: number of leaves

In Analytic Combinatorics [BFS92, FS09] S = Z + U ⋆ Seq≥2 S. Through the symbolic method, we get an integral equation in 2 variables. (ordinary in z and exponential in u) We are interested in [zn](Lu S)u=1.

2

slide-8
SLIDE 8

First extension: tree with chronology

1 2 3 6 4 5 8 7 9

Strongly increasing Schröder trees:

  • tree-structure: a Schröder tree
  • internal nodes increasingly labeled
  • uniqueness of each label
  • size: number of leaves

In Analytic Combinatorics [BFS92, FS09] S = Z + U ⋆ Seq≥2 S. Through the symbolic method, we get an integral equation in 2 variables. (ordinary in z and exponential in u) We are interested in [zn](Lu S)u=1. Another combinatorial specification allows to introduce an evolution process.

2

slide-9
SLIDE 9

An evolution process

1 2 3 6 4 5 8 7 9

Strongly increasing Schröder trees:

  • tree-structure: a Schröder tree
  • internal nodes increasingly labeled
  • uniqueness of each label
  • size: number of leaves

How does a tree grow ?

  • Start with a single (unlabeled) leaf;
  • Iterate the following process: at step

ℓ (for ℓ ≥ 1), select a leaf and replace it by an internal node with label ℓ attached to a sequence of at least two leaves.

3

slide-10
SLIDE 10

An evolution process

1 2 3 6 4 5 10 8 7 9

Strongly increasing Schröder trees:

  • tree-structure: a Schröder tree
  • internal nodes increasingly labeled
  • uniqueness of each label
  • size: number of leaves

How does a tree grow ?

  • Start with a single (unlabeled) leaf;
  • Iterate the following process: at step

ℓ (for ℓ ≥ 1), select a leaf and replace it by an internal node with label ℓ attached to a sequence of at least two leaves.

4

slide-11
SLIDE 11

Strongly increasing Schröder trees as a growth process

1 20 2 40 5 3 6 12 4 9 7 18 17 13 28 10 22 43 54 58 14 64 60 86 67 91 79 51 71 74 78 90 27 29 63 34 50 32 55 30 70 75 37 42 39 77 73 81 82 8 16 24 35 11 23 48 15 59 19 21 53 36 87 38 66 94 45 25 46 31 26 80 61 33 65 57 41 52 47 49 56 76 83 88 95 92 84 62 44 69 68 72 85 89 93

Combinatorial specification: S = Z +

  • ΘS × Seq≥1(Z)
  • .

S(z) is an ordinary formal series: S(z) = z +

z2 1−z S′(z). 5

slide-12
SLIDE 12

Strongly increasing Schröder trees as a growth process

1 20 2 40 5 3 6 12 4 9 7 18 17 13 28 10 22 43 54 58 14 64 60 86 67 91 79 51 71 74 78 90 27 29 63 34 50 32 55 30 70 75 37 42 39 77 73 81 82 8 16 24 35 11 23 48 15 59 19 21 53 36 87 38 66 94 45 25 46 31 26 80 61 33 65 57 41 52 47 49 56 76 83 88 95 92 84 62 44 69 68 72 85 89 93

Combinatorial specification: S = Z +

  • ΘS × Seq≥1(Z)
  • .

S(z) is an ordinary formal series: S(z) = z +

z2 1−z S′(z).

First elements of the enumeration (sn)n = (0, 1, 1, 3, 12, 60, 360, 2520, 20160, 181440, 1814400, . . . ) Size-n strongly increasing Schröder trees are in bijection with a half of the permutations of {1, 2, . . . , n}. (for n ≥ 2)

5

slide-13
SLIDE 13

Uniform sampling with an incremental process

From the specification we have,

  • tn = n · tn−1

for n > 2 t1 = 1, t2 = 1.

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

6

slide-14
SLIDE 14

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-15
SLIDE 15

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-16
SLIDE 16

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-17
SLIDE 17

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-18
SLIDE 18

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-19
SLIDE 19

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-20
SLIDE 20

Example, RandomTree(8)

RandomTree(n): If n=1: Return single leaf Else If n=2: Return a cherry Else T:=cherry For i in 3,. . . ,n-1: k := rand_int(1,i) If k<i: Create a new binary node at position k in T Else: \\k = i Add a new leaf to the last added internal node in T

7

slide-21
SLIDE 21

Strict Increasing Schröder trees

Mean Variance Limit law Internal nodes n − ln n ln n Normal distribution Binary nodes n − 2 ln n 4 ln n Normal distribution Degree of root 2e − 3 0.499.. Difference of 2 poissons Leaves attached root

2e n 2e n

Table 1: limiting parameters on Strict Increasing Schröder trees

7

slide-22
SLIDE 22

Weakly Increasing Schröder trees

slide-23
SLIDE 23

Weakly increasing Schröder trees as a growth process

1 4 2 11 8 14 17 3 14 12 19 27 22 30 15 35 39 29 49 56 41 62 32 33 20 18 44 48 37 61 70 47 49 26 23 38 40 67 65 42 65 6 5 71 58 64 67 7 9 6 6 8 44 13 54 25 51 66 63 34 59 54 21 45 24 48 7 16 49 53 10 58 57 11 20 26 40 31 28 36 60 46 57 62 68 43 51 55 68 70 50 27 52 56 69 70

S(z) is an ordinary formal series: S(z) = z + S

  • z +

z2 1−z

  • − S(z).

First elements of the enumeration (sn)n = (0, 1, 1, 3, 13, 75, 541, 4683, 47293, 545835, 7087261, . . . ) sn corresponds to the (n − 1)-th ordered Bell numbers. Size-n weakly increasing Schröder trees are in bijection with

  • rdered partitions of {1, 2, . . . , n − 1}.

8

slide-24
SLIDE 24

Ordered Bell numbers

Stirling partition numbers Number of ways to partition a set of n objects into k non-empty subsets Example 3

2

  • =| {{1, 2}{3}}, {{1, 3}{2}}, {{1}{2, 3}} |= 3.

Ordered Bell numbers Bn =

n

  • k=0

k! n k

  • ,

B(z) = 1 2 − ez , Bn ∼ n! 2 (ln 2)n+1 .

9

slide-25
SLIDE 25

Bijection

sn,k is the number of trees with n leaves and k iteration steps Theorem sn,k = k! n − 1 k

  • Result

sn = Bn−1 = (n − 1)! 2 1 ln 2 n

10

slide-26
SLIDE 26

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1.

p′ = [{3, 4}]  M2

11

slide-27
SLIDE 27

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}]

?

12

slide-28
SLIDE 28

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}] ∼ = [{2, 3}, {1, 4, 5}] runs(p′

2) = {1}, {4, 5}

?

13

slide-29
SLIDE 29

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}] ∼ = [{2, 3}, {1, 4, 5}] runs(p′

2) = {1}, {4, 5}

?

14

slide-30
SLIDE 30

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}] ∼ = [{2, 3}, {1, 4, 5}] runs(p′

2) = {1}, {4, 5}

 M2

15

slide-31
SLIDE 31

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}, {2, 8}] ∼ = [{3, 4}, {1, 5, 6}, {2, 7}] runs(p′

3) = {2}, {7}

?

16

slide-32
SLIDE 32

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node with |e| + 1 leaves Add the node labeled i at position e1. p′ = [{3, 4}, {1, 6, 7}, {2, 8}] ∼ = [{3, 4}, {1, 5, 6}, {2, 7}] runs(p′

3) = {2}, {7}

?

17

slide-33
SLIDE 33

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}, {2, 8}] ∼ = [{3, 4}, {1, 5, 6}, {2, 7}] runs(p′

3) = {2}, {7}

 M2

18

slide-34
SLIDE 34

Example of the bijection [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

The mapping M2

  • p′ = [p1]
  • the degree of the root |p1| + 1
  • For i ∈ [2, . . . , ℓ]:

p′=add pi to p′ p′ = normalize(p′) For each e ∈ runs(p′

i ):

Create node labeled i with |e| + 1 leaves Add the node at position e1. p′ = [{3, 4}, {1, 6, 7}, {2, 8}, {5}]

 M2

19

slide-35
SLIDE 35

Weakly Increasing Schröder trees

B(z) = Seq(Set

≥1 (Z)),

B(z) = 1 2 − ez . The degree of the root: B(z, u) = Set

≥1 (UZ) × Seq(Set ≥1 (Z)) + 1

Mean Variance Limit law Iteration steps 0.72n 4 ln n Normal distribution Internal nodes n − ln n ln n Normal distribution Degree of root 2 ln 2 + 1 Poisson distribution New leaves each step 2 ln 2 Poisson distribution

Table 2: limiting parameters on Weakly Increasing Schröder trees

20

slide-36
SLIDE 36

Connection with other results

  • weakly binary increasing trees, [Bodini, Genitrini and

Gittenberger] B(z) = z + B(z + z2) − B(z) bn ∼ γn− ln 2 1 ln 2 n (n − 1)!. Recall weakly increasing Schröder trees: S(z) = z + S(z + z2 1 − z ) − S(z) sn ∼ 1 2 1 ln 2 n (n − 1)!.

21

slide-37
SLIDE 37

relaxed weakly increasing Schröder trees

slide-38
SLIDE 38

relaxed weakly increasing Schröder trees

  • Relaxing the constraint on minimum degree (unary nodes

allowed).

  • At each iteration step at least one binray node.

Combinatorial specification: F(z) = z + F

  • 2z +

z2 1−z

  • − F(2z).

(fn)n = (0, 1, 1, 5, 66, 2209, 180549, 35024830, 15769748262, . . . )

22

slide-39
SLIDE 39

relaxed weakly increasing Schröder trees

Combinatorial specification: F(z) = z + F

  • 2z +

z2 1−z

  • − F(2z).

Size-n relaxed weakly increasing Schröder trees fn ∼ γ(n − 1)!2

(n−1)(n−2) 2

.

23

slide-40
SLIDE 40

relaxed weakly increaing binary trees

relaxed weakly increasing Schröder trees F(z) = z + F

  • 2z +

z2 1 − z

  • − F(2z),

fn ∼ γ(n − 1)!2

(n−1)(n−2) 2

. relaxed weakly increaing binary trees Wb(z) = z + Wb(2z + z2) − Wb(2z), wbn ∼ (n − 1)!2

(n−1)(n−2) 2

.

24

slide-41
SLIDE 41

Conclusion

  • Connections between ordinary and exponential generating

functions.

  • Study of Strongly and Weakly increasing Schröder trees:

Correspondance with classical structures. Study of typical parameters.

  • Furthur generalization with relaxed weakly increasing trees

(New regime).

25

slide-42
SLIDE 42

Thank you

26

slide-43
SLIDE 43

Link with Stirling cycle numbers ˆ Sn(u) =

  • k

sn,n−kuk = u

n−1

  • i=2

(i + u) SCn(u) = ˆ Sn(u)) × (u + 1)

27