[Math] What’s more general than category theory

big-picturecategory-theory

First there was arithmetic with numerical calculations (i.e., one unknown on one side of an equation). Then algebra with manipulations of variables (many unknowns anywhere in an equation). Then systems are studied that differ from ordinary arithmetic but share some of the same properties (equations where the unknowns represent all sorts of things – even functional equations) and then these properties are abstracted in abstract algebra and whole classes are studied such as groups and rings. Then category theory studies maps between structures (functorial equations), then n-category theory, then …

Where do we go now? Is category theory the end of the road for the foreseeable future?
Is the only way forward to go backwards and generalize in a different direction (like "generalized equations" of optimization or something)?

Best Answer

I don't really see a coherent logical progression in the branches of mathematics you're putting forward. Mathematics isn't just about abstraction and generalizing, making things more and more general. It's most often about solving particular problems. Category theory was born out of algebraic topology, in many ways as a notational convenience, to make sense of the tremendous and difficult-to-follow messes algebraic topologists were producing.

If you've ever programmed in a language like "C" you know the concept of a "macro". This is an idea that is re-usable in many different contexts. You plug in different objects and the macro continues to make sense. That's much of the point of category theory, as there are so many ideas that are duplicated over and over again in mathematics that it's confusing to give them special names. So we call these ideas by generic names that make sense in a wide-array of contexts, like "the co-product (or whatever) in the category C (name your category)", etc. It saves time and energy. Moreover, once you've reduced the "bulk" of your notation sufficiently, there is a phenomena where the concepts are lighter and easier to play with. So by using category theory you sometimes "lighten the load" a little, making other discoveries perhaps a little easier (if you're lucky).

In that regard what gets called "category theory" I think of as more of an attempt to find the natural language for certain types of ideas. The general idea being that certain types of problems become easy when using appropriate notation. Not all, but some. Some problems are just hard -- like the Poincare conjecture, or the Schoenflies problem, the classification of finite-simple groups, or existence and uniqueness of solutions to Navier-Stokes (and if you look at the work that's been done on these problems you will see almost no category theory at all, just a tiny little bit on the high-dimensional Poincare and Schoenflies problems). In programming category theory might be analogous to the study of data types, and how one structures memory efficiently.

Related Question