Presents methods for solving counting problems & other types of problems that involve discrete structures. This work illustrates the relationship of these structures to algebra, geometry, number theory & combinatorics. It addresses topics such as information & game theories.