Feeds:
Posts

## New page on reading recommendations

I’ve added a new page of reading recommendations, mostly for undergraduates, to the top. The emphasis is intended to be on well-written and accessible books. Comments and suggestions welcome.

## The p-group fixed point theorem

The goal of this post is to collect a list of applications of the following theorem, which is perhaps the simplest example of a fixed point theorem.

Theorem: Let $G$ be a finite $p$-group acting on a finite set $X$. Let $X^G$ denote the subset of $X$ consisting of those elements fixed by $G$. Then $|X^G| \equiv |X| \bmod p$; in particular, if $p \nmid |X|$ then $G$ has a fixed point.

Although this theorem is an elementary exercise, it has a surprising number of fundamental corollaries.

## Cantor’s theorem, the prisoner’s dilemma, and the halting problem

Cantor’s theorem is somewhat infamous as a mathematical result that many non-mathematicians have a hard time believing. Trying to disprove Cantor’s theorem is a popular hobby among students and cranks; even Eliezer Yudkowsky1993 fell into this trap once. I think part of the reason is that the standard proof is not very transparent, and consequently is hard to absorb on a gut level.

The goal of this post is to present a rephrasing of the statement and proof of Cantor’s theorem so that it is no longer about sets, but about a particular kind of game related to the prisoner’s dilemma. Rather than showing that there are no surjections $X \to 2^X$, we will show that a particular kind of player in this game can’t exist. This rephrasing may make the proof more transparent and easier to absorb, although it will take some background material about the prisoner’s dilemma to motivate. As a bonus, we will almost by accident run into a proof of the undecidability of the halting problem.

## Operations, pro-objects, and Grothendieck’s Galois theory

Previously we looked at several examples of $n$-ary operations on concrete categories $(C, U)$. In every example except two, $U$ was a representable functor and $C$ had finite coproducts, which made determining the $n$-ary operations straightforward using the Yoneda lemma. The two examples where $U$ was not representable were commutative Banach algebras and commutative C*-algebras, and it is possible to construct many others. Without representability we can’t apply the Yoneda lemma, so it’s unclear how to determine the operations in these cases.

However, for both commutative Banach algebras and commutative C*-algebras, and in many other cases, there is a sense in which a sequence of objects approximates what the representing object of $U$ “ought” to be, except that it does not quite exist in the category $C$ itself. These objects will turn out to define a pro-object in $C$, and when $U$ is pro-representable in the sense that it’s described by a pro-object, we’ll attempt to describe $n$-ary operations $U^n \to U$ in terms of the pro-representing object.

The machinery developed here is relevant to understanding Grothendieck’s version of Galois theory, which among other things leads to the notion of étale fundamental group; we will briefly discuss this.

Previously we described $n$-ary operations on (the underlying sets of the objects of) a concrete category $(C, U)$, which we defined as the natural transformations $U^n \to U$.

Puzzle: What are the $n$-ary operations on finite groups?

Note that $U$ is not representable here. The next post will answer this question, but for those who don’t already know the answer it should make a nice puzzle.

## Operations and Lawvere theories

Groups are in particular sets equipped with two operations: a binary operation (the group operation) $(x_1, x_2) \mapsto x_1 x_2$ and a unary operation (inverse) $x_1 \mapsto x_1^{-1}$. Using these two operations, we can build up many other operations, such as the ternary operation $(x_1, x_2, x_3) \mapsto x_1^2 x_2^{-1} x_3 x_1$, and the axioms governing groups become rules for deciding when two expressions describe the same operation (see, for example, this previous post).

When we think of groups as objects of the category $\text{Grp}$, where do these operations go? They’re certainly not morphisms in the corresponding categories: instead, the morphisms are supposed to preserve these operations. But can we recover the operations themselves?

It turns out that the answer is yes. The rest of this post will describe a general categorical definition of $n$-ary operation and meander through some interesting examples. After discussing the general notion of a Lawvere theory, we will then prove a reconstruction theorem and then make a few additional comments.

## The type system of mathematics

Occasionally I see mathematical questions that seem “grammatically incorrect” in some sense.

Example. “Is $[0, 1]$ open or closed?”
Example. “Is $\{ 1, 2, 3 \}$ a group?”
Example. “What’s the Fourier series of $\sin x + \sin \pi x$?”

Here are some sillier examples.

Example. “Is a rectangle prime?”
Example. “Is $17 \in 3$?”
Example. “What’s the Fourier series of the empty set?”

What all of these examples have in common is that they are type errors: they are attempts to apply some mathematical process to a kind of mathematical object it was never intended to take as input. If you tried to write a program in some highly mathematical programming language to answer these questions, it (hopefully!) wouldn’t compile.

Mathematical objects are usually not explicitly thought of as having types in the same way that objects in a programming language with a type system has types. Ordinary mathematics is supposed to be formalizable within Zermelo-Fraenkel (ZF) set theory, possibly with the axiom of choice, and in ZF every mathematical object is constructed as a set. In that sense they all have the same type. (In particular, the question “is $17 \in 3$?” is perfectly meaningful in ZF! This is one reason not to like ZF as a foundation of mathematics.) However, I think that in practice mathematical objects are implicitly thought of as having types, and that this is a mental habit mathematicians pick up but don’t often talk about.

Instead of thinking in terms of set theory, thinking of mathematical objects as having types allows us to import various useful concepts into mathematics, such as the notions of type safety, typecasting, subtyping, and overloading, that help us make more precise what we mean by a mathematical sentence being “grammatically incorrect.” The rest of this post will be a leisurely discussion of these and other type-based concepts as applied to mathematics in general. There are various categorical ideas here, but for the sake of accessibility we will restrict them to parenthetical remarks.