[Math] Strategy for reading math books, is it better to prove the theorems yourself or just read them

learningself-learning

Context: I'm self-studying some mid to upper level undergraduate math subjects. For example, right now I'm reading Munkres' Topology book.

Usually, the approach I use is to go through the book in order, looking at each theorem and trying to prove it without looking at the proof provided in the text. If I get stuck, I look at the beginning of the proof to get a hint and then try again. If I'm still stuck, I repeat this until I have either proved it or read the entire proof provided (even if I am able to prove the theorem myself I still read proof afterwords). I am able to prove most of the theorems without looking at the proof but this approach is very slow. I usually do about 2-3 of the exercises at the end of each chapter and then move on.

An approach where I just read the proofs instead of proving them myself would be much faster and allow me to spend more time on other things. I have two specific questions regarding this.

(1) Given that I have a limited amount of time to allocate to studying math, my current approach means that I spend a lot of time going through the theorems of the main text and not so much time on the exercises at the end of each chapter. Is this good or bad? The theorems of the main text are generally different from those of the exercises in a number of ways, most obviously that the theorems in the main text are usually more important. Given this, I'd like to know how to allocate time between, on the one hand, proving (and understanding the proofs of) the main theorems and, on the other hand, applying/extending/tweaking the main theorems, which is what the exercises usually make you do.

(2) I've heard some people (on SE and elsewhere) say that its best to take several passes through the book with increasing attention to detail with each pass. Given that my current approach is effective for me (I am definitely learning the material) but slow (compared to other students I've talked to), does it seem that I am reading too closely the first time around?

Update: After years of experience, I believe this approach was bad. I think it is better to read most of the proofs and then see if one can prove them a couple days later relying partially on memory but also working sort of from first principles. And then doing the problems which are typically designed to be a good level and to help you learn to apply the theorems which is the important thing since the theorems have already been proved.

Best Answer

In my experience, it is better to be able to apply the theorems than to prove them (unless you need proofs for an exam). I would personally weight towards spending time on the exercises. Read through the proofs, certainly, to get a feel for which methods are used to prove things in this area, but the main theorems are "main" for a reason: their applications are very useful or important. Get to know their applications by doing the exercises, and spend the remaining time on the theorems.

Otherwise, if the time you're taking isn't causing you problems, then I think you're doing it the right way. A way which isn't much worse but takes substantially less time is to skim each proof as you meet the theorem, and then begin again in your usual way (proving it without any more information). That lets you get a sense of the direction you need to go for the proof, and it will tell you whether a theorem has a horribly long proof you'll take forever on.

If you need to save further time, it can be worth learning to identify which theorems are really important and which are not. Sometimes the author will have written "this is a cute little side-result" or similar. Just read and work through the proofs (or, for even faster reading, omit the proofs) of the results which aren't very central.

If you have to cram for some reason, I find it most effective just to rote-learn proofs, but of course this is awful practice and should only be used as a last-resort before exams or whatever.