enumerating unlabeled cactus graphs - princeton …mbahrani/index_files/talk-cacti.pdf ·...

40
Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer Science Maryam Bahrani Under the Direction of Dr. Jérémie Lumbroso

Upload: vodung

Post on 11-Aug-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Enumerating UnlabeledCactus Graphs

Dec 13, 2016

Princeton University Department of Computer Science

Maryam Bahrani

Under the Direction of Dr. Jérémie Lumbroso

Page 2: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Trees

1/13

Page 3: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Trees

binary tree

1/13

Page 4: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Trees

binary tree

left-leaning red-black tree** Images reprinted with permission from Robert Sedgewick and Kevin Wayne (Algorithms lecture sides) 1/13

Page 5: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Trees

binary treetrie*

left-leaning red-black tree** Images reprinted with permission from Robert Sedgewick and Kevin Wayne (Algorithms lecture sides) 1/13

Page 6: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Trees

binary treetrie*

left-leaning red-black tree*

binomial heap

* Images reprinted with permission from Robert Sedgewick and Kevin Wayne (Algorithms lecture sides)

4

814

18

12

2215

21

11

23 24

25

13

17

1/13

Page 7: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on TreesA binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

2/13

Page 8: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on Trees

TTT T•T = [ ( ) symbolic specification

A binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

2/13

Page 9: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on Trees

TTT T•T = [ ( ) symbolic specification

generating functionT (z) = 1 + T (z)⇥ z ⇥ T (z)

A binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

2/13

Page 10: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on Trees

TTT T•T = [ ( )

1, 1, 2, 5, 14, 42, 132, 429, 1430, . . .

symbolic specification

generating function

exact enumeration

T (z) = 1 + T (z)⇥ z ⇥ T (z)

A binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

2/13

Page 11: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on Trees

TTT T•T = [ ( )

1, 1, 2, 5, 14, 42, 132, 429, 1430, . . .

symbolic specification

generating function

exact enumeration

T (z) = 1 + T (z)⇥ z ⇥ T (z)

A binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

Number of binary trees with 5 internal nodes

2/13

Page 12: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Symbolic Method on Trees

TTT T•T = [ ( )

1, 1, 2, 5, 14, 42, 132, 429, 1430, . . .

symbolic specification

generating function

exact enumeration

T (z) = 1 + T (z)⇥ z ⇥ T (z)

Recursivity

A binary tree is — either a leaf — or an internal node, and a left subtree, and a right subtree

2/13

Page 13: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Decomposing General Graphs

?

3/13

Page 14: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Generalizing Trees

Directed Acyclic Graphs(DAGs)

block graphs(clique trees)

cactus graphs(cacti)

k-trees

4/13

Page 15: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Generalizing Trees

Directed Acyclic Graphs(DAGs)

block graphs(clique trees)

cactus graphs(cacti)

k-trees

Focus of this talk

4/13

Page 16: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Cactus GraphsA graph is a cactus iff every edge is part of at most one cycle.

cactus

not cactus

5/13

Page 17: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Cactus Graphs

cactus

not cactus

A graph is a cactus iff every edge is part of at most one cycle.

pure3-cactus

mixed

5/13

Page 18: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Cactus Graphs

cactus

not cactus labeledcactus

unlabeledcactus

A graph is a cactus iff every edge is part of at most one cycle.1

23

4

5

6 7

8

9

pure3-cactus

mixed

5/13

Page 19: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Cactus Graphs

cactus

not cactus

unlabeledcactus

planecactus

labeledcactus

A graph is a cactus iff every edge is part of at most one cycle.1

23

4

5

6 7

8

9

from Enumeration of m-ary Cacti (Bóna et al.)

pure3-cactus

mixed

5/13

Page 20: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

6/13

Page 21: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

6/13

Page 22: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

— derived functional equations for non-plane, mixed, unlabeled cacti.

— promised to provide “a more systematic treatment of the general case of pure k-cacti” in a subsequent paper (it appears they never published such a paper)

On the Number of Husimi Trees Harary and Uhlenbeck (1952):

7/13

Page 23: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

non-generalizablemethods

hard toextract

— derived functional equations for non-plane, mixed, unlabeled cacti.

— promised to provide “a more systematic treatment of the general case of pure k-cacti” in a subsequent paper (it appears they never published such a paper)

On the Number of Husimi Trees Harary and Uhlenbeck (1952):

7/13

Page 24: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

— enumerated pure, plane, unlabeled cacti.

non-generalizablemethods

hard toextract

— derived functional equations for non-plane, mixed, unlabeled cacti.

— promised to provide “a more systematic treatment of the general case of pure k-cacti” in a subsequent paper (it appears they never published such a paper)

On the Number of Husimi Trees Harary and Uhlenbeck (1952):

Enumeration of m-ary cacti Miklós Bóna et al. (1999):

7/13

Page 25: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Prior Work

— enumerated pure, plane, unlabeled cacti.

non-generalizablemethods

hard toextract

only plane cacticomplicated methods

— derived functional equations for non-plane, mixed, unlabeled cacti.

— promised to provide “a more systematic treatment of the general case of pure k-cacti” in a subsequent paper (it appears they never published such a paper)

On the Number of Husimi Trees Harary and Uhlenbeck (1952):

Enumeration of m-ary cacti Miklós Bóna et al. (1999):

7/13

Page 26: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

New ResultExact enumeration of unlabeled, non-plane, pure n-cacti.

n = 3

n = 4

n = 5

n = 6

0, 0, 1, 0, 1, 0, 2, 0, 4, 0, 8, 0, 19, 0, 48, 0, 126, 0, 355, 0, 1037, . . .

0, 0, 0, 1, 0, 0, 1, 0, 0, 3, 0, 0, 7, 0, 0, 25, 0, 0, 88, 0, 0, 366, 0, . . .

0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 8, 0, 0, 0, 31, 0, 0, 0, 132, . . .

0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 13, 0, 0, 0, 0, 67, . . .

8/13

Page 27: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

New ResultExact enumeration of unlabeled, non-plane, pure n-cacti.

n = 3

n = 4

n = 5

n = 6

0, 0, 1, 0, 1, 0, 2, 0, 4, 0, 8, 0, 19, 0, 48, 0, 126, 0, 355, 0, 1037, . . .

0, 0, 0, 1, 0, 0, 1, 0, 0, 3, 0, 0, 7, 0, 0, 25, 0, 0, 88, 0, 0, 366, 0, . . .

0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 8, 0, 0, 0, 31, 0, 0, 0, 132, . . .

0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 13, 0, 0, 0, 0, 67, . . .

Number of pure 3-cacti with 9 vertices

8/13

Page 28: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

New ResultExact enumeration of unlabeled, non-plane, pure n-cacti.

n = 3

n = 4

n = 5

n = 6

0, 0, 1, 0, 1, 0, 2, 0, 4, 0, 8, 0, 19, 0, 48, 0, 126, 0, 355, 0, 1037, . . .

0, 0, 0, 1, 0, 0, 1, 0, 0, 3, 0, 0, 7, 0, 0, 25, 0, 0, 88, 0, 0, 366, 0, . . .

0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 8, 0, 0, 0, 31, 0, 0, 0, 132, . . .

0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 13, 0, 0, 0, 0, 67, . . .

The first non-zero term is always 1 (corresponding to polygon)

8/13

Page 29: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

New ResultExact enumeration of unlabeled, non-plane, pure n-cacti.n = 3

n = 4

n = 5

n = 6

0, 0, 1, 0, 1, 0, 2, 0, 4, 0, 8, 0, 19, 0, 48, 0, 126, 0, 355, 0, 1037, . . .

0, 0, 0, 1, 0, 0, 1, 0, 0, 3, 0, 0, 7, 0, 0, 25, 0, 0, 88, 0, 0, 366, 0, . . .

0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 8, 0, 0, 0, 31, 0, 0, 0, 132, . . .

0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 13, 0, 0, 0, 0, 67, . . .

Our approach is simpler and more general than Bóna et al.:

— easily extendable to mixed cacti

e.g. plane 5-cacti: 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 17, 0, 0, 0, 102, . . .

— can easily be extended to derive their result (plane cacti)

8/13

Page 30: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Tree Decomposition of Graphs

G = Z ⇥ (P + SC)

P = Seq=4 (Z + SX)

SX = Z ⇥ Seq>1 (P)SC = Cyc>2 (P)split

decompositionsymbolic

specification

computer algebrasystem (CAS)

0, 0, 1, 0, 1, 0, 2, 0,

4, 0, 8, 0, 19, 0, 48,

0, 126, 0, 355, 0,

1037, . . .

9/13

Page 31: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Tree Decomposition of Graphs

G = Z ⇥ (P + SC)

P = Seq=4 (Z + SX)

SX = Z ⇥ Seq>1 (P)SC = Cyc>2 (P)

symbolicspecification

computer algebrasystem (CAS)

0, 0, 1, 0, 1, 0, 2, 0,

4, 0, 8, 0, 19, 0, 48,

0, 126, 0, 355, 0,

1037, . . .

splitdecomposition

9/13

Page 32: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

The Split DecompositionGives a graph-labeled tree representation of a graphvia a series of split operations— Can read adjacencies from alternated paths.

••

10/13

Page 33: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

The Split DecompositionGives a graph-labeled tree representation of a graphvia a series of split operations— Can read adjacencies from alternated paths.

••

Decomposition base cases:

prime nodes:

degenerate nodes:

cliqueK

starS

cycleP

e.g.

10/13

Page 34: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

SubtletiesWhere do we start decomposing from?— unlabeled structures have symmetries— different set of symmetries for different starting points (“roots”)

11/13

Page 35: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Subtleties

Dissymmetry theorem (from species theory):— allows us to correct for symmetries of trees

Cycle-pointing (based on Pólya theory):— allows us to correct for symmetries of graphs

Where do we start decomposing from?— unlabeled structures have symmetries— different set of symmetries for different starting points (“roots”)

11/13

Page 36: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

VerificationVerifying the enumeration:

— proof of the characterization

12/13

Page 37: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

VerificationVerifying the enumeration:

— manual generation of small instances

— proof of the characterization

12/13

Page 38: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

VerificationVerifying the enumeration:

— proof of the characterization — manual generation of small instances

— brute force generation of small instances

12/13

Page 39: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

ConclusionSummary

Next Steps

— Derived an exact enumeration for cactus graphs (previously unknown)

— Parameter analysis

— Consider other kinds of prime nodes (e.g. bipartite nodes are prime nodes for parity graphs and were studied asymptotically by Jessica Shi ’18)

— Random sampling

— Further extended the split decomposition introduced by Chauve et al. (2014), and extended by Bahrani and Lumbroso (2016)

— For the first time studied a graph class with a split decomposition tree that contains prime nodes

Note— This work is related to independent work project by Sam Pritt ’17, who developed software for extracting enumerations from symbolic equations

13/13

Page 40: Enumerating Unlabeled Cactus Graphs - Princeton …mbahrani/index_files/talk-cacti.pdf · Enumerating Unlabeled Cactus Graphs Dec 13, 2016 Princeton University Department of Computer

Thank you!