User:Michiexile/MATH198/Lecture 6

From HaskellWiki

IMPORTANT NOTE: THESE NOTES ARE STILL UNDER DEVELOPMENT. PLEASE WAIT UNTIL AFTER THE LECTURE WITH HANDING ANYTHING IN, OR TREATING THE NOTES AS READY TO READ.

Useful limits and colimits

With the tools of limits and colimits at hand, we can start using these to introduce more category theoretical constructions - and some of these turn out to correspond to things we've seen in other areas.

Possibly among the most important are the equalizers and coequalizers (with kernel (nullspace) and images as special cases), and the pullbacks and pushouts (with which we can make explicit the idea of inverse images of functions).

One useful theorem to know about is:

Theorem The following are equivalent for a category C:

  • C has all finite limits.
  • C has all finite products and all equalizers.
  • C has all pullbacks and a terminal object.

Also, the following dual statements are equivalent:

  • C has all finite colimits.
  • C has all finite coproducts and all coequalizers.
  • C has all pushouts and an initial object.

For this theorem, we can replace finite with any other cardinality in every place it occurs, and we will still get a valid theorem.

====Equalizer, coequalizer==== Consider the equalizer diagram:

A limit over this diagram is an object C and arrows to all diagram objects. The commutativity conditions for the arrows defined force for us fpA=pB=gpA, and thus, keeping this enforced equation in mind, we can summarize the cone diagram as:

Now, the limit condition tells us that this is the least restrictive way we can map into A with some map p such that fp=gp, in that every other way we could map in that way will factor through this way.

As usual, it is helpful to consider the situation in Set to make sense of any categorical definition: and the situation there is helped by the generalized element viewpoint: the limit object C is one representative of a subobject of A that for the case of Set contains all xA:f(x)=g(x).

Hence the word we use for this construction: the limit of the diagram above is the equalizer of f,g. It captures the idea of a maximal subset unable to distinguish two given functions, and it introduces a categorical way to define things by equations we require them to respect.

One important special case of the equalizer is the kernel: in a category with a null object, we have a distinguished, unique, member 0 of any homset given by the compositions of the unique arrows to and from the null object. We define the kernel Ker(f) of an arrow f to be the equalizer of f,0. Keeping in mind the arrow-centric view on categories, we tend to denote the arrow from Ker(f) to the source of f by ker(f).

In the category of vector spaces, and linear maps, the map 0 really is the constant map taking the value 0 everywhere. And the kernel of a linear map f:UV is the equalizer of f,0. Thus it is some vector space W with a map i:WU such that fi=0i=0, and any other map that fulfills this condition factors through W. Certainly the vector space {uU:f(u)=0} fulfills the requisite condition, nothing larger will do, since then the map composition wouldn't be 0, and nothing smaller will do, since then the maps factoring this space through the smaller candidate would not be unique.

Hence, Ker(f)={uU:f(u)=0} just like we might expect.

Dually, we get the coequalizer as the colimit of the equalizer diagram.

A coequalizer

has to fulfill that iBf=iA=iBg. Thus, writing q=iB, we get an object with an arrow (actually, an epimorphism out of B) that identifies f and g. Hence, we can think of iB:BQ as catching the notion of inducing equivalence classes from the functions.

This becomes clear if we pick out one specific example: let RX×X be an equivalence relation, and consider the diagram

where r1 and r2 are given by the projection of the inclusion of the relation into the product onto either factor. Then, the coequalizer of this setup is an object X/R such that whenever xRy, then q(x)=q(y).


Pullbacks

The preimage f1(T) of a subset TS along a function f:US is a maximal subset VU such that for every vV:f(v)T.

We recall that subsets are given by (equivalence classes of) monics, and thus we end up being able to frame this in purely categorical terms. Given a diagram like this:

where i is a monomorphism representing the subobject, we need to find an object V with a monomorphism injecting it into U such that the map f¯j:VS factors through T. Thus we're looking for dotted maps making the diagram commute, in a universal manner.

The maximality of the subobject means that any other subobject of U that can be factored through T should factor through V.


