Functional analysis is generally thought of as a graduate-level subject, taught from textbooks such as Rudin’s *Functional Analysis* or (for a more recent example) *Functional Analysis, Spectral Theory and Applications *by Einsiedler and Ward. Over the years, however, there have been attempts to make at least parts of the subject accessible to undergraduates. Back around 1970, for example, I was lucky enough to attend an undergraduate seminar based on the second half of Simmons’ excellent *Introduction to Topology and Modern Analysis*; since then, we have seen the publication of books by Saxe, Rynne and Youngson, and Muscat, all of which seem at least largely suitable for a decently prepared undergraduate audience. Just recently, a new book (*Functional Analysis: An Introductory Course* by Ovchinnikov) also appears to be, at least on cursory examination, undergraduate-accessible.

Although these books differ in some technical details (some, for example, avoid measure theory entirely, others do not), most of them agree in broad content outline: the menu consists of normed spaces, Banach spaces, and Hilbert spaces, and the basic theorems about them (Hahn-Banach, Open Mapping, Closed Graph, Riesz representation theorem for Hilbert spaces, etc.). *Volterra Adventures, *however, breaks the pattern. Its author, Joel Shapiro (who also wrote the well-received *A Fixed Point Farrago*) has rethought the traditional way to introduce functional analysis and come up with a novel, interesting and quite successful alternative approach.

This approach emphasizes some of the “hard analysis” aspects of the subject, specifically results such as the Titchmarsh convolution theorem and the Volterra invariant subspace theorem. These are results that are almost never a part of an undergraduate mathematics education (truth be told, I never even encountered them as a graduate student either), and so their inclusion in this book certainly sets it apart from the pack.

The author has worked hard to make these topics accessible to undergraduates who have taken (good) courses in linear algebra and real analysis (the non-measure theoretic kind, i.e., advanced calculus). Probably the most sophisticated topic used from real analysis is the Riemann-Stieltjes integral; recognizing that the majority of undergraduates will not have been previously exposed to this topic, the author provides an appendix covering it. (Other appendices discuss uniform convergence, a brief look at some complex analysis, and the Weierstrass approximation theorem.)

The book is divided into three parts. The first, comprising four chapters and about 80 pages of text, is an introduction to the functional analytic way of thinking: i.e., thinking of functions as “points” in a normed vector space, and the linear transformations between these spaces as “points” in another space. He introduces this point of view by way of studying uniform convergence from the perspective of the max norm on the space \(C[a,b]\) of continuous functions on a closed bounded interval.

The author wastes no time in introducing the Volterra operator on the space \(C[0.a]\); this is the operator \(V\) that maps a function \(f\in C[0,a]\) to the function \[Vf(x)=\int_0^x f(t)\,dt\] in the same space.

The study of the spectrum of the linear operator \(V\) (and its relatives) leads to the study of integral equations, which in turn leads to consideration of “geometric series”, the summands of which are linear transformations. Throughout part 1 of the text, the idea of “functions as points” is continually emphasized; it is by considering linear operators as elements of a Banach space, after all, that we can make precise the notion of an infinite series of operators.

This part of the book also contains interesting analysis discussions that will likely be new to an undergraduate, even one who has taken a first course in the subject. The idea of measure is referenced, and Lebesgue’s theorem (that a function on a closed bounded interval is Riemann-integrable if and only if it the set of points at which it is discontinuous has measure zero) is stated, with references given for the proof. (Unfortunately, a typo results in the misspelling of the name Lebesgue in the statement of this theorem; I noticed a few other typos in the book, such as a missing apostrophe after the name “Stieltjes” in paragraph 2 of page 211, but none of them were substantively serious.)

In part 2, the author addresses a class of operators called Volterra Convolution Operators, all of which generalize the Volterra operator defined above. Specifically, if \(g\) is a function continuous on the interval \([0,\infty)\), we can define \(T_g\) as the operator defined on the space \(C[0,\infty)\) by \[ T_g(f)(x)=\int_0^x g(x-t)f(t)\,dt.\]

Passing from the space \(C[a,b]\) to the space \(C[0,\infty)\) doesn’t cause any serious problem because, as the author points out, any continuous function on \([a, b]\) can be extended to a continuous function on \([0,\infty)\) , so the text views elements of \(C[a, b]\) as restrictions of elements of \(C[0,\infty)\).

While the “ordinary” Volterra operator (take \(g\) to be the constant function \(1\)) is easily seen, courtesy of the Fundamental Theorem of Calculus, to be one to one and hence to have null space \(\{ 0 \}\), the null spaces of the general convolution operator are not as easy to describe. In fact, the determination of these null spaces is the focus of part 2 of the book, and the result that characterizes them is the Titchmarsh Convolution Theorem. The proof is lengthy and involves a host of interesting subsidiary issues — the algebraic properties of the ring \(C[0,\infty)\), Laplace transforms, and some complex analysis — but the author does things slowly, carefully and clearly, spreading the proof over the two chapters that comprise this part of the book.

Part 3 of the book addresses the question of determining the closed invariant subspaces of the Volterra operator V. This is a substantial undertaking, taking about 70 pages of text to accomplish. The proof uses the Titchmarsh Convolution Theorem and a number of other tools, including the Hahn-Banach theorem and the Riesz representation theorem characterizing the bounded linear functionals of the Banach space \(C[a, b]\), both of which are proved in the book.

The exposition is, throughout the book, of very high quality. Shapiro is a talented writer, and he knows how to explain things clearly and engagingly, in easily-digested pieces for an undergraduate audience. Other useful pedagogical touches include the use of a brief overview to introduce each chapter, frequent summaries of what has come before, and the inclusion of a section titled “Notes” at the end of each chapter, where the author expands on some material, offers some historical commentary (including, at times, some interesting anecdotes of which I was unaware), and references to the literature. (These refer to a more detailed bibliography at the end of the text; this bibliography lists not only print material but items that are freely available online.) Exercises are scattered throughout the text, and these, too, struck me as valuable: nontrivial enough to require some thought on the part of the reader, but not so difficult as to be discouraging. Some lead the reader through the details of interesting counter-examples. There is no formal collection of solutions to the exercises, but some individual ones are accompanied by hints.

One mild reservation that I have about the book is that I think it might be difficult to get through all of it in a typical one-semester course. Ordinarily, the failure to cover an entire book is not a huge problem, but the nature of this text is that it has the aforementioned two theorems in analysis as its primary goals, and it seems a pity to work so hard towards the last theorem and not see it proved. But perhaps this problem can be avoided by judicious hand-waving in class if time seems to be running low; the book is clear enough that some proofs can be omitted in lecture and assigned as independent reading.

The author’s novel approach to the material results, as noted above, in the reader being exposed to a number of topics that do not typically appear in introductory functional analysis textbooks. But at the same time, the inclusion of these topics necessarily results in the omission of some others. For example, although the reader will learn about Banach spaces, bounded linear transformations, dual spaces and the Hahn-Banach theorem, he or she will not see some of the other “big” theorems of elementary functional analysis. The Open Mapping theorem is mentioned in one of the end-of-chapter Notes, but is not proved or discussed in any detail. Other theorems (e.g., Uniform Boundedness) are not stated at all.

Hilbert spaces are also not discussed in the text. The author views this as an acceptable tradeoff because his goal is to enhance, rather than duplicate, a student’s subsequent exposure to functional analysis. If you agree with this point of view and are looking for a book for an introduction to functional analysis, then you will want to peruse this book: it will offer students an accessible, stimulating and informative look at a beautiful branch of mathematics.

Mark Hunacek (mhunacek@iastate.edu) teaches mathematics at Iowa State University.