3.3  Countable Unions and the Axiom of Choice

Section 3.2 listed N×N, Z and Q, and showed that a union of two countable sets is countable (Proposition 3.2.5). The next question is a union of countably many countable sets. The natural proof is short, and it contains one step that none of the rules met so far can justify. This section isolates that step, adds the principle that licenses it, the axiom of choice, and then shows how to tell a proof that needs the axiom from one that only seems to.

3.3.1. A union of countably many lists

Let A0,A1,A2,… be countable sets, a family (An)n∈N in the sense of Definition 1.2.3. We want to prove that ⋃n∈NAn is countable.

Here is the proof most people write first. List each set: An={an,0,an,1,an,2,…}. Put an,m in row n and column m of an infinite grid. Every element of the union stands somewhere in the grid, and the grid is indexed by N×N, which is countable (Theorem 3.2.6). So the union is the image of a countable set, and it is countable.

Every step but the first, “list each set”, is a result of Section 3.2. Where do the lists come from?

3.3.2. The obstacle, rule by rule

For a non-empty An, “An is countable” says that there exists a surjection N→An (Definition 3.2.1). To use it we apply ∃E (Logic and Proof, Definition 5.6.1): we name the object and argue inside the box of that name. One ∃E names one surjection, for one n.

  • Finitely many sets. The proof of Proposition 3.2.5 used two ∃E’s; for A0,…,A9 we could nest ten boxes.
  • All n∈N at once. The grid needs a list of An for every n, assembled into one object: a function that sends each n to a surjection N→An. A proof is a finite object. It cannot contain one ∃E for each of infinitely many indices, and no rule of Logic and Proof, Chapter 5 makes infinitely many choices in one step.

Two escape routes fail. Recursion (Theorem 2.3.1) defines a function on all of N at once, but from a rule g given in advance, each value determined by the previous one. The list of An+1 is not determined by the list of An, and a rule producing a list of every An+1 would already be the missing object. Induction on k, with Proposition 3.2.5 at each step, proves “for every k, A0∪⋯∪Ak is countable” (Exercise C3 writes it out), but that is a statement about each k separately; nothing makes the lists for different k fit together.

Section 1.5 met the same wall: a right inverse of a surjection must pick a preimage of every point at once, and the rules could do that only for finitely many points, or when a rule names the preimage.

3.3.3. The axiom of choice

None of the working rules (W1)–(W6) of Section 1.1 forms a set out of infinitely many arbitrary picks. The principle we add is the simplest statement that does.

From any family of non-empty sets, one may pick one element from each set, all at once.

Axiom 3.3.1 (Axiom of Choice)

Let I be a set, and let (Ai)i∈I be a family of sets such that Ai is non-empty for every i∈I. Then there exists a function c:I→⋃i∈IAiwithc(i)∈Ai  for every i∈I. Such a function c is called a choice function for the family.

In symbols, with YX the set of functions of Section 1.4 and U:=⋃i∈IAi: ∀i∈I (Ai≠∅) → ∃c∈UI  ∀i∈I  c(i)∈Ai.

In words: the hypothesis says that each set of the family has an element; the conclusion says that one function picks an element of every Ai at the same time. The codomain, a set by (W3), only gives c somewhere to take its values. The axiom asserts that c exists and gives no recipe for it.

Its status. For finitely many indices the axiom adds nothing (proved below); for infinitely many it is a genuinely new principle. It is independent of the other axioms of set theory: Gödel (1938) showed that adding it creates no contradiction that was not there already, and Cohen (1963) that it cannot be proved from them. A later chapter states its best-known equivalent, Zorn’s lemma; the companion volume on set theory proves it equivalent to the axiom, together with the other equivalents such as the well-ordering theorem, and surveys the independence results. This book uses the axiom openly on the main line, among other places: here, for countable unions and right inverses; in Section 3.6, for infinite subsets that can be listed; in Analysis on the Real Line, Chapter 1, for sup approximations (the remark below); in Measure and Integration, Chapter 1, for the Vitali set; in Functional Analysis, Chapter 4, through Zorn’s lemma, for the Hahn–Banach theorem; and in Functional Analysis, Chapter 6, for Tychonoff’s theorem. Each use is flagged at its line.

