Patterns in Trees Thomas Klausner TU Wien Joint work with Michael - - PowerPoint PPT Presentation

patterns in trees
SMART_READER_LITE
LIVE PREVIEW

Patterns in Trees Thomas Klausner TU Wien Joint work with Michael - - PowerPoint PPT Presentation

Patterns in Trees Thomas Klausner TU Wien Joint work with Michael Drmota INRIA Rocquencourt, December 9, 2002 Supported by the Austrian Science Fund, Project S8302-MAT. Outline Present assumptions and basic techniques. Define patterns.


slide-1
SLIDE 1

Patterns in Trees

Thomas Klausner TU Wien Joint work with Michael Drmota INRIA Rocquencourt, December 9, 2002 Supported by the Austrian Science Fund, Project S8302-MAT.

slide-2
SLIDE 2

Outline

  • Present assumptions and basic techniques.
  • Define patterns.
  • Find representations as combinatorial objects.
  • Convert to corresponding generating functions.
  • Compute asymptotics.

1

slide-3
SLIDE 3
  • 1. Basics

Labelled universe Counting of combinatorical structures by exponential generating functions p(z) =

  • pn

zn n! First model: All trees of size n have equal probability.

2

slide-4
SLIDE 4

Rooted Trees Construction (rooted): r r r r r r r r r r . . . Tree function: p(z) = z

  • 1 + p(z) + p(z)2

2! + p(z)3 3! + . . .

  • = zep(z)

Explicit number of rooted trees of size n via e.g. Lagrange in- version formula pn = nn−1

3

slide-5
SLIDE 5

Planted Rooted Trees Sometimes helpful: planted rooted trees. Node degree does not change during construction. p p p p p p p p p p . . . Results in same function p(z). First order asymptotics p(z) = 1 − √ 2 √ 1 − ez + O(z)

4

slide-6
SLIDE 6

Bivariate Generating Functions Mark special properties with a second variable u E.g.: Nodes with particular degree k + 1 p = zep − pk k! + upk k! = zep + (u − 1)pk k! Possible to find limit distribution and compute parameters. In this case [Drmota and Gittenberger 1997]: asymptotically Gaus- sian with mean µkn and variance σ2

kn, where mk = 1 ek! und

σk = −1+(k−2)2

e2(k−1)!2 + 1 e(k−1)!

5

slide-7
SLIDE 7
  • 2. Patterns

What is a pattern? In our case, connected sub-tree M. Easy example:

6

slide-8
SLIDE 8

How to Mark a Pattern? More difficult than with single nodes. Split in parts: t1 t2 t3 t4 Aim: Describe patterns by generating functions for each part → system of functional equations.

7

slide-9
SLIDE 9

Proposition (Planted Rooted Trees) Let M be a pattern. Then there exist L auxiliary functions aj(x, u) (1 ≤ j ≤ L) with p(x, u) =

L

  • j=1

aj(x, u) and polynomials Pj(y1, . . . , yL, u) (1 ≤ j ≤ L − 1) with non- negative coefficients such that a1(x, u) = x · P1(a1(x, u), . . . , aL(x, u), u) . . . aL−1(x, u) = x · PL−1(a1(x, u), . . . , aL(x, u), u) (1) aL(x, u) = xea1(x,u)+···+aL(x,u) − x

L−1

  • j=1

Pj(a1(x, u), . . . , aL(x, u), 1).

8

slide-10
SLIDE 10

Notation to Describe Patterns

  • is a (planted) root node, × the Cartesian product, ∩ the inter-

section, ∪ the union, and

.

∪ the disjunct union. × binds stronger than either of ∩, ∪, and

.

∪. Note: no immediate one-to-one correspondance to the generat- ing functions (relative probabilities, u).

9

slide-11
SLIDE 11

t1 t1 t2 t2 t3 t4 p p p p p p p p p t1 = {◦} × p × p × p × p, t2 = {◦} × p × p × p, t3 = {◦} × t2 × p, t4 = {◦} × t1 × p.

10

slide-12
SLIDE 12
  • 3. Convert to Functions
  • Standardise: no duplicate descriptions of the same structure
  • Find coefficients
  • Sprinkle with u

11

slide-13
SLIDE 13

Standard Form Each tree aj represented as disjoint union of trees of the kind {◦} × al1 × · · · × ald, (2) (d = degree of the root of aj).

12

slide-14
SLIDE 14

Standardising the Functions Build intersections (symbolically): x1 = {◦} × x1,1 × · · · × x1,l x2 = {◦} × x2,1 × · · · × x2,l x1 ∩ x2 =

  • {m1,...,ml}={1,...,l}

{n1,...,nl}={1,...,l}

{◦} × (x1,m1 ∩ x2,n1) × · · · × (x1,ml ∩ x2,nl) x1 ∪ x2 = x1

.

∪ x2 \ (x1 ∩ x2)

13

slide-15
SLIDE 15

Intersection Example t1 = {◦} × p × p × p × p, t2 = {◦} × p × p × p, t3 = {◦} × t2 × p, t4 = {◦} × t1 × p. Only one non-empty intersection: t3 ∩ t4 = {◦} × (t1 ∩ t2) × p ∪ {◦} × t1 × t2 = = {◦} × t1 × t2.

14

slide-16
SLIDE 16

Example in Standardised Form a1 = t3 \ (t3 ∩ t4) = {◦} × a5 × (a1 ∪ a2 ∪ a3 ∪ a5 ∪ a6), a2 = t4 \ (t3 ∩ t4) = {◦} × a4 × (a1 ∪ a2 ∪ a3 ∪ a4 ∪ a6), a3 = t3 ∩ t4 = {◦} × a4 × a5, a4 = t1 = {◦} ×

