CTFP11 /

# CTFP 2011 Notes - Arnar

Here are my note highlights from our meetings.

## Chapter 1

- Units are unique: If a,b are units, then a = ab = b.
- "Aha" moment: The category construction of a group is simply the one of monoids, with the addition that all arrows are isomorphisms. I.e. "each element has an inverse" <=> "each arrow is an isomorphism"
- The functor F asked for on p19 (1st ed), from a slice category
**C**/C to the arrow category arr(**C**), such that dom*F = U (the forgetful functor) is the functor that maps an object f to f (note: objects in the slice category are arrows in the original one), and an arrow g to (g,id_C). Picturally, it maps the triangle of the slice category to the square of the arrow category by duplicating C at the bottom and putting id_C in between. - Intuition about the UMP (from Ramona): Think of A as a set of variables and then M(A) can represent the set of expressions over A. N is a set of conrete values and f is a "memory", i.e. mapping variables to concrete values. Then \bar f is the evaluation function that maps expressions to values.
- Possible extension of intuition to categories: If G primitive operations in a language by showing possible state transitions, then M(A) gives the possible state transitions of full (non-primitive) programs. If h maps primitive programs to some semantic domain, then \bar h gives the semantics for the language as a whole. Note: I think this analogy is flawed, use at your own risk.