Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
The notes contained in this wiki (e.g., Monoids) are designed to serve as a quick lookup and companion to the full text by Spivak; they are not meant to be read in isolation. When possible, plain English attempts at explication are favored, where rigor is left to the full text. It is often the case that a concept will be referred to later in the text and a quick reminder is needed of its earlier introduction. If anything, the notes should help one orient herself around the territory of the material to learn. At the very least, these notes reflected principal definitions I found myself wanting to stake down for later reference; they are breadcrumbs for my inevitable retreat into earlier parts of the texts (Lawvere and Spivak).
Original diagrams (such as this one) can be identified by the included name of the author. Many thanks to Spivak for the numerous other diagrams that have been included here and there as a means to read quickly and not pause to recreate them. In the future, all diagrams will be drawn anew, because cribbing is bad, and drawing diagrams is fun (though time-consuming). For now, no tikz.
Also note that I currently favor math-y expression written as functional programming expressions, since that approach works will with GH-flavored markdown. That might not be a good idea, but for now I'm experimenting with just writing out:
(f ○ α) (x).
It is also easier to manage a "flat" architecture of GitHub wiki pages than to recreate a digested version of Spivak or Lawvere as a properly LaTeX-typeset document.
My (Brooks) course so far (italics are TODO):
- Through Chapter 4 of Spivak, started 5.
- Switched to Lawvere.
- Dip into Evan Chen's Napkin Project sporadically for things like Groups. Since sections are 15 pages or less, these sojourns don't tend to distract. They either pique curiosities or clarify how some ideas are related. I treat this resource like the OED: a quick, index, authoritative reference with particularly useful see also references.
- Resume Spivak.
- Pick through Awodey.
The pages contained in this wiki reflect the author's note taking in the process of moving through the readings.
(Primary, gentler introduction) Category Theory for the Sciences by David I. Spivak.
(Secondary, complement to Spivak) Conceptual Mathematics by William Lawvere and Stephen Schanuel. Really builds categorical thinking from the ground up, with a nod to philosophical implications.
(Tertiary, more abstract companion to Spivak) Category Theory by Steve Awodey.
- Abstraction in Technical Computing by Jeff Bezanson. This is a PhD thesis revolving around the Julia programming language.
- Video of Spivak talking about databases interpreted as categories with slides.
- Napkin Project by Evan Chen. Chapters 23-25 (of the most recent draft) attempts to lay out important concepts in Category Theory (very quickly). Companion reader to Spivak. Perhaps most useful in orienting oneself within the territory before slowly engaging Spivak's presentation.