Suppose U,V are subsets of some set W. Their intersection UV is a subset of U, a subset of V and a subset of W, maximal with this property.

Translating into categorical language, we can pick representatives for all subobjects in the definition, we get a diagram with all monomorphisms:

where we need the inclusion of UV into W over U is the same as the inclusion over V.


Definition A pullback of two maps AfCgB is the limit of these two maps, thus:

By the definition of a limit, this means that the pullback is an object P with maps f¯:PB, g¯:PA and fg¯=gf¯:PC, such that any other such object factors through this.

For the diagram UfSiT, with i:TS one representative monomorphism for the subobject, we get precisely the definition above for the inverse image.

For the diagram UWV with both map monomorphisms representing their subobjects, the pullback is the intersection.

Pushouts

Often, especially in geometry and algebra, we construct new structures by gluing together old structures along substructures. Possibly the most popularly known example is the Möbius band: we take a strip of paper, twist it once and glue the ends together.

Similarily, in algebraic contexts, we can form amalgamated products that do roughly the same.

All these are instances of the dual to the pullback:

Definition A pushout of two maps AfCgB is the co-limit of these two maps, thus:

Hence, the pushout is an object D such that C maps to the same place both ways, and so that, contingent on this, it behaves much like a coproduct.

Free and forgetful functors

Recall how we defined a free monoid as all strings of some alphabet, with concatenation of strings the monoidal operation. And recall how we defined the free category on a graph as the category of paths in the graph, with path concatenation as the operation.

The reason we chose the word free to denote both these cases is far from a coincidence: by this point nobody will be surprised to hear that we can unify the idea of generating the most general object of a particular algebraic structure into a single categorical idea.

The idea of the free constructions, classically, is to introduce as few additional relations as possible, while still generating a valid object of the appropriate type, given a set of generators we view as placeholders, as symbols. Having a minimal amount of relations allows us to introduce further relations later, by imposing new equalities by mapping with surjections to other structures.

One of the first observations in each of the cases we can do is that such a map ends up being completely determined by where the generators go - the symbols we use to generate. And since the free structure is made to fulfill the axioms of whatever structure we're working with, these generators combine, even after mapping to some other structure, in a way compatible with all structure.

To make solid categorical sense of this, however, we need to couple the construction of a free algebraic structure from a set (or a graph, or...) with another construction: we can define the forgetful functor from monoids to sets by just picking out the elements of the monoid as a set; and from categories to graph by just picking the underlying graph, and forgetting about the compositions of arrows.

Now we have what we need to pinpoint just what kind of a functor the free widget generated by-construction does. It's a functor F:CD, coupled with a forgetful functor U:DC such that any map SU(N) in C induces one unique mapping F(S)N in D.

For the case of monoids and sets, this means that if we take our generating set, and map it into the set of elements of another monoid, this generates a unique mapping of the corresponding monoids.

This is all captured by a similar kind of diagrams and uniquely existing maps argument as the previous object or morphism properties were defined with. We'll show the definition for the example of monoids.

Definition A free monoid on a generating set X is a monoid F(X) such that there is an inclusion iX:XUF(X) and for every function f:XU(M) for some other monoid M, there is a unique homomorphism g:F(X)M such that f=U(g)iX, or in other words such that this diagram commutes:

We can construct a map ϕ:HomMon(F(X),M)HomSet(X,U(M)) by ϕ:gU(g)iX. The above definition says that this map is an isomorphism.

Adjunctions

Modeling on the way we construct free and forgetful functors, we can form a powerful categorical concept, which ends up generalizing much of what we've already seen - and also leads us on towards monads.

We draw on the definition above of free monoids to give a preliminary definition. This will be replaced later by an equivalent definition that gives more insight.

Definition A pair of functors,

is called an adjoint pair or an adjunction, with F called the left adjoint and U called the right adjoint if there is natural transformation η:1UF, and for every f:AU(B), there is a unique g:F(A)B such that the diagram below commutes.

The natural transformation η is called the unit of the adjunction.

