Introduction to Category Theory/Products and Coproducts

Product edit

One of the features of category theory is how it unifies very disparate phenomena. The product construction comprises for example both the cartesian product of sets, and the greatest lower bound (meet) of posets and lattices. Here's a definition:

Definition edit

 
Universal property of product.

The product of objects A and B is an object P together with the morphisms   and   that satisfy the following universal property:

  • If   is any object in the category, and   and   are any morphisms, then there exists a unique morphism   such that   and  . In other words there is one and only one morphism g such that both triangles in the diagram commute.

The universal property has two parts:

  1. There exists a morphism g.
  2. The morphism g is unique.

The object P alone isn't a product. The product consists of the object P and two morphisms   and  . Often these morphisms are clear from the context, and we simply say let   be the product of A and B without specifying the morphisms.

 
Category without the product AxB.

Not every category has products for all pairs of objects (i.e. 'has all products'). For example in the category with 3 objects and 2 arrows (+identity arrows) shown at right, the product of A and C is the object A together with morphisms   and  . But this category has no product   (why?).

The following proposition allows us to speak of the product of A and B.

Proposition. The product of any two objects is unique up to isomorphism.

Proof. If   and   are both products of   and  , then by the first part of universal property there are morphisms   and   such that

  and  

Therefore

 

and by the uniqueness part of the universal property of X, we must have  . By similar argument   by the universal property of P. Thus g and h are inverses of each other, and P and X are isomorphic.  

Here is an alternative definition, where we leverage our earlier work on terminal objects, and define the product as a terminal object in a spinoff category. If you compare the two closely, you'll see that they're really not very different at all, just different packaging of the same ideas.

We say that a category 'has products' when there is a product for every pair of objects in the category. It is possible for a category to have products for some but not all pairs of objects. We say that a category has 'designated products' when there is some specific technique for manufacturing the product from the objects of the pair. Cartesian products of sets, discussed in the examples section below, provide an example of designated products.

Examples edit

Proposition. The cartesian product of non-empty sets is a product in the category of sets.

Proof. Let A and B be any non-empty sets,   their cartesian product set, and   the canonical coordinate projection maps. We must prove that   satisfies the universal property of product.

Let X be any set and let   and   be any functions. We construct the function   by setting   for every element x in X. This satisfies the first part of universal property:

  and
 .

We must prove that if   is another function with   and  , then g=h. Let x be any element in X, then h(x) is an element (a,b) in AxB, for some a in A and b in B. An easy computation shows

  and
 .

Therefore   for every x in X, and h=g is the unique function required by the second part of universal property.  

Note that the proposition remains true if we consider empty sets. The product   is  . Exercise: Check that the universal property holds - there are not very many sets with a map   to the empty set.

More on this example below

Proposition. Intersection of subsets is a product in the powerset poset.

Proof. Let X be any set, and let A and B be any subsets of X. We must prove that the intersection   has the universal property.

Let C be any subset of X such that there are arrows   and  . By the definition of powerset poset, there's an arrow from C to A if and only if C is a subset of A, in other words if every element of C is an element of A. So every element of C is an element of both A and B. The definition of intersection says that an element x belongs to the intersection   if and only if x belongs to both A and B. Thus C is a subset of   and there is an arrow  . Uniqueness and composition property follow from the fact that in any poset there is at most one arrow between any two objects.  

Proposition. Least common multiple lcm() is a product in the divisibility poset of positive integers.

Proof. Let a and b be positive integers. We must prove that the least common multiple of a and b, denoted lcm(a,b), has the universal property.

Let c be any positive integer divisible by both a and b. There are integers q and r (quotient and remainder), such that   with   and  . (Why is q positive and not zero?) Since c and lcm(a,b) are both divisible by a and b, also r must be divisible by them. But r is smaller than lcm(a,b), so r must be zero or otherwise lcm isn't the least common multiple. Thus c = q*lcm(a,b) and c is divisible by lcm(a,b). By the definition of poset there is at most one arrow between any two objects, so the uniqueness part is trivial.  

Proposition. Greatest lower bound in a poset, when it exists for two elements, is a (actually the unique, not just up to isomorphism) product of those two elements. This provides lots of examples where products might exist for some, all, or no pairs of elements in a category,

Proof. Exercise.

Products and Elements edit

The unique map   above, from   to  , is often notated as  , using the standard ordered pair notation from set-theory. This is motivated by the special case in the category   where  . In this case,   and   will be categorical 'elements', and effectively the same thing as set-theoretical elements, since a function from a one-element set picks out a unique element from its codomain. Now   will be a categorical element of  , that is, essentially the same thing as a set-theoretical element of  , that is, an ordered pair whose first member is from   and second from  .

