Search code examples
haskellcategory-theory

Category Theory fundamentals


I am looking for references on Category Theory that

  • are mature (== at least 5 years old)
  • at a level of university education (not post-doctorate, ultra symbolic introductions)
  • start from the basics (Abelian Group, Set theory known - similar level) and avoid introducing new terms before defining them (counterexample: Wikipedia, as if you take any definitions, you will understand that now you have to look up an exponentially increasing number of words)
  • preferably support a full conceptual understanding that is useful for both Haskell and the corresponding mathematics as well

The problem I am trying to solve is: maximizing the use of paradigms and features of Haskell (instead of blindly accepting that this is e.g. an Applicative, so what.) I am using (or eventually going to use) Haskell in automated reasoning.

I put all these explicitly there so that we can avoid flagging with

  • Primarily opinion based (these are very explicit criteria)
  • Product Recommendation (since I am asking for mature references, answers will not become quickly obsolete)

Solution

  • My opinion:

    The Harold Simmons - "An introduction to Category theory" - Cambridge University Press, 2011. Is a good start to Category theory.

    ^ This introductory book is only 200 pages but does what you request. It targeted for undergraduates and starts from basics and explains the most of the terms of clean math of the Category theory. 200 pages basically to form the view of the field. (and to read back afterward). Not just my word (I write the Haskell-Cat book of my own): Chris Allen, one of the authors of "Haskell Programming from First Principles", pointed out in his talks that it is a good Category theory learning material he cracked the theory through.

    Bartosz Milewski - "Category Theory for Programmers". And his open lectures. He is amazing, but I think briefly reading through the 200 books first would make his material and to learn it, understand, evaluated, and so recorded, remembered better.

    Then what you interested in is: David I. Spivak - "Category Theory for the Sciences" - The MIT Press, 2014. It talks less about the theory, but gives better examples of the applications. Spivak's name already talks for itself, he is known as the "Applied Category theory" guy.

    I think the order or cross-over sequencing of them is not as important, it depends on how the mind of a person works and what path the person goes to reside.