# Countable set

{{#invoke:Hatnote|hatnote}}Template:Main other
Template:Distinguish2
In mathematics, a **countable set** is a set with the same cardinality (number of elements) as some subset of the set of natural numbers. A countable set is either a finite set or a *countably infinite* set. Whether finite or infinite, the elements of a countable set can always be counted one at a time and, although the counting may never finish, every element of the set will eventually be associated with a natural number.

Some authors use *countable set* to mean **infinitely countable** alone.^{[1]} To avoid this ambiguity, the term **at most countable** may be used when finite sets are included and **countably infinite**, **enumerable**, or **denumerable**^{[2]} otherwise.

The term *countable set* was originated by Georg Cantor who contrasted sets which are countable with those which are *uncountable* (a.k.a. **nonenumerable** and **nondenumerable**^{[3]}). Today, countable sets are researched by a branch of mathematics, called discrete mathematics.

## Contents

## Definition

A set *S* is called **countable** if there exists an injective function *f* from *S* to the natural numbers **N** = {0, 1, 2, 3, ...}.^{[4]}

If this *f* is also surjective and therefore bijective, then *S* is called **countably infinite.**

In other words, a set is called "countably infinite" if it has one-to-one correspondence with the natural number set, **N**.

As noted above, this terminology is not universal: Some authors use countable to mean what is here called "countably infinite," and to not include finite sets.

For alternative (equivalent) formulations of the definition in terms of a bijective function or a surjective function, see the section Formal definition and properties below.

## Introduction

A *set* is a collection of *elements*, and may be described in many ways. One way is simply to list all of its elements; for example, the set consisting of the integers 3, 4, and 5 may be denoted {3, 4, 5}. This is only effective for small sets, however; for larger sets, this would be time-consuming and error-prone. Instead of listing every single element, sometimes an ellipsis ("...") is used, if the writer believes that the reader can easily guess what is missing; for example, {1, 2, 3, ..., 100} presumably denotes the set of integers from 1 to 100. Even in this case, however, it is still *possible* to list all the elements, because the set is *finite*.

Some sets are *infinite*; these sets have more than *n* elements for any integer *n*. For example, the set of natural numbers, denotable by {0, 1, 2, 3, 4, 5, ...}, has infinitely many elements, and we cannot use any normal number to give its size. Nonetheless, it turns out that infinite sets do have a well-defined notion of size (or more properly, of *cardinality*, which is the technical term for the number of elements in a set), and not all infinite sets have the same cardinality.

To understand what this means, we first examine what it *does not* mean. For example, there are infinitely many odd integers, infinitely many even integers, and (hence) infinitely many integers overall. However, it turns out that the number of even integers, which is the same as the number of odd integers, is also the same as the number of integers overall. This is because we arrange things such that for every integer, there is a distinct even integer: ... −2→−4, −1→−2, 0→0, 1→2, 2→4, ...; or, more generally, *n*→2*n*, see picture. What we have done here is arranged the integers and the even integers into a *one-to-one correspondence* (or *bijection*), which is a function that maps between two sets such that each element of each set corresponds to a single element in the other set.

However, not all infinite sets have the same cardinality. For example, Georg Cantor (who introduced this concept) demonstrated that the real numbers cannot be put into one-to-one correspondence with the natural numbers (non-negative integers), and therefore that the set of real numbers has a greater cardinality than the set of natural numbers.

A set is *countable* if: (1) it is finite, or (2) it has the same cardinality (size) as the set of natural numbers. Equivalently, a set is *countable* if it has the same cardinality as some subset of the set of natural numbers. Otherwise, it is *uncountable*.

## Formal definition and properties

By definition a set *S* is **countable** if there exists an injective function *f* : *S* → **N** from *S* to the natural numbers **N** = {0, 1, 2, 3, ...}.

It might seem natural to divide the sets into different classes: put all the sets containing one element together; all the sets containing two elements together; ...; finally, put together all infinite sets and consider them as having the same size. This view is not tenable, however, under the natural definition of size.

To elaborate this we need the concept of a bijection. Although a "bijection" seems a more advanced concept than a number, the usual development of mathematics in terms of set theory defines functions before numbers, as they are based on much simpler sets. This is where the concept of a bijection comes in: define the correspondence

*a*↔ 1,*b*↔ 2,*c*↔ 3

Since every element of {*a*, *b*, *c*} is paired with *precisely one* element of {1, 2, 3}, *and* vice versa, this defines a bijection.

We now generalize this situation and *define* two sets to be of the same size if (and only if) there is a bijection between them. For all finite sets this gives us the usual definition of "the same size". What does it tell us about the size of infinite sets?

Consider the sets *A* = {1, 2, 3, ... }, the set of positive integers and *B* = {2, 4, 6, ... }, the set of even positive integers. We claim that, under our definition, these sets have the same size, and that therefore *B* is countably infinite. Recall that to prove this we need to exhibit a bijection between them. But this is easy, using *n* ↔ 2*n*, so that

- 1 ↔ 2, 2 ↔ 4, 3 ↔ 6, 4 ↔ 8, ....

As in the earlier example, every element of A has been paired off with precisely one element of B, and vice versa. Hence they have the same size. This gives an example of a set which is of the same size as one of its proper subsets, a situation which is impossible for finite sets.

Likewise, the set of all ordered pairs of natural numbers is countably infinite, as can be seen by following a path like the one in the picture:

The resulting mapping is like this:

- 0 ↔ (0,0), 1 ↔ (1,0), 2 ↔ (0,1), 3 ↔ (2,0), 4 ↔ (1,1), 5 ↔ (0,2), 6 ↔ (3,0) ....

It is evident that this mapping will cover all such ordered pairs.

Interestingly: if you treat each pair as being the numerator and denominator of a vulgar fraction, then for every positive fraction, we can come up with a distinct number corresponding to it. This representation includes also the natural numbers, since every natural number is also a fraction *N*/1. So we can conclude that there are exactly as many positive rational numbers as there are positive integers. This is true also for all rational numbers, as can be seen below (a more complex presentation is needed to deal with negative numbers).

**Theorem:** The Cartesian product of finitely many countable sets is countable.

This form of triangular mapping recursively generalizes to vectors of finitely many natural numbers by repeatedly mapping the first two elements to a natural number. For example, (0,2,3) maps to (5,3) which maps to 39.

Sometimes more than one mapping is useful. This is where you map the set which you want to show countably infinite, onto another set; and then map this other set to the natural numbers. For example, the positive rational numbers can easily be mapped to (a subset of) the pairs of natural numbers because *p*/*q *maps to (*p*, *q*).

What about infinite subsets of countably infinite sets? Do these have fewer elements than **N**?

**Theorem:** Every subset of a countable set is countable. In particular, every infinite subset of a countably infinite set is countably infinite.

For example, the set of prime numbers is countable, by mapping the *n*-th prime number to *n*:

- 2 maps to 1
- 3 maps to 2
- 5 maps to 3
- 7 maps to 4
- 11 maps to 5
- 13 maps to 6
- 17 maps to 7
- 19 maps to 8
- 23 maps to 9
- ...

What about sets being "larger than" **N**? An obvious place to look would be **Q**, the set of all rational numbers, which intuitively may seem much bigger than **N**. But looks can be deceiving, for we assert:

**Theorem:** **Q** (the set of all rational numbers) is countable.

**Q** can be defined as the set of all fractions *a*/*b* where *a* and *b* are integers and *b* > 0. This can be mapped onto the subset of ordered triples of natural numbers (*a*, *b*, *c*) such that *a* ≥ 0, *b* > 0, *a* and *b* are coprime, and *c* ∈ {0, 1} such that *c* = 0 if *a*/*b* ≥ 0 and *c* = 1 otherwise.

- 0 maps to (0,1,0)
- 1 maps to (1,1,0)
- −1 maps to (1,1,1)
- 1/2 maps to (1,2,0)
- −1/2 maps to (1,2,1)
- 2 maps to (2,1,0)
- −2 maps to (2,1,1)
- 1/3 maps to (1,3,0)
- −1/3 maps to (1,3,1)
- 3 maps to (3,1,0)
- −3 maps to (3,1,1)
- 1/4 maps to (1,4,0)
- −1/4 maps to (1,4,1)
- 2/3 maps to (2,3,0)
- −2/3 maps to (2,3,1)
- 3/2 maps to (3,2,0)
- −3/2 maps to (3,2,1)
- 4 maps to (4,1,0)
- −4 maps to (4,1,1)
- ...

By a similar development, the set of algebraic numbers is countable, and so is the set of definable numbers.

**Theorem:** (Assuming the axiom of countable choice) The union of countably many countable sets is countable.

For example, given countable sets **a**, **b**, **c** ...

Using a variant of the triangular enumeration we saw above:

*a*_{0}maps to 0*a*_{1}maps to 1*b*_{0}maps to 2*a*_{2}maps to 3*b*_{1}maps to 4*c*_{0}maps to 5*a*_{3}maps to 6*b*_{2}maps to 7*c*_{1}maps to 8*d*_{0}maps to 9*a*_{4}maps to 10- ...

Note that this only works if the sets **a**, **b**, **c**,... are disjoint. If not, then the union is even smaller and is therefore also countable by a previous theorem.

Also note that the axiom of countable choice is needed in order to index *all* of the sets **a**, **b**, **c**,...

**Theorem:** The set of all finite-length sequences of natural numbers is countable.

This set is the union of the length-1 sequences, the length-2 sequences, the length-3 sequences, each of which is a countable set (finite Cartesian product). So we are talking about a countable union of countable sets, which is countable by the previous theorem.

**Theorem:** The set of all finite subsets of the natural numbers is countable.

If you have a finite subset, you can order the elements into a finite sequence. There are only countably many finite sequences, so also there are only countably many finite subsets.

The following theorem gives equivalent formulations in terms of a bijective function or a surjective function. A proof of this result can be found in Lang's text.^{[2]}

**Theorem:** Let *S* be a set. The following statements are equivalent:

*S*is countable, i.e. there exists an injective function*f*:*S*→**N**.- Either
*S*is empty or there exists a surjective function*g*:**N**→*S*. - Either
*S*is finite or there exists a bijection*h*:**N**→*S*.

Several standard properties follow easily from this theorem. We present them here tersely. For a gentler presentation see the sections above. Observe that **N** in the theorem can be replaced with any countably infinite set. In particular we have the following Corollary.

**Corollary:** Let *S* and *T* be sets.

- If the function
*f*:*S*→*T*is injective and*T*is countable then*S*is countable. - If the function
*g*:*S*→*T*is surjective and*S*is countable then*T*is countable.

**Proof:** For (1) observe that if *T* is countable there is an injective function *h* : *T* → **N**. Then if *f* : *S* → *T* is injective the composition *h* o *f* : *S* → **N** is injective, so *S* is countable.

For (2) observe that if *S* is countable there is a surjective function *h* : **N** → *S*. Then if *g* : *S* → *T* is surjective the composition *g* o *h* : **N** → *T* is surjective, so *T* is countable.

**Proposition:** Any subset of a countable set is countable.

**Proof:** The restriction of an injective function to a subset of its domain is still injective.

**Proposition:** The Cartesian product of two countable sets *A* and *B* is countable.

**Proof:** Note that **N** × **N** is countable as a consequence of the definition because the function *f* : **N** × **N** → **N** given by *f*(*m*, *n*) = 2^{m}3^{n} is injective. It then follows from the Basic Theorem and the Corollary that the Cartesian product of any two countable sets is countable. This follows because if *A* and *B* are countable there are surjections *f* : **N** → *A* and *g* : **N** → *B*. So

*f*×*g*:**N**×**N**→*A*×*B*

is a surjection from the countable set **N** × **N** to the set *A* × *B* and the Corollary implies *A* × *B* is countable. This result generalizes to the Cartesian product of any finite collection of countable sets and the proof follows by induction on the number of sets in the collection.

**Proposition:** The integers **Z** are countable and the rational numbers **Q** are countable.

**Proof:** The integers **Z** are countable because the function *f* : **Z** → **N** given by *f*(*n*) = 2^{n} if *n* is non-negative and *f*(*n*) = 3^{|n|} if *n* is negative is an injective function. The rational numbers **Q** are countable because the function *g* : **Z** × **N** → **Q** given by *g*(*m*, *n*) = *m*/(*n* + 1) is a surjection from the countable set **Z** × **N** to the rationals **Q**.

**Proposition:** If *A _{n}* is a countable set for each

*n*in

**N**then the union of all

*A*is also countable.

_{n}**Proof:** This is a consequence of the fact that for each *n* there is a surjective function *g _{n}* :

**N**→

*A*and hence the function

_{n}given by *G*(*n*, *m*) = *g _{n}*(

*m*) is a surjection. Since

**N**×

**N**is countable, the Corollary implies that the union is countable. We are using the axiom of countable choice in this proof in order to pick for each

*n*in

**N**a surjection

*g*from the non-empty collection of surjections from

_{n}**N**to

*A*.

_{n}**Cantor's Theorem** asserts that if *A* is a set and *P*(*A*) is its power set, i.e. the set of all subsets of *A*, then there is no surjective function from *A* to *P*(*A*). A proof is given in the article Cantor's Theorem. As an immediate consequence of this and the Basic Theorem above we have:

**Proposition:** The set *P*(**N**) is not countable; i.e. it is uncountable.

For an elaboration of this result see Cantor's diagonal argument.

The set of real numbers is uncountable (see Cantor's first uncountability proof), and so is the set of all infinite sequences of natural numbers. A topological proof for the uncountability of the real numbers is described at finite intersection property.

## Minimal model of set theory is countable

If there is a set that is a standard model (see inner model) of ZFC set theory, then there is a minimal standard model (*see* Constructible universe). The Löwenheim-Skolem theorem can be used to show that this minimal model is countable. The fact that the notion of "uncountability" makes sense even in this model, and in particular that this model *M* contains elements which are

- subsets of
*M*, hence countable, - but uncountable from the point of view of
*M*,

was seen as paradoxical in the early days of set theory, see Skolem's paradox.

The minimal standard model includes all the algebraic numbers and all effectively computable transcendental numbers, as well as many other kinds of numbers.

## Total orders

Countable sets can be totally ordered in various ways, e.g.:

- Well orders (see also ordinal number):
- The usual order of natural numbers (0, 1, 2, 3, 4, 5, ...)
- The integers in the order (0, 1, 2, 3, ...; −1, −2, −3, ...)

- Other (
*not*well orders):- The usual order of integers (..., -3, -2, -1, 0, 1, 2, 3, ...)
- The usual order of rational numbers (Cannot be explicitly written as a list!)

Note that in both examples of well orders here, any subset has a *least element*; and in both examples of non-well orders, *some* subsets do not have a *least element*.
This is the key definition that determines whether a total order is also a well order.

## See also

## Notes

- ↑ For an example of this usage see Template:Harv.
- ↑
^{2.0}^{2.1}See Template:Harv. - ↑ See Template:Harv.
- ↑ Since there is an obvious bijection between
**N**and**N*** = {1, 2, 3, ...}, it makes no difference whether one considers 0 to be a natural number or not. In any case, this article follows ISO 31-11 and the standard convention in mathematical logic, which make 0 a natural number.

## References

- {{#invoke:citation/CS1|citation

|CitationClass=citation }}

- {{#invoke:citation/CS1|citation

|CitationClass=citation }}

- {{#invoke:citation/CS1|citation

|CitationClass=citation }}