*Mathematics for Multimedia* is a textbook designed to introduce upper-level undergraduates in mathematics to several topics that are used in the technical details of multimedia programming, such as digital signal processing, encoding and decoding data, etc. It is probably suitable for engineering and computer science majors, since the mathematical prerequisites for this text are, to the best of my knowledge, standard for those fields. (See the remarks below, however.)

The text starts with a review of fundamental ideas, such as some very basic number theory, remarks on the floating-point representation of real numbers, vector spaces, and linear transformations. It gets into the “meat” of the course in Chapter 3 with Fourier Analysis, then passes to topics on interpolation and estimation, wavelet analysis and transforms. It concludes with elementary coding theory (encoding and error correction). Algorithms are presented in pseudocode, and students are expected to write programs in addition to solving mathematical exercises.

Aside from introductory material in the first two chapters, chapters are independent, which means that the instructor can tailor the material as needed. The text contains a number of fascinating and beautiful results; having never studied Fourier series or coding theory before, I found myself smiling in admiration at a few of them, and made notes about a couple. The text is clear and develops carefully. Exercises range from easy to challenging, and complete (!) solutions appear in an appendix.

I would add one caution about the prerequisites advertised. The preface makes the non-mathematical prerequisites clear: a student should have some experience in computer programming, in order to implement and study some of the algorithms in the text. However, the preface is not quite so clear as to *mathematical* prerequisites. In two places, it encourages the textbook for students who are not early in undergraduate study (or at least not “late”) and who have merely “gotten beyond Calculus.” Elsewhere, it states that students should be “mature” and that “proofs with appropriate rigor must be understood.” The potential teacher should be advised that the material really is high-level; students quickly encounter a number of spaces that are not generally covered until advanced Calculus, such as Lipschitz, l^{2}, and L^{2} spaces. In my experience, it would be a rare student who, early in her undergraduate career, had gotten beyond Calculus and was already mature enough to deal with these topics. So, *caveat lector*: skip the first two chapters only if you are *profoundly* confident in your students’ backgrounds.

A few points that I hope a future edition of the book would address. The fact that the natural numbers are well-ordered is never explicitly stated, even though it is used implicitly in an explanation as to why the Euclidean Algorithm terminates. Similarly, the Division Theorem is not proved. In addition, the reader sometimeshas to look to the text to clarify the figures, rather than the other way around; a lack of labels on the axes for Figure 6.10 is a good example.

John Perry is an Assistant Professor of Mathematics at the University of Southern Mississippi’s Hattiesburg campus. His research focuses on computational algebra, and he has been lucky to work with several graduate and talented undergraduate students.