classes The elementary constructions mentioned above allow to define the notion of specification. Those specification allow to use a set of recursive equations, with multiple combinatorial classes. Formally, a specification for a set of combinatorial classes is a set of equations , where is an expression, whose atoms are and the 's, and whose operators are the elementary constructions listed above. A class of combinatorial structures is said to be constructible or specifiable when it admits a specification. For example, the set of trees whose leaves' depth is even (respectively, odd) can be defined using the specification with two classes and . Those classes should satisfy the equation and . Labelled structures An object is weakly labelled if each of its atoms has a nonnegative integer label, and each of these labels is distinct. An object is (strongly or well) labelled, if furthermore, these labels comprise the consecutive integers . Note: some combinatorial classes are best specified as labelled structures or unlabelled structures, but some readily admit both specifications. A good example of labelled structures is the class of labelled graphs. With labelled structures, an exponential generating function (EGF) is used. The EGF of a sequence is defined as Product For labelled structures, we must use a different definition for product than for unlabelled structures. In fact, if we simply used the cartesian product, the resulting structures would not even be well labelled. Instead, we use the so-called labelled product, denoted For a pair and , we wish to combine the two structures into a single structure. In order for the result to be well labelled, this requires some relabelling of the atoms in and . We will restrict our attention to relabellings that are consistent with the order of the original labels. Note that there are still multiple ways to do the relabelling; thus, each pair of members determines not a single member in the product, but a set of new members. The details of this construction are found on the page of the Labelled enumeration theorem. To aid this development, let us define a function, , that takes as its argument a (possibly weakly) labelled object and relabels its atoms in an order-consistent way so that is well labelled. We then define the labelled product for two objects and as Finally, the labelled product of two classes and is The EGF can be derived by noting that for