Published online by Cambridge University Press: 01 June 2011
The purpose of this introductory chapter is three fold. First, it contains the main definitions, terminology, and notations that are used throughout the book. After the introduction of our main feature characters–namely, Boolean functions–several sections are devoted to a discussion of alternative representations, or expressions, of Boolean functions. Disjunctive and conjunctive normal forms, in particular, are discussed at length in Sections 1.4–1.11. These special algebraic expressions play a very central role in our investigations, as we frequently focus on the relation between Boolean functions and their normal forms. Section 1.12, however, also provides a short description of different types of function representations, namely, representations over GF(2), pseudo-Boolean polynomial expressions, and binary decision diagrams.
A second objective of this chapter is to introduce several of the topics to be investigated in more depth in subsequent chapters, namely: fundamental algorithmic problems (Boolean equations, generation of prime implicants, dualization, orthogonalization, etc.) and special classes of Boolean functions (bounded-degree normal forms, monotone functions, Horn functions, threshold functions, etc.). Finally, the chapter briefly presents a variety of applications of Boolean functions in such diverse fields as logic, electrical engineering, reliability theory, game theory, combinatorics, and so on. These applications have often provided the primary motivation for the study of the problems to be encountered in the next chapters.