Note: This course is scheduled for Spring 2004; Tuesdays 3:15 to 4:45
(note slight adjustment). Location Reiss 256 (may move later depending
on class size).
**** Last updated ****
Feb. 1, 2004
**********************
=======================================================================
Note: For some reason in the last class I was belaboring something rather trivial. The product in Ens* is obtained by taking the cartesian product with the basepoint being the ordered pair; that is, if (A,a_0) and (B,b_0) are two sets with basepoint, then (A x B, (a_0,b_0)) is the product, in the sense of satisfying the diagram I gave in class. What I said about the "smash" product can be ignored - it was about a topological problem and is not needed (or correct) for category theory. Kevin was right!
BTW you guys should be ready for a quiz one of these days ... And we _will_ have class on Tuesday, even if classes are "cancelled", unless things are _really_ nasty.
Here are the two examples of functors which I mentioned at the end of class today. You should verify that they are indeed functors.
First, recall the definition: F is a functor, F:scriptA --> scriptB, from category scriptA to category scriptB if F is a function from the objects of scriptA to those of scriptB, for all A,B objects of scriptA, F is a function from hom(A,B) to hom(FA,FB), and for all a in hom(A,B) and all b in hom(B,C), for all A,B,C objects of A, F(b)F(a)=F(ba) (i.e., F gets along with the laws of composition in the two categories, and F(1)=1 (that is, the identity on A is mapped by F to the identity on FA).
Here are two examples. The first is a functor from the category Ens of sets to itself. Fix a set S which is nonempty. For any set A, let F(A) be the cartesian product A x S, and for any function x:A -->B, let F(x) be the function from F(A) to F(B) given by F(x)(a,s) = (x(a),s). Check that F is a functor.
For the second example, let X be any category and let A be an object of X. For any object B in X, define G(Y) = hom(A,B) and for any two objects B,B' in X and any morphism b:B --> B', let G(b):hom(A,B) --> hom(A,B') the function given by G(b)(h) = bh, where h is in hom(A,B). Then G is a functor from X to the category of sets.
Category theory is a kind of network algebra which provides a general framework for describing mathematical objects and their interrelations. It is also applied in computer science. So-called ``object oriented'' programming has objects which send each other messages, whereas in category theory one has objects with morphisms from one to another. But categorical ideas may have other appliations in computer science, especially to the relationship between syntax and semantics.
We'll be reading a classic by S. Mac Lane called ``Categories for the Working Mathematician.'' As the level is a bit severe, I'll provide hints and background where needed in the class. You don't have to buy the book (yet - eventually I hope all of you will want to have your own copy!) since I'll give you xerox copies and some additional notes.
The tutorial will be listed as Math 302-x, where x is to be determined by Dr. Vogt and possibly also by the administrative process. Just put "302" on your drop-add forms. If possible, send me an e-mail so I have an approximate idea of who is planning to attend.
A category is a non-null family of arrows with a binary law of composition which is only partially defined; that is, not every pair of arrows is composable. Where the compositions are defined, the outcome is associative. More specifically, if a,b,c are arrows and if the pairs (a,b) and ((ab),c) are composable, then the pairs (b,c) and (a,(bc)) are also composable and (ab)c = a(bc). From now on, we adopt the convention that writing ab means that the arrows a and b are composable and their composition is ab. We also denote ab by a.b.
In addition, a category must satisfy the existence of identity arrows ; that is, for every arrow a there exists an arrow 1(Sa) and 1(Ta) such that 1(Sa).a = a = a.1(Ta).
It is equivalent to suppose the existence of a (non-null) family of objects (associated with the identity arrows) so that every arrow a may be regarded as an arrow from the source object Sa of a to the target object Ta of a. Two arrows a,b are composable exactly when Ta = Sb. For every object X, there is a unique identity arrow 1_X so that for each arrow a with Sa = X, (1_X).a = a and for each arrow b with Tb = X, b.(1_X) = b. We often require that the family of objects or arrows constitute a set. (The category is called "small" in this case.)
The standard example of a category is the family Ens of sets and functions with composition defined as ordinary composition of functions and the identity arrow is the identity function. Thus, category theory is a generalization of ordinary set theory. Note that we use "Ens" since "ensemble" means "set" in French ;-)
Another basic example of a category is any monoid (look it up!) in which the composition is the semigroup operation. In this case, there is a single objects and its identity is the identity of the semigroup. If the monoid is actually a group, then in addition each arrow has an inverse such that both compositions are the identity.
Still another example is to take any partial order relation (again, look it up ;-). Now the family of objects is just a set, and for any two objects X,Y, the set Hom(X,Y) of arrows with source X and target Y is a singleton when X <= Y and is empty when X is not <= Y.
A different example, Gps, more like Ens, is obtained by taking the objects to be groups and the arrows to be homomorphisms (which are functions between the underlying sets of the groups that preserve the group operation). For instance, log is a homomorphism from the positive reals under multiplication to the set of all real numbers with respect to addition since the log of a product is the sum of the logs.
We will develop a few basic notions from category theory, including functors (arrows between categories) and natural transformations (arrows between functors), leading up to the adjoint functor theorem. We'll also focus on what are called ``abelian'' categories in which the family of arrows joining any two objects is required to be a commutative group.
The goals of the course are (i) to provide some familiarity with this basic framework for modern mathematics, including definitions and techniques, and (ii) to explore applications in computer science, cognitive science, and biology. Students will be expected to do the reading (either class notes or xeroxed material from textbooks) and to come to class to ask (and answer!) questions.
Instructor: Paul Kainen, Department of Mathematics. You can reach me at 7-2703 or kainen@georgetown.edu; I have office hours in Preclinical Science Bldg LR3 room 26 W 3 to 4 pm, and in Reiss 248 on MW 6 to 7:30 pm and T 7:15 to 8 pm or by appt. References will appear later.
For students at Georgetown University; other information at my home(ly) page. or my index page .