An Illustrated Course in Real Analysis
Welcome
Real analysis occupies a special place in the psyche of undergraduate math majors and instructors. The course is widely regarded as the most difficult required course for the major. And yet for many, it fundamentally changes their relationship with mathematics. Getting through the course is a challenge, but the subject’s simultaneous applicability and dedication to rigor often resonates with both learners and teachers.
I think for this reason, teaching the course is very personal and each instructor wants to bring their own flavor of understanding into the classroom. For me, illustrating and visualizing each concept is an important component of understanding, and this informs my take on the course in this text.
This version of the textbook is still in flux, with updates and fixes constantly being made. I hope to eventually have a stable “first edition”.
Book Features and Structure
Each chapter is meant to correspond to one day of instruction. When this disrupted the natural grouping of topics and theorems, I did my best. The number of chapters corresponds to a typical number of days of primary instruction for a three-times-per-week, 14-week course (leaving days for review, exams, etc).
Desmos Interactives
The most distinguishing feature of this textbook is the incorporation of interactive illustrations created with Desmos. These were created using the Desmos API and are included in this textbook with permission from Desmos Studio PBC.
Each illustration was carefully designed with the learner in mind. While I have a great deal of fun creating these things, I tried to exercise restraint. I feel strongly that students should get in the habit of drawing their own pictures, and many of the exercises explicitly ask them to do so.
Most of the illustrations in the textbook have the equations and controls hidden. Links to versions that can be seen and edited on the Desmos web app are available in Appendix E — Links to Desmos Web Apps.
Annotated Proofs
Many of my proofs are annotated with mouse-oversMeaning that you can mouse-over highlighted words or phrases to see the rationale for that step..
It is no secret that the students who struggle most in undergraduate real analysis are ones who don’t enter the course with solid basic proof-writing skills. And when dealing with complicated stacked quantifiers (as in the definition of continuity), bright students who had gotten by on intuition alone up until this course often find themselves struggling and need to return to the basics.
For these reasons, I include some highly systematic proofs that go “by the book” in terms of dealing with quantifiers and using standard proof structures, with annotations explaining every step.
Proof (\(f(x)=3x+1\) is continuous at \(a=4\)). We need to prove that \[ \mathhlred{(\forall \epsilon>0)}\,\mathhlblue{(\exists \delta>0)}\,(\mathhlorange{|x-4|<\delta}\,\Longrightarrow\,\mathhlgreen{|f(x)-f(4)|<\epsilon}) \]
Suppose \(\epsilon>0.\)To address the \(\forall\) quantifier in a direct proof, we have no choice but to start with a sentence like this. Let \(\delta=\frac{\epsilon}{3}.\)Here we exhibit a candidate for \(\delta.\) The choice we made here was the result of some scratchwork, which we show below. Suppose \(|x-4|<\delta\)Assuming the hypothesis of the conditional. ThenNow we set about proving the conclusion of the conditional. If we chose \(\delta\) wisely, this should be a matter of doing some inequality algebra. \[ \begin{aligned} |f(x)-f(4)| &= |(3x+1)-(3\cdot4+1)| \\ &= |3(x-4)| \\ &\vdots \end{aligned} \]
The resulting proofs are very dry, and I don’t necessarily recommend doing every proof so systematically, but I hope that it gives students something to fall back on.
Structure of Each Chapter
Anyone should feel free to use this textbook however they’d like, but here were my intentions while writing.
- Highlights give a quick overview of what’s covered. I think this is especially helpful for the web rendering.
- The subsection Preparation is intended as pre-class readings and exercises for students. I think it’s important for math majors to get practice actively reading mathematics. Designating the introduction to each section as the required reading is a sort of compromise, and they are meant to be especially student-readable.
- Subsequent sections outline what might be covered during class. Many proofs, even of major theorems, are left as exercises. This gives the instructor the option of assigning them to students (for homework or during class).
- Review Questions at the end of each section are meant to be useful for students to go through right after class or while studying for an exam.
Notes on the content
This textbook was written with the course MA 425: Mathematical Analysis I at North Carolina State University in mind. Officially, the course description reads:
Real number system, functions and limits, topology on the real line, continuity, differential and integral calculus for functions of one variable. Infinite series, uniform convergence.
Here are a few decisions I made in curating the content.
- Even though it isn’t required, I spend a bit of time on metric spaces in general. This is because I believe we gain a lot of intuition about distances by thinking about geometry in \(\R^2\) and \(\R^3\); for some reason geometry is actually harder for our brains in \(\R^1.\) It’s also often the case that proving something for a general metric space is no harder than proving it for \(\R\); and knowing that the proof should be general lets students focus on using metric space properties without getting distracted by \(\R\)’s additional structure. The philosophy in general is “get intuition from \(\R^2\) and \(\R^3\); prove for general metric spaces; apply in \(\R\)”.
- While dealing with general metric spaces in principle could allow us to talk about the topological definition of compactness, this topic is relegated to an appendix; one needs to pick one’s battles.
Licensing
This work is licensed under CC BY-NC-SA.
Acknowledgements
The author acknowledges support of the Institut Henri Poincaré (UAR 839 CNRS-Sorbonne Université), and LabEx CARMIN (ANR-10-LABX-59-01).
I started writing this textbook in January 2026, while spending time at the Institut Henri Poincaré for the Mathematical Illustration as a Research Technique trimester program. In addition to acknowledging the support of the institute and the program organizers (Dave Bachmann, Rémi Coulon, Gabriel Dorfsman-Hopkins, Edmund Harriss, Martin Skrodzki, Katherine Stange, and Glen Whitney), I also want to thank Yuri Sulyma for running a mini-course on Javascript and Dave Bachmann for running a session on vibe coding.
I also want to acknowledge and thank NC State University and the Mathematics Department in particular for granting my sabbatical to participate in the program and for travel support.
The Desmos API is used with Permission from Desmos Studio PBC.
Thank you to the Desmos Studio Public Benefit Corporation for allowing me to use your wonderful product in this text.
I also acknowledge additional support from an NC State University Libraries Alt-Textbook Project grant, and thank David Tully and Will Cross for their support and advice.
Part of the organization and presentation are inspired by Closer and Closer by Carol Schumacher Schumacher (2008) and Understanding Real Analysis by Stephen Abbott Abbott (2016).
Finally, I want to acknowledge John Rock, author of Arbitrarily Close Rock (2025), another real analysis textbook with dozens of wonderful linked Desmos interactives. John has been extremely generous in sharing his experiences in authoring in this format.