As Sangalli explains, fuzzy logic is a technique that allows computers to work with imprecise terms—to answer questions with “maybe” rather than just “yes” and “no.” The practical implications of this flexible type of mathematical thinking are remarkable. Japanese programmers have used fuzzy logic to develop the city of Sendai’s unusually energy-efficient and smooth-running subway system—one that does not even require drivers. Similar techniques have been used in fields as diverse as medical diagnosis, image understanding by robots, the engineering of automatic transmissions, and the forecasting of currency exchange rates. Sangalli also explores in his characteristically clear and engaging manner the limits of classical computing, reviewing many of the central ideas of Turing and Gödel. He shows us how “genetic algorithms” can solve problems by an evolutionary process in which chance plays a fundamental role. He introduces us to “neural networks,” which recognize ill-defined patterns without an explicit set of rules—much as a dog can be trained to scent drugs without ever having an exact definition of “drug.” Sangalli argues that even though “fuzziness” and related concepts are often compared to human thinking, they can be understood only through mathematics—but the math he uses in the book is straightforward and easy to grasp. Of equal appeal to specialists and the general reader, The Importance of Being Fuzzy reveals how computer science is changing both the nature of mathematical practice and the shape of the world around us.