Where Do Ultraproducts Come From?
Posted by Tom Leinster
I move jobs tomorrow: from Glasgow to Edinburgh, city of James Clerk Maxwell, Arthur Conan Doyle, Robert Louis Stevenson and Dolly the Sheep. But before I go, I want to give you the fourth and final post on my new paper, Codensity and the ultrafilter monad.
It’s not like the first three. There, I explained some definite facts: what codensity monads are, and how they naturally throw up various interesting mathematical structures. But this post contains nothing new except speculation. Specifically, I’ll speculate that codensity monads naturally throw up the notion of ultraproduct — though at present, I can’t see how.
Introduction to ultraproducts
Before I speculate about the connection with codensity, I’ll explain what ultraproducts are. If you already know, skip to the next heading, near the end of the post.
Ultraproducts are probably most associated with logic, but the definition is, in fact, purely set-theoretic.
Let be a set, an ultrafilter on , and a family of sets. Since is a set of subsets of , it’s ordered by inclusion. There’s a functor defined on objects by , and on morphisms by projection. The ultraproduct
is the colimit of this functor.
Explicitly, an element of is an equivalence class of pairs where , , and the equivalence relation is defined by
Let’s agree to call a subset of large if it belongs to the ultrafilter , and small otherwise. Then an element of the ultraproduct is an equivalence class of families indexed over some large subset of , with two such families identified if they agree in a large number of coordinates.
(If all the sets are nonempty then there’s a slightly simpler explicit description, but that won’t be relevant here.)
Trivial example The only easy examples of ultrafilters are the principal ultrafilters. In that case, ultraproducts are really trivial: when is the principal ultrafilter on an element of , the ultraproduct is simply .
A few of us discussed ultraproducts in response to David’s post a few weeks ago. Moshe Kamensky expressed the opinion that in model theory, ultraproducts are mostly a technical tool, and one can find similar opinions expressed in the well-known book Model Theory by Wilfrid Hodges. On the other hand, the equally well-known book Model Theory by Chang and Keisler devotes one entire chapter out of seven to ultraproducts.
So, I don’t know whether there’s a consensus among model theorists as to the importance of ultraproducts. But I’ll try to explain what I understand to be their importance, using a bit of categorical language.
As the definition above shows, ultraproducts are constructed using two kinds of (co)limit in : products, and colimits over . This latter category is filtered, because is a filter. So, ultraproducts are constructed out of products and filtered colimits. It follows that the functor
preserves finite limits.
Actually, everything so far is true if is a mere filter, not necessarily an ultrafilter. (I know I haven’t defined filters, only ultrafilters. If you don’t know what filters are, it doesn’t really matter — all you need to know is that they’re more general than ultrafilters.) Now using the fact that is an ultrafilter, we can show that the functor
also preserves finite coproducts. It has other exactness properties too (e.g. it preserves image factorizations), but I think they all follow quite easily from the fact that it preserves finite limits and finite coproducts.
I’ll now explain the kind of thing that ultraproducts can do, by means of an extended example.
Extended example This is all about fields. Fix an ultrafilter on a set . As noted above, this determines a functor , which preserves, among other things, finite products. Since the theory of (commutative) rings is a finite product theory, there’s an induced functor
If is a family of rings then the ring structure on the set is the obvious, pointwise, structure.
This in turn restricts to a functor
Why? There’s probably a nice abstract argument, but — mainly for the sake of practising with the definition — here’s an explicit one. (Skip this paragraph if you’re not in the mood for details.) The claim is that if is an -indexed family of fields then the ring is also a field. So, take a nonzero element of . Such an element is the equivalence class of some family where and is large. Since it’s nonzero, a large number of the elements are nonzero and therefore invertible. Their inverses then determine an element of , and it’s easy to show that it’s the inverse of our original element. That does it.
We’ve just shown that ultraproducts have a nice preservation property that ordinary products don’t. The product of fields is most definitely not a field!
Next, let’s think about the characteristics of the fields involved. I won’t prove a systematic result on the characteristic of the ultraproduct in terms of the characteristics of the individual fields ; I’ll just do a single example.
Suppose that , and that the fields have respective characteristics — so we’ve got one field of each prime characteristic.
Also assume that our ultrafilter on is nonprincipal. This means that every singleton is small. But in an ultrafilter, a finite union of small sets is always small, so it’s equivalent to say that every finite subset of is small.
Now, what’s the characteristic of the field ?
Well, the multiplicative unit of is
where and the square brackets mean equivalence class. So, when is a positive integer, the element “” of is
where the th term is an element of . On the other hand, the zero of is
So in if and only if in a large number of the fields , , , …. But that’s never the case: if in then the th prime divides , so there are only finitely many such , and finite subsets of are small.
So, has characteristic zero.
Here’s a dramatic way to think about it. Imagine, implausibly, that we know no examples of fields of characteristic zero. Maybe the only fields we know are those of the form for prime . Then the ultraproduct construction automatically provides us with an example — in fact, many examples — of a field of characteristic zero.
That’s the end of the extended example. Those who know about these things will have recognized, barely concealed beneath its surface, two important theorems:
- Łoś’s theorem, also known as the fundamental theorem of ultraproducts. If each of the sets is a structure (of a given signature) in the sense of model theory, then so too is , in a natural way. (For example, if each of the sets is a ring then so is .) Łoś’s theorem states that a first-order statement is true in if and only if it is true in a large number of the structures .
- The compactness theorem, which states that if is a set of first-order statements and each finite subset of has a model, then itself has a model. For example, let be the set of axioms for a field. Just knowing about the fields tells us that each finite subset of has a model. Using ultraproducts, we constructed from these fields of positive characteristic a field of characteristic zero. That’s hardly an impressive achievement, but it points to a general fact: the compactness theorem can easily be proved by following the same pattern, using ultraproducts. And the compactness theorem can be used to prove much more startling results than the trivial one about characteristic zero: see Wikipedia, for instance.
Speculation on ultraproducts and codensity
Suppose, once more, that we have an ultrafilter on a set .
Back here, I described integration against an ultrafilter. Integration against defines, for each finite set , a function
It’s natural in , meaning that given any map of finite sets, the evident square commutes.
Just now, I reviewed the definition of ultraproduct with respect to an ultrafilter. I only described ultraproducts of families of sets, but the definition works just as well when is replaced by any other category with products and filtered colimits. Taking ultraproducts with respect to defines, for each such category , a functor
It’s natural in , meaning that given any functor preserving products and filtered colimits, the evident square commutes up to canonical isomorphism.
This suggests that the process of taking ultraproducts is a categorification of the process of integrating against an ultrafilter. Can we make that precise? I don’t know.
Ordered sets sometimes provide a stepping stone between sets (0-categories) and categories (1-categories). Let be a finite lattice. As a set, is finite, and as a category, has products and filtered colimits. It’s easy to see that the processes of integration and ultraproduct coincide in : whenever is a family of elements of ,
That’s encouraging.
Back here, we saw that ultrafilters on not only give rise to, but actually correspond one-to-one with, natural families of functions
In other language, this says that the ultrafilter monad is the codensity monad of the inclusion functor .
Are there similar statements for ultraproducts? That is, do ultrafilters on not only give rise to, but actually correspond one-to-one with, natural families of maps
indexed over ‘nice’ categories ? And can we rephrase this correspondence as a neat assertion about a codensity monad? Again, I don’t know.
It’s not obvious to me how to see this idea through. Among other things, the question arises of distinguishing between ultrafilters and general filters, which suggests that something’s wrong. Perhaps I haven’t got the right level of generality. But given the close formal resemblance between ultraproducts and integration against an ultrafilter, it’s hard to resist speculating. I hope someone will be able to see a clear path through.
Re: Where Do Ultraproducts Come From?
I’m not sure how this ties into the codensity monad story, but the following observation about the connection between filters and functors may be helpful.
A functor induced by a filter has the fibration-like property that every map has a lifting . This weak lifting property requires the axiom of choice and there may be no terminal lifting, so the functor is not always actually a fibration.
Every left exact functor induces a filter: the filter of subterminal that are mapped to the terminal object. If a left exact functor has the weak lifting property, it is isomorphic to the left exact functor induced by its filter.