This monograph is a slightly revised version of my PhD thesis [86], com? pleted in the Department of Computer Science at the University of Edin? burgh in June 1988, with an additional chapter summarising more recent developments. Some of the material has appeared in the form of papers [50,88]. The underlying theme of the monograph is the study of two classical problems: counting the elements of a finite set of combinatorial structures, and generating...