# User:Michiexile/MATH198

From HaskellWiki

## Course overview

Page is work in progress for background material for the Fall 2009 lecture course MATH198[1] on Category Theory and Functional Programming that I am planning to give at Stanford University.

Single unit course. 10 lectures. Each lecture is Wednesday 4.15-5.05 in 380F.

- User:Michiexile/MATH198/Lecture 1
- Category: Definition and examples.
- Concrete categories.
- Set.
- Various categories capturing linear algebra.

- Small categories.
- Partial orders.
- Monoids.
- Finite groups.

- Haskell-Curry isomorphism.

- User:Michiexile/MATH198/Lecture 2
- Special morphisms
- Epimorphism.
- Monomorphism.
- Isomorphism.
- Endomorphism.
- Automorphism.

- Special objects
- Initial.
- Terminal.
- Null.

- Special morphisms

- User:Michiexile/MATH198/Lecture 3
- Functors.
- Category of categories.
- Natural transformations.

- User:Michiexile/MATH198/Lecture 4
- Products, coproducts.
- The power of dualization.
- The algebra of datatypes

- User:Michiexile/MATH198/Lecture 5
- Limits, colimits.

- User:Michiexile/MATH198/Lecture 6
- Equalizers, coequalizers.
- Pushouts/pullbacks
- Adjunctions.
- Free and forgetful.

- User:Michiexile/MATH198/Lecture 7
- Monoid objects.
- Monads.
- Triples.
- Kleisli category.
- Monad factorization.

- User:Michiexile/MATH198/Lecture 8
- Algebras over monads
- Algebras over endofunctors
- Initial algebras and recursion
- Lambek's lemma

- User:Michiexile/MATH198/Lecture 9
- Catamorphisms
- Anamorphisms
- Hylomorphisms
- Metamorphisms
- Paramorphisms
- Apomorphisms
- Properties of adjunctions, examples of adjunctions

- User:Michiexile/MATH198/Lecture 10
- Power objects
- Classifying objects
- Topoi
- Internal logic