Most systems designers have met abstract data types, the specification-equivalent to ‘objects’ in object-oriented programming. Mathematically, an abstract data type is an algebra: a collection of constants and functions together with equations which determine how the functions work. There are algebras for sets, lists, trees, directed graphs, to name just a few of the building blocks of formal specification.

When we design a system, we compose these basic definitions to create more complex data structures (e.g. lists whose elements are trees). This is where category theory comes in. The objects in category theory are mathematical structures such as sets, lists, trees, vectors, real and complex spaces, etc. The operations of category theory are those which compose and project these spaces. So in a sense, we were building a category theory machine for universal algebra.

I was still studying undergraduate mathematics at the time, finishing my degree. I had a superficial understanding of the kind of thing category theory was, but it was impossible to penetrate to the underlying motivation. Category theory, which emerged from algebraic topology, abstracts from the deep properties of a number of apparently unrelated mathematical structures. Consequently a deep feel for a lot of mathematics is needed to understand what the theory is trying to achieve. The reward is the profundity of mathematical insight which then emerges.

Although I knew from reading the books by Woit and Smolin that category theory was at the heart of much of the reconceptualisation in physics today, it was not until I stumbled across “A History of n-Categorical Physics” by Baez and Lauda (cached here) that I got a sense of what that meant. The category theorists believe that their discipline is the right framework for structures that the theoretical physicists have been groping towards for decades.

Some interesting points from the paper.

When Heisenberg developed his famous ‘matrix mechanics’ version of quantum theory in 1925 he had never heard of matrices. It was his thesis advisor, Max Born, who had to gently break it to him that he had reinvented matrix multiplication.

The idea of elementary particles (electrons, photons, etc) comes out in the maths in an indirect way. Extending the Lorentz transformations of special relativity with translations (+ some extra QM magic) gives what is called the Poincaré group. The ‘strongly continuous unitary representations’ of this group with positive energy can be built up from

*irreducible representations*, with parameters interpreted as mass, spin etc. It turns out that these are the elementary particles. (I don't pretend to understand this!).

Current work in string theory and loop quantum gravity is investigating mathematical structures where categorical thinking is very influential. This is outlined in the latter part of the paper, where I am way, way out of my depth.

Doing things in a mathematically rigorous way gives a sense of security that you really know what you’re talking about. Physicists pride themselves on being rough and ready: if some complex series expansions is getting the right results, who cares whether it’s always convergent or whether the underlying theory is consistent (or even exists). They say that the mathematics of string theory is so complex that it takes years just to master it. Without yet more years studying the width and depths of pure mathematics, I don’t see how one could master category theory so as to wield it as a creative tool. No wonder Smolin complained that category theory was the hardest thing he had had to study.