Cardinal

In set theory, the cardinal numbers (or just cardinals) are equivalence classes defined by the relation "there exists a bijection from set \(A\) onto set \(B\)". Whereas ordinal numbers may be thought of as "structures" of certain kinds of sets, cardinals are best described as the "sizes" of sets.

Introduction
The intuitive idea of size works well enough for finite sets, but in the infinite realm it begins to break down. For an example, let's compare the sizes of four sets: the rational numbers, the natural numbers, the even natural numbers, and the real numbers. How do their sizes compare to each other? Most people will give one of two answers. One could argue the following: "The four sets all nest inside each other in this order: even natural numbers, natural numbers, rational numbers, real numbers. A set always has less elements than a superset, so their sizes are in this order from smallest to largest." Someone else would argue, "Since all the sets are infinite, they can't be different sizes — otherwise \(\infty < \infty\). So they're all the same size." These two arguments, seemingly both logical, give us contradictory answers, showing that we need something better than such intuitive reasoning.

Instead of asking when one set is smaller than another, we can ask a potentially easier question: when do two sets have the same size? The answer, agreed upon by set theorists, is in the idea of a bijection, also known as a one-to-one correspondence. The latter name suggests a nice visual description of a bijection — pairing up two sets of objects so that no object is left over and every object belongs to only one pair. If there exists  a bijection between two sets \(A\) and \(B\), then we say that they have the same cardinality, or that they are equipotent, equinumerous, or sometimes equicardinal.

Cardinality is simple for finite sets — it's just the number of elements in the set. The empty set has zero cardinality, the set of horns on your pet unicorn has cardinality 1, etc. The bijection definition also works intuitively. You can determine whether two groups of people are the same size by repeatedly removing two at a time, one from each group. This may seem roundabout when we can count all the elements, but what if we can't?

A simple example of an infinite set is the set of all nonnegative integers \(\{0,1,2,\ldots\}\). This has a cardinality we call aleph-zero or aleph-null or aleph-naught, notated \(\aleph_0\).

Let's try to answer a question comparing the cardinalities of two infinite sets, \(A = \{0,1,2,\ldots\}\) and \(B = \{1,2,3,\ldots\}\). To check for equicardinality, we look for a way to pair off elements with no leftovers or overlaps. Finding a bijection is easy: for each element in \(A\), add one to it and it matches up with an element in \(B\)! So \(A\) and \(B\) have the same cardinality, and \(\{1,2,3,\ldots\}\) has cardinality \(\aleph_0\). Since we took one element away to get from \(A\) to \(B\), this means that \(\aleph_0 - 1 = \aleph_0\), and the opposite argument shows that \(\aleph_0 + 1 = \aleph_0\). In fact, for all finite \(n\), adding or taking away \(n\) elements from an infinite set doesn't change its size.

What about \(A = \{0,1,2,\ldots\}\) and \(C = \{0,2,4,6,\ldots\}\)? We simply use the mapping \(x \mapsto 2x\), and that gives us a bijection from \(A\) onto \(C\). So the nonnegative integers have the same cardinality \(\aleph_0\) as just the even ones. So \(\aleph_0 = 2\aleph_0\). This may be a little surprising to people who thought that a set is always larger than each of its proper subsets! Same goes for the set of multiples of 3, multiples of 4, perfect squares, etc. The last of these is especially interesting, because perfect square numbers become more and more sparse when we go on, and their among natural numbers is, in fact, 0.

A slightly more complicated mapping allows us to show that the integers \(\{\ldots,-3,-2,-1,0,1,2,3,\ldots\}\) also have cardinality \(\aleph_0\). One bijection involves alternating between the positive and negative integers: 0, 1, -1, 2, -2, ... and it works just like the argument for the even integers. The rational numbers are even trickier, but it is possible to show that they also have cardinality \(\aleph_0\), and that \(\aleph_0^2 = \aleph_0\).

Real numbers
At this point, it's tempting to conclude that all infinite sets have cardinality \(\aleph_0\). But German mathematician proved that this is not the case. As it turns out, the set of real numbers is so large that there is no bijection from \(\mathbb{N}\) onto \(\mathbb{R}\), so they do not have cardinality \(\aleph_0\). In other words, there are different sizes of infinities!