This point is often dramatized by using variable letters such as   when discussing categorical elements.

Something we get from the categorical formulation of cartesian products and ordered pairs is explicit recognition of the fact that it doesn't matter what actual construction we use to produce the ordered pairs - all that matters is the existence of the projections and the universal property, which can be seen as saying that the ordered pair must contain just enough information for the projections to extract the first components, and no more.

You can see an interactive demonstration of universality here. Clicking the "generate a product and demonstrate its universality" button will generate a product in the category of finite sets. It will also generate another object, and show the universal arrow from this to the product.

This demonstration also shows that it doesn't matter what construction we use to produce the product. Clicking the "generate a product to show that many products exist" button will generate a product that is not a set of ordered pairs, and will show its projections.

Alternative Definition edit

Here is an alternative definition of product, which procedes by way of a spinoff category. If it seems too hard to understand, feel free to ignore it (comments about whether it is useful would be welcome).

For any pair of objects  , define the 'product-maker' category   as follows:

  • the objects of   are triples of the form   where   and  
  • the arrows of   are the arrows   of   such that:
    •  
    •  

If you draw the commutative diagram for these equations, you'll see that, except for some of the names, it looks just like the diagram for the product, and the reason for this will become evident shortly, if you haven't seen it already. But first, you might want to work throught the details of why the product-maker for   is a category (or maybe not, if the point seems obvious enough).

And so, the point of all this is the following:   is the/a terminal object of  .

A benefit of defining products in this way is that we don't have to bother to prove that they are unique up to isomorphism, since this is already known as a property of terminal objects. On the other hand we had to prove that the product-maker is a category.

You can see an interactive demonstration of terminality here. Clicking the "Terminality" button will generate a product object in the category of finite sets, and another object in the product-maker category, and show the arrow from that to the product.

Associativity of Product edit

Proposition. Product is associative, in other words if A, B, and C are objects in a category with products, then  . Technically, this is a 'weak' rather than 'strict' form of associativity, since we require only isomorphism, not full identity. In category theory, the weak versions of notions such as associativity are usually more important that the strict ones (although these are not always irrelevant).

Proof. The following diagram shows products and their projection morphisms. We will prove that there exist morphisms g and i that are inverses of each other.

 
3-product diagram.

By the universal property of the product of B and C there exists morphism f such that

 

By the universal property of the product of A and BxC there exists morphism g such that

 

Similarly there exists morphisms h and i such that

 
 

A straightforward calculation shows

 

By the uniqueness part of the universal property of BxC it follows that  .

 

and by the universal property of Ax(BxC) we conclude that  . Similarly reader can verify that  .

Corollary 1. Cartesian product of sets is associative, that is if A, B, and C are sets, then  .

Proof. We have showed that cartesian product of sets is product in the category of sets, thus claim follows by abstract nonsense.

Corollary 2. Intersection of subsets is associative, that is if A, B, and C are subsets of some set X, then  .

Proof. We have showed that intersection of subsets is product in the powerset poset, and we also know that only isomorphisms in a poset are identity morphisms, thus claim follows by abstract nonsense. (But this associativity is strict rather than weak, which our present level of abstract nonsense, at least, does not suffice to prove).

Corollary 3. Least common multiple is associative, that is if a, b, and c are positive integers, then lcm(lcm(a,b), c) = lcm(a, lcm(b,c)). (strictly or weakly?)

Proof. We have showed that least common multiple is product in the divisibility poset, thus claim follows by abstract nonsense.

Remark. A preorder is a poset without the antisymmetry property. We can define a divisibility preorder that also has negative numbers. In this case n is divisible by -n for every integer n. It follows that n is isomorphic to -n, and product in preorder is associative up to isomorphism, in other words lcm(lcm(a,b), c) = ± lcm(a, lcm(b,c)).

Corollary 4. In a poset, products are strictly associative.

Proof. Exercise

Ternary and n-ary Products edit

What we did for pairs of objects can be carried through for triples, n-tuples or even 0-tuples. Suppose we have objects  , along with an object   and arrows   from   to  , respectively.   constitutes a ternary product of   iff, for any object   and arrows   from   to  , respectively, there is a unique arrow  such that   for   [DIAGRAM TO COME]

We can do likewise for any  , although the result, when written out, is one of those things that is harder to read than to compose for yourself, so is relegated to the Hints and Details section. What about the case where  , 'unary products'? If you write out the appropriate diagram (try to do this before looking), you can see that any object   will serve as its own unary product, with the identity morphism   as the projection. So unlike the other cases, unary products exist for all objects in any category.

