'This is an excellent introduction to mathematical logic for upper-year undergraduate students with some background in theoretical mathematics. The many wonderful examples relate mathematical logic to other areas of mathematics. Beyond the usual setup and culmination with completeness and incompleteness, Mileti gives a strong introduction to set theory, model theory, and computability. Instructors have the flexibility to suit the examples and direction to their students' backgrounds, and curious students will have an excellent reference for topics not covered in their course. Mileti's gentle prose guides the reader from topic to topic, explaining what we are doing, and why.' Barbara F. Csima, University of Waterloo