Remark. A corollary in Analysis on the Real Line, Chapter 1 gives, for each n≥1 separately, some an∈A with an>supA−1n: one ∃E per n, and no axiom. Forming the sequence (an)n≥1 from these is a choice function for the family ({a∈A:a>supA−1n})n∈Z>0, an instance of Axiom 3.3.1 with the countable index set I=Z>0. Analysis on the Real Line, Chapter 1 flags exactly this step.

Examples.

  1. The empty family. If I=∅, the empty function ∅→⋃i∈∅Ai=∅ (Proposition 1.4.2 (a)) is a choice function: the condition “for every i∈∅” holds vacuously. No axiom is needed.
  2. A family with a rule. Let I=Z>0 and An:={k∈N:n∣k, k≠0}, the positive multiples of n. Each An contains n. The rule c(n):=n is a choice function, defined by specification (Definition 1.1.3); no axiom is needed.
  3. A family with no rule in sight. Let I be the set of non-empty subsets of R, and AS:=S for S∈I. A choice function picks an element of every non-empty set of reals. “The least element” fails, since (0,1) has none, and no rule that works for every S is known. Here the axiom supplies what the other rules do not.

A non-example by minimal change. In Example 2, add the index n=0. The positive multiples of 0 form the empty set (0∣k means k=0), so A0=∅, and no function can have c(0)∈A0. Only the clause “Ai is non-empty for every i” fails, and without it the conclusion is false. That is why the proofs below remove the empty sets from a family before they choose. (Dropping “all at once” instead would leave nothing beyond the hypothesis.)

3.3.4. When choice is not needed

Two kinds of construction look like choice and are not; telling them apart from a real use is the skill this section is for.

Finitely many sets. For every finite set I and every family (Ai)i∈I of non-empty sets, a choice function exists, with no appeal to the axiom. For I={1,2,3}, three applications of ∃E name ai∈Ai, and {(1,a1),(2,a2),(3,a3)} is the graph of a choice function. For a finite set of arbitrary size we induct on its number of elements (Definition 3.1.2). Let P(n) be: “for every set I with n elements and every family (Ai)i∈I of non-empty sets, there is a choice function”. Base case P(0): a set with 0 elements is the image of a bijection from {1,…,0}=∅, so it is empty, and the empty function is a choice function (Example 1). Inductive step: assume P(n), and let I have n+1 elements. Then I≠∅, since a bijection {1,…,n+1}→I has a value at 1; pick i0∈I by ∃E. The set I′:=I∖{i0} has n elements (Corollary 3.1.7), so P(n) gives a choice function c′ for (Ai)i∈I′. Since Ai0≠∅, one more ∃E names a0∈Ai0. The graph of c′ together with the pair (i0,a0), with codomain ⋃i∈IAi, is a function on I′∪{i0}=I, because i0∉I′; and it is a choice function. So P(n+1) holds, and Logic and Proof, Axiom 4.2.1 gives P(n) for every n∈N. Each step uses two ∃E’s and no new principle; the induction says nothing about an infinite I, which has no number of elements.

A rule that picks. If one description names an element of each Ai, the choice function is defined by specification (W1), as the set of pairs (i,a) with a the element named for i. Typical rules: the least element of a non-empty set of natural numbers (Theorem 2.1.3); the non-negative square root of a positive real; in a bisection, the left half if it has the property in question, and otherwise the right half. The first rule is how Theorem 3.2.2 passed from a surjection N→A to an injection A→N with no axiom: the least preimage is named, not chosen.

Warning. Choice is not “picking an element”. “Let a∈A” is a single ∃E and needs no axiom; neither does picking from ten sets. The axiom is needed only for picking one element from each of infinitely many sets, with no rule. A proof that says “choose” need not use it, and one that never says “choose” may: “for each n, let gn be a list of An” is a use, however it is worded.