So, finally, what if  ? You might think about this and see what you come up with before reading on.

By a natural extension of the preceeding definitions, a 0-ary product in a category   will be some object   of   such that for any object   of  , there will be a unique arrow   (no involved objects, therefore no projections, and no composition of   with any projections). This is just a terminal object of  

We are not aware of any notion of n-ary product for negative n.

Finite Products edit

If a category has products for all non-negative integers n, we say that it has finite products. Happily, when true, this is relatively easy to prove, because all we have to do is show that the category has terminal objects and binary products: as noted above, a terminal object is a 0-ary product, and all categories have unary products (for each object). And n-ary products for   can be obtained by iterating binary products. For example,  , with the associated projections, is a fine trinary product of  ,   and  . To formulate and prove this in generality is conceptually easy, but involves a fairly high level of notational masochism, which we won't indulge in.

A category with finite products is called a cartesian category, and by now you should be able to appreciate this essay

Coproduct edit

Any categorical notion has a 'dual', obtained by reversing the direction of the relevant arrows. If we do this with the product, we get the co-product, defined ab initio as follows:

Definition edit

[DIAGRAM TO COME] Object   and morpisms  ,   are the/a co-product of   and   iff, for any object   and arrows  , there is a unique arrow   such that:

  •  
  •  

The coproduct object is usually written  , and the unique induced arrow   as  . The arrows   to the coproduct object are called injections.

You can see an example of a coproduct and its injections in this interactive demonstration. Clicking the "generate a coproduct and demonstrate its universality" will generate an example of a coproduct, with its injections.

Just as the product can be defined as a terminal object in a spinoff category, so can the co-product be defined as an initial object in such a category.

The relevant spinoff category, which I'll notate as   has as objects triples of the form  , where  . And, for arrows, the arrows of   are those arrows   of   such that   for  . Now   is the/a initial object in this category.

Consequences edit

It follows from the above that a co-product is a product in the opposite category, which delivers many results with no additional work, such as:

  • co-products are unique up to isomorphism
  • co-products are associative up to isomorphism
  • if there are binary co-products for all pairs of objects, there are n-ary co-products for all  

N-ary coproducts are denoted either   or  .

What about 0-ary co-products? Clearly, to maintain duality, we need to define the 0-ary co-product as an initial object, and eveything then works out.

Examples edit

  • In a poset, a co-product is a least upper bound
  • A bounded lattice is a poset with finite products.
  • In the category of sets, the coproduct is the disjoint union, formed from two sets by processing the members of each differently, so that the results can't overlap, and then taking the ordinary union. This coproduct is meaty enough to get more discussion below, and can be seen as the motivation for the use of the   notation for co-products (which are, unsurprisingly, also sometimes called sums).

Disjoint Unions edit

Suppose we have two sets   and  , and we wish to form a coproduct of these. We can't just take their union, with the mappings   from   to   and   to   because they might have some elements in common, which would make it possible to come up with functions   and   such that there can't be any   meeting the conditions for a co-product (Hint). But since we're doing category theory, where we usually regard isomorphic objects as equivalent, we can in this case just grab two sets   and   which don't overlap, and are isomorphic to   and  , respectively. Their union  , will now provide a coproduct for   and  .

Exercises:

  • what are the injections for the coproduct we've just made
  • show that if we added some additional elements to  , we'd no longer satisfy the conditions for a coproduct,

Now to demonstrate the   indeed has coproducts, we need to show that it is always possible to do this, which is typically done by a construction that maps the members of   and   into ordered pairs with different first members, such as 0 and 1, respectively. So, formally, we might have:

  •  
  •  
  •  
  •  

Thanks to the role of isomorphism in category theory, we don't care whether we actually use this or any other systematic method for producing disjoint unions; this construction simply shows that there's always one to be found (proving that it works would be a drill in basic set theory).

And of course the motivation for the use of   to represent co-products is that for finite sets, if   has   members and    , then   has   members.

All this might be taken as pointing to one of the major basic failures of the 'new math' in the mid-to-late 20th century. I (AA) recall being told in perhaps third grade about sets and how they were the basis for everything, but they didn't seem to be able to do a decent job of explaining addition, due to the problem of what if the two sets being added overlapped? Third graders are, I believe, not generally capable of understanding disjoint unions, co-products, and the benefits of regarding isomorphic objects as identical (and I'd have my doubts about the teachers), so for people at that level, trying to present sets as the basis for everything is just a distraction from actually learning anything about numbers.

