The Teach Yourself Logic Study Guide usually gets the most downloads here — recently, a fairly consistent seventeen hundred or more downloads a month (with occasional upward spikes). The Guide has grown by accretion over the years to the current 93 pages, and to be honest it is by now a bit of an inconsistent mess, in terms of levels of detail and coverage. So given how much it is used and recommended, and given the absence of any obvious alternative, I suppose I really ought to settle down to re-thinking it and re-writing it. Which could be fun in its way but is slightly daunting.
And then, to my considerable surprise and embarrassment, Category Theory: A Gentle Introduction gets an equally consistent six hundred or so downloads a month. Surprise, because there are so many available good sets of lecture notes and freely available books out there (as listed here). Embarrassment, because it is a very rough-and-ready unfinished draft — though it already weighs in at 291 pages; it needs a lot of corrections and a lot of development and expansion to get it into a decent state. And that’s an even more daunting prospect given my pretty amateur and tenuous grasp of category theory! But people have said nice things about the Gentle Introduction even as it stands: and I think it is just different enough from the alternatives in level (more accessible!) and organization (more logical!) to be worth having a good bash at improving it.
I’m really not sure, though, how to juggle thinking about a possible IFL3, re-writing TYL, and diving into a lot of category theory homework. But I suppose it is good not to run out of projects that may be a bit daunting but still seem realistically manageable (at least these are finitely limited projects in a way that more purely philosophical projects tend not to be). I’ll just have to see how the spirit moves me once I’ve really got GWT done and dusted …
3 thoughts on “And then there is TYL and a Gentle Introduction …”
I do hope that you end up getting Category Theory: A Gentle Introduction into as polished of a state as your other books.
One of the biggest issues that exists with learning from a textbook is the immutability of the way the textbook presents the imformation. There are some ways of presenting information as a teacher to a student which are very informal, and very human, which is usually the exact right way to get a point across after having given the more formal, more rigorous explanation, and these ways are usually not easy to put into a textbook and are often left out on the consideration that the student will in all likelyhood have access to a teacher of whom they can ask questions. As I and anyone else who has learned from a book without immediate access to a teacher can attest to, sometimes there is just one particular question you have, one way of framing the question, that if you can just get the answer in that way, all of it will make sense, but unfortunately the book does not contain the exact set of sentences you’re hoping for and so you are left to try to piece the story together yourself. The ease of access to people who might be able to answer these questions over email or sites like stackexchange definitly helps to some extent, but the problem still remains that someone learning on their own and being unable to just raise their hand and have immediate feedback on their question, or to spend 15-20 minutes during office hours being helped directly, means that learning from textbooks, or even recorded lectures, alone is very difficult.
Of your big red logic books, I have only read IGT2 all the way through (the CUP paperback version), though I have started IFL2 now that it is online and so far the complements I will give IGT2 seem to stand for IFL2 as well. One major reason that I like IGT2 so much, and why I’ve recommended it to everyone who has any interest in the theorems or mathematical logic but doesn’t have the opportunity to take a class at college, is because I find that your ‘gentle’ approach to the topic is the best way of combating the ‘teacherless’ problems self study poses. The way that you explain the concepts, I feel, is well paced and methodical without being agonizingly boring (there was never a moment in IGT2 when I felt tedium set in). There are certain questions which I had when first learning these subjects that I remember having to ask my professor, because the exact wording in Boolos and Jeffrey did not quite make things clear to me, and when I went through IGT2 I found a lot of the exposition to contain, not as asides, but directly addressing, topics and formal results which I recalled having trouble with and having to ask questions about. An example that I can recall has to do with Post’s theorem, and it was so basic that a proof of the theorem wasn’t even necessary, all that I needed was a more thorough explanation of the terminology and notation used around primitive recursive functions to have it make sense, and you gave a very thorough and coherent explanation of the relationship between computability and logical definability that would have elucidated my questions in the same way my professor did then. It’s the difference between having a very human explanation of the topic, which is, sometimes rightly so, left out of a lot of textbooks, and having a formally complete and terse explanation that can be referred to after giving a more human presentation. Every day textbooks like that are great as companions to a class, they are written to that end and function well to achieve it, but that leaves people learning on their own at a loss. At the end of the day, I think a large part of it is the more or less conversational tone you take at times in the book that makes it very enjoyable to read and very strong to learn from on your own, and, at least to me, that is what ‘gentle’ means in the title, since I am sure this approach is a product of your decades of teaching this subject to students and being aware of the different pain points people have learning it. And so I hope that one day your Category Theory lives up to this same expository spirit. If I was giving someone a plan to take the step up from the level of Smullyan’s First Order Logic to the real start of mathematical logic, I would recommend them reading IGT2 and then Boolos and Jeffrey (reading them at the same time might be difficult given that they start with computability and you do not, but it may still be doable if the reader is dedicated to working through it), for all of the reasons outlined above. In a world where you do have enough time to make the Gentle Introduction as complete and well written as IGT2, my recommendation for someone wanting to learn category, especially someone coming from a philosophy/logic background, would be to recommend your Gentle Introduction and then Awodey’s book.
Sometimes Quine can feel impenetrable. When a professor assigns an essay by Quine to their class, they may give a high level overview of the paper first (that’s definitely been my experience and what I plan to do when I am teaching). They may say, “Look, these are the questions Quine is addressing. This, that, and those are the problems that he wants to discuss and here are the answers he will eventually give. The essay starts out in this way, and after considering some possible options, he eventually focuses in on this, finally ending with that,” and after having the entire plan laid out, the paper will be much easier for the students to follow and understand, even though the paper itself is not filtered through such a direct de-obfuscation. The care you take to outline, in the interludes for example, “what we did, why we did it, where we’re going, why we’ll do it” in a ‘gentle’ way and then leaving the rigor and semi-formality for the actual proofs is crucial to making something that is easy for self study. That’s the idea I meant to capture above, that’s what ‘gentle’ means to me in regards to your books, and what I think are their biggest strengths.
As an aside, and also as a case study which I think may be helpful, I did finally have my ‘ah-ha’ moment with category theory. Before, in my comments critiquing the Programming with Categories lectures* I mentioned that I had run into the “okay, but so what?” wall with categories. Over the past half year, given the state of the world, I had much time to spend on the subject and I worked through a lot of Awodey’s book. I was following the math and it was all making sense to me, but I still couldn’t get to the point of understanding why this is a helpful way of viewing mathematics. And I think some part of it has to do with a large part of my mind being focused on the foundational debate, especially in light of Penelope Maddy’s two excellent recent papers on the subject. But then it did finally click for me, and it happened while reading the introduction to Tom Lenister’s Basic Category Theory. I do not know why, I cannot articulate exactly what it was about it, but for some reason his second example, 0.2, of Z being the initial object in the category of rings was what finally made it click in my head. When I was reading the paragraph, before the statement of the lemma was even mentioned, I filled out the details in my head because I recalled learning in my algebra class the lemma that there is a unique homomorphism from Z to any ring R and any ring A with the same property is isomorphic to Z, and since I knew the definition of an initial object, I knew exactly what was about to be explained, and it all clicked. I finally understood what “Category theory takes a bird’s eye view of mathematics. From high in the sky, details become invisible, but we can spot patterns that were impossible to detect from ground level.” actually means, I finally had my moment of clarity about why ignoring details can be important, and every single lecture I’ve ever had on software engineering principles, data and black box abstractions, euphorically recontextualized into the realm of pure mathematics. It was finally appreciating the importance of a universal property that got me to the point of appreciation, and indeed, Lenister’s introduction also says “The most important concept in this book is that of universal property. The further you go in mathematics, especially pure mathematics, the more universal properties you will meet.” I don’t think this was even the first time I had seen that example, and it was not the example itself that helped it click for me. I believe it was my understanding of what was happening, and more importantly *why* it was happening, and then the sudden realization that the details, Z and ring homomorphisms, were entirely irrelevant to the abstract structure that was being outlined.
Of course, people do not learn things in the same way, and one person’s moment of clarity can be another’s moment of opacity, so I don’t mean to suggest that that example is the golden ticket to getting past the ‘so what?’ stage. Really, I just wanted to give my experience and say that I believe making an explicit connection between the ‘birds eye view’ verbiage and universality as an important manifestation of that phenomenon is crucial for people trying to understand why the birds eye view matters. There is no royal road to category theory for people with presupposed set theoretic dispositions, and someone may be able to give the answers to “How is the lowest common multiple of two numbers like the direct sum of two vector spaces? What do discrete topological spaces, free groups, and fields of fractions have in common?” (also from Lenister’s introduction) without understanding why those answers matter. But what I think may help them get to a point of understanding is being ‘gently’ explicit about the role that universality plays in category theory being ‘the mathematical study of abstraction’.
*I have been periodically checking for updates to the lecture notes and indeed they are forming into a book (accessible on the course page under course notes found [here](http://brendanfong.com/programmingcats.html)). There was a very incomplete draft that was posted on the course website in January which was not touched for a long time. Since then there have been two updated drafts, one in September and one on the 6th of this month, both of which I would say make pretty substantial updates. My verdict of the book so far is a lot better than the recorded lectures, it is more coherent and complete in its purpose and execution, but I still would not recommend it as an introduction to Haskell or programming. I think it would serve as a very good book for someone who has an elementary computer science background (data structures, algorithms, abstraction principles) and at least some experience with Haskell (a general understanding of the type class system, if not functors and monads specifically), and having it be their second introduction to category theory will definitely help. All told, I am looking forward to the book when it is finished, but then again I am an experienced Haskell programmer with a category theoretic axe to grind so it is well within my wheelhouse, perhaps others won’t find it as interesting or helpful.
Sorry again for the long comment. IFL2 has been very enjoyable so far, I think that a restructuring of TYL would be a great idea, and I hope that the Gentle Introduction makes its way into the realm of a finalized book, because I think there are thousands and thousands of people out there who appreciate and greatly benefit from reading books having such a ‘gentle’ expository style, especially those who are self studying.
May I politely suggest writing a book on consistency proofs of arithmetic, as you considered at
—say, Gentzen Without (Too Many) Tears? This is, in fact, the topic that long ago led me to your Web site, when searching for a rigorous presentation of Gentzen’s proof that I could understand. For example, I was unable to get through Szabo’s master’s thesis, being overwhelmed by the details. (I confess, I’ve yet to give the appendix in Mendelson’s book a go.) And the Mathematical Intelligencer article you cited at
was informative, but where can I find the “ZFC proof” the author refers to? I suspect that the underlying idea of Gentzen’s proof is not difficult, but the connection between logical consistency and ordinal numbers eludes me. Nevertheless, having read a fair portion of your Gödel book, I am confident you would present the material in a manner that I can assimilate. Even a mere overview of the proof in your blog would be much appreciated.
Yes! I would also be very interested in something like that.