This class-tested textbook provides a comprehensive and accessible introduction to discrete systems. The author uses illustrations, engaging examples, and historical remarks to make the material interesting and relevant for students. The book uses multiple notations to convey each idea, and also multiple automated tools. It also adopts a programmer's perspective, using a declarative subset of Python to emphasize the "what" and not the "how." A...