3.3.5. Right inverses

The first consequence settles the question Section 1.5 left open. By Proposition 1.5.2, a function with a right inverse is surjective; the converse is where choice enters.

Theorem 3.3.2 (Surjections Have Right Inverses)

Let f:X→Y be a surjective function. Then f has a right inverse: there is a function g:Y→X with f(g(y))=y for every y∈Y.

Idea. A right inverse must name a preimage of every y. The preimages of the points of Y form a family of sets indexed by Y, each non-empty because f is onto. A choice function for that family is exactly a right inverse.

Proof. For y∈Y, let Py:=f−1({y})={x∈X:f(x)=y} (Definition 1.6.2). This defines a family (Py)y∈Y of subsets of X, indexed by Y. Each Py is non-empty, since f is surjective (Definition 1.4.4). By Axiom 3.3.1 there is a function c:Y→⋃y∈YPy with c(y)∈Py for every y∈Y. The union is a subset of X, so the graph of c is a subset of Y×X, and with codomain X it is a function g:Y→X with g(y)=c(y) (Definition 1.4.1). For every y∈Y, g(y)∈Py, that is, f(g(y))=y. So f∘g=idY, and g is a right inverse of f (Definition 1.5.1 (b)).

Together with Proposition 1.5.2: a function is surjective if and only if it has a right inverse. The theorem is in fact equivalent to the axiom: a right inverse of the projection (i,a)↦i, from the set of pairs with a∈Ai onto I, is a choice function in disguise.

Quick check. Let f:Z→N, f(k):=|k|. It is surjective. Does the existence of a right inverse of f need Axiom 3.3.1?

Solution. No. Each n∈N has the preimages n and −n, and the rule “take the non-negative one” names one of them: g(n):=n. Then f(g(n))=|n|=n, so g:N→Z is a right inverse, defined by a formula. The axiom is needed only when no such rule is available.

3.3.6. Countable unions

Now the theorem the section opened with. The second form, with any countable index set, is the one used in practice.

Theorem 3.3.3 (Countable Unions of Countable Sets)
  • (a) Let (An)n∈N be a family of sets such that An is countable for every n∈N. Then ⋃n∈NAn is countable.

  • (b) Let I be a countable set and (Ai)i∈I a family of sets such that Ai is countable for every i∈I. Then ⋃i∈IAi is countable.

Idea. This is the grid of the opening, with the lists supplied by the axiom. ① Throw away the empty sets: the axiom needs non-empty ones, and they add nothing to the union. ② For each remaining n, the surjections N→An form a non-empty set; choose one from each, all at once. ③ The chosen lists turn the grid J×N into a surjection onto the union, and the grid is countable by Section 3.2. Part (b) is part (a) after renumbering the index set by a list.

Before reading on: which line uses choice, and why can ∃E not replace it?

Proof.

  • (a) Let U:=⋃n∈NAn and J:={n∈N:An≠∅}.

    If J=∅, every An is empty, so U=∅, which is countable by Definition 3.2.1.

    Suppose J≠∅. For n∈J, let Sn:={h∈AnN:h is surjective}, the set of surjections N→An (Definition 1.1.3, with AnN the set of functions of Section 1.4). Since An is countable and non-empty, Sn≠∅ (Definition 3.2.1). By Axiom 3.3.1, applied to the family (Sn)n∈J, there is a function c:J→⋃n∈JSn with c(n)∈Sn for every n∈J. This is the only line of the proof that uses the axiom.

    Define F:J×N→U by F(n,m):=c(n)(m). It takes values in U: c(n) maps into An⊆U. It is surjective: let x∈U; then x∈An for some n∈N (Definition 1.2.4), so An≠∅ and n∈J; since c(n) is a surjection onto An, there is m∈N with c(n)(m)=x, that is, F(n,m)=x.

    The set J is countable by Proposition 3.2.3, as a subset of N, which is countable (the identity is a surjection). So J×N is countable by Corollary 3.2.7 (a), and it is non-empty, since it contains (n0,0) for any n0∈J. By Definition 3.2.1 there is a surjection s:N→J×N. Then F∘s:N→U is surjective (Theorem 1.4.4 (b)), and U is countable.

  • (b) Let U:=⋃i∈IAi. If I=∅, then U=∅, which is countable. Otherwise Definition 3.2.1 gives a surjection s:N→I; fix one. For n∈N put Bn:=As(n), a countable set. Then ⋃n∈NBn=U. (⊆) An element of Bn lies in As(n) with s(n)∈I. (⊇) If x∈Ai with i∈I, then i=s(n) for some n∈N, because s is onto, and x∈Bn. By (a), U is countable.

