420 likes | 525 Views
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.
E N D
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: OnP(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+1there iso On s.t. o'J(o); 2. for each o,o'Onwitho o', J(o) J(o') = ; then {J(o) : oOn } is a partition ofOn+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: • 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) (3) (4) (k) (1)(2) (3)…(k-1)(k)(k+1)
(1) (2) (1) (1) (2) (2) (3) (1) Generating tree of the operator The recursive construction determined by can be suitably described through a generating tree
fn (1) 1 (1) (2) 2 5 (1) (2) (1) (2) (3) A succession rule (1) (k) (1)(2)…(k)(k+1) (k+1)
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)
(1) (1) (2) (1) (2) (1) (2) (3) A new approach Let L be the language of the words from the root to a node in the generating tree of L= {(1),(1)(1), (1)(2), (1)(1)(1), (1)(1)(2), (1)(2)(1), (1)(2)(2), (1)(2)(3), … }
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)
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 Formal power series and Object Grammars C=(1)+(1)C +(1)C +(1)CC
Results • Object grammars for various classes of polyominoes • Directed-convex polyominoes • Directed column-convex polyomines • Column-convex polyominoes • Convex polyominoes