Exercise: In  , what is  ? (naturally, it's called  , but what is it?)

Cartesian Categories and Deduction edit

An elementary but somewhat extended example of products (and coproducts) is logical conjunction (and) and disjunction (or). We develop this example in stages. It's a more relaxed presentation of material from Lambek & Scott (1986) Introduction to Categorical Logic Cambridge University Press.

[STILL IN NEED OF SOME CRACKFILLING, ETC]

Proofs as Morphisms edit

A basic idea of logic is that of logical consequence, whereby we have a conviction that, if we accept some proposition  , we should also accept some proposition  . For example, if we accept Bert is happy and Grover is sad, we should also accept Bert is happy. Logic gets going when we can begin to individuate these convictions into distinct patterns of argument, and give them names, so that solid arguments that will survive extensive criticism can be systematically identified and distinguished from delusions. The pattern of argument we just called for can be called 'case 1 of conjunction elimination', and basically says that if we accept a proposition of the form   and  , we should also accept one of the form  . Aside from the details of what basic patterns of argument there are, two rather plausible logical principles are:

  • given  , we can conclude   (for every proposition  , there is an identity deduction   of that proposition from that proposition)
  • if there is a deduction   of   from  , and   of   from  , then there is a deduction   of   from   (transitivity of deduction)

This is getting close to constituting a category, where the propositions are the objects and the deductions the arrows, but to go all the way, we need to impose some equivalences, in particular those for the identities, and associativity. Let   mean that we have a deduction (proof) of   from  . Then we require:

  •  
  •  

which are just the basic equations of category theory.

If we consider the deductions to be actual arrangements of marks on a medium such as paper or a chalkboard, this equivalences might hold 'automatically' (for example by pieces of deductions being combined without parentheses or other delimiters), or by conventions to the effect that certain combinations of symbols are deemed identical. Be this as it may, Lambek and Scott (1986) call a system with composition and identities a 'deductive system', which will be a category if the equations above are obeyed.

Conjunction as Products edit

Logic doesn't get very far without connectives, that is, means for combining propositions and perhaps ingredients of propositions to make more propositions. One of the more basic connectives is 'and', which, in terms of deductions, intuitively obeys these three rules (among others):

  • if we accept   and  , we feel compelled to accept  .
  • if we accept   and  , we feel compelled to accept  .
  • if we feel compelled to accept   on the basis of  , and   on the basis of  , then we feel compelled to accept   and   on the basis of  .

We can formalized these intuitions as part of a deductive system by introducing a connective   for propositions, and assuming the following principles for constructing deductions:

  • For propositions  , there exist the following two deductions:
    •   (the first projection/case of conjunction elimination).
    •   (the second projection/case of conjunction elimination).
  • If there are deductions   and  , then there is a deduction  .

These deductions can exist independently of whether or not the identity and associative equations hold; we'll call a deductive system where they exist a 'conjunction system' (almost a conjunction calculus in the sense of Lambek and Scott, but this latter notion requires some more ingredients).

So you can perhaps perceive the looming idea that if the deductive system is a category, conjunction and the projections might constitute a product. But for this to be the case, some equations will have to hold. These are:

For all  ,  ,  :

  •   (ProjEq1).
  •   (ProjEq2).
  •   (PairEq).

In the first two equations I've included the subscripts to the projections, while in the last, I've left them out; you should be able to write them in on the basis of the environment.

These equations are sufficient for   to constitute a product.

Proof: Suppose we have a conjunction system such that the above equations hold, and we have some   such that there are deductions   and  . We need to show that there is a unique deduction   such that   and  ; we'll call these two equations the 'factoring requirements', the other requirement on   being the uniqueness requirement.

Now by the rules for a conjunction system, we have  , and from the equations ProjEq1 and ProjEq2, it follows that   satisfies the factoring requirements for  . Now suppose we also have   that satisfies the factoring requirements. Then we have:

  •  

which proves uniqueness.  

Exercise: Prove that 'conjunction is commutative', in the sense that in a conjunction system, there is a deduction of   from  .

Exercises edit

  1. Explain following diagram and prove that  . 
  2. Prove that  .
  3. Prove that gcd(lcm(a,b), lcm(a,c)) is divisible by lcm(a, gcd(b,c)) for any positive integers a,b,c.
  4. Let   be objects in category   with all finite products. Prove by induction that   is isomorphic to   for all positive integers n.
     
    Hint: Set   and  .
    • Prove that  .
    • Assume you have proved  , and prove that  .

Hints and Details edit

formulation of n-ary product edit

for  : An n-ary product of   is an object   and arrows   from   to  , respectively, such that for any object   and arrows   from   to  , respectively, there is a unique arrow   such that  , for  .

unary product diagram edit

[TO COME]

union problem edit

Let  and   return different values for some member of  .

Related resources edit