The line in bold is the only use of the axiom. The surjections s of parts (a) and (b) are single objects, each named by one ∃E. What needed the axiom was a surjection for every n∈J at once: ∃E supplies c(n) only inside the box of a fixed n, and F needs all of them outside every such box. The set J is there because for An=∅ there is no function N→An at all (Proposition 1.4.2 (b)), so Sn=∅. The theorem completes the closure properties of countable sets: subsets, images, finite products, countable unions.

Neither hypothesis can be dropped: Section 3.4 shows that R is not countable, and R is the union of the single set R, and also of the countable sets {x}, x∈R.

Warning. The choice is of the lists, not of preimages. A surjection N→A gives least preimages by a rule (Theorem 3.2.2), but only once the surjection is in hand. In Theorem 3.3.3, what is missing is the surjection itself, one for each An, and the sets An need not be sets of natural numbers, so no “least” is available to name one.

3.3.7. Unions without choice

Many countable unions met in practice come with their lists, and then no axiom is used.

Example (Unions that come with their lists)

Solution.

  • (a) By the definition Q:={m/n:m∈Z, n∈Z>0}, a number is rational exactly when it lies in Qn for some n∈Z>0, so the two sets are equal. Fix the bijection z:N→Z of Theorem 3.2.8 (z(2k)=k, z(2k+1)=−(k+1)). Then k↦z(k)/n lists Qn, and the whole family of lists is the single function L:Z>0×N→Q,L(n,k):=z(k)/n, defined by specification. It is onto Q: for m/n with m∈Z, n∈Z>0, take k with z(k)=m. Since Z>0×N is countable and non-empty (Proposition 3.2.3, Corollary 3.2.7), composing L with a surjection N→Z>0×N lists Q. The grid is the same as in Theorem 3.3.3; the difference is that the rows were written down, not chosen.

  • (b) No, and its place before Axiom 3.3.1 does not settle this, since by the warning in “When choice is not needed” a proof can use the axiom without naming it; we check the lines. The maps z and (m,n)↦m/n are formulas. The results cited name finitely many objects by ∃E: one injection in Proposition 3.2.3, two in Corollary 3.2.7 (a), one surjection in Proposition 3.2.4. The passage from a surjection to an injection in Theorem 3.2.2 takes the least preimage, a rule; the return from an injection to a list goes through Lemma 3.2.1, whose list is defined by recursion from least elements (Theorem 2.1.3), again a rule. No line picks from infinitely many sets without a rule.

The pattern is general: if one formula in n lists every An, the family of lists is a single function, and no axiom is used. Choice enters only when each An is known to be countable as a bare existence statement.

3.3.8. Algebraic numbers

The theorem pays off at once. A real number is called algebraic if it is a root of a non-zero polynomial with integer coefficients. To keep this inside what the book has defined, we speak of coefficient tuples. For d≥1 and c=(c0,c1,…,cd)∈Zd+1 (a (d+1)-tuple, entries numbered from 0), let pc(x):=∑k=0dckxk(x∈R) (Definition 2.3.1, Definition 2.3.2), and call c non-zero if ck≠0 for some k. Then x∈R is algebraic if pc(x)=0 for some d≥1 and some non-zero c∈Zd+1. Constant polynomials are left out without loss, since a non-zero constant has no roots.

