The first 14 chapters of this book cover the general area of discrete mathematics, and the fifteenth chapter contains answers to all of the exercises in the previous chapters. Although the book does not explicitly say so, its contents can be divided into three parts. Part 1 discusses sets, functions, recursive functions, Boolean algebra, logic, and automata. Part 2 covers combinatorics and graph theory. Part 3 deals with probability theory and applications. The chapters constituting the parts are logically organized, and the chapters can be read in numerical order.

The material is presented in a mathematically precise manner. Furthermore, the authors illustrate the mathematical concepts with a number of interesting examples. Each chapter contains a number of well-thought-out exercises. This book is ideally suited for a second-year course on discrete mathematics.