6

  • i=1

ai ×

6

  • i=1

ai ×

6

  • i=1

ai ×

6

  • i=1

ai, a5 = t2 = {◦} ×

6

  • i=1

ai ×

6

  • i=1

ai ×

6

  • i=1

ai, a6 = p \ (a1 ∪ · · · ∪ a5) = = {◦} ∪ {◦} ×

6

  • i=1

ai ∪ {◦} × (a1 ∪ a2 ∪ a3 ∪ a6) × (a1 ∪ a2 ∪ a3 ∪ a6) ∪ ∪

  • n=5

     

{◦} ×

6

  • i=1

ai ×

6

  • i=1

ai × · · · ×

6

  • i=1

ai

  • n

     

.

15

slide-17
SLIDE 17

Coefficients Aj,l1,...,lL,k := number of possible configurations of type (2) (li sub-trees of type ai, k new occurrences of M) Coefficients are computed by simple combinatorics (k is implicitly given by li).

16

slide-18
SLIDE 18

Resulting Functions Pj(y1, . . . , yL, u) =

  • l1,...,lL≥0

Aj,l1,...,lL,k l1! · · · lL! yl1

1 · · · ylL L uk,

1 ≤ j ≤ L − 1 PL(y1, . . . , yL) = ey1+···+yL −

L−1

  • j=1

Pj(y1, . . . , yL, 1). aj(x, u) = x · Pj(a1(x, u), . . . , aL(x, u), u). → proposed structure of the system of functional equations (1).

17

slide-19
SLIDE 19

How to Find k = k(l1, . . . , lL) New patterns occur when all necessary sub-trees are attached to a node of proper degree. In example, three cases:

  • 1. Node of degree three with a t1 and t2.
  • 2. Node of degree four with a t4 attached. Each t4 produces

another pattern.

  • 3. Node of degree five with a t3 attached.

Each t3 produces another pattern.

18

slide-20
SLIDE 20

Coefficients in Example P1 = y5(y1 + y2 + y3 + y6) + 1 2!y2

5,

P2 = y4(y1 + y2 + y3 + y6) + 1 2!y2

4,

P3 = uy4y5, P4 = (uy1 + y2 + uy3 + y4 + y5 + y6)4 4! , P5 = (y1 + uy2 + uy3 + y4 + y5 + y6)3 3!

19

slide-21
SLIDE 21

Coefficients in Example (cont’d) a1(x, u) = a1 = xa5(a1 + a2 + a3 + a6) + x 1 2!a2

5,

a2(x, u) = a2 = xa4(a1 + a2 + a3 + a6) + x 1 2!a2

4,

a3(x, u) = a3 = xua4a5, a4(x, u) = a4 = x(ua1 + a2 + ua3 + a4 + a5 + a6)4 4! , a5(x, u) = a5 = x(a1 + ua2 + ua3 + a4 + a5 + a6)3 3! , a6(x, u) = a6 = x + x

6

  • i=1

ai + x(a1 + a2 + a3 + a6)2 2! + + x

  • n=5

1 n!

 

6

  • i=1

ai

 

n

.

20

slide-22
SLIDE 22

Strong Connectivity a6 depends on itself and all others (last term). Each ai depends on a6 either directly, or through a chain to a leaf (see pattern).

21

slide-23
SLIDE 23

Proposition (Rooted Trees) There exists an analytic function G(x, u, a1, . . . , aL) with non-negative Taylor coefficients such that r(x, u) = G(x, u, a1(x, u), . . . , aL(x, u)). where the ai were defined earlier.

22

slide-24
SLIDE 24

Counting Patterns in Rooted Trees For the example: r0 := xep − xp5 5! − xp4 4! − xp3 3! . (“uninteresting” sub-trees) Marks in sub-trees already counted correctly, only have to dis- tribute marks for newly appearing patterns.

23

slide-25
SLIDE 25

Newly Appearing Patterns r = r(x, u) = r0 + x

  • ei=5

ei≥0

ue1+e3

6

j=1 aej j

ei!

+ + x

  • ei=3

ei≥0

ue4e5

6

j=1 aej j

ei!

+ x

  • ei=4

ei≥0

ue2+e3

6

j=1 aej j

ei!

24

slide-26
SLIDE 26

a b c

slide-27
SLIDE 27

Unrooted Trees tn,m = rn,m/n

25

slide-28
SLIDE 28
  • 4. Asymptotics

Use Drmota’s Theorem on systems of functional equations. ∗ Paraphrased: Under certain conditions for the system of equa- tions, the coefficients asymptotically follow a Gaussian distribu- tion with mean and variance asymptotically proportional to n. Often the difficult part: Finding the singularity

∗M. Drmota, Systems of Functional Equations.

Random Structures and Algorithms 10, 103-124, 1997.

26

slide-29
SLIDE 29

For Our Case Singularity known: 1 e To find: left eigenvector (for the eigenvalue one) of the derivative

  • f the functional matrix with respect to the functions

Application of theorem then gives expectation for examples as 384e − 19 12e(576e3 + 24e2 − 25) = 0.0026803 . . .

27

slide-30
SLIDE 30

Possible Future Extensions

  • Different kind of trees or tree distributions
  • Logical terms using ∨, ∧, ¬, ∀ and ∃ describing more general

patterns.

  • Does a 0-1-law hold?

28