For example, 2 is algebraic, a root of x2−2 (c=(−2,0,1)). Every rational m/n is algebraic, a root of nx−m (c=(−m,n)). So is 2+3, a root of x4−10x2+1.

We use one fact from school algebra, not proved here: if c∈Zd+1 is non-zero, then pc has at most d real roots. (It follows from the factor theorem.) In particular the set R(c):={x∈R:pc(x)=0} is finite.

Theorem 3.3.4 (The Algebraic Numbers Are Countable)

The set of algebraic real numbers is countable.

Idea. Sort the polynomials by degree. For each d, the coefficient tuples form a countable set, and each polynomial contributes finitely many roots: a countable union of finite sets. Then take the union over d. Both unions are instances of Theorem 3.3.3 (b).

Proof. Let Alg be the set of algebraic real numbers, and for d≥1 let Zd be the set of non-zero tuples in Zd+1.

Step 1. Let d≥1. The set Z is countable (Theorem 3.2.8), and Zd+1 is the product of d+1≥2 factors all equal to Z, so it is countable by Corollary 3.2.7 (b). Hence Zd⊆Zd+1 is countable (Proposition 3.2.3).

Step 2. For c∈Zd, the root set R(c) is finite by the school fact above, hence countable (Theorem 3.2.2, (iii) ⇒ (i)). So Algd:=⋃c∈ZdR(c), the set of roots of the non-zero polynomials of degree at most d, is countable by Theorem 3.3.3 (b), with the countable index set Zd.

Step 3. By definition, Alg=⋃d∈Z>0Algd. The index set Z>0⊆N is countable (Proposition 3.2.3). So Alg is countable by Theorem 3.3.3 (b).

The proof cites Theorem 3.3.3 twice, and so it uses Axiom 3.3.1. Here the axiom can be avoided (not proved in the text; nothing later uses it): list each finite root set in increasing order, which is a rule, and replace the two unions by one fixed enumeration of all integer coefficient tuples. Exercise C2 asks you to carry this out. The countability of Alg has a striking consequence once we know that R is not countable: Section 3.4 deduces that some real numbers are not algebraic.

3.3.9. Exercises

A. Check your understanding

Exercise (A1)

These parts are about the proof of Theorem 3.3.3.

  • (a) Which line of the proof of part (a) uses Axiom 3.3.1? What are the index set I and the sets Ai of the axiom at that line?
  • (b) Why does the proof introduce the set J?
  • (c) Run the proof on An:={n,n+1} for n∈N, with the lists c(n)(m):=n for odd m and c(n)(m):=n+1 for even m. What is J, and what is F(3,2)?
  • (d) State the idea of the proof in two sentences.
  • (e) Is Axiom 3.3.1 needed to show that ⋃n∈NAn is countable when every An is a subset of N? Justify your answer.

Solution.

  • (a) The line “By Axiom 3.3.1, applied to the family (Sn)n∈J, there is a function c on J with c(n)∈Sn”. There I=J, the set of indices with An≠∅, and the sets of the axiom are the Sn, the sets of surjections N→An. The axiom chooses lists, not elements of the An.

  • (b) The axiom applies only to families of non-empty sets. If An=∅, there is no function N→An at all (Proposition 1.4.2 (b)), so Sn=∅, and the family (Sn)n∈N would not qualify. Empty sets add nothing to the union, so restricting to J loses nothing.

  • (c) Every An is non-empty, so J=N. The pair (3,2) has m=2 even, so F(3,2)=c(3)(2)=3+1=4. (Each c(n) is onto {n,n+1}: c(n)(1)=n and c(n)(0)=n+1.)

  • (d) Choose, with the axiom, a list of each non-empty An, all at once. The lists turn the countable grid J×N into a surjection onto the union, so the union is countable.

  • (e) No. The union is a subset of N, so it is countable by Proposition 3.2.3. (Even the proof can run without the axiom: hA(m):=m for m∈A and hA(m):=minA otherwise (Theorem 2.1.3) is a rule that maps N onto any non-empty A⊆N.)

