Written for professionals learning the field of discrete mathematics, this book provides the necessary foundations of computer science without requiring excessive mathematical prerequisites. Using a balanced approach of theory and examples, software engineers will find it a refreshing treatment of applications in programming.