COMBINATORIAL AND ALGEBRAIC ENUMERATION