First thing to note is, if we will show that some subset of real numbers has more elements than \(\mathbb{N}\), then the same will follow for all real numbers (because set of real numbers certainly doesn't have less elements than its subset). We will provide a basic outline of Cantor's famous diagonalization proof. We can encode all the real numbers in \((0, 1)\) using their binary expansions, such as 0.0110101101011... Using proof by contradiction, we assume that we can find a bijection from the natural numbers onto \((0,1)\). Then we can make a numbered list of all the real numbers in some order like this (this is, of course, just one example of such ordering, but it should get clear later that this works for any supposed ordering):


 * 1. 0.010110101011110...
 * 2. 0.101010011011100...
 * 3. 0.011100101110101...
 * 4. 0.010101101010000...
 * 5. 0.011100100101011...
 * 6. 0.111010101101000...

This list supposedly has all the real numbers, but it turns out we can always come up with a real number that isn't on the list! Just take all the bolded numbers:


 * 1. 0.010110101011110...
 * 2. 0.101010011011100...
 * 3. 0.011100101110101...
 * 4. 0.010101101010000...
 * 5. 0.011100100101011...
 * 6. 0.111010101101000...

and assemble them into a new real number 0.001100... Then flip all the bits in this number to form a new one, 0.110011... Since it has a different first bit than real number #1, it's not equal to the first. Since it has a different second bit than number #2, it's not equal to the second. Since it has a different third bit than #3, it's not equal to the third, and so on. So our real number isn't on the list at all, even though we assumed every real number is there! This is a contradiction, and therefore \((0,1)\) has a different cardinality than the natural numbers. We can show that there is at least as many reals as natural numbers, e.g. by noting that the set \(\{0.1,0.01,0.0001,...\}\) is fully contained in \((0,1)\), and has the same number of elements as \(\mathbb{N}\).

More detailed and rigorous statements of this proof can be found all over the Internet, so if you're concerned about details be sure to check those. (For example, we glossed over duplicate expansions such as 0.001011111... = 0.00110000... but these ultimately don't have any effect.)

