Finite Sets and Counting: Chris Preston
Finite Sets and Counting: Chris Preston
Finite Sets and Counting: Chris Preston
1 Introduction 2
2 Finite sets 12
3 Counting systems 19
References 55
1 Introduction
The notion of what it means for a set to be finite is usually presented within
the framework of the natural numbers N = {0, 1, . . . } (and for our purposes it
is convenient to regard 0 as being a natural number, so 0 can be used to count
the number of elements in the empty set). The standard approach is to define
a set A to be finite if there exists n ∈ N and a bijective mapping h : [n] → A,
where [0] = ∅ and [n] = {0, 1, . . . , n − 1} for each n ∈ N with n 6= 0. If this
approach appears to be rather straightforward then it is probably because the
various facts about N which are needed to define the set {0, 1, . . . , m} have been
taken for granted.
We are going to define finite sets within a framework which does not involve the
natural numbers. (The definition will of course meet the obvious requirement of
being equivalent to the usual one.) One reason for doing this is that it seems
somewhat strange to have to define finite sets in terms of the infinite set N,
and in fact we don’t want to assume in general anything about the existence
of such sets. The definition of being finite to be used here is essentially that
employed by Whitehead and Russell in Principia Mathematica [6]. There are
similar definitions which also appeared in the first decades of the previous century
and excellent treatments of this topic can be found in Levy [3] and Suppes [4].
Let us start by discussing a simple situation involving counting. This is done very
informally, taking for granted all the standard properties of the natural numbers.
The aim is to make a plausible transition from the old to the new definition of
being finite.
Suppose there is a box containing table-tennis balls, and we want to know how
many balls there are in the box. Let us count them by taking them out of the
box one at a time and marking them, say with a red felt marker, marking the
first ball taken out with a 1, the second with a 2 and so on. Eventually we take
the last ball out and mark it, and the number we write on this last ball tells us
how many balls there were in the box.
Now repeat the above procedure: Put the balls back in the box, mix them up
and then take them out again one by one, this time marking them with a green
felt marker. Then the last ball taken out will be marked with the same number
(now in green) that appears on the last ball that was taken out when the red
marker was used.
Each ball now has two numbers on it, one written in red and one in green,
and in general there will be no discernible relationship between the red and
green numbers to be found on any ball. However, this is not important; what is
important is that the number written on the last ball in red is the same as the
number written on the last ball in green. This is one of the reasons that counting
makes sense.
2
1 Introduction 3
red number: 1 2 3 4 5 6 7 8 9
green number: 8 9 3 2 4 6 5 1 7
The number written on the last ball in red is 9, which is the same as the number
written on the last ball in green. Note that the last ball taken out when using
the red marker was the 7th ball taken out using the green marker, and the last
ball taken out when using the green marker was the 2nd ball taken out using
the red marker. For 9 balls there are 9! = 362880 different ways of taking the
balls one at a time out of the box. However, they all give the same result as
far as determining the number of balls is concerned: The last ball taken out and
counted will always be assigned the number 9.
The above discussion illustrates a basic counting principle which says that if a set
of objects can be counted then it doesn’t matter in which order the counting is
carried out. Most people’s experience of counting things leads them at some point
to accept the principle as something which is true about the world. Thereafter
they are usually not even aware of the role which it plays.
Note that the basic counting principle only applies to sets of objects which can
be counted in the sense that the process of removing the objects from the set
one at a time will eventually terminate. Of course, it is not really clear what
‘eventually terminates’ means, but intuitively it characterises the finite sets. Let
us call a set with this rather vague property N-finite in order to distinguish it
from the new definition of being finite to be given below.
We next reformulate the basic counting principle in a form in which the natural
numbers do not occur. Consider the set S whose elements are the balls in the
box, and suppose the box contains N balls. In order to refer to the balls we
assume that the numbers made with the red felt marker are still there, and we
refer to the ball with the number n written on it in red by bn .
Let f : S → S be an injective mapping, so f (s1 ) 6= f (s2 ) whenever s1 6= s2 . We
can write this mapping as a table:
bn b1 b2 b3 b4 ··· bN −1 bN
f (bn ) f (b1 ) f (b2 ) f (b3 ) f (b4 ) ··· f (bN −1 ) f (bN )
bn b1 b2 b3 b4 b5 b6 b7 b8 b9
f (bn ) b8 b9 b3 b2 b4 b6 b5 b1 b7
1 Introduction 4
In this example the ball marked with the red 1 is mapped to the ball marked
with the red 8, the ball marked with the red 2 is mapped to the ball marked with
the red 9, and so on.
Now do the following: Find the ball f (b1 ) and write 1 on it in blue, then find
the ball f (b2 ) and write 2 on it in blue. Repeat this until finally finding the ball
f (bN ) and writing N on it in blue. Then for each number between 1 and N there
is exactly one ball with this number written on it in blue. (No ball can have more
than one blue number written on it because the mapping f is injective.)
For the above example this means that the ball with the red 8 also has the blue
1 on it, the ball with the red 9 also has the blue 2 on it, and so on:
red number: 8 9 3 2 4 6 5 1 7
blue number: 1 2 3 4 5 6 7 8 9
Now count the balls in the box using the the blue numbers: First take the ball
marked with the blue 1 out of the box, then the ball marked with the blue 2
and so on. Eventually the ball marked with the blue N will be taken out, and
then there can be no more balls left in the box: If this were not the case then we
could continue the counting by taking the remaining balls out in any order and
would conclude that there were more than N balls originally in the box, which
by the basic counting principle is not possible. But if there are no more balls left
in the box after the ball marked with the blue N is taken out then every ball is
marked with a blue number. It follows that the mapping f is surjective, since a
ball marked with a blue n is the image under f of the ball marked with a red n.
Thus f , being injective and surjective, is bijective.
Let us say that a set A is tame if every injective mapping f : A → A is bijective.
We have thus seen that the basic counting principle implies that any N-finite set
is tame.
The converse also holds: Suppose that A is an N-finite set which is tame and
consider two ways of counting out the elements of A. The first time we count we
mark the elements in red and suppose that the last element is marked with the
number M; the second time we mark the elements in green and suppose that the
last element is marked with the number N. Without loss of generality we can
assume that M ≤ N and so we can define a mapping f : A → A as follows: For
each number m between 1 and M let the image under f of the element marked
with m in red be the element marked with m in green. Then f is injective and
thus bijective, since A is tame, which implies that M = N. This shows that the
basic counting principle is valid for A.
We have now established that for N-finite sets the basic counting principle is
equivalent to being tame, and note that being tame has nothing to do with the
1 Introduction 5
natural numbers. Let us next consider an important property of tame sets which
will be used to help motivate the new definition of being finite.
Lemma 1.1 Let A be tame and b be some element not in A. Then A′ = A ∪ {b}
is also tame.
Note that as a very special case the empty set ∅ is tame, since there is only
one mapping ǫ : ∅ → ∅ which is trivially bijective. For the same reason each
singleton set {a} is tame. This also follows from Lemma 1.1, since ∅ is tame and
{a} = ∅ ∪ {a}.
Let A be an N-finite set; then we can apply Lemma 1.1 to show that A is tame
without appealing to the basic counting principle: Start with the set A and the
empty set ∅; next remove an element a1 from A and add it to ∅ to give the set
∅ ∪ {a1 } = {a1 }; then remove an element a2 from A \ {a1 } and add it to {a1 } to
give the set {a1 } ∪{a2 } = {a1 , a2 }. Repeat the procedure, at each stage removing
an element from what is left from A and adding it to the set consisting of the
elements of A which have already been removed. This process will eventually
come to a halt, because at some point all the elements will have been removed
from A. The other set will then consist of all these elements and so will be equal
to A. As noted above ∅ is tame; thus by Lemma 1.1 {a1 } = ∅ ∪ {a1 } is tame
and so again by Lemma 1.1 {a1 , a2 } = {a1 } ∪ {a2 } is tame. Repeating this until
the original set is empty, Lemma 1.1 shows that at each stage the set consisting
of those elements which have been removed from A will be tame, and therefore
A itself must have the property.
The set of all subsets of a set A (the power set of A) will be denoted as usual
by P(A). The new definition of being finite will involve what is known as an
1 Introduction 6
Proposition 1.1 Every finite set is tame. Thus if A is finite then every injective
mapping f : A → A is bijective.
Lemma 1.2 Let A be finite and b be some element not in A. Then A′ = A ∪ {b}
is also finite.
Lemma 1.2 shows that sets defined by explicitly giving each of their elements
are finite. For example, consider the set A = {a, b, c, d}, where the elements
a, b, c, d are all different. Then ∅ is finite implies {a} = ∅ ∪ {a} is finite
implies {a, b} = {a} ∪ {b} is finite implies {a, b, c} = {a, b} ∪ {c} is finite implies
A = {a, b, c, d} = {a, b, c} ∪ {d} is finite.
1 Introduction 7
In Section 2 we establish the properties of finite sets, using the above definition
of being finite. There is nothing surprising here: Every subset of a finite set is
finite, if A and B are finite sets then so are A ∪ B, A × B and B A (the set of all
mappings from A to B) and the power set of a finite set is finite. If A is a finite
set and f : A → A a mapping then f is injective if and only if it is surjective
(and thus if and only if it is bijective). If A is finite and there exists an injective
mapping f : B → A or a surjective mapping f : A → B then B is also finite. If
A and B are finite sets then either there exists an injective mapping f : A → B
or an injective mapping g : B → A, and if there exists both an injective mapping
f : A → B and an injective mapping g : B → A then A ≈ B, where we write
A ≈ B if there exists a bijective mapping h : A → B. If B is a subset of a finite
set A with B ≈ A then B = A. The proofs are mostly very straightforward and
they all follow the same pattern (and so tend to become somewhat monotonous).
Having developed a theory of finite sets we turn in Section 3 to the question of
what it means to count the elements in such a set. Of course, counting is usually
associated with the natural numbers, and let us start by giving an informal
discussion of this case. Let s : N → N be the successor operation (with s(0) = 1,
s(1) = 2 and so on). For each finite set A there is an element #(A) of N which
tells us how many elements A contains, and which is usually referred to as the
cardinality of A. The assignment A 7→ #(A) has the properties that #(∅) = 0
and #(A ∪ {a}) = s(#(A)) whenever A is a finite set and a is an element not in
A. Moreover, it is uniquely determined by these requirements. The importance
of the assignment # is that if A and B are finite sets then #(B) = #(A) if and
only if B ≈ A.
Note that the existence of # implies that the basic counting principle introduced
above is valid. For example, if A = {a, b, c} then
unique iterator # for each counting system (X, f, x0 ) and it has the property
that #(B) = #(A) whenever A and B are finite sets with B ≈ A. (These
statements will be established in Theorem 3.1 and Proposition 3.1 respectively.)
The iterator # for (N, s, 0) (with #(A) the cardinality of A) has the additional
crucial property that B ≈ A whenever A and B are finite sets with #(B) = #(A).
If an iterator # for a counting system (X, f, x0 ) has this property then we will
say that # is complete. In general # will not be complete, as can be seen by
looking at the trivial example in which X consist of the single element x0 , and so
f is the mapping with f (x0 ) = x0 . Then #(A) = x0 for each finite set A and here
#(B) = #(A) for all finite sets A and B. The completeness of the iterator for
(N, s, 0) must therefore depend on some special properties of the natural numbers.
These come about because the counting system (N, s, 0) is assumed to satisfy what
are usually called the Peano axioms (although, as was acknowledged by Peano,
they were introduced earlier by Dedekind in [1]).
One of these axioms is the principle of mathematical induction, which holds for a
counting system (X, f, x0 ) if whenever a proposition P is given about the elements
of X (meaning for each x ∈ X we have a proposition P(x)) such that
(⋄) P(x0 ) holds,
(⋆) P(f (x)) holds for every x ∈ X for which P(x) holds,
then P(x) holds for all x ∈ X. However, it turns out to be more convenient to
work with the following property, which Lemma 1.3 below shows is equivalent to
the principle of mathematical induction holding: A counting system (X, f, x0 ) is
said to be minimal if the only f -invariant subset of X containing x0 is X itself,
where a subset Y ⊂ X is f -invariant if f (Y ) ⊂ Y .
Lemma 1.3 The principle of mathematical induction holds for a counting system
if and only if it is minimal.
Proof Let (X, f, x0 ) be a counting system and let P be a proposition about the
elements of X satisfying (⋄) and (⋆). Then the subset X ′ = {x ∈ X : P(x) holds}
of X is f -invariant and contains x0 . Therefore if (X, f, x0 ) is minimal then
X ′ = X, and which means the principle of mathematical induction holds for
(X, f, x0 ). Suppose conversely that (X, f, x0 ) is not minimal; then there exists
an f -invariant subset X ′ of X containing x0 with X ′ 6= X. For each x ∈ X let
P(x) be the proposition that x ∈ X ′ ; then (⋄) and (⋆) are satisfied by P, but P(x)
does not hold for x ∈ X \ X ′ and so the principle of mathematical induction does
not hold for (X, f, x0 ).
The other two Peano axioms, when stated in terms of a counting system (X, f, x0 ),
require that the mapping f should be injective and that f (x) 6= x0 for all x ∈ X
1 Introduction 9
(i.e., that x0 ∈/ f (X)), and a counting system satisfying these two conditions
will be called standard. The Peano axioms thus require that (N, s, 0) should be a
minimal standard counting system, and such a counting system will be called a
Dedekind system.
It is the second property which implies completeness: Theorem 3.2 states that
if (X, f, x0 ) is standard then the unique iterator for (X, f, x0 ) is complete. This
confirms that the iterator for (N, s, 0) is complete.
Although the requirement that the counting system be minimal is not involved
here, it will be needed in Theorem 3.3, which states that if (X, f, x0 ) is a Dedekind
system then for each counting system (Y, g, y0) there exists a unique mapping
h : X → Y with h(x0 ) = y0 such that h ◦ f = g ◦ h. This result, which is known
as the recursion theorem (at least when applied with (X, f, x0 ) = (N, s, 0)) is of
fundamental importance, since it provides the justification for making recursive
or inductive definitions.
Theorem 3.5 (a result of Lawvere [2]) will show that (X, f, x0 ) being a Dedekind
system is necessary for the statement in the recursion theorem to hold, and so it
is worth noting that the existence of a Dedekind system depends on the existence
of a non-finite set. More precisely, a set Y is said to be Dedekind-infinite if there
exists a mapping g : Y → Y which is injective but not surjective, and thus by
Proposition 1.1 a Dedekind-infinite set cannot be finite.
For the Dedekind system (N, s, 0) we have [0] = ∅ and [n] = {0, 1, . . . , n − 1}
for each n ∈ N with n 6= 0. This shows that the definition of a finite set being
employed here is equivalent to the usual one.
Section 4 gives a more detailed account of minimal counting systems, and in
particular of those which are not Dedekind systems. It is shown in Theorem 4.1
that a minimal counting system (X, f, x0 ) is standard (and thus a Dedekind
system) if and only if the iterator is complete and that this is the case if and only
if the set X is not finite. The rest of the section is taken up with an analysis of
minimal counting systems (X, f, x0 ) for which X is finite. There are two cases.
In the first case f is bijective (and so x0 ∈ f (X)):
xℓ
• •
A
A
A
A
A
• x0 =f (xℓ ) A•
A
A
A
A
A
A• •
x1 =f (x0 ) x2 =f (x1 )
x̆ℓ
• •
A
A
A
A
A
• • • • x̆0 =f (x̆ℓ )=f (xt ) A•
x0 x1 =f (x0 ) xt A
A
A
A
A
A• •
x̆1 =f (x̆0 )
Theorem 5.1 deals with the addition and states that there exists a unique binary
operation ⊕ on X such that
whenever A and B are disjoint finite sets, where # is the iterator for (X, f, x0 ).
This operation ⊕ is both associative and commutative, x ⊕ x0 = x for all x ∈ X
and for all x1 , x2 ∈ X there is an x ∈ X such that either x1 = x2 ⊕ x or
x2 = x1 ⊕ x. Moreover, ⊕ is the unique binary operation ⊕ on X such that
(a0) x ⊕ x0 = x for all x ∈ X.
(a1) x ⊕ f (x′ ) = f (x ⊕ x′ ) for all x, x′ ∈ X.
Theorem 5.2 treats the multiplication and states that there exists a unique binary
operation ⊗ on X such that
for all finite sets A and B. This operation ⊗ is both associative and commutative,
x ⊗ x0 = x0 and x ⊗ f (x0 ) = x for all x ∈ X (and so f (x0 ) is a multiplicative
unit) and the distributive law holds for ⊕ and ⊗: For all x, x1 , x2 ∈ X
x ⊗ (x1 ⊕ x2 ) = (x ⊗ x1 ) ⊕ (x ⊗ x2 ) .
Finally, Section 6 presents alternative proofs for Theorems 5.1 and 5.2.
2 Finite sets
Let us first repeat the definition to be used here of a set being finite.
The set of all subsets of a set A (the power set of A) will be denoted as usual
by P(A). A subset K of P(A) is called an inductive system in P(A) (or just
an inductive system if A can be determined from the context) if ∅ ∈ K and
B ∪ {a} ∈ K for all B ∈ K, b ∈ A \ B. In particular, P(A) itself is always an
inductive system. A set A will be called finite if P(A) itself is the only inductive
system. As was already mentioned, this definition is essentially that employed
by Whitehead and Russell [6].
To keep the section self-contained let us also repeat Lemma 1.2.
Lemma 2.1 Let A be finite and b be some element not in A. Then A′ = A ∪ {b}
is also finite.
Most proofs about finite sets take the following form: To show that every finite
set A has a particular property we consider the subset K of P(A) consisting of
those subsets of A which have the property. We then show that K is an inductive
system and conclude that K = P(A). In particular, it then follows that A ∈ K,
which shows that A has the property. This means that what we usually need is
not that P(A) is the only inductive system, but the apparently somewhat weaker
statement that every inductive system in P(A) contains A. However, as the next
result shows, this statement is actually equivalent to A being finite.
Lemma 2.2 The set A is finite if and only if every inductive system in P(A)
contains A.
Proof If A is finite then P(A) is the only inductive system, and P(A) contains
A. Conversely, suppose that every inductive system in P(A) contains A, and
consider the system of subsets K = {B ∈ P(A) : B is finite}. Then ∅ ∈ K and if
B ∈ K and a ∈ A \ B then by Lemma 2.1 B ∪ {a} ∈ K. Thus K is an inductive
system and hence A ∈ K, i.e., A is finite.
We now establish the usual properties of finite sets. The proofs are mostly very
straightforward and they all follow the same pattern (and so tend to become
somewhat monotonous).
12
2 Finite sets 13
Proof (1) Let K consist of those subsets C of A such that if D is any set for
which there exists an injective mapping f : D → C then D is finite. Then ∅ ∈ K,
since there can only exist a mapping f : D → ∅ if D = ∅ and the empty set ∅
is finite. Let C ∈ K and a ∈ A \ C. Consider a set D for which there exists an
injective mapping f : D → C ∪ {a}. There are two cases:
(α) f (d) ∈ A for all d ∈ D. Here we can consider f as a mapping from D to C
and as such it is still injective. Thus D is finite since C ∈ K.
(β) There exists an element b ∈ D with f (b) = a. Put D ′ = D \ {b}. Now since
f is injective it follows that f (d) 6= a for all d ∈ D ′ , and thus we can define a
mapping g : D ′ → C by letting g(d) = f (d) for all d ∈ D ′ . Then g : D ′ → C is
also injective (since f : D → C ∪ {a} is) and therefore D ′ is finite since C ∈ K
holds. Hence by Lemma 2.1 D = D ′ ∪ {b} is finite.
This shows that C ∪ {a} ∈ K and therefore K is an inductive system in P(A).
Thus K = P(A) and in particular A ∈ K, which means that if there exists an
injective mapping f : B → A then B is also finite.
(2) Let K consist of those subsets C of A such that if D is any set for which
there exists a surjective mapping f : C → D then D is finite. Then ∅ ∈ K, since
there can only exist a surjective mapping f : ∅ → D if D = ∅ and the empty
set ∅ is finite. Let C ∈ K and a ∈ A \ C. Consider a set D for which there exists
a surjective mapping f : C ∪ {a} → D. There are again two cases:
2 Finite sets 14
Proposition 2.6 If A and B are finite sets then so is B A , the set of all mappings
from A to B.
Proof Since B A is a subset of P(A × B) and by Propositions 2.4 and 2.5 the set
P(A × B) is finite it follows from Proposition 2.1 that B A is finite.
Proof We first show that an injective mapping is bijective. Let K consist of those
subsets B of A having the property that every injective mapping f : B → B is
bijective. Then ∅ ∈ K, since the only mapping f : ∅ → ∅ is bijective. Let
B ∈ K and a ∈ A \ B; consider an injective mapping f : B ∪ {a} → B ∪ {a}.
There are two cases:
(α) f (B) ⊂ B. Then the restriction f|B : B → B of f to B is injective and
hence bijective, since B ∈ K. If f (a) ∈ B then f (b) = f|B (b) = f (a) for some
b ∈ B, since f|B is surjective, which contradicts the fact that f is injective. Thus
f (a) = a, and it follows that f is bijective.
(β) f (B) 6⊂ B. In this case there exists b ∈ B with f (b) = a and, since f is
injective, we must have f (c) ∈ B for all c ∈ B \ {b} and f (a) ∈ B. This means
there is an injective mapping g : B → B defined by letting
f (c) if c ∈ B \ {b} ,
g(c) =
f (a) if c = b
and then g is bijective, since B ∈ K. Therefore f is again bijective.
This shows that B ∪ {a} ∈ K and thus that K is an inductive system. Hence
K = P(A) and in particular A ∈ K, i.e., every injective mapping f : A → A is
bijective.
We now show a surjective mapping is bijective, and here let K consist of those
subsets B of A having the property that every surjective mapping f : B → B is
bijective. Then ∅ ∈ K, again since the only mapping f : ∅ → ∅ is bijective. Let
B ∈ K and a ∈ A \ B; consider a surjective mapping f : B ∪ {a} → B ∪ {a}. Let
D = {b ∈ B : f (b) = a}; there are three cases:
(α) D = ∅. Then f (a) = a, since f is surjective, thus the restriction f|B : B → B
of f to B is surjective and hence bijective (since B ∈ K holds), and this means
f is bijective.
(β) D 6= ∅ and f (a) ∈ B. Here we can define a surjective mapping g : B → B
by letting
f (c) if c ∈ B \ D ,
g(c) =
f (a) if c ∈ D .
Thus g is bijective (since B ∈ K), which implies that D = {b} for some b ∈ C
and in particular f is also injective.
(γ) D 6= ∅ and f (a) = a. This is not possible since then f (B \ D) = B and so,
choosing any b ∈ D, the mapping h : B → B with
f (c) if c ∈ B \ D ,
h(c) =
b if c ∈ D
would be surjective but not injective (since there also exists c ∈ B \ D with
f (c) = b).
2 Finite sets 16
This shows that B ∪ {a} ∈ K and thus that K is an inductive system. Hence
K = P(A) and in particular A ∈ K, i.e., every surjective mapping f : A → A is
bijective.
Proposition 2.8 Let A and B be finite sets. Then either there exists an injective
mapping f : A → B or an injective mapping g : B → A. Moreover, if there exists
both an injective mapping f : A → B and an injective mapping g : B → A then
A ≈ B.
Proof Let K consist of those subsets C of A for which there either there exists an
injective mapping f : C → B or an injective mapping g : B → C. Then ∅ ∈ K,
since the only mapping f : ∅ → B is injective. Let C ∈ K and let a ∈ A \ C.
There are two cases:
(α) There exists an injective mapping g : B → C. Then g is still injective when
considered as a mapping from B to C ∪ {a}.
(β) There exists an injective mapping f : C → B. If f is not surjective then it
can be extended to an injective mapping f ′ : C ∪ {a} → B (with f ′ (a) chosen to
be any element in B \ f (C)). On the other hand, if f is surjective (and hence
a bijection) then the inverse mapping f −1 : B → C is injective and so is still
injective when considered as a mapping from B to C ∪ {a}.
This shows that B ∪ {a} ∈ K and thus that K is an inductive system. Hence
K = P(A) and in particular A ∈ K, i.e., there either exists an injective mapping
f : A → B or an injective mapping g : B → A.
Suppose there exists both an injective mapping f : A → B and an injective
mapping g : B → A. Then f ◦ g : B → B is an injective mapping, which by
Proposition 2.7 is bijective. In particular f is surjective and therefore bijective,
i.e., A ≈ B.
Lemma 2.3 Let A and B be finite sets. Then there exists either a subset B ′ of
A with B ′ ≈ B or a subset A′ of B with A′ ≈ A.
Proposition 2.10 Let A be a set; then each non-empty subset of P(A) contains
a minimal element if and only if A is finite.
Proof Let A be a finite set and let K consist of those subsets B of A such that
each non-empty subset of P(B) contains a minimal element. Then ∅ ∈ K, since
the only non-empty subset of P(∅) is {∅} and then ∅ is the required minimal
element. Let B ∈ K and a ∈ A\B, and let S be a non-empty subset of P(B∪{a}).
Put S ′ = S ∩ P(B); there are two cases:
(α) S ′ 6= ∅. Here S ′ is a non-empty subset of P(B) and thus contains a minimal
element C which is then a minimal element of S, since each set in S \ S ′ contains
a and so is not a proper subset of C.
(β) S ′ = ∅ (and so each set in S contains a). Put S ′′ = {C ⊂ B : C ∪ {a} ∈ S};
then S ′′ is a non-empty subset of P(B) and thus contains a minimal element C.
It follows that C ′ = C ∪ {a} is a minimal element of S: A proper subset of C ′ has
either the form D with D ⊂ C, in which case D ∈ / S (since each set in S contains
a), or has the form D ∪ {a} with D a proper subset of C and here D ∪ {a} ∈ / S,
′′
since D ∈ /S .
This shows that B ∪ {a} ∈ K and thus that K is an inductive system. Hence
K = P(A) and in particular A ∈ K, i.e., non-empty subset of P(X) contains a
minimal element.
Conversely, suppose A is not finite and let S = {B ∈ P(A) : B is not finite};
then S is non-empty since it contains A. However S cannot contain a minimal
element: If B is a minimal element of S then B 6= ∅, since ∅ is finite. Choose
b ∈ B; then B \ {b} is a proper subset of B and thus B \ {b} ∈
/ S, i.e., B \ {b} is
finite. But then by Lemma 2.1 B = (B \ {b}) ∪ {b} would be finite.
For what we consider in later sections it is useful to employ another technique for
establishing statements about finite sets. This involves the following induction
principle for finite sets which first appeared in a 1909 paper of Zermelo [7]:
2 Finite sets 18
Theorem 2.1 Let P be a proposition about finite sets (meaning that for each
finite set A we have some proposition P(A)). Suppose that
(⋄) P(∅) holds.
(⋆) If A is a finite set for which P(A) holds then P(A ∪ {a}) holds for each
element a ∈/ A.
Then P is a property of finite sets, i.e., P(A) holds for every finite set A.
Proof Let A be a finite set and put K = {B ∈ P(A) : P(B) holds}. In particular
(⋄) implies ∅ ∈ K. Consider B ∈ K (and so P(B) holds) and let a ∈ A \ B;
then P(B ∪ {a}) holds by (⋆), and hence B ∪ {a} ∈ K. This shows that K is
an inductive system in P(A) and so K = P(A). In particular A ∈ K, i.e., P(A)
holds, and since A is arbitrary P(A) holds for every finite set A.
All the properties of finite sets presented above could have been deduced from
Theorem 2.1 (together with Lemma 2.1, which states that A ∪ {a} is finite for
each finite set A and each element a ∈ / A, and the fact that the empty set ∅
is finite). For example, consider Proposition 2.2 which states that if A and B
are finite sets then so is A ∪ B. To establish this using the induction principle
for finite sets regard B as being fixed and for each finite set A let P(A) be the
proposition that A ∪ B is finite. Then:
(⋄) P(∅) holds because ∅ ∪ B = B.
(⋆) Let A be a finite set for which P(A) holds and let a ∈ / A. Now A ∪ B is
finite, since P(A) holds, and thus by Lemma 2.1 (A ∪ B) ∪ {a} is also finite (since
this holds immediately if a ∈ A ∪ B). But (A ∪ {a}) ∪ B = (A ∪ B) ∪ {a}; i.e.,
(A ∪ {a}) ∪ B is finite. This shows that P(A ∪ {a}) holds.
Therefore by Theorem 2.1 P(A) holds for each finite set A, and thus for all finite
sets A, B the set A ∪ B is finite.
The reader is left to check that the proofs of all the other results about finite sets
can be obtained in this manner.
3 Counting systems
Having introduced a theory of finite sets we now turn to the question of what
it means to count the elements in such a set. Let us first recall some of the
definitions made in Section 1.
A triple (X, f, x0 ) consisting of a set X, a mapping f : X → X and an element
x0 ∈ X will be called a counting system. A counting system (X, f, x0 ) is said to
be minimal if the only f -invariant subset of X containing x0 is X itself, where a
subset Y ⊂ X is f -invariant if f (Y ) ⊂ Y . Moreover, it will be called standard
if the mapping f is injective and f (x) 6= x0 for all x ∈ X (i.e., x0 ∈
/ f (X)). The
Peano axioms thus require that (N, s, 0) should be a minimal standard counting
system, and such a counting system will be called a Dedekind system.
Consider a counting system (X, f, x0 ) and for each finite set A let #(A) be an
element of X. Then the assignment A 7→ #(A) will be called an iterator for
(X, f, x0 ) if #(∅) = x0 and #(A ∪ {a}) = f (#(A)) whenever A is a finite set
and a ∈ / A. (This means, for example, that #({a}) = f (x0 ) for each element
a, #({a, b}) = f (f (x0 )) for distinct elements a and b, and so on.) Theorem 3.1
states that there exists a unique iterator # for each counting system (X, f, x0 )
and by Proposition 3.1 #(B) = #(A) whenever A and B.
If the iterator # for (X, f, x0 ) has the additional property that B ≈ A whenever
A and B are finite sets with #(B) = #(A) then we say that it is complete. In
general # will not have this property, as can be seen by looking at the trivial
example in which X consist of the single element x0 , and so f is the mapping with
f (x0 ) = x0 . Then #(A) = x0 for each finite set A and here #(B) = #(A) for all
finite sets A and B. However, Theorem 3.2 states that if (X, f, x0 ) is standard
then the unique iterator is complete.
In this section most of the statements about finite sets will be established with
the help of the induction principle for finite sets (Theorem 2.1). The counting
system (X, f, x0 ) is considered to be fixed in what follows.
Lemma 3.1 For each finite set A there exists a unique A-iterator.
19
3 Counting systems 20
Proof For each finite set A let P(A) be the proposition that there exists a unique
A-iterator.
(⋄) P(∅) holds, since the mapping #∅ : P(∅) → X with #∅ (∅) = x0 is clearly
the unique ∅-iterator.
/ A; put A′ = A ∪ {a}.
(⋆) Let A be a finite set for which P(A) holds, and let a ∈
By assumption there exists a unique A-iterator #A . Now P(A′ ) is the disjoint
union of the sets P(A) and {B ∪ {a} : B ⊂ A} and so we can define a mapping
#A′ : P(A′ ) → X by #A′ (B) = #A (B) and #A′ (B ∪ {a}) = f (#A (B)) for each
B ⊂ A. Then #A′ (∅) = #A (∅) = x0 , and for all B ⊂ A and all b ∈ A \ B
i.e., #A′ (B ′ ∪ {b}) = f (#A′ (B ′ ) for all B ′ ⊂ A′ and b ∈ A′ \ B ′ and this means
that #A′ is an A-iterator in (X, f, x0 ). Let #′A′ be an arbitrary A′ -iterator. Then
in particular #′A′ (B ∪ {b}) = f (#′A′ (B) for all B ⊂ A and all b ∈ A \ B, and from
the uniqueness of the A-iterator #A it follows that #′A′ (B) = #A (B) and thus
also #′A′ (B ∪ {a}) = f (#′A′ (B)) = f (#A′ (B)) = #A′ (B ∪ {a}) for all B ⊂ A, i.e.,
#′A′ = #A′ . This shows that P(A ∪ {a}) holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, i.e., for each finite set A there exists a unique #A -iterator.
Lemma 3.2 Let A and B be finite sets with B ⊂ A; then the unique B-iterator
#B is the restriction of the unique A-iterator #A to P(B), i.e., #B (C) = #A (C)
for all C ∈ P(B).
Now for each finite set A let #A be the unique A-iterator and put #(A) = #A (A).
In particular #(∅) = #∅ (∅) = x0 . For each finite set A and each element a ∈/A
it follows from Lemma 3.2 that
(⋆) Let A be a finite set for which P(A) holds (and so #′ (A) = #(A)) and let
a∈/ A. Then #′ (A∪{a}) = f (#′ (A)) = f (#(A)) = #(A∪{a}) and so P(A∪{a})
holds.
Hence by the induction principle for finite sets P(A) holds for every finite set A,
which means #′ (A) = #(A) for each finite set A, i.e., the iterator A → #(A) for
(X, f, x0 ) is unique. This completes the proof of Theorem 3.1.
Proposition 3.1 If A and B are finite sets with B ≈ A then #(B) = #(A).
Proof For each finite set A let P(A) be the proposition that #(B) = #(A)
whenever B is a finite set with B ≈ A.
(⋄) P(∅) holds since B ≈ ∅ if and only if B = ∅.
(⋆) Let A be a finite set for which P(A) holds and let a ∈
/ A. Consider a finite
set B with B ≈ A ∪ {a}, put b = h(a) and let B = B \ {b}; then B ′ ≈ A, thus
′
Proof For each finite set A let P(A) be the proposition that B ≈ A whenever B
is a finite set with #(B) = #(A).
(⋄) Let B be a finite set with B 6= ∅, let b ∈ B and put B ′ = B \ {b}. Then
#(B) = #(B ′ ∪ {b}) = f (#(B ′ )), and so #(B) 6= x0 , since x0 ∈
/ f (X). Thus
#(B) 6= #(∅), which shows that P(∅) holds, since ∅ ≈ B if and only if B = ∅.
(⋆) Let A be a finite set for which P(A) holds and let a ∈
/ A. Consider a finite set
B with #(B) = #(A ∪ {a}); then #(B) = f (#(A)) ∈ f (X), hence #(B) 6= x0
and so B 6= ∅. Let b ∈ B and put B ′ = B \ {b}; then
and thus #(B ′ ) = #(A), since f is injective, and it follows that B ′ ≈ A, since
P(A) holds. But B = B ′ ∪ {b} with b ∈ / B′, a ∈/ A and B ′ ≈ A, and therefore
′
B = B ∪ {b} ≈ A ∪ {a}. This shows that P(A ∪ {a}) holds.
3 Counting systems 22
Thus by the induction principle for finite sets P(A) holds for every finite set A,
which means that if A and B are finite sets with #(B) = #(A) then B ≈ A.
The next lemma indicates the advantage of having a minimal counting system for
obtaining information using the iterator #. Note that an arbitrary intersection
of f -invariant subsets of X is again f -invariant and X is itself an f -invariant
subset containing x0 . There is thus a least f -invariant subset of X containing
x0 (namely the intersection of all such subsets). If (X, f, x0 ) is minimal then the
least f -invariant subset containing x0 is of course X itself.
In particular, if (X, f, x0 ) is minimal then for each x ∈ X there exists a finite set
A such that x = #(A).
Proof Put X0′ = {x ∈ X : x = #(A) for some finite set A}. Now let X ′ be an
f -invariant subset of X containing x0 and for each finite set A let P(A) be the
proposition that #(A) ∈ X ′ .
(⋄) P(∅) holds since #(∅) = x0 ∈ X ′ .
(⋆) Let A be a finite set for which P(A) holds (and so #(A) ∈ X ′ ) and let a ∈
/ A.
′ ′
Then #(A ∪ {a}) = f (#(A)) ∈ X , since X is f -invariant, and hence P(A ∪ {a})
holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, which means that #(A) ∈ X ′ for each finite set A, i.e., X0′ ⊂ X ′ . In particular,
X0′ ⊂ X0 .
It remains to show that X0′ is itself an f -invariant subset of X containing x0 ,
and clearly x0 ∈ X0′ since x0 = #(∅). Thus let x ∈ X0′ , and so there exists a
finite set A with x = #(A). Let a be an element not in A; it then follows that
#(A ∪ {a}) = f (#(A)) = f (x), which implies that f (x) ∈ X0′ . Hence X0′ is
f -invariant.
Remark: In the above proof, and also below, we use the fact that for each set
A there exists an element a not in A. In fact there must exist an element in
P(A) \ A. If this were not the case then P(A) ⊂ A, and we could define a
surjective mapping f : A → P(A) by letting f (x) = x if x ∈ P(A) and f (x) = ∅
otherwise. But by Cantor’s diagonal argument (which states that a mapping
f : X → P(X) cannot be surjective) this is not possible.
Here is the recursion theorem (which first appeared in Dedekind [1]).
3 Counting systems 23
Theorem 3.3 If (X, f, x0 ) is a Dedekind system then for each counting system
(Y, g, y0) there exists a unique mapping h : X → Y with h(x0 ) = y0 such that
h ◦ f = g ◦ h.
Proof Here we have the unique iterator # for (X, f, x0 ) as well as the unique
iterator #′ for (Y, g, y0). Let x ∈ X; by Lemma 3.3 there exists a finite set A
with x = #(A) (since (X, f, x0 ) is minimal). Moreover, if B is another finite
set with x = #(B) then #(B) = #(A) and hence by Theorem 3.2 B ≈ A
(since (X, f, x0 ) is standard). Therefore by Proposition 3.1 #′ (B) = #′ (A). This
implies there exists a unique mapping h : X → Y such that h(#(A)) = #′ (A)
for each finite set A. In particular, h(x0 ) = h(#(∅)) = #′ (∅) = y0 . Let x ∈ X;
as above there exists a finite set A with x = #(A), and there exists an element
a not contained in A. Hence
and this shows that h ◦ f = g ◦ h. The proof of the uniqueness only uses the fact
that (X, f, x0 ) is minimal: Let h′ : X → Y be a further mapping with h′ (x0 ) = y0
and h′ ◦ f = g ◦ h′ and let X ′ = {x ∈ X : h(x) = h′ (x)}. Then x0 ∈ X ′ , since
h(x0 ) = y0 = h′ (x0 ), and if x ∈ X ′ then h′ (f (x)) = g(h′ (x)) = g(h(x)) = h(f (x)),
i.e., f (x) ∈ X ′ . Thus X ′ is an f -invariant subset of X containing x0 and so
X ′ = X, i.e., h′ = h.
The recursion theorem will now be applied to show that the definition of a finite
set we are working with is equivalent to the usual one. The usual definition of
A being finite is that there exists n ∈ N and a bijective mapping h : [n] → A,
where [0] = ∅ and [n] = {0, 1, . . . , n − 1} for n ∈ N \ {0}. Moreover, if there is a
bijective mapping h : [n] → A, then n is the cardinality of A, i.e., n = #(A), and
so A ≈ [#(A)] for each finite set A. The problem here is to assign a meaning to
the expression {0, 1, . . . , n − 1}, and one way to do this is to make use of the fact
that {0, 1, . . . , n} = {0, 1, . . . , n − 1} ∪ {n} and hence that [s(n)] = [n] ∪ {n} for
all n ∈ N. The corresponding approach works with any Dedekind system.
If X is a set then put F (X) = {A ⊂ X : A is finite}.
Theorem 3.4 Let (X, f, x0 ) be a Dedekind system. Then there exists a unique
mapping [ · ] : X → F (X) with [x0 ] = ∅ such that [f (x)] = [x] ∪ {x} for all
x ∈ X. Moreover, x ∈ / [x] for each x ∈ X and A ≈ [#(A)] holds for each finite
set A. In particular, a set A is finite if and only if A ≈ [x] for some x ∈ X.
Proof If A ∈ F (X) then by Propositions 2.2 and 2.3 (2) {x0 } ∪ f (A) ∈ F (X)
and so there is a mapping F : F (X) → F (X) given by F (A) = {x0 } ∪ f (A) for
3 Counting systems 24
all A ∈ F (X). (Note that here F (A) is the result of applying the mapping F to
the argument A while f (A) = {f (a) : a ∈ A}.) Consider the counting system
(F (X), F, ∅). By Theorem 3.3 there exists a unique mapping [ · ] : X → F (X)
with [x0 ] = ∅ and such that [f (x)] = F ([x]) = {x0 } ∪ f ([x]) for all x ∈ X. Let
X0 = {x ∈ X : [f (x)] = [x] ∪ {x}}. Then
We now consider the converse of the recursion theorem (Theorem 3.3), and for
this it is useful to to be more explicit about the structure preserving mappings
between counting systems. If (X, f, x0 ) and (Y, g, y0) are counting systems then
a mapping π : X → Y is said to be a morphism from (X, f, x0 ) to (Y, g, y0)
if π(x0 ) = y0 and g ◦ π = π ◦ f . This will also be expressed by saying that
π : (X, f, x0 ) → (Y, g, y0) is a morphism.
3 Counting systems 25
Lemma 3.4 (1) For each counting system (X, f, x0 ) the identity mapping idX
is a morphism from (X, f, x0 ) to (X, f, x0 ).
(2) If π : (X, f, x0 ) → (Y, g, y0) and σ : (Y, g, y0) → (Z, h, z0 ) are morphisms
then σ ◦ π is a morphism from (X, f, x0 ) to (Z, h, z0).
Proof (1) This is clear, since idX (x0 ) = x0 and f ◦ idX = f = idX ◦ f .
(2) This follows since (σ ◦ π)(x0 ) = σ(π(x0 )) = σ(y0 ) = z0 and
h ◦ (σ ◦ π) = (h ◦ σ) ◦ π = (σ ◦ g) ◦ π = σ ◦ (g ◦ π) = σ ◦ (π ◦ f ) = (σ ◦ π) ◦ f .
Proof We first show that an initial counting system is minimal, and then that it
is standard.
Thus #P (∅) = {x0 }, #P ({a}) = {x0 , f (x0 )}, #P ({a, b}) = {x0 , f (x0 ), f (f (x0 ))}
for distinct elements a and b, and so on. If A ⊂ B then clearly #P (A) ⊂ #P (B).
A finite set A will be called #-regular if #(B) 6= #(A) for each proper subset B
of A.
The first result shows in particular that for minimal counting systems the converse
of Theorem 3.2 holds.
Lemma 4.1 (1) For each finite set A the set #P (A) is finite.
(2) If A and B are finite sets with A ≈ B then #P (A) = #P (B).
Proof (1) By Proposition 2.4 the set P(A) is finite and # maps P(A) onto
#P (A). Thus by Proposition 2.3 (2) #P (A) is finite.
(2) If h : A → B is a bijection then the mapping h∗ : P(A) → P(B) given by
h∗ (C) = h(C) for each C ∈ P(A) is also a bijection with h∗ (C) ≈ C and hence
by Proposition 3.1 with #(h∗ (C)) = #(C) for each C ∈ P(A). It follows that
#P (A) = #P (B).
27
4 Minimal counting systems 28
Proof If #P (A) = X then #(A ∪ {a}) ∈ #P (A) and so #(A ∪ {a}) = #(B) for
some B ⊂ A. Hence A∪{a} is not #-regular, since B is a proper subset of A∪{a}.
Suppose conversely that A ∪ {a} is not #-regular and so there exists a proper
subset B ′ of A ∪ {a} with #(B ′ ) = #(A ∪ {a}). There then exists B ⊂ A with
B ≈ B ′ and by Proposition 3.1 #(B) = #(B ′ ) = #(A ∪ {a}). Consider the set
X0 = {x ∈ X : x = #(C) for some C ⊂ A} and so in particular x0 = #(∅) ∈ X0 .
Let x = #(C) ∈ X0 with C ⊂ A; if C 6= A then f (x) = f (#(C)) = #(C ∪ {c}),
with c any element in A \ C, and thus f (x) ∈ X0 . On the other hand, if C = A
then f (x) = f (#(A)) = #(A ∪ {a}) = #(B) and again f (x) ∈ X0 , since B ⊂ A.
Thus X0 is an f -invariant subset of X containing x0 and therefore X0 = X, since
(X, f, x0 ) is minimal. But this implies that #P (A) = X.
Proof of Theorem 4.1: (1) ⇒ (5): This follows from Proposition 2.3 (1).
(5) ⇒ (4): This follows from Lemma 4.1 (1).
(4) ⇔ (3): This follows directly from Lemma 4.2, since the empty set is clearly
#-regular.
(3) ⇔ (2): Suppose # is complete, let A be a finite set and B be a subset of A
with #(B) = #(A). Then B ≈ A and hence by Proposition 2.9 B = A. Thus
A is #-regular. Now suppose conversely that each finite set is #-regular and
let A, B be finite sets with #(A) = #(B). Then by Lemma 2.3, and without
loss of generality, there exists C ⊂ A with C ≈ B and so by Proposition 3.1
#(C) = #(B) = #(A). Thus C = A, since A is #-regular, which implies that
A ≈ B. This shows that # is complete.
(3) ⇒ (1): We assume that (X, f, x0 ) is not standard and show there exists a
finite set which is not #-regular. Suppose first that x0 = f (x) for some x ∈ X.
By Lemma 3.3 there exists a finite set A with x = #(A); let a be some element not
in A. Then #(A∪{a}) = f (#(A)) = f (x) = x0 = #(∅) and ∅ is a proper subset
of A ∪ {a}; hence A ∪ {a} is not #-regular. Suppose now that f is not injective
and so there exist x, x′ ∈ X with x 6= x′ and f (x) = f (x′ ). By Lemma 3.3 there
exist finite sets A and B with x = #(A) and x′ = #(B) and by Lemma 2.3 and
Proposition 3.1 we can assume that B ⊂ A. Thus B is a proper subset of A,
since #(A) = x 6= x′ = #(B). Let a ∈ / A; then B ∪ {a} is a proper subset of
A ∪ {a} with #(B ∪ {A}) = f (#(B)) = f (x′ ) = f (x) = f (#(A)) = #(A ∪ {a}),
and hence again A ∪ {a} is not #-regular.
Proof (1) We first show there exists a #-regular finite set A with #P (A) = X.
By Theorem 4.1 there exists a finite set A′ such that #P (A′ ) = X. Therefore the
set S = {C ∈ P(A) : #P (C) = X} is non-empty and so by Proposition 2.10 it
contains a minimal element A, which is in fact #-regular: This holds trivially if
A = ∅, and if A is non-empty and B = A\{a} with a ∈ A then #P (B) 6= X, since
B is a proper subset of A, and hence by Lemma 4.2 A = B ∪ {a} is #-regular.
Put z = #(A); we next show that (X, f, x0 ) is z-minimal, so let X ′ ⊂ X with
x0 ∈ X ′ and f (X ′ \ {z}) ⊂ X ′ , and consider K = {B ∈ P(A) : #(B) ∈ X ′ }. In
particular, ∅ ∈ K, since #(∅) = x0 ∈ X ′ . Now let B ∈ K and b ∈ A \ B; then
B is a proper subset of A, which means #(B) 6= #(A) = z, since A is #-regular.
Hence #(B) ∈ X ′ \ {z} and it follows that #(B ∪ {b}) = f (#(B)) ∈ X ′ . Thus K
is an inductive system and so K = P(A), which implies that X = #P (A) ⊂ X ′ ,
i.e., X ′ = X. Therefore (X, f, x0 ) is z-minimal.
Suppose (X, f, x0 ) is also z ′ -minimal for some z ′ ∈ X. Then, since #P (A) = X,
there exists B ⊂ A with z ′ = #(B) and by Lemma 4.3 #P (B) = X. In particular
z ∈ #P (B) and hence #(A) = z = #(C) for some C ⊂ B. But this is only
possible if C = B = A, since A is #-regular and therefore z ′ = #(B) = #(A) = z,
which shows there exists a unique element z ∈ X such that (X, f, x0 ) is z-minimal.
For the other parts we need the following facts:
4 Minimal counting systems 30
i.e., B ∪ {b} ∈ K, which shows that K is an inductive system and hence that
K = P(A). In particular A ∈ K, i.e., #P (A) ≈ A ∪ {a}.
(2) Let A be #-regular with #P (A), and thus z = #(A). Let x ∈ X \ {z}, and
so x = #(B) for some proper subset B of A. If a ∈ A \ B then by Lemma 4.4 (3)
f (x) = f (#(B)) = #(B ∪ {a}) 6= x0 , since B ∪ {a} 6≈ ∅, and it thus follows that
4 Minimal counting systems 31
f (X \{z}) ⊂ X \{x0 }. On the other hand, if x ∈ X \{x0 } then by Lemma 4.4 (3)
x = #(B) for some non-empty B ⊂ A. Let b ∈ B and put B ′ = B \ {b}; then
x′ = #(B ′ ) ∈ X \ {z}, since B ′ is a proper subset of the #-regular set A, and
f (x′ ) = f (#(B ′ )) = #(B ′ ∪{b}) = #(B) = x. Hence f (X \{z}) = X \{x0 }. Now
let x1 , x2 ∈ X \ {z} with f (x1 ) = f (x2 ); there then exist proper subsets B1 , B2
of A with x1 = #(B1 ) and x2 = #(B2 ) and by Lemma 2.3 and Proposition 3.1,
and without loss of generality, we can assume B2 ⊂ B1 . Let a ∈ A \ B1 ; then
In what follows we assume that X is finite and let z be the unique element given
in Theorem 4.2 such that (X, f, x0 ) is z-minimal; z will be called the end-point
of (X, f, x0 ). Note that z 6= x0 if X 6= {x0 } (since (X, f, x0 ) being x0 -minimal
implies that X = {x0 }). Theorem 4.2 essentially characterises the behaviour of
f on the set X \ {z}; it does not say anything about the value f (z).
z
• •
A
A
A
A
A
• x0 =f (z) A•
A
A
A
A
A
A• •
x1 =f (x0 ) x2 =f (x1 )
4 Minimal counting systems 32
z
• •
A
A
A
A
A
• • • • x̆0 =f (z)=f (xt ) A•
x0 x1 =f (x0 ) xt A
A
A
A
A
A• •
x̆1 =f (x̆0 )
Proof (1) Let S⋄′ be σ⋄ -invariant and contain ⋄ and let S ′ = S⋄′ \ {⋄}. Then S ′
is an σ-invariant subset of S. (If s ∈ S ′ then σ(s) = σ⋄ (s) ∈ S⋄′ and so σ(s) ∈ S ′ ,
since σ(s) ∈ S.) Therefore S ′ = S, since s0 = σ⋄ (⋄) ∈ S ′ and (S, σ, s0 ) is minimal,
and thus S⋄′ = S⋄ . Hence (S⋄ , σ⋄ , ⋄) is minimal. Moreover, by Lemma 2.1 S⋄ is
finite, and z is a fixed point of σ⋄ . Therefore by Lemma 4.5 (S⋄ , σ⋄ , ⋄) is a segment
with end-point z.
(2) Proposition 4.1 (2) implies that s0 ∈ / σ(S) (since σ(z) = z 6= s0 ), hence
σ(S) ⊂ S \ {s0 } = S and in particular σ(S ′ ) ⊂ S ′ . Now if S0′ is σ ′ -invariant
′
and contains σ(s0 ) then S0′ ∪ {s0 } is an σ-invariant subset of S containing s0 and
so S0′ ∪ {s0 } = S, since (S, σ, s0 ) is minimal. Thus (S ′ , σ ′ , σ(s0 )) is minimal. It
follows from Lemma 4.5 that (S ′ , σ ′ , σ(s0 )) is a segment with end-point z, since
by Proposition 2.1 S ′ is finite, and z is a fixed point of σ ′ .
Proposition 4.3 (1) For each non-empty finite set A there exists a segment
(S, σ, s0 ) with S ≈ A.
(2) If (S, σ, s0 ) and (T, τ, t0 ) are segments with S ≈ T then there exists a unique
mapping p : S → T with p(s0 ) = t0 such that τ ◦ p = p ◦ σ.
Proof (1) For each finite set A let P(A) be the proposition that if A is non-empty
then there exists a segment (S, σ, s0 ) with S ≈ A.
(⋄) P(∅) holds trivially.
(⋆) Let A be a finite set for which P(A) holds and let a ∈ / A. If A = ∅ then
({a}, σ, a) with σ(a) = a is a segment and {a} ≈ A ∪ {a}, and so in this case
P(A ∪ {a}) holds. On the other hand, if A 6= ∅ then there exists a segment
(S, σ, s0 ) with S ≈ A, and if (S⋄ , σ⋄ , ⋄) is the segment given in Lemma 4.6 (1)
then S⋄ = S ∪ {⋄} ≈ A ∪ {a} and so again P(A ∪ {a}) holds.
Therefore by the induction principle for finite sets P(A) holds for every finite
set A, thus for each non-empty finite set A there exists a segment (S, σ, s0 ) with
S ≈ A.
(2) For each finite set A let P(A) be the proposition that if A is non-empty and
(S, σ, s0 ) and (T, τ, t0 ) are segments with S ≈ A ≈ T then there exists a mapping
p : S → T with p(s0 ) = t0 such that τ ◦ p = p ◦ σ.
4 Minimal counting systems 34
Proposition 4.4 Let (S, σ, s0 ) and (T, τ, t0 ) be segments with end-points z and
z ′ respectively, and such that the sets S and T are disjoint. Put R = S ∪ T and
define a mapping ̺ : R → R by
σ(r) if r ∈ S \ {z} ,
̺(r) = t0 if r = z ,
τ (r) if r ∈ T .
whenever A and B are disjoint finite sets. This operation ⊕ is both associative
and commutative, x ⊕ x0 = x for all x ∈ X and for all x1 , x2 ∈ X there is an
x ∈ X such that either x1 = x2 ⊕ x or x2 = x1 ⊕ x. Moreover, ⊕ is the unique
binary operation ⊕ on X such that
(a0) x ⊕ x0 = x for all x ∈ X.
(a1) x ⊕ f (x′ ) = f (x ⊕ x′ ) for all x, x′ ∈ X.
for all finite sets A and B. This operation ⊗ is both associative and commutative,
x ⊗ x0 = x0 and x ⊗ f (x0 ) = x for all x ∈ X (and so f (x0 ) is a multiplicative
unit) and the distributive law holds for ⊕ and ⊗: For all x, x1 , x2 ∈ X
x ⊗ (x1 ⊕ x2 ) = (x ⊗ x1 ) ⊕ (x ⊗ x2 ) .
Before beginning with the proofs of Theorems 5.1 and 5.2 we give two results
about the operation ⊕ for special cases of (X, f, x0 ).
Proposition 5.1 If f is injective then the cancellation law holds for ⊕ (meaning
that x1 = x2 whenever x1 ⊕ x = x2 ⊕ x for some x ∈ X).
35
5 Addition and multiplication 36
Proof Let z be the end-point of (X, f, x0 ), so by Proposition 4.1 (1) f (z) = x0 and
by Theorem 4.2 z = #(A) where A is any #-regular finite set with #P (A) = X.
Let x ∈ X and so x = #(B) for some B ⊂ A. Put C = (A \ B) ∪ {a}, where a is
some element not in A and let x′ = #(C). Then B and C are disjoint and hence
It is not difficult to show that the group in Proposition 5.2 is cyclic and generated
by the element f (x0 ).
We now prepare for the proof of Theorem 5.1. Among other things, the theorem
states that there exists a binary operation ⊕ on X such that
(α) #(A) ⊕ #(B) = #(A ∪ B) whenever A and B are disjoint finite sets.
To understand what this implies it is convenient to introduce some notation. For
pairs of finite sets let us write (A, B) ≈ (A′ , B ′ ) if A ≈ A′ and B ≈ B ′ , and employ
#(A, B) as shorthand for the element (#(A), #(B)) of X × X. A pair (A, B) will
be called disjoint if the sets A and B are disjoint. Consider disjoint pairs (A, B)
and (A′ , B ′ ) with #(A, B) = #(A′ , B ′ ). Then #(A) ⊕ #(B) = #(A′ ) ⊕ #(B ′ )
(regardless of how ⊕ is defined) which shows that if ⊕ exists satisfying (α) then
the following must hold:
(β) If (A, B) and (A′ , B ′ ) are disjoint pairs with #(A, B) = #(A′ , B ′ ) then
#(A ∪ B) = #(A′ ∪ B ′ ).
Conversely, (β) is sufficient to ensure the existence of an operation ⊕ satisfying
(α). To see this is the case, first note the following:
5 Addition and multiplication 37
Lemma 5.1 For all elements x, x′ ∈ X there exists a disjoint pair (A, B) with
(x, x′ ) = #(A, B).
Proof By Lemma 3.3 there exists a pair (C, D) with #(C, D) = (x, x′ ), put
A = C × {⊳} and B = D × {⊲}, where ⊳ and ⊲ are distinct elements. Then (A, B)
is a disjoint pair with (A, B) ≈ (C, D) and so #(A, B) = #(C, D) = (x, x′ ).
Now suppose that (β) holds and consider disjoint pairs (A, B) and (A′ , B ′ ) with
#(A, B) = (x, x′ ) = #(A′ , B ′ ). Then #(A ∪ B) = #(A′ ∪ B ′ ) and we can thus
define a binary operation ⊕ on X by letting x ⊕ x′ = #(A ∪ B), where (A, B) is
any disjoint pair with #(A, B) = (x, x′ ). In particular, #(A) ⊕ #(B) = #(A ∪ B)
whenever A and B are disjoint, i.e., (α) holds.
The main step in the proof of Theorem 5.1 will be to establish that (β) holds.
For a Dedekind system (X, f, x0 ) this is not a problem, since if (A, B) and
(A′ , B ′ ) are disjoint pairs with #(A, B) = #(A′ , B ′ ) then Theorem 3.2 implies
that (A, B) ≈ (A′ , B ′ ), from which it easily follows that A∪B ≈ A′ ∪B ′ and hence
by Proposition 3.1 that #(A ∪ B) = #(A′ ∪ B ′ ). Establishing (β) for a general
minimal counting system involves more work (which is done in Lemma 5.2).
Once it is known that an operation ⊕ exists satisfying (α) then the remaining
properties of ⊕ listed in Theorem 5.1 follow from the corresponding properties of
the union operation ∪ (for example, that it is associative and commutative).
Theorem 5.2 will be dealt with in a similar manner. Here we are looking for an
operation ⊗ on X such that
(γ) #(A) ⊗ #(B) = #(A × B) whenever A and B are finite sets
and the condition corresponding to (β) is clearly the following:
(δ) If (A, B) and (A′ , B ′ ) are (arbitrary) pairs with #(A, B) = #(A′ , B ′ ) then
#(A × B) = #(A′ × B ′ ).
If (δ) holds and (A, B) and (A′ , B ′ ) are pairs with #(A, B) = (x, x′ ) = #(A′ , B ′ )
then #(A × B) = #(A′ × B ′ ) and so we can define a binary operation ⊗ on X by
letting x ⊗ x′ = #(A × B), where (A, B) is any pair with #(A, B) = (x, x′ ). In
particular, #(A) ⊗ #(B) = #(A × B) for all finite sets A and B, i.e., (γ) holds.
Again, there is no problem to show that (δ) holds for a Dedekind system, since if
(A, B) ≈ (A′ , B ′ ) then A × B ≈ A′ × B ′ . The general minimal counting system
is dealt with in Lemma 5.3.
As with the addition ⊕, once it is known that an operation ⊗ exists satisfying
(γ) then the remaining properties of ⊗ listed in Theorem 5.2 follow from the
corresponding properties of the cartesian product operation × (for example, that
it is associative and commutative) and the relationship between ∪ and ×.
The following shows that condition (β) holds.
5 Addition and multiplication 38
Lemma 5.2 If (A, B) and (A′ , B ′ ) are disjoint pairs with #(A, B) = #(A′ , B ′ )
then #(A ∪ B) = #(A′ ∪ B ′ ).
Proof Start by considering a finite sets A and A′ with #(A) = #(A′ ) and for
each finite set B let P(B) be the proposition that if B is disjoint from A and A′
then #(A ∪ B) = #(A′ ∪ B).
(⋄) P(∅) holds, since #(A ∪ ∅) = #(A) = #(A′ ) = #(A′ ∪ ∅).
(⋆) Let B be a finite set for which P(B) holds and b ∈ / B. If B ∪ {b} is not
disjoint from A and A′ then P(B ∪ {b}) holds trivially, and so we can assume
that this is not the case. In particular, B is then disjoint from A and A′ and so
#(A ∪ B) = #(A′ ∪ B), and also b ∈ / A ∪ B and b ∈ / A′ ∪ B. Thus
Proof of Theorem 5.1: Let x, x′ ∈ X. By Lemma 5.1 there exists a disjoint pair
(A, B) with (x, x′ ) = #(A, B) and if (A′ , B ′ ) is another disjoint pair (A′ , B ′ ) with
(x, x′ ) = #(A′ , B ′ ) then #(A, B) = #(A′ , B ′ ) and so Lemma 5.2 implies that
#(A ∪ B) = #(A′ ∪ B ′ ). We can therefore define x ⊕ x′ to be #(A ∪ B), where
(A, B) is any disjoint pair with (x, x′ ) = #(A, B). In particular, if A and B
5 Addition and multiplication 39
are disjoint finite sets then #(A) ⊕ #(x′ ) = #(A ∪ B), since (A, B) is a disjoint
pair for (#(A), #(B)). Moreover, ⊕ is uniquely determined by this requirement:
Consider any binary operation ⊕′ on X for which #(A) ⊕′ #(B) = #(A ∪ B)
whenever A and B are disjoint finite sets. If C and D are any finite sets then there
exists a disjoint pair (A, B) with (A, B) ≈ (C, D) and hence by Proposition 3.1
#(C) ⊕′ #(D) = #(A) ⊕′ #(B) = #(A ∪ B) = #(A) ⊕ #(B) = #(C) ⊕ #(D)
and so by Lemma 3.3 ⊕′ = ⊕.
We show that ⊕ is associative and commutative: Let x1 , x2 , x3 ∈ X; then by
Lemma 3.3 there exists finite sets A1 , A2 and A3 with x1 = #(A1 ), x2 = #(A2 )
and x3 = #(A3 ). Let ⊳, ⊲ and ⋄ be distinct elements and put B1 = A1 ∪ {⊳},
B2 = A2 ∪ {⊲} and B3 = A3 ∪ {⋄}. Then B1 , B2 , B3 are disjoint with Bj ≈ Aj
and hence with #(Bj ) = #(Aj ) for j = 1, 2, 3. Therefore
(x1 ⊕ x2 ) ⊕ x3 = (#(B1 ) ⊕ #(B2 )) ⊕ #(B3 ) = #(B1 ∪ B2 ) ⊕ #(B3 )
= #((B1 ∪ B2 ) ∪ B3 ) = #(B1 ∪ (B2 ∪ B3 ))
= #(B1 ) ⊕ #(B2 ∪ B3 ) = #(B1 ) ⊕ (#(B2 ) ⊕ #(B3 ))
= x1 ⊕ (x2 ⊕ x3 ) .
In the same way ⊕ is commutative. Let x1 , x2 ∈ X; then there exists a disjoint
pair (A1 , A2 ) with (x1 , x2 ) = #(A1 , A2 ). Thus
x1 ⊕ x2 = #(A1 ) ⊕ #(A2 )
= #(A1 ∪ A2 ) = #(A2 ∪ A1 ) = #(A2 ) ⊕ #(A1 ) = x2 ⊕ x1 .
Moreover, if x ∈ X and A is a finite set with x = #(A) then
x ⊕ x0 = #(A) ⊕ #(∅) = #(A ∪ ∅) = #(A) = x ,
and so x ⊕ x0 = x for all x ∈ X.
Let x1 , x2 ∈ X, and so by Lemma 3.3 there exist finite sets A and B such that
x1 = #(A) and x2 = #(B). By Proposition 2.8 there either exists an injective
mapping g : A → B or an injective mapping h : B → A. Assume the former holds
and put B ′ = g(A) and C = B \ B ′ . Then B ′ and C are disjoint and B = B ′ ∪ C;
moreover, A ≈ B ′ (since g considered as a mapping from A to B ′ is a bijection)
and so by Proposition 3.1 #(A) = #(B ′ ). Thus, putting x = #(C), it follows
that x2 = #(B) = #(B ′ ∪ C) = #(B ′ ) ⊕ #(C) = #(A) ⊕ #(C) = x1 ⊕ x. On
the other hand, if there exists an injective mapping h : B → A then the same
argument shows that x1 = x2 ⊕ x for some x ∈ X.
Now to (a0) and (a1), and we have seen above that (a0) holds. Let x, x′ ∈ X, so
by Lemma 5.1 there exists a disjoint pair (A, B) for (x, x′ ). Let b ∈
/ A ∪ B; then
x ⊕ f (x′ ) = #(A) ⊕ f (#(B)) = #(A) ⊕ #(B ∪ {b}) = #(A ∪ (B ∪ {b}))
= #((A ∪ B) ∪ {b}) = f (#(A ∪ B)) = f (#(A) ⊕ #(B)) = f (x ⊕ x′ )
5 Addition and multiplication 40
and hence (a1) holds. If ⊕′ is another binary operation on X satisfying (a0) and
(a1) then it is easy to see that X0 = {x′ ∈ X : x ⊕′ x′ = x ⊕ x′ for all x ∈ X}
is an f -invariant subset of X containing x0 . Hence X0 = X, since (X, f, x0 ) is
minimal, which implies that ⊕′ = ⊕.
This completes the proof of Theorem 5.1.
We prepare for the proof of Theorem 5.2 by showing that (δ) holds.
Lemma 5.3 If (A, B) and (A′ , B ′ ) are any pairs with #(A, B) = #(A′ , B ′ ) then
#(A × B) = #(A′ × B ′ ).
Proof Start by considering finite sets A and A′ with #(A) = #(A′ ) and for each
finite set B let P(B) be the proposition that #(A × B) = #(A′ × B).
(⋄) P(∅) holds, since A × ∅ = ∅ = A′ × ∅ and so #(A × ∅) = #(A′ × ∅).
(⋆) Let B be a finite set for which P(B) holds and let b ∈
/ B. Then the sets
A × B and A × {b} are disjoint and A × (B ∪ {b}) = (A × B) ∪ (A × {b}). It thus
follows that
and in the same way #(A′ × (B ∪ {b})) = #(A′ × B) ⊕ #(A′ × {b}). Clearly
A × {b} ≈ A and so by Proposition 3.1 #(A × {b}) = #(A), and in the same way
#(A′ × {b}) = #(A′ ). Therefore
Proof of Theorem 5.2: Let x, x′ ∈ X. By Lemma 3.3 there exist finite sets A
and B with x = #(A) and x′ = #(B) and if x = #(A′ ) and x′ = #(B ′ ) for
some other finite sets A′ and B ′ then #(A′ ) = #(A) and #(B ′ ) = #(B) and
hence by Lemma 5.3 #(A × B) = #(A′ × B ′ ). We can thus define x ⊗ x′ to be
#(A × B), where A and B are any finite sets with x = #(A) and x′ = #(B).
5 Addition and multiplication 41
Then #(A) ⊗ #(B) = #(A × B) for all finite sets A and B, a requirement which
clearly determines ⊗ uniquely.
We show that ⊗ is associative and commutative: Let x1 , x2 , x3 ∈ X; then by
Lemma 3.3 there exists finite sets A1 , A2 , A3 with x1 = #(A1 ), x2 = #(A2 ) and
x3 = #(A3 ). Now it is easy to check that (A1 × A2 ) × A3 ≈ A1 × (A2 × A3 ) and
so by Proposition 3.1 #((A1 × A2 ) × A3 ) = #(A1 × (A2 × A3 )). Therefore
x1 ⊗ x2 = #(A1 ) ⊗ #(A2 )
= #(A1 × A2 ) = #(A2 × A1 ) = #(A2 ) ⊗ #(A1 ) = x2 ⊗ x1
Moreover, if a is any element then by Proposition 3.1 #(A × {a}) = #(A), since
A × {a} ≈ A, and hence
Thus x ⊗ x0 = x0 and x ⊗ f (x0 ) = x for each x ∈ X (and note that the first
statement is (m0)).
Now for the distributive law. Let x, x1 , x2 ∈ X. There exists a finite set A with
x = #(A) and a disjoint pair (B, C) with (x1 , x2 ) = #(B, C). Then A × (B ∪ C)
is the disjoint union of A × B and A × C and thus
We have already seen that (m0) holds and, since f (x0 ) is a unit, (m1) is a special
case of the distributive law: Let x, x′ ∈ X; then by (a0) and (a1) and since ⊕ is
5 Addition and multiplication 42
x ↑ (y1 ⊕ y2 ) = (x ↑ y1 ) ⊗ (x ↑ y2 )
Lemma 5.4 If B, C are finite sets with #(B) = #(C) then for all finite sets A
we have #(B A ) = #(C A ).
Proof Let B, C be finite sets with #(B) = #(C) and for each finite set A let
P(A) be the proposition that #(B A ) = #(C A ).
(⋄) P(∅) holds since #(B ∅ ) = #(C ∅ ). (For any set X the set X ∅ consists of
the single element {∅}.)
5 Addition and multiplication 43
Remark: If B, C are finite sets with #(B) = #(C) then #(AB ) = #(AC ) does
not hold in general for a finite set A.
Proof of Theorem 5.3: Let A1 , A2 , B1 , B2 be finite sets with #(A1 ) = #(A2 ) and
#′ (B1 ) = #′ (B2 ); then by Lemma 5.4 #(AB B1
1 ) = #(A2 ) and by Theorem 3.2
1
we can define x ↑ y to be #(AB ), where A and B are any finite sets with x = #(A)
and y = #′ (B). Then
#(A) ↑ #′ (B) = #(AB )
for all finite sets A and B and this requirement clearly determines ↑ uniquely.
Let x ∈ X and y1 , y2 ∈ Y ; then by Lemma 5.1 there exists a disjoint pair
(B1 , B2 ) with (y1 , y2 ) = #′ (B1 , B2 ) and by Lemma 3.3 there exists a finite set A
with x = #(A). Moreover, it is easily checked that AB1 ∪B2 ≈ AB1 × AB2 and thus
by Proposition 3.1
x ↑ (y1 ⊕ y2 ) = #(A) ↑ (#′ (B1 ) ⊕ #(B2 ))
= #(A) ↑ #′ (B1 ∪ B2 ) = #(AB1 ∪B2 ) = #(AB1 × AB2 )
= #(AB1 ) ⊗ #(AB2 ) = (x ↑ y1 ) ⊗ (x ↑ y2 ) .
Now let x1 , x2 ∈ X and y ∈ Y . By Lemma 3.3 there exist finite sets A1 , A2 and
B such that x1 = #(A1 ), x2 = #(A2 ) and y = #′ (B) and (A1 ×A2 )B ≈ AB B
1 ×A2 .
Thus by Proposition 3.1
(x1 ⊗ x2 ) ↑ y = (#(A1 ) ⊗ #(A2 )) ↑ #′ (B)
= #(A1 × A2 ) ↑ #′ (B) = #((A1 × A2 )B ) = #(AB B
1 × A2 )
= #(AB B
1 ) ⊗ #(A2 ) = (x1 ↑ y) ⊗ (x2 ↑ y) .
It remains to consider the properties (e0) and (e1). Now for each finite set A we
have #(A) ↑ #′ (∅) = #(A∅ ) = #({∅}) = f (x0 ) and hence x ↑ y0 = f (x0 ) for
each x ∈ X, i.e., (e0) holds. Let A and B be finite sets and let b ∈ / B. Then,
B∪{b} B
since A ≈ A × A , it follows from Proposition 3.1 that
#(A) ↑ g(#′ (B)) = #(A) ↑ #′ (B ∪ {b}) = #(AB∪{b} ) = #(A × AB )
= #(A) ⊗ #(AB ) = #(A) ⊗ (#(A) ↑ #′ (B))
5 Addition and multiplication 44
Y0 = {y ∈ Y : x ↑′ y = x ↑ y for all x ∈ X}
45
6 Another take on addition and multiplication 46
Proof We have f∅ (x) = #x (∅) = x = idX (x) for all x ∈ X, and so f∅ = idX .
Moreover, if A is a finite set and a ∈
/ A then
fA∪{a} (x) = #x (A ∪ {a}) = f (#x (A)) = f (fA (x)) = (f ◦ fA )(x)
for all x ∈ X and hence fA∪{a} = f ◦ fA . Finally, consider a further assignment
A 7→ fA′ with f∅′ = idX and such that fA∪{a}
′
= f ◦ fA′ whenever A is a finite set
and a ∈ / A. For each finite set A let P(A) be the proposition that fA′ = fA .
(⋄) P(∅) holds since f∅′ = idX = f∅ .
(⋆) Let A be a finite set for which P(A) holds (and so fA′ = fA ) and let a ∈
/ A.
′ ′
Then fA∪{a} = f ◦ fA = f ◦ fA = fA∪{a} and so P(A ∪ {a}) holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, which means that fA′ = fA for each finite set A.
The assignment A 7→ fA will be called the f -iterator. Note that in particular
f{a} = f for each element a, since f{a} = f∅∪{a} = f ◦ f∅ = f ◦ idX = f .
Proof For each finite set A let P(A) be the proposition that f ◦ fA = fA ◦ f .
(⋄) P(∅) holds since f ◦ f∅ = f ◦ idX = f = idX ◦ f = f∅ ◦ f .
(⋆) Let A be a finite set for which P(A) holds and let a ∈
/ A. Then
f ◦ fA∪{a} = f ◦ f ◦ fA = f ◦ fA ◦ f = fA∪{a} ◦ f
and so P(A ∪ {a}) holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A and hence f ◦ fA = fA ◦ f for each finite set A.
The next result establishes an important relationship between the f -iterator and
the iterator # for (X, f, x0 ).
6 Another take on addition and multiplication 47
Proposition 6.1 If A and B are finite sets then fA = fB holds if and only if
#(A) = #(B).
Proof By definition #(C) = fC (x0 ) for each finite set C, and so #(A) = #(B)
whenever fA = fB . Suppose conversely that #(A) = #(B) and consider the set
X0 = {x ∈ X : fA (x) = fB (x)}. Then X0 is f -invariant, since if x ∈ X0 then by
Lemma 6.2 fA (f (x)) = f (fA (x)) = f (fB (x)) = fB (f (x)), i.e., f (x) ∈ X0 . Also
x0 ∈ X0 , since fA (x0 ) = #(A) = #(B) = fB (x0 ). Hence X0 = X, since (X, f, x0 )
is minimal. This shows that fA (x) = fB (x) for all x ∈ X, i.e., fA = fB .
There is another way of obtaining the f -iterator: Consider the counting system
(TX , f∗ , idX ), where f∗ : TX → TX is defined by f∗ (h) = f ◦ h for all h ∈ TX .
Lemma 6.3 If #∗ is the unique iterator for (TX , f∗ , idX ) then #∗ (A) = fA for
each finite set A.
Proof This follows from Proposition 3.1 (applied to #∗ ) and Lemma 6.3.
Proof For each finite set A let P(A) be the proposition that fA∪B = fA ◦ fB for
each finite set B disjoint from A.
(⋄) P(∅) holds since f∅∪B = fB = idX ◦ fB = f∅ ◦ fB for each finite set B.
(⋆) Let A be a finite set for which P(A) holds and let a ∈
/ A. Consider a finite
set B disjoint from A ∪ {a}; then B is disjoint from A and so fA∪B = fA ◦ fB .
Moreover a ∈/ A ∪ B and hence
Lemma 6.5 (1) If f is bijective then fA is bijective for each finite set A.
(2) If f is injective then fA is also injective for each finite set A.
Proof (1) For each finite set A let P(A) be the proposition that fA is bijective.
(⋄) P(∅) holds since f∅ = idX is bijective.
(⋆) Let A be a finite set for which P(A) holds and let a ∈
/ A. Then fA∪{a} = f ◦fA ,
as the composition of two bijective mappings, is itself bijective, and so P(A∪{a})
holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, which means that fA is bijective for each finite set A.
(2) Just replace ‘bijective’ by ‘injective’ in (1).
Proof Let u1 , u2 ∈ Mf and so there exist finite sets A and B with u1 = fA and
u2 = fB . There then exists a disjoint pair (A′ , B ′ ) with (A′ , B ′ ) ≈ (A, B) and
hence by Proposition 6.2 and Lemma 6.4
i.e., u1 ◦ u2 = u2 ◦ u1 . Moreover, since u1 ◦ u2 = fA′ ∪B′ and fA′ ∪B′ ∈ Mf , this also
shows that u1 ◦ u2 ∈ Mf .
As above let Φx0 : Mf → X be the mapping with Φx0 (u) = u(x0 ) for all u ∈ Mf .
Then Φx0 (idX ) = x0 and Φx0 (fA ) = fA (x0 ) = #(A) for each finite set A. An
important property of Φx0 is that
(♯) u(Φx0 (v)) = Φx0 (u ◦ v) for all u, v ∈ Mf ,
which holds since u(Φx0 (v)) = u(v(x0 )) = (u ◦ v)(x0 ) = Φx0 (u ◦ v). The special
case of this with u = f gives us f (Φx0 (v)) = Φx0 (f ◦ v) for all v ∈ Mf .
Proof If x ∈ X then by Lemma 3.3 there exists a finite set A with x = #(A) and
it follows that Φx0 (fA ) = fA (x0 ) = #(A) = x. Thus Φx0 is surjective. Now let
u1 , u2 ∈ Mf with Φx0 (u1 ) = Φx0 (u2). By the definition of Mf there exist finite
sets A and B with u1 = fA and u2 = fB , and hence
#(A) = Φx0 (fA ) = Φx0 (u1 ) = Φx0 (u2 ) = Φx0 (fB ) = #(B) .
Therefore by Proposition 6.1 fA = fB , i.e., u1 = u2 , which shows that Φx0 is also
injective.
On the other hand, if there exists an injective mapping h : B → A then the same
argument shows there exists x ∈ X with x1 = x2 ⊕ x.
Now to (a0) and (a1), and we have seen above that (a0) holds. Let x, x′ ∈ X
and let u, u′ ∈ Mf with x = Φx0 (u) and x′ = Φx0 (u′ ). Then by (♯)
#(A) ⊕ #(B) = Φx0 (fA ) ⊕ Φx0 (fB ) = Φx0 (fA ◦ fB ) = Φx0 (fA∪B ) = #(A ∪ B) .
Let ⊕ be the operation given in Theorem 5.1. The theorem shows in particular
that (X, ⊕, x0 ) is a commutative monoid. The next result, which generalises
Propositions 5.1 and 5.2, shows how properties of the mapping f correspond to
properties of the monoid (X, ⊕, x0 ).
Proof We have the commutative monoid (X, ⊕, x0 ), and also the commutative
monoid (Mf , ◦, idX ). Now the operation ⊕ was defined so that
for all u1 , u2 ∈ Mf and, since Φx0 (idX ) = x0 and Φx0 is a bijection, this means
⊕ was defined to make Φx0 : (Mf , ◦, idX ) → (X, ⊕, x0 ) a monoid isomorphism.
It follows that the cancellation law holds in (X, ⊕, x0 ) if and only if it holds in
(Mf , ◦, idX ) and that (X, ⊕, x0 ) will be a group if an only if (Mf , ◦, idX ) is. It is
6 Another take on addition and multiplication 51
thus enough to prove the statements in the proposition with (X, ⊕, x0 ) replaced
by (Mf , ◦, x0 ).
(1) We first show that u−1 ∈ Mf whenever u ∈ Mf is a bijection. This follows
from the fact that u−1 (x0 ) ∈ X and Φx0 is surjective and so there exists v ∈ Mf
with Φx0 (v) = u−1 (x0 ); thus by (♯)
Lemma 6.8 (1) (fB )A = fB×A for all finite sets A and B.
(2) (fB )A = (fA )B for all finite sets A and B.
Proof (1) Consider the finite set B to be fixed and for each finite set A let P(A)
be the proposition that (fB )A = fB×A .
(⋄) P(∅) holds since (fB )∅ = idX = f∅ = fB×∅ .
(⋆) Let A be a finite set for which P(A) holds (and so (fB )A = fB×A ) and let
a∈/ A. Then B × (A ∪ {a}) is the disjoint union of the sets B × {a} and B × A
and B × {a} ≈ B; thus by Proposition 6.2 and Lemma 6.4
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, which means (fB )A = fB×A for all finite sets A and B.
(2) By Proposition 6.2 fB×A = fA×B , since clearly B × A ≈ A × B, and therefore
by (1) (fB )A = fB×A = fA×B = (fA )B .
The next result will not be needed in what follows, but it shows that (δ) in
Section 5 holds, and could be used instead of Lemma 5.3 in the previous proof of
Theorem 5.2.
Proof (1) By several applications of Lemma 6.8 (1) and (2) we have
fA×B = (fB )A = (fB′ )A = (fA )B′ = (fA′ )B′ = (fB′ )A′ = fA′ ×B′ .
Proof (1) For each finite set A let P(A) be the proposition that vA ∈ Mf .
(⋄) P(∅) holds since v∅ = idX ∈ Mf .
(⋆) Let A be a finite set for which P(A) holds (and so vA ∈ Mf ) and let a ∈
/ A.
Then vA∪{a} = v ◦ vA ∈ Mf , since Mf is a submonoid of (TX , ◦, idX ), and so
P(A ∪ {a}) holds.
Therefore by the induction principle for finite sets P(A) holds for every finite set
A, which means vA ∈ Mf for all finite sets A.
(2) There exists a finite set C with v = fC and thus by Lemma 6.8 (2)
vA = (fC )A = (fA )C = (fB )C = (fC )B = vB .
Proof (1) If u1 , u2 ∈ Mf then there exist disjoint finite sets A and B with
u1 = fA and u2 = fB and hence by Lemma 6.4
(noting that Lemma 6.4 can also be applied to the v-iterator). Moreover, we have
ψv (idX ) = ψv (f∅ ) = v∅ = idX and hence ψv is an endomorphism.
(2) Let A, B be finite sets with u = fA and v = fB . Then by Lemma 6.8 (2)
u ⋄ v = ψu (v)
for all u, v ∈ Mf . In particular, if A and B are finite sets then by Lemma 6.8 (1)
fA ⋄ fB = ψfA (fB ) = (fA )B = fA×B and therefore
fA ⋄ fB = fA×B
for all finite sets A and B. Let u, v, w ∈ Mf and A, B and C be finite sets with
u = fA , v = fB and w = fC . Then clearly A × (B × C) ≈ (A × B) × C, so by
Proposition 6.2 fA×(B×C) = f(A×B)×C and thus
u ⋄ (v ⋄ w) = fA ⋄ (fB ⋄ fC ) = fA ⋄ fB×C
= fA×(B×C) = f(A×B)×C = fA×B ⋄ fC = (fA ⋄ fB ) ⋄ fC = (u ⋄ v) ⋄ w .
for all u1 , u2 ∈ Mf , and exactly as in the proof of Theorem 5.1 the operation
⊗ is associative and commutative since ⋄ has these properties. The same holds
6 Another take on addition and multiplication 54
[2] Lawvere, W.F. (1964): An elementary theory of the category of sets. Proc.
Nat. Acad. Sci., 52, 1506-1511.
55