# Lecture 11: The Symbolic Method and the Combstruct Package

The symbolic method is a technique for automatically deriving functional equations for generating functions that count combinatorial objects for natural descriptions of the objects. Once the functional equation is obtained, the machinery of generating functions can be used to analyze and generate objects. The method is the basis for Maple's combstruct package.

The combstruct package is a Maple package for generating and analyzing combinatorial structures such as trees, partitions, permutations, combinations, etc. It uses grammars to specify structures, and provides functions for generating random structures, enumerating and counting structures, and exploring properties of structures (e.g. height and ipl of trees) using attribute grammars. The package relies heavily on generating functions.

### Background Material

Make sure you carefully study the Maple worksheet for this lecture. Additional materials to look at are:
• Use Maple Help as needed to understand Maple commands
• Introduction to the Combstruct Package and related worksheets in the Maple Help pages

### Topics

• Review of Generating functions
• Review of grammars
• Overview of the symbolic method (relate operations on combinatorial objects to generating functions)
1. Disjoint union
2. Cartesian product
3. Sequences
4. Sets and multisets
• Overview of the combstruct package
1. Specifying structures
2. Generating structures
3. Counting structures
• Attribute Grammars

### Maple worksheets and programs

• combstruct.mw - Maple worksheet illustrating the combstruct package.
Created: Nov. 12, 2006 by jjohnson@cs.drexel.edu