One thing that is worth pointing out is that the real numbers in the interval \((0, 1)\) have, in fact, the same cardinality as the entire set of real numbers — in set theory, a line segment has the same size as a line. There are quite a few bijections for this, one familiar one being the function \(\tan(x)\) which maps \((-\pi/2,\pi/2)\) onto \(\mathbb{R}\). (Don't worry about the fact that it's \((-\pi/2,\pi/2)\) and not \((0, 1)\), the scaling and translating doesn't affect the cardinality.)

How many real numbers are there then? One way to symbolize their cardinality is "\(2^{\aleph_0}\)" — each real number is defined by \(\aleph_0\) bits, and there are two choices for each bit. Another symbol is \(\mathfrak{c}\), which is the initial for the name of the cardinal: the cardinality of the continuum (or just continuum).

Another set with cardinality equal to \(2^{\aleph_0}\) is the power set of the natural numbers, which consists of all sets of natural numbers, finite and infinite. There is a very straightforward mapping from the real numbers onto these sets — a one a position n means that n is in the set. So 0.111 represents the set {1,2,3}, 0.01010101... the even numbers, etc.

Continuum hypothesis
So far we have a nice collection of cardinals going: the finite cardinalities 0, 1, 2, 3, ... and two infinite cardinalities \(\aleph_0\) and \(2^{\aleph_0}\).

After the discovery that \(2^{\aleph_0} > \aleph_0\), set theorists started wondering whether there are any other cardinals between them. Nothing in particular about the above argument told us that \(2^{\aleph_0}\) must be the next cardinal after \(\aleph_0\). The continuum hypothesis is a conjecture stating that there are no such inbetween cardinals.

In a set-theoretic framework known as ZFC, we also know that there is a smallest cardinal greater than \(\aleph_0\). We call it \(\aleph_1\), or aleph-one. Thus in ZFC, the continuum hypothesis is equivalent to asking whether \(2^{\aleph_0} = \aleph_1\).

The resolution of continuum hypothesis is very interesting and weird. Kurt Gödel showed that it's not possible to disprove it in ZFC - which made many mathematicians of the time believe that it can be proven - but Paul Cohen later showed that it's not possible to prove it either. Thus it's independent of ZFC. In other words, it's neither true nor false, and ZFC just can't "make up its mind". If this is confusing to you, maybe check out our ZFC article for more details on formal theories and independence.

In spite of this undecided nature of the continuum, some poorly written introductions to set theory will explicitly or implicitly state that the real numbers have cardinality \(\aleph_1\) by definition. If you've learned this from such a tutorial, unlearn it! Even if you ever use the equality between these two cardinals, you should be aware that they are defined in significantly different way, and that this equality cannot be proven on the grounds of common set theory.

More cardinals
The of the real numbers has cardinality \(2^{2^{\aleph_0}}\), and the power set of that set has cardinality \(2^{2^{2^{\aleph_0}}}\). Starting to notice a pattern?

We already know from Cantor's diagonalization proof that \(2^{\aleph_0} > \aleph_0\). Similar arguments can be made to prove that \(2^{2^{\aleph_0}} > 2^{\aleph_0}\), and \(2^{2^{2^{\aleph_0}}} > 2^{2^{\aleph_0}}\), and so on. In general, Cantor's theorem tells us that for every cardinal \(\alpha\), \(2^\alpha > \alpha\). That is, every set is outnumbered by its power set. From this we see that there is no such thing as the largest cardinal number - for any supposed such cardinal, we could just take its power set, and we would know that it's larger.

By the way, there's a more concise standard notation for cardinals like \(2^{2^{\aleph_0}}\) and \(2^{2^{2^{\aleph_0}}}\), called the beth numbers. They are defined as \(\beth_0 = \aleph_0\), \(\beth_1 = 2^{\aleph_0}\), \(\beth_2 = 2^{2^{\aleph_0}}\), \(\beth_3 = 2^{2^{2^{\aleph_0}}}\), etc. Using the beth numbers, we can restate the continuum hypothesis as \(\aleph_1 = \beth_1\), assuming ZFC.

There are also the aleph numbers, one of which you're familiar with by now — \(\aleph_0\). Recall that \(\aleph_1\) is defined as the smallest cardinal greater than \(\aleph_0\). Similarly, \(\aleph_2\) is the smallest cardinal greater than \(\aleph_1\), and so forth. The difference between these two sequences is quite important: the beth numbers are created by repeated application of power sets, and the aleph numbers try to make themselves as close together as possible.

Oh, and here's some more terminology. \(\aleph_0\) is the smallest infinite cardinal, and as such we define an infinite cardinal as any cardinal at least \(\aleph_0\). Sets with cardinality \(\leq \aleph_0\) are called countable, and sets with cardinality \(> \aleph_0\) are called uncountable. Sets with cardinality \(\aleph_0\) are unsurprisingly called countably infinite.

Cardinal arithmetic and ordinals
Before we introduce even more cardinals, now's a good time to step back and discuss some theory.

Earlier on, we wrote that \(\aleph_0 + 1 = \aleph_0\), but we didn't define what + means. You probably already understand it intuitively, but it's good to have formal foundations before we move on. Cardinal addition \(\alpha + \beta\) means taking two disjoint sets \(A\) and \(B\), where \(A\) has cardinality \(\alpha\) and \(B\) has cardinality \(\beta\), and returning the cardinality of their union \(A \cup B\). It's worth noting that we get the same value of \(\alpha+\beta\) no matter what sets \(A\) and \(B\) we choose, as long as they have correct cardinalities.

But we might want to speak not only of addition of cardinal numbers, but also about their multiplication and exponentiation. Cardinal multiplication is defined as follows: if we take cardinals \(\alpha,\beta\) and sets \(A,B\) of these respective cardinalities, then we define \(\alpha\cdot\beta\) to be the cardinality of the \(A\times B\). Intuitively, this means that we take are taking \(|B|\) copies of \(A\) and we are taking their collective size.

To exponentiate cardinals, we first need a notion of "set exponentiation" (just like disjoint union and Cartesian product are "set addition" and "set multiplication"). This is achieved by, again given two sets \(A,B\), considering the set of all functions from \(B\) to \(A\). This set is denoted by \(A^B\) (or sometimes \(^BA\)). We then define cardinal exponentiation to be an operation taking cardinalities of sets \(A,B\) and returning the cardinality of set \(A^B\). A justification for this definition is as follows: when we are constructing a function from \(B\) to \(A\), then for every element of \(B\) we can independently choose any of \(|A|\) elements of \(A\), thus, to count how many functions from \(B\) to \(A\) there are, we would want to multiply \(|A|\) with itself \(|B|\) times.

Now that we have some fundamentals out of the way, let's talk about the relationship between cardinals and ordinals. They're closely related to the system of ordinal numbers, but they're not the same. For one, \(\omega\) is the smallest infinite ordinal and \(\aleph_0\) the smallest infinite cardinal, but \(\omega + 1 \neq \omega\) while \(\aleph_0 + 1 = \aleph_0\).

From here on we use the Von Neumann definition of ordinals. \(\omega\), as we've established, is the smallest infinite ordinal. \(\omega_1\) is the name for the smallest uncountable ordinal, \(\omega_2\) for the smallest ordinal of cardinality \(\aleph_2\), and so forth.

It's convenient to "define" a cardinal number as equal to the smallest ordinal number with its own cardinality. So we'd say that \(\omega = \aleph_0\), \(\omega_1 = \aleph_1\), and so forth, which is nice because now the cardinal numbers are represented by actual sets. How can this be reasonable if \(\omega + 1\) and \(\aleph_0 + 1\) are different? That's because we're using different definitions of addition here, and ordinal addition is very different from cardinal addition. Distinguishing between the two is just a matter of context, and it's rarely if ever ambiguous.

Why bother doing this definition? It allows us to apply the ordinal concept of a limit to cardinals. (Okay, we don't need ordinals for this, but the definition using unions is a little harder to grasp.)