420 likes | 533 Vues
This work presents two methodologies for enumerating combinatorial objects: the ECO method and object grammars. The ECO method, introduced by Barcucci et al., focuses on generating combinatorial structures through an operator that partitions sets of objects. A specific example discussed is the enumeration of parallelogram polyominoes, which reveals connections to Catalan numbers. Additionally, the paper explores the use of formal power series to characterize these enumerative processes, showcasing their applications in generating trees and other combinatorial structures.
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