My neighbor has a circular driveway…he can’t get out.
-Steven Wright
Welcome to the third installment in our miniseries about circularity. In the first, we looked broadly at circular definitions, both in everyday language and in mathematics. In the second, we tackled the surprisingly difficult task of establishing a non-circular definition for the simple-seeming notion of “finite set”. Today, we’re going to continue our discussion of finite sets, introducing a useful definition that at first glance appears circular but upon further analysis turns out to be on surprisingly solid foundations. (The contents of the previous posts are not at all necessary for understanding this one, so don’t worry of you’ve forgotton (or never read…) them.)
Let’s take a look at a few fine examples of finite sets. The empty set, , is of course a finite set. The set is finite, as it contains 4 elements (the single-digit prime numbers). And the set is finite, containing only 2 elements (the set of natural numbers and the set of real numbers). And while all three of these are certainly finite sets, two of them seem more truly finite than the other. The empty set is obviously finite through and through, as is the set , since it only has finitely many elements and each of those elements is simply a finite number. It feels a bit like cheating, on the other hand, to call a finite set. It technically qualifies, having only two elements, but those elements are themselves infinite sets (one is even uncountable!). We’ve somehow snuck infinity into a finite set.
With this in mind, we might want to introduce a strengthening of the notion of “finite set” to rule out sets like , which satisfy the letter but not the spirit of the law. Maybe we’ll call this strengthening truly finite. What should the definition of “truly finite” be? With our example in mind, we might try something like the following.
Attempted Definition 1: A set is truly finite if it satisfies the following two properties:
- is finite.
- All of the elements of are finite.
This definition certainly rules out our set . But what about a set like ? This set is finite, having two elements ( and ). And each of its elements is finite, having only one element ( and , respectively). So satisfies our attempted definition of “truly finite”. But of course we don’t actually want it to be truly finite, for the same reason that we don’t want to be truly finite: the infinite sets and are inside it in an essential way. We should therefore revise our definition. If we do this just to take care of the two examples we’ve encountered so far, we might propose:
Attempted Definition 2: A set is truly finite if it satisfies the following three properties:
- is finite.
- All of the elements of are finite.
- All of the elements of all of the elements of are finite.
Ok, but this was silly. We already knew that this definition wasn’t going to work for us, as something like satisfies this definition but again should not be considered to be truly finite. We want to somehow catch our tail and say that a set is truly finite if, no matter how many layers deep you go into the set, you never reach an infinite set. Something like:
Attempted Definition 3: A set is truly finite if it satisfies the following properties:
- is finite.
- All of the elements of are finite.
- All of the elements of all of the elements of are finite.
- And so on…
This definition is at least beginning to express the idea we’re grasping at, and we’re not going to be able to find any clear examples of sets that satisfy this definition and yet obviously should not be considered to be truly finite. We’re trying to write a precise mathematical definition, though, and the phrase “And so on…” is much too vague to be an acceptable part of our final definition.
We need to find a clear, concise way to make the intuition behind Attempted Definition 3 precise. It turns out there is a quite elegant solution. It also turns out that this is a fundamental notion in set theory and already has a name that is different from “truly finite”, so we’ll switch over now to its actual name: “hereditarily finite”.
(Actual!) Definition: A set is hereditarily finite if it satisfies the following two properties:
- is finite.
- All of the elements of are hereditarily finite.
“Whoa, hold on a minute,” I can hear you saying. “This must be a joke. We’re in the third installment of a series on circular definitions, and you’re trying to pass of this clearly circular definition as an ‘actual’ mathematical definition? Nice try, but I’m not fooled.”
And I’ll admit that it does look as if we’re defining the term “hereditarily finite” in terms of … “hereditarily finite.” But this is in fact a perfectly fine definition, for reasons that those of you familiar with recursion in computer programming may already begin to see.
Let’s start with a small step and ask ourselves the simple question, “Are there any sets at all that we can unambiguously say are hereditarily finite according to the above definition?” Perhaps surprisingly, there are! Take a moment to try to think of one before reading on.
To find a set that is definitely hereditarily finite, let’s return to that most finite of all finite sets: the empty set. The empty set is clearly finite, so it satisfies Property 1 of our definition. What about Property 2? Well, the empty set doesn’t have any elements, so it’s vacuously true that all of its elements are hereditarily finite. (Indeed, any statement asserting something about all of the elements of the empty set is vacuously true. All of the elements of the empty set are the emperor of France. All of the elements of the empty set can make a rock so heavy that they can’t lift it.) The empty set therefore satisfies both properties of our definition, so the empty set is hereditarily finite!
Now that we know this, we can start building a veritable menagerie of hereditarily finite sets. Consider the set . It has one element, so it is finite. Moreover, we now know that its one element, the empty set, is hereditarily finite. Therefore, satisfies both properties in our definition, so it is hereditarily finite, too. What about ? It has two elements, so it is finite. Moreover, we have already seen that both of its elements, and , are hereditarily finite. Therefore, is hereditarily finite. We could keep going, generating any number of exotic hereditarily finite sets, like or or . Our apparently circular definition actually has an abundance of unambiguous examples.
This is all well and good, but in order for our definition actually to do its job, we want something stronger to be true. We want it to be the case that, if somebody hands us an arbitrary set, we can definitively tell whether or not it is hereditarily finite. And there is in fact a step-by-step process for doing just this. Here it is (for concision, we will abbreviate “hereditarily finite” as “HF”):
To tell whether an arbitrary set is HF, go through the following steps.
Step 0: If is infinite, then stop the process and conclude that is not HF. If is the empty set, then stop the process and conclude that is HF. Otherwise, continue to Step 1.
Step 1: If any of the elements of is infinite, then stop the process and conclude that is not HF. If the only element of is the empty set, then stop the process and conclude that is HF. Otherwise, let denote the set of all elements of elements of , and continue to Step 2.
Step 2: If any of the elements of is infinite, then stop the process and conclude that is not hereditarily finite. If the only element of is the empty set, then stop the process and conclude that is HF. Otherwise, let denote the set of all elements of elements of , and continue to Step 3.
…
Step n + 1: If any of the elements of is infinite, then stop the process and conclude that is not hereditarily finite. If the only element of is the empty set, then stop the process and conclude that is HF. Otherwise, let denote the set of all elements of elements of , and continue to Step n + 2.
…
We can get a good feel for what’s going on here by looking at this process in action for a couple of different sets. I think it’s instructive, but if you want to skip the details, you can scroll down to the next horizontal line.
First, consider the set , one of our examples of a hereditarily finite set from above, and run the above process. In Step 0, we note that is not infinite (it has 3 elements). Also, is not the empty set. So we proceed to Step 1.
In Step 1, we first note that all of the elements of are finite. Also, it’s not the case that the only element of is the empty set. Therefore, we let be the set of all elements of elements of , i.e., , and continue to Step 2.
In Step 2, we note that all of the elements of are finite, and it’s not the case that the only element of is the empty set. Therefore, we let be the set of all elements of elements of , i.e., , and continue to Step 3.
In Step 3, we note that all of the elements of are finite, and it’s not the case that the only element of is the empty set. Therefore, we let be the set of all elements of elements of , i.e., , and continue to Step 4.
In Step 4, we note that all of the elements of are finite. But the only element of is the empty set, so we stop the process and conclude that is indeed hereditarily finite.
Next consider , a set that we definitely didn’t want to consider hereditarily finite. In Step 0, we note that is finite and it’s not the case that its only element is the empty set, so we continue to Step 1.
In Step 1, we note that all of the elements of are finite (they both have one element) and it’s not the case that its only element is the empty set. So we let be the set of all elements of elements of , i.e., , and continue to Step 2.
In Step 2, we note that all of the elements of are finite and it’s not the case that its only element is the empty set. So we let be the set of all elements of elements of , i.e., , and continue to Step 3.
In Step 3, we note that, in fact, both elements of are infinite, so we stop the process and conclude that is, as we desired, not hereditarily finite.
In both cases above, our process halted after a relatively small number of steps, giving us an answer. Do we know that this process necessarily finishes, though? A priori, it looks possible that for certain sets it might just keep going on forever without yielding any conclusion about whether or not the set is hereditarily finite. It turns out, though, that (at least when working with the standard axioms for set theory) the process necessarily ends after a finite (though potentially arbitrarily large) number of steps, and that this fact is due to a rather curious axiom known as the Axiom of Foundation (sometimes called the Axiom of Regularity). It reads as follows:
The Axiom of Foundation: For every non-empty set , there is an element of such that .
It might not immediately be obvious that this axiom implies that our process must eventually stop, or even that the axiom has anything to do with what we’ve been discussing today. And since this post is already way too long, I’m not going to give a proof here (maybe in a future post?). But it’s a direct consequence of the axiom (and indeed can even be seen as a kind of reformulation of the axiom) that, given any set , if I run our process on , then, after some finite number of steps, I will either encounter an infinite set, in which case I know that is not hereditarily finite, or I will be left with just the empty set, in which case I know that is hereditarily finite.
I want to say a few more words about this axiom to close, though. I introduced it as a “curious axiom”, and a reason for this is that, although the axiom is listed among the standard axioms of set theory, essentially all of mathematics can be developed entirely without using the Axiom of Foundation at all! Its raison d’être is simply that it makes sets nicer to work with! Sets that don’t satisfy the Axiom of Foundation are weird and pathological and, for most purposes, we’d rather just forget about them during our day-to-day lives. (There are certainly interesting things to say about axiom systems that don’t include the Axiom of Foundation or even include explicit anti-Foundation axioms, but we’ll leave that story for another day.)
One prominent potential set that the Axiom of Foundation rules out is the set , i.e., the set whose only element is itself. Let’s see what happens if we try to apply our process to to determine whether or not it is hereditarily finite. In Step 0, we note that X is not infinite and is not the empty set, so we proceed to Step 1.
In Step 1, we note that all of the elements of are finite and it’s not the case that its only element is the empty set. We therefore let be the set of all elements of elements of . But the only element of is , and the only element of is (I feel like I’m repeating myself…), so . But , so it follows that . We continue to Step 2.
But now, since , Step 2 is going to be exactly the same as Step 1. And then Step 3 is going to be the same again. And Step 4. And Step 5. We’re going to repeat ourselves over and over, never making any progress or getting any closer to knowing whether or not is hereditarily finite. We’ve at last encountered an actual instance of circularity!
So, is hereditarily finite or not? Well, here we run into a real limitation of our definition. In this instance, it’s ambiguous. We could arbitrarily declare to be hereditarily finite, or we could declare it not to be hereditarily finite, and either choice would be consistent with our definition. For if is HF, then it satisfies both properties in our definition: it’s finite, and all of its elements are hereditarily finite. If, on the other hand, is not hereditarily finite, then it fails property 2, since its one element is not hereditarily finite. The apparent circularity of our definition of “hereditarily finite” was tamed by the Axiom of Foundation, but if we venture into the wilds of non-well-founded sets like , then it ceases to be a meaningful concept, and its circularity reemerges.
Cover Image: “The Battle Between Carnival and Lent” by Pieter Bruegel the Elder