Combinatorial Exploration: An Algorithmic Framework for Enumeration
A combinatorial class is often studied by finding a combinatorial specification for it, which is a description of the class in terms of simpler classes, and perhaps recursions to smaller instances of the original class. In this paper we describe how to automate the discovery of combinatorial specifications of combinatorial classes. This is achieved by first generating a universe of interconnected combinatorial classes and then searching for a specification inside this universe. The main application is in the area of permutation patterns, but other domains such as, set partitions, strings, polyominoes and lattice paths are discussed considered.