Drying categories

Status: Done
Confidence: Very likely

Math in this page not rendering? See the fix

Category theory is rife with commutative diagrams, such as the "naturality square",

F(x)QxG(x)F(f)G(f)F(y)QyG(y)\begin{matrix}F(x) &\overset{Q_x}{\rightarrow}&G(x)\\\downarrow^{F(f)}&&\downarrow^{G(f)}\\F(y)&\overset{Q_y}{\rightarrow}&G(y)\end{matrix}

These diagarams make me vaguely uncomfortable. I don’t know what to do with them. I asked myself how to make them look like simple things such as commutative (ab=baa\cdot b = b\cdot a) or associative (a(bc)=(ab)ca \cdot (b \cdot c) = (a \cdot b) \cdot c) laws; about which John Baez commented, "Alas, 1-dimensional representations of commutative diagrams are sort of like dried roses…" So here is my recipe for drying commutative diagrams:

First, I give function application and composition its own symbol. E.W. Dijkstra used “..”, but I’m going to generate an infinite stack of such symbols in a moment, so we’ll call it “.1\overset{1}{.}”. I’m vaguely distressed by using the same symbol for composing morphisms and applying them to objects, but consideration of the type of its arguments makes it unambiguous. Diagram (1) above is "composition is associative" for morphisms f,gf, g acting on object xx.

(f.1g).1x=f.1(g.1x)(f\, \overset{1}{.}\, g)\; \overset{1}{.}\; x = f\; \overset{1}{.}\; (g\, \overset{1}{.}\, x)

Along with existence of identity morphisms, that defines a category. Applying a functor FF to either object or morphism gets the symbol “.2\overset{2}{.}”. A functor FF is defined by

F.2(f.1x)=(F.2f).1(F2.x)F\; \overset{2}{.}\; (f\, \overset{1}{.}\, x) = (F\, \overset{2}{.}\, f)\; \overset{1}{.}\; (F\, \overset{2}\,{.} x)

The requirement of mapping identities to identities follows from this with ff set to an identity element. Functors preserve associativity of functions (proof: apply the equation above to everything in sight in F.2(f.1g.1x)F\; \overset{2}{.}\; (f\, \overset{1}{.}\, g\, \overset{1}{.}\, x)) and identity morphisms (proof: (F.2id).1(F.2x)=F.2(id.1x)=F.2x(F\, \overset{2}{.}\, id) \; \overset{1}{.} \; (F\, \overset{2}{.}\, x) = F \;\overset{2}{.} \; (id\, \overset{1}{.}\, x) = F\, \overset{2}{.}\, x).

Natural transformations are maps between functors, and I write “.3\overset{3}{.}” for applying them. It’s convenient to say that “.n\overset{n}{.}” has a higher precedence than “.m\overset{m}{.}” when n>mn>m. A natural transformation QQ obeys

Q.3(F.2k)=Q.3F.2kQ\; \overset{3}{.} (F\, \overset{2}{.}\, k) = Q\, \overset{3}{.}\, F\: \overset{2}{.} \: k

where kk is object or morphism. This reproduces the naturality square (proof: apply QQ to F.2(f.1x)F\; \overset{2}{.}\; (f\, \overset{1}{.}\, x)).

I can continue and define

H.4(Q.3F)=H.3Q.2FH\; \overset{4}{.} (Q\, \overset{3}{.}\, F) = H\, \overset{3}{.}\, Q\: \overset{2}{.} \: F
Z.5(H.4Q)=Z.5H.4QZ\; \overset{5}{.} (H\, \overset{4}{.}\, Q) = Z\, \overset{5}{.}\, H\: \overset{4}{.} \: Q

and onwards. At any stage, the algebra continues to look like functors and natural transformations, though on more and more involved categories.