B. Practice

Exercise (B1: Which constructions need choice?)

Determine which of the following constructions need Axiom 3.3.1. Justify your answer.

  • (a) Choose a real number in each interval (n,n+1), n∈N.
  • (b) Choose an element of each non-empty subset of N.
  • (c) Choose an element of each non-empty subset of R.
  • (d) Choose one of the two square roots of each positive real number.

Solution.

  • (a) No. The rule n↦n+12 names an element of each interval, since n<n+12<n+1.

  • (b) No. The rule “the least element” names one, by Theorem 2.1.3: S↦minS is a choice function, defined by specification.

  • (c) Yes, as far as this book is concerned. The rule “the least element” fails, since (0,1) has no least element, and no rule is known that names an element of every non-empty set of reals. A proof that needs such a function uses the axiom, and says so.

  • (d) No. The rule “the positive one” names one root of each y>0: y↦y.

Exercise (B2: Finite sequences)

Prove that the set of all finite sequences of natural numbers is countable, and say whether your proof uses Axiom 3.3.1. Here a finite sequence of length k∈N is a function {1,…,k}→N, represented by its graph, a subset of Z>0×N; the sequence of length 0 is ∅.

Hint: Theorem 2.3.1, together with one fixed surjection N→N×N.

Solution. Let Seq be the set of x∈P(Z>0×N) such that x is the graph of a function {1,…,k}→N for some k∈N (Definition 1.1.3, Definition 1.2.2). This k is determined by x, since {1,…,k} is the set of first coordinates of x, and k is its number of elements (Corollary 3.1.4); call it the length of x, and let Seqk be the set of elements of length k. So Seq=⋃k∈NSeqk, and Seq0={∅}.

With choice. Each Seqk is countable (for k≥2 it is in bijection with Nk, by x↦(x(1),…,x(k)); Seq1 with N; Seq0 has one element), so Theorem 3.3.3 (a) applies. This route uses Axiom 3.3.1, through the theorem.

Without choice. Fix one surjection σ:N→N×N (Theorem 3.2.6, Definition 3.2.1; a single ∃E), and write σ(n)=(σ1(n),σ2(n)). For x∈Seq of length k and m∈N, let x⌢m:=x∪{(k+1,m)}, the sequence x with m appended; it has length k+1. Every y∈Seqk+1 is x⌢m for x the restriction of y to {1,…,k} and m=y(k+1).

Let X:=SeqN, the set of functions N→Seq, let a∈X be the constant function with value ∅, and define g:N×X→X by g(k,s)(n):=s(σ1(n))⌢σ2(n). By Theorem 2.3.1 there is a function k↦sk from N to X with s0=a and sk+1(n)=sk(σ1(n))⌢σ2(n) for all k,n∈N.

Claim: for every k∈N, sk maps N onto Seqk. By Logic and Proof, Axiom 4.2.1 on k. For k=0, every value of s0 is ∅, and Seq0={∅}. Assume the claim for k. Each value sk+1(n)=sk(σ1(n))⌢σ2(n) has length k+1, because sk(σ1(n)) has length k. Let y∈Seqk+1, say y=x⌢m with x∈Seqk. By the hypothesis there is j with sk(j)=x, and since σ is onto there is n with σ(n)=(j,m). Then sk+1(n)=sk(j)⌢m=y. This proves the claim.

Now n↦sσ1(n)(σ2(n)) maps N onto Seq: for y∈Seqk, the claim gives j with sk(j)=y, and some n has σ(n)=(k,j). So Seq is countable. One surjection was named, and the lists sk were defined from it by recursion: no choice is used. Either route earns full credit if the use of choice is reported correctly.

Exercise (B3)

