Basic Category Theory for Computer Scientists - Benjamin C. Pierce

- Definition:
Cat is a category ie:
     1- Cat = things (A, B ..) + morphisms (f, g ..)
     2- f :A=>B & g:B=>C  THEN gof :A=>C
     3- (fog)oh = fo(goh)
     4- foreach A, there exists idA: A=>A

- Discuss the definition above:
* Morphism: any kind of mapping (for instance: in algebraic structures, homomorphism is a morphism that preserves a structure)
* By "2-", we established a mean of composition (build complex morphism from others simplest)
* "3-" associative : the order in which the operations are performed does not matter as long as the sequence of the operands is not changed.

- Examples:
   1- The Category that has Omega-Algebras as objects, and Omega-Homomorphisms as arrows.
(remember: an Omega-Algebras is simply an algebraic multi-structure --signature={+, * ...}--).
   2- A simple programming language is a category that has types as objects and operations on these types as arrows
   

No comments: