Presentazione di PowerPoint
Download
Report
Transcript Presentazione di PowerPoint
ECO and Object Grammars:
two methods for the enumeration of
combinatorial objects
Simone Rinaldi
Dipartimento di Scienze Matematiche e
Informatiche “Roberto Magari” Siena
Workshop "Formal Languages and Automata:
Theory and Applications",
September 2003, Ravello
ECO method
ECO is a method for Enumeration of Combinatorial
Objects introduced by Barcucci, Del Lungo, Pergola
and Pinzani
O a class of combinatorial objects
p a parameter on O (i.e. p: O N+)
On the objects of O having size n, On={o:p(o)=n}
ECO operator:
J: On P(On+1 )
P(On+1 ) is the set of parts of On+1
Proposition: Let J be an operator on O, such that:
1. for each o' On+1 there is o On s.t. o' J(o);
2. for each o,o' On with o o', J(o) J(o') = ;
then
{J(o) : o On }
is a partition of On+1
A very simple example:
Parallelogram Polyominoes
A parallelogram polyomino
A very simple example:
Parallelogram Polyominoes
A parallelogram polyomino
A very simple example:
Parallelogram Polyominoes
A parallelogram polyomino
upper path
lower path
Well-known enumerative results
The number of parallelogram polyominoes
with semi-perimeter n+2:
1 2n
fn =
n 1 n
•The Catalan numbers:
1,2,5,42,132,429,…
•The 5 parallelogran polyominoes with sp=4
The ECO operator for
Parallelogram Polyominoes
(3)
(1)
(2)
(4)
(k) (1) (2) (3) … (k-1) (k) (k+1)
(3)
Generating tree of the operator J
The recursive construction determined by J can be suitably
described through a generating tree
(1)
(2)
(1)
(1)
(2)
(1)
(2)
(3)
A succession rule
(1)
(k) (1) (2) … (k) (k+1) (k+1)
(1)
(1)
(1)
(2)
1
(2)
(1)
fn
(2)
2
(3)
5
ECO method: enumeration (1)
Born as a method for the enumeration of
combinatorial objects:
E. Barcucci, A. Del Lungo, E. Pergola, R. Pinzani, ECO: a
methodology for the Enumeration of Combinatorial
Objects.
E. Barcucci, A. Del Lungo, E. Pergola, R. Pinzani, A
methodology for plane tree enumeration.
E. Barcucci, A. Del Lungo, E. Pergola, R. Pinzani, Directed
animals, forests and permutations.
ECO method: algebraic
characterizations (2)
Operations on succession rules:
L. Ferrari, E. Pergola, R. Pinzani, S. Rinaldi, An algebraic
characterization of the set of succession rules.
L. Ferrari, E. Pergola, R. Pinzani, S. Rinaldi, Jumping
succession rules and their generating functions.
S. Brlek, E. Duchi, E. Pergola, S. Rinaldi, On the
equivalence problem for succession rules.
Production matrices:
E. Deutsch, L. Ferrari, S. Rinaldi, Production matrices.
ECO method:
generating functions (3)
To determine the generating function
associated with an ECO operator:
C. Banderier, M. Bousquet-Melou, A. Denise, P. Flajolet, D.
Gardy and D. Gouyou-Beauchamps, Generating functions
for generating trees.
E. Duchi, A. Frosini, S. Rinaldi, R. Pinzani, A note on
rational succession rules.
ECO method: random and
exhaustive generation (4)
Random generation of combinatorial
objects:
E. Barcucci, A. Del Lungo, E. Pergola, R. Pinzani, Random
generation of trees and other combinatorial objects.
Exhaustive generation of objects:
A. Del Lungo, A. Frosini, S. Rinaldi, ECO method and the
exhaustive generation of convex polyominoes.
S. Bacchelli, E. Barcucci, E. Grazzini, E. Pergola,
Exhaustive generation of combinatorial objects by ECO
Object grammars
<{Oi}iI , {EOi}iI , {j}jJ , {A}>
Oi is a class of objects;
EOi is a finite subsets of Oi (terminal
objects);
j is an operation on {Oi}iI (object
operation);
A is an element of {Oi}iI (axiom).
Object grammar for Dyck paths
<{D}, {.}, {}, {D}>
Object grammar for Dyck paths
<{D}, {.}, {}, {D}>
=
+
f(x)=1+x2f 2(x)
A new approach
Let L be the language of the words
from the root to a node in the generating
tree of
(1)
(1)
(1)
(2)
(2)
(1)
(2)
(3)
L= {(1),(1)(1), (1)(2), (1)(1)(1), (1)(1)(2), (1)(2)(1),
(1)(2)(2), (1)(2)(3), … }
S
S
=
m( w) w
w
L
=
(
1
)
(
1
)(
1
)
(
1
)(
2
)
(
1
)(
1
)(
1
)
(1)(1)(2) (1)(2)(1) (1)(2)(2) ...
f
= x 2 x 5 x 2 42 x 3 ...
Operations on S
nS
=
(i)S
=
(n m( w)) w
nN
m(w)(i)w
iN
w
L
w
L
w = (i1)(i2)....(ik )
w L
w = (i1 1)(i2 1)....(ik 1)
Example:
w = (1)(2)(3)(2)(3)
L
S
= w : w L
=
m(w)w
w
w = (2)(3)(4)(3)(4)
L
S ,S have thesame generatingfunction
The series associated with
Let C be the series associated with :
C=(1)+(1)C +(1)C +(1)CC
Let wC, w (1) :
w = (1)(1)(2)(3)(3) (1)C
w = (1)(2)(2)(3)(4)(2) (1)C
w = (1)(2)(2)(3)(4)(2)(1)(2)(2) (1)C C
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
C(x)=x+xC(x) +xC(x) +xC2
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
(1)(1)(2)(3)(3)
(1)
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
(1)(1)(2)(3)(3)
(1)(1)
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
(1)(1)(2)(3)(3)
(1)(1)(2)
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
(1)(1)(2)(3)(3)
(1)(1)(2)(3)
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
(1)(1)(2)(3)(3)
(1)(1)(2)(3)(3)
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
C
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
C
Formal power series and
Object Grammars
C=(1)+(1)C +(1)C +(1)CC
C
C
Object Grammar for
parallelogram polyominoes
=
+
+
+
Results
Object grammars for various classes
of polyominoes
Directed-convex polyominoes
Directed column-convex polyomines
Column-convex polyominoes
Convex polyominoes
Example: column-convex
polyomines
Class C
Example: column-convex
polyomines
Class B
Example: column-convex
polyomines
Class P
Example: column-convex
polyomines
Class Q
Operations for column-convex
polyominoes (class C)
Operations for the class B
Operations for the class P
Operations for the class Q