A rational point of the plane is a point of Q×Q. Prove that the set of lines in the plane that pass through two different rational points is countable. Does your proof use Axiom 3.3.1?

Solution. Let D:={(p,q)∈(Q×Q)×(Q×Q):p≠q}. The set Q×Q is countable by Theorem 3.2.8 and Corollary 3.2.7; so is its product with itself, again by Corollary 3.2.7, and so is the subset D (Proposition 3.2.3). For (p,q)∈D, let line(p,q) be the line through p and q, as a subset of R2: line(p,q):={p+t(q−p):t∈R}. Two different points lie on exactly one line (school geometry), so the lines in question form the image line(D), countable by Proposition 3.2.4. The map line is a formula, so no choice is used.

C. Going deeper

Exercise (C1: Exit check: countable unions)

Prove that if An is countable for every n∈N, then so is ⋃n∈NAn. Point to the step of your proof that uses Axiom 3.3.1.

Solution. Let U:=⋃n∈NAn and J:={n∈N:An≠∅}. If J=∅, then U=∅, which is countable. Let J≠∅. For n∈J, the set Sn of surjections N→An is non-empty (Definition 3.2.1). By Axiom 3.3.1, applied to (Sn)n∈J, there is a function c on J with c(n)∈Sn for every n∈J: a list of every An at once, which no finite number of ∃E’s gives. This is the step that uses the axiom.

Put F(n,m):=c(n)(m)∈An⊆U for (n,m)∈J×N. It is onto U: if x∈U, then x∈An for some n∈N (Definition 1.2.4), so n∈J, and c(n)(m)=x for some m, as c(n) is onto An. Since J⊆N is countable (Proposition 3.2.3), J×N is countable (Corollary 3.2.7 (a)) and non-empty, so some s:N→J×N is onto (Definition 3.2.1), and so is F∘s:N→U (Theorem 1.4.4 (b)). This is the proof of Theorem 3.3.3 (a).

Marking scheme. (10 points) - 1: handles the empty sets: the case where every An is empty, and the restriction to the non-empty ones before choosing. - 3: obtains, by Axiom 3.3.1, a surjection onto An for every n simultaneously, and says at that line that the axiom is used. - 2: defines a map from a set of pairs (or another index set) to the union. - 2: shows that this map is onto the union. - 2: shows that the index set is countable and non-empty, citing the product result, and concludes. Through injections ιn:An→N: 1 for noting that they exist for every n, empty An included (the empty function), so nothing is discarded; 3 for choosing all ιn by Axiom 3.3.1, flagged; 2 for x↦(nx,ιnx(x)) into N×N, with nx the least n with x∈An (Theorem 2.1.3); 2 for its injectivity; 2 for concluding with Theorem 3.2.6 and Theorem 3.2.2, (ii) ⇒ (i). Fatal errors (0 for the step): “for each n let fn be a list of An” with no mention of choice, an unflagged infinite ∃E that no rule licenses (0 for the choice step); listing N×N row by row, as in Example (Listing the rows one after another) (0 for the countability step).

Exercise (C2: Algebraic numbers without choice)

Prove Theorem 3.3.4 without using Axiom 3.3.1.

Solution (Hint 1). Use Exercise (B2: Finite sequences) to obtain, without choice, one surjection from N onto all coefficient tuples of all lengths together.

Solution (Hint 2). For an algebraic r, let n(r) be the least index whose tuple has r as a root; it exists by Theorem 2.1.3.

Solution. Use the notation of Theorem 3.3.4, and let Alg be the set of algebraic numbers.