This definition, however, has a significant amount of asymmetry: we can start with some f:AU(B) and generate a g:F(A)B, while there are no immediate guarantees for the other direction. However, there is a proposition we can prove leading us to a more symmetric statement:

Proposition For categories and functors

the following conditions are equivalent:

  1. F is left adjoint to U.
  2. For any cC0, dD0, there is an isomorphism ϕ:HomD(Fc,d)HomC(c,Ud), natural in both c and d.

moreover, the two conditions are related by the formulas

  • ϕ(g)=U(g)ηc
  • ηc=ϕ(1Fc)

Proof sketch For (1 implies 2), the isomorphism is given by the end of the statement, and it is an isomorphism exactly because of the unit property - viz. that every f:AU(B) generates a unique g:F(A)B.

Naturality follows by building the naturality diagrams

and chasing through with a f:Fcd.

For (2 implies 1), we start out with a natural isomorphism ϕ. We find the necessary natural transformation ηc by considering ϕ:Hom(Fc,Fc)Hom(c,UFc).

QED.

By dualizing the proof, we get the following statement:

Proposition For categories and functors

the following conditions are equivalent:

  1. For any cC0, dD0, there is an isomorphism ϕ:HomD(Fc,d)HomC(c,Ud), natural in both c and d.
  2. There is a natural transformation ϵ:FU1D with the property that for any g:F(c)d there is a unique f:cU(d) such that g=ϵDF(f), as in the diagram

moreover, the two conditions are related by the formulas

  • ψ(f)=ϵDF(f)
  • ϵd=ψ(1Ud)

where ψ=ϕ1.

Hence, we have an equivalent definition with higher generality, more symmetry and more horsepower, as it were:

Definition An adjunction consists of functors

and a natural isomorphism

The unit η and the counit ϵ of the adjunction are natural transformations given by:

  • η:1CUF:ηc=ϕ(1Fc)
  • ϵ:FU1D:ϵd=ψ(1Ud).

Some of the examples we have had difficulties fitting into the limits framework show up as adjunctions:

The free and forgetful functors are adjoints; and indeed, a more natural definition of what it means to be free is that it is a left adjoint to some forgetful functor.

Curry and uncurry, in the definition of an exponential object are an adjoint pair. The functor ×A:XX×A has right adjoint A:YYA.

Notational aid

One way to write the adjoint is as a bidirectional rewrite rule:

F(X)YXG(Y),

where the statement is that the hom sets indicated by the upper and lower arrow, respectively, are transformed into each other by the unit and counit respectively. The left adjoint is the one that has the functor application on the left hand side of this diagram, and the right adjoint is the one with the functor application to the right.



Homework

Complete homework is 6 out of 11 exercises.

  1. Prove that an equalizer is a monomorphism.
  2. Prove that a coequalizer is an epimorphism.
  3. Prove that given any relation RX×X, its completion to an equivalence relation is the kernel of the coequalizer of the component maps of the relation. For the purpose of this, we define kernels in Set as the equalizer of fp1,fp2:A×AB. (A more general definition of a kernel, independent of zero objects, can be found using a definition of quotients by equivalence relations, and having the kernel be a universal object to factor the quotient through).
  4. Prove that if the right arrow in a pullback square is a mono, then so is the left arrow. Thus the intersection as a pullback really is a subobject.
  5. Prove that if both the arrows in the pullback 'corner' are mono, then the arrows of the pullback cone are all mono.
  6. What is the pullback in the category of posets?
  7. What is the pushout in the category of posets?
  8. Prove that the exponential and the product functors above are adjoints. What are the unit and counit?
  9. (worth 4pt) Consider the unique functor !:C1 to the terminal category.
    1. Does it have a left adjoint? What is it?
    2. Does it have a right adjoint? What is it?
  10. * Prove the propositions in the text.
  11. (worth 4pt) Suppose
is an adjoint pair. Find a natural transformation FUFF. Conclude that there is a natural transformation μ:UFUFUF. Prove that this is associative, in other words that the diagram
commutes. Prove that the unit of the adjunction forms a unit for this μ, in other words, that the diagram
commutes.