One list of all coefficient tuples. Let ZSeq be defined as Seq in Exercise (B2: Finite sequences), with Z in place of N, and let z:N→Z be the bijection of Theorem 3.2.8. Sending x∈Seq to the sequence i↦z(x(i)) maps Seq onto ZSeq (use z−1 entrywise to find a preimage), so ZSeq is countable without choice, by that exercise and Proposition 3.2.4. Since ZSeq is non-empty (it contains ∅, the sequence of length 0), fix one surjection μ:N→ZSeq (Definition 3.2.1), a single ∃E. A sequence y of length d+1≥2 is read as the tuple c=(y(1),…,y(d+1))∈Zd+1, and every such tuple arises; write py:=pc and R(y):=R(c). Call n∈N good for r∈R if μ(n) has length at least 2, is non-zero, and pμ(n)(r)=0. Then r is algebraic if and only if some n is good for r, since μ is onto.

An injection, by rules. For r∈Alg, let n(r) be the least n∈N that is good for r (Theorem 2.1.3), and let ρ(r):=the number of elements of {s∈R(μ(n(r))):s<r}, well defined because this set is a subset of the finite set R(μ(n(r))) (Proposition 3.1.6, Corollary 3.1.4). Both are named by rules, so r↦(n(r),ρ(r)) is a function Alg→N×N, defined by specification.

It is injective. Let r,r′∈Alg with n(r)=n(r′) and ρ(r)=ρ(r′); call this common index n, and suppose r≠r′, say r<r′. Both are roots of pμ(n). The set {s∈R(μ(n)):s<r} is a subset of {s∈R(μ(n)):s<r′}, and a proper one, since r lies in the second and not in the first. By Proposition 3.1.6, the first has fewer elements: ρ(r)<ρ(r′), a contradiction. So r=r′.

Following it with the injection (m,k)↦2m3k of Theorem 3.2.6 gives an injection Alg→N (Theorem 1.4.4 (a)), so Alg is countable by Theorem 3.2.2, (ii) ⇒ (i). Apart from the single surjection μ, every object was named by a rule, so Axiom 3.3.1 is not used.

Marking scheme. (10 points) - 3: produces, without choice, one surjection (or injection) relating N to the coefficient tuples of all degrees at once, citing Exercise (B2: Finite sequences) or an explicit coding. - 3: assigns to each algebraic number its data (an index of a polynomial and a position among its roots) by rules, such as a least index and a count or the increasing order of the finite root set. - 4: proves that the resulting map is injective (or a map onto Alg surjective), concludes, and says why no step uses choice. Fatal errors (0 for the step): citing Theorem 3.3.3, which uses the axiom; “for each polynomial (or each d), take a list” with no rule given.

Exercise (C3: Finite unions)
  • (a) Prove, without Axiom 3.3.1, that for every finite set I and every family (Ai)i∈I of countable sets, ⋃i∈IAi is countable.
  • (b) Explain in two sentences why your induction does not prove Theorem 3.3.3.

Solution.

  • (a) We use Logic and Proof, Axiom 4.2.1 on the number of elements of I. Let P(n) be: “for every set I with n elements and every family (Ai)i∈I of countable sets, ⋃i∈IAi is countable”.

    Base case. A set I with 0 elements is empty, so ⋃i∈IAi=∅, which is countable.

    Inductive step. Assume P(n), and let I have n+1 elements and (Ai)i∈I be a family of countable sets. Since n+1≥1, I≠∅; pick i0∈I. Then I′:=I∖{i0} has n elements (Corollary 3.1.7), so B:=⋃i∈I′Ai is countable by P(n), applied to the family (Ai)i∈I′. Since I=I′∪{i0}, an element lies in some Ai with i∈I exactly when it lies in B or in Ai0, so ⋃i∈IAi=B∪Ai0, which is countable by Proposition 3.2.5. So P(n+1) holds, and Logic and Proof, Axiom 4.2.1 gives P(n) for every n. Each step makes finitely many ∃E’s, so no choice is used.

  • (b) The induction proves the statement for each finite number n of sets, and N is not finite (Example (Hilbert’s Hotel)), so no instance of P(n) is about the family (An)n∈N. Writing ⋃n∈NAn as the union of the finite unions A0∪⋯∪Ak does not help, since that needs a list of every finite union at once, which is a choice of infinitely many lists again.