Relations and Functions: 3.1 Ordered Pairs and Products
Relations and Functions: 3.1 Ordered Pairs and Products
Relations and Functions: 3.1 Ordered Pairs and Products
In this chapter we study how to relate, possibly different, sets through the set-theoretic definitions of relation
and function. We will rely on the product of sets as the central construction for connecting sets. We are
led to consider sets with extra structure, and the cardinality of sets, in particular the important notion of
countability.
There is also the concept of unordered pair of elements a, b—this is just the set {a, b}. We’ll only rarely use
unordered pairs so “pair” alone will mean ordered pair.
Often you’ll see the ordered pair (a, b) defined to be the set {{a}, {a, b}}—this is one particular way of
coding the idea of ordered pair as a set. (See Exercise 3.2 below. Apart from this exercise we’ll never again
consider how ordered pairs are implemented.)
For sets X and Y , their product is the set
X × Y = {(a, b) | a ∈ X & b ∈ Y },
the set of all ordered pairs of elements with the first from X and the second from Y .
We can use the product construction on sets several times. A ternary product of sets X × Y × Z,
consisting of triples (x, y, z), can be understood as X × (Y × Z), and so on. In the case where all the sets
in a product are the same, as in X × X we often write the product as X 2 , with X × X × X written as X 3 ,
and generally a product X × · · · × X, the product of n copies of X, as X n . Such products are familiar from
coordinate geometry: a point on a line can be identified with a real number in R, the set of real numbers;
the points on the plane can be identified with elements of the product R × R, which we can also write as
R2 ; three-dimensional space with R3 , and so on.
(ii) A × (B ∩ C) = (A × B) ∩ (A × C)
(iii) (A × B) ∩ (C × D) = (A ∩ C) × (B ∩ D)
Exercise 3.2 Show that a set {{a}, {a, b}} behaves as an ordered pair should, i.e.
[This is trickier than you might at first think. Consider the two cases a = b and a 6= b.] 2
26
3.2. RELATIONS AND FUNCTIONS 27
We use the notation f (x) = y when there is a y such that (x, y) ∈ f and then say f (x) is defined, and
otherwise say f (x) is undefined; the set
{x ∈ X | f (x) is defined}
is called the domain of definition of the partial function f . Sometimes we write f : x 7→ y, or just x 7→ y
when f is understood, for y = f (x). Occasionally one sees just f x, without the brackets, for f (x).
A (total) function from X to Y is a partial function from X to Y such that for all x ∈ X there is some
y ∈ Y such that f (x) = y. Although total functions are a special kind of partial function it is traditional
to understand something described as simply a function to be a total function, so we always say explicitly
when a function is partial.
To stress the fact that we are thinking of a function f from X to Y as taking an element of X and
yielding an element of Y we generally write it as f : X → Y . To indicate a partial function f from X to Y
we write f : X * Y . For both functions and partial functions from X to Y , the set X is called the domain
of the function and Y the codomain of the function.
Note that individual relations and functions are also sets. This fact determines equality between relations,
and equality between functions; they are equal iff they consist of the same set of pairs. We can reword this
fact in the case of functions and partial functions.
Proposition 3.3
So, to investigate whether two functions with the same domain and codomain are equal it suffices to
show that they give the same results when applied to an arbitrary common argument.
Exercise 3.4 If A has k elements and B has m elements, how many relations are there between A and B?
2
Exercise 3.5 Let R and S be relations between A and B. Show that, if R ⊆ S, then R−1 ⊆ S −1 . Prove
that (R ∩ S)−1 = R−1 ∩ S −1 and (R ∪ S)−1 = R−1 ∪ S −1 . 2
Exercise 3.6 If A and B are finite sets with m and n elements respectively, how many functions and how
many partial functions are there from A to B? 2
28 CHAPTER 3. RELATIONS AND FUNCTIONS
Exercise 3.7 Let A = {1, 2, 3, 4}, B = {a, b, c, d} and C = {x, y, z}. Let R = {(1, a), (2, d), (3, a), (3, b), (3, d)}
and S = {(b, x), (b, z), (c, y), (d, z)}. What is their composition S ◦ R? 2
Each set X is associated with an identity relation idX where idX = {(x, x) | x ∈ X}. It is easy to see
that for any relation R between X and Y
R ◦ idX = idY ◦ R = R
—so the identity relation does indeed behave like an identity with respect to composition. Note that the
identity relation is a function.
For functions f : X → Y and g : Y → Z their composition is also a function g ◦ f : X → Z (check!).
Similarly, the composition of partial functions f : X * Y and g : Y * Z is a partial function g ◦ f : X * Z
(check!).
We say a function f : X → Y is injective (or 1-1) iff
∀x, x0 ∈ X. f (x) = f (x0 ) ⇒ x = x0 .
In other words, taking the contrapositive of this implication, distinct elements of X go to distinct elements
of Y . An injective function is often called an injection.
We say a function f : X → Y is surjective (or onto) iff
∀y ∈ Y ∃x ∈ X. y = f (x) .
A surjective function is often called an surjection.
A function f : X → Y is bijective iff it is both injective and surjective. Bijective functions f : X → Y
are called bijections; the sets X and Y are said to be in 1-1 correspondence, or bijective correspondence.
A function f : X → Y has an inverse function g : Y → X iff g(f (x)) = x for all x ∈ X, and f (g(y)) = y
for all y ∈ Y . Notice the symmetry: f has inverse g means g has inverse f , and vice versa.
Proof.
‘if ”: Suppose f : X → Y has an inverse g : Y → X. Let x, x0 ∈ X and suppose f (x) = f (x0 ). Then
x = g(f (x)) = g(f (x0 )) = x0 .
Hence f is injective. Let y ∈ Y . Then f (g(y)) = y. Hence f is surjective. It follows that f is bijective.
“only if ”: Assume f : X → Y is bijective. Define the relation g ⊆ Y × X by g = f −1 , the converse relation
of f , so (y, x) ∈ g ⇐⇒ f (x) = y.
Suppose (y, x), (y, x0 ) ∈ g. Then, f (x) = y and f (x0 ) = y, so x = x0 as f is injective. Given y ∈ Y there
is x ∈ X such that f (x) = y as f is surjective, making (y, x) ∈ g. This shows that g is a function g : Y → X
which moreover satisfies
g(y) = x ⇐⇒ f (x) = y . (†)
We now deduce that g is injective. Suppose g(y) = g(y 0 ), where y, y 0 ∈ Y . Letting x = g(y) = g(y 0 ) we see
from (†) that both f (x) = y and f (x) = y 0 , whence y = y 0 .
If g(f (x)) = x0 then f (x0 ) = f (x) by (†), so x = x0 , as f is injective. If f (g(y)) = y 0 then g(y 0 ) = g(y)
by (†), so y = y 0 , as g is injective. This shows that g is an inverse to f . 2
3.3. RELATIONS AS STRUCTURE 29
Suppose f : X → Y has an inverse g : Y → X. Then g has f as its inverse. So by Lemma 3.9, both f
and g are bijective. It is traditional to write f −1 for the inverse of a function f .
Exercise 3.10 Show that the composition of injective/surjective/bijective functions is respectively injec-
tive/surjective/bijective. 2
Exercise 3.11 Let D be the set {x ∈ R | x > 1}. Define a binary relation g ⊆ D × D by taking
1 1
(u, v) ∈ g iff + =1.
u v
(i) Express v as a formula in u for (u, v) ∈ g. Deduce that g is a function g : D → D.
(ii) Define an inverse function to g and prove that it has the desired properties. Deduce that g : D → D
is a bijection.
[The formula u1 + v1 = 1 expresses the relation between the distance of an object u and the distance of its
image v from a lens with focal length 1.] 2
R−1 B = {x ∈ X | ∃y ∈ B. (x, y) ∈ R}
for B ⊆ Y . The set R−1 B is called the inverse image of B under R; note that it is the same set as the
direct image of the set B under the converse, or inverse, relation R−1 . Of course, the same notions of direct
and inverse image also apply in the special cases where the relation is a partial function or function.
Exercise 3.12 Suppose f : X → Y is a function. Show f −1 preserves the Boolean operations of union,
intersection and complement, i.e. for all B, C ⊆ Y ,
f −1 (B ∪ C) = (f −1 B) ∪ (f −1 C) , f −1 ∅ = ∅ ,
f −1 (B ∩ C) = (f −1 B) ∩ (f −1 C) , f −1 Y = X ,
f −1 (B c ) = (f −1 B)c .
What analogous properties hold of the direct image under f ? Suppose now f : X * Y is a partial function.
Describe how to modify the above identities to make them hold in this case. Which identities will hold if f
is assumed only to be a relation? 2
Definition: A directed graph (or digraph) is a set X on which there is a relation R ⊆ X × X and so is
described by (X, R). The elements of X are called vertices (or nodes) and the elements of R directed edges
(or arcs).
30 CHAPTER 3. RELATIONS AND FUNCTIONS
Finite directed graphs (i.e. those with a finite set of vertices) have a natural diagrammatic representation
in which vertices are drawn as nodes and directed edges as arcs between them. Here, for example, is the
diagram of the directed graph with vertices {a, b, c, d} and directed edges {(a, c), (b, c), (a, a)}:
8 a• •b
||
|||
|
|~ |
c• •d
Directed graphs are ubiquitous in computer science. They appear both as representations of data-types,
expressing relations between objects, and of processes, expressing the possible transitions between states.
3.3.2 Equivalence relations
One often encounters relations that behave like a form of equality or equivalence, captured in the definition
of equivalence relation.
An equivalence relation is a relation R ⊆ X × X on a set X which is
• reflexive: ∀x ∈ X. xRx,
• symmetric: ∀x, y ∈ X. xRy ⇒ yRx and
• transitive: ∀x, y, z ∈ X. xRy & yRz ⇒ xRz.
If R is an equivalence relation on X then the (R-)equivalence class of an element x ∈ X is the subset
{x}R =def {y ∈ X | yRx}.
An equivalence relation on a set X determines a partition of X. A partition of a set X is a set P of
non-empty subsets of X for which each element x of X belongs to one and only one member of P . In other
words, a partition P of X is a collection of nonempty, disjoint subsets of X such that each element x of X
belongs to a member of P .
Theorem 3.13 Let R be an equivalence relation on a set X. The set X/R =def {{x}R | x ∈ X} of equiva-
lence classes with respect to R is a partition of the set X. Moreover, {x}R = {y}R iff xRy for all x, y ∈ X.
Proof. Let x ∈ X. Then as R is reflexive, x ∈ {x}R . So every member of X/R is nonempty and each
element of X belongs to a member of X/R. For X/R to be a partition we also require that its members are
disjoint. However, we will show
(1) {x}R ∩ {y}R 6= ∅ ⇒ xRy , and
(2) xRy ⇒ {x}R = {y}R ,
from which {x}R ∩ {y}R 6= ∅ ⇒ {x}R = {y}R follows, for any elements x, y ∈ X.
(1) Suppose {x}R ∩ {y}R 6= ∅. Then there is some z ∈ {x}R ∩ {y}R . Hence zRx and zRy. Then xRz and
zRy, as R is symmetric. As R is transitive we obtain xRy.
(2) Suppose xRy. Let w ∈ {x}R . Then wRx and xRy, so wRy by transitivity of R. Thus w ∈ {y}R . This
shows {x}R ⊆ {y}R . Because R is symmetric we have yRx and so by a similar argument we also obtain
{y}R ⊆ {x}R . Hence {x}R = {y}R .
If {x}R = {y}R , then certainly x ∈ {x}R ∩ {y}R , so xRy by (1). Combining with (2) we see that
{x}R = {y}R iff xRy for all x, y ∈ X. 2
There is a simple converse to Theorem 3.13:
Proposition 3.14 Let P be a partition of a set X. The relation R on X, defined by
xRy ⇐⇒ ∃p ∈ P. x ∈ p & y ∈ p ,
is an equivalence relation on the set X with X/R = P .
Exercise 3.15 Provide the proof to Proposition 3.14. 2
3.3. RELATIONS AS STRUCTURE 31
Modular arithmetic
Modular arithmetic is central to number theory in mathematics and very important in computer science,
for example in cryptography. It furnishes an example of an equivalence relation.
Let k ∈ N. There are many situations in which it is useful to regard integers as essentially the same if
they give the same remainder when divided by k. Integers a and b give the same remainder when divided
by k iff their difference a − b is divisible by k. For integers a, b ∈ Z define
It is common to write [a], called a congruence class, for the equivalence class of a w.r.t. congruence
modulo k. The congruence classes correspond to the possible remainders on dividing by k, viz. 0, 1, . . . ,
(k − 1).
Assume a ≡ b (mod k) and a0 ≡ b0 (mod k). Then
a + a0 ≡ b + b0 (mod k) a − a0 ≡ b − b0 (mod k)
a × a0 ≡ b × b0 (mod k) .
The operations are well-defined because independently of how we choose representatives for the congruence
classes we obtain the same result.
Exercise 3.16 Show that if a ≡ b (mod k) and a0 ≡ b0 (mod k), then a + a0 ≡ b + b0 (mod k), a − a0 ≡
b − b0 (mod k) and a × a0 ≡ b × b0 (mod k). 2
Exercise 3.17 Let A = {1, 2, 3}. List all the partitions of A. How many equivalence relations are there on
A? How many relations are there on A? 2
Exercise 3.19 Let R and S be equivalence relations on sets A and B respectively. Let p : A → A/R and
q : B → B/S be the obvious functions from elements to their equivalence classes. Suppose f : A → B is a
function. Show that the following two statements are equivalent:
Exercise 3.20 Suppose (P, −→) is a directed graph. A bisimulation on P is a relation R ⊆ P × P such
that whenever p R q then
• ∀q 0 ∈ P. q −→ q 0 ⇒ ∃p0 ∈ P. p −→ p0 & p0 R q 0 .
32 CHAPTER 3. RELATIONS AND FUNCTIONS
Deduce that the bisimilarity relation ∼ is an equivalence relation on P . Show that ∼ is itself a bisimulation
on P . 2
f :N→A.
For example, the sets of natural numbers N, of integers Z, of rational numbers Q and real numbers R
are all infinite. The set N is countable, as are Z and Q, while R is not countable—we’ll see this shortly.
• f (n + 1), where n ∈ N, to be the least number in A which is larger than f (n) if f (n) is defined and
there is a member of A larger that f (n); and to be undefined otherwise.
This definition of f is an example of definition by mathematical induction: we first define the basis of the
definition by induction, f (1), and then the induction step of the definition by induction, defining f (n + 1)
in terms of f (n).
From the definition of f it is clear that if f (n + 1) is defined, then so is f (n) and f (n) < f (n + 1), for
all n ∈ N. It follows that if n < n0 and f (n0 ) is defined, then f (n) is defined and f (n) < f (n0 ). Hence
D = {n ∈ N | f (n) is defined}
is either N, or of the form {n ∈ N | n ≤ m}, a finite initial segment of the natural numbers. Furthermore
f : D → A is injective as two distinct elements of D will be strictly ordered so have distinct images under
f.
To show f is also surjective, suppose otherwise. Then there would be a least a ∈ A not in the image f D.
The element a cannot be the least element of A because this least element is f (1), clearly in f D. So there
must be a largest element a0 of A such that a0 < a. Because a0 < a there is n ∈ D such that f (n) = a0 . But
then f (n + 1) = a—contradiction. 2
In fact Russell and Whitehead’s definition of the cardinal numbers, including the natural numbers, was as ∼
1
=-equivalence
classes.
3.4. SIZE OF SETS 33
Proof. “only if ”: follows directly from the definition of countability. “if ”: By Lemma 3.21 a subset A ⊆ N
is countable so there is a bijection f : D → A where D is a finite initial segment or the whole of N. The
composition g ◦ f : D → B is a bijection establishing the countability of B. 2
So, a set is countable iff there is an injection from it into the natural numbers. We could instead have
taken this as our definition of countability. Though our current definition has the advantage of being more
customary and directly related to our intuitions about counting. As we will see, the following fact, a slight
relaxation of Lemma 3.23, is often useful in establishing that a set is countable.
Lemma 3.24 A set B is countable iff there is an injection f : B → A into a set A which is countable.
f (m, n) = 2m × 3n
Proof. Any positive rational q can be written uniquely as a fraction mq /nq where mq and nq are natural
numbers with no common factor. Define a function f : Q+ → N × N by taking f (q) = (mq , nq ). Then f is
an injection—two different rationals determine different fractions. So Q+ is countable by Lemma 3.24. 2
Proof. Assume sets A and B are countable. Then there are injections fA : A → N and fB : B → N, by
Lemma 3.24. We can combine them into an lnjection f : A × B → N × N by defining f (a, b) = (fA (a), fB (b)).
We spell out the easy check that f is an injection, which uses standard properties of pairs and that fA
and fB are injections. Let (a, b) and (a0 , b0 ) be pairs in A × B for which f (a, b) = f (a0 , b0 ). We obtain
(fA (a), fB (b)) = (fA (a0 ), fB (b0 )). Whence, fA (a) = fA (a0 ) and fB (b) = fB (b0 ). So a = a0 and b = b0 by the
injectivity of fA and fB . Thus (a, b) = (a0 , b0 ). 2
34 CHAPTER 3. RELATIONS AND FUNCTIONS
We have seen unions, like A1 ∪ A2 ∪ · · · ∪ Ak , of finitely sets A1 , · · · , Ak . Imagine now that we are given
an infinite sequence of sets A1 , A2 , A3 , · · · , An , · · · indexed by the natural numbers. We can also form their
union; we might write that union as
A1 ∪ A2 ∪ A3 ∪ · · · An ∪ · · ·
though this perhaps makes the union seem more mysterious than it is, because it suggests wrongly a form
of limiting process like those in real or complex analysis. A better way to write the union of the sequence
of sets is as [
An =def {x | ∃n ∈ N. x ∈ An } ,
n∈N
which exposes how innocent this union of countably many sets really is. The next lemma shows that if each
of the sets An is countable then so is their union. The lemma is often expressed as: a countable union of
countable sets is countable.
S
Lemma 3.28 Suppose A1 , A2 , · · · , An , · · · are all countable sets. Their union n∈N An is countable.
S
Proof. Write A for the set n∈N An . By Lemma 3.23, for each n there is an injection fn : An → N. Define
an injection h : A → N × N as follows. For x ∈ A, let nx be the least number for which x ∈ Anx , and take
We check that h is an injection: Suppose h(x) = h(y) for x, y ∈ A. Then nx = ny so x, y ∈ Anx and
fnx (x) = fnx (y). But fnx is injective, so x = y. Hence A is countable by Lemmas 3.24 and 3.25. 2
Notice thay the above lemma also applies to finite unions, because the An ’s could all be the empty set
from some point on.
Exercise 3.29 Prove that the set Z of integers and the set Q of all rational numbers are countable. [Both
proofs involve the same idea.] 2
Exercise 3.30 Show that the set of all finite subsets of N is countable. 2
Exercise 3.31 Show that Q × Q is countable. Deduce that any set of disjoint discs (i.e. circular areas
which may or may not include their perimeter) in the plane R × R is countable. Is the same true if “discs”
is replaced by “circles” (i.e. just the perimeters of the circles)? 2
Exercise 3.32 Show that a nonempty set A is countable iff there is a surjection f : N → A. 2
3.4.2 Uncountability
Not all sets are countable. One of the notable mathematical accomplishments of the 19th century was Georg
Cantor’s proof that the set of real numbers R is uncountable, i.e. not countable. This opened up new ways
to prove the existence of certain kinds of real numbers. His second, simpler proof of the uncountability
of R used a diagonal argument, a style of argument which reappears in showing the undecidability of the
halting problem, is implicit in the proof of Gödel’s incompleteness theorem, and can sometimes be used in
establishing the hierarchies of complexity theory.
Proof. The proof is by contradiction. Assume that R is countable. Then by Lemma 3.24, the interval
(0, 1] = {r ∈ R | 0 < r ≤ 1} ⊆ R will also be a countable set. Each number in (0, 1] is represented uniquely
by a non-terminating decimal expansion; for example 0.13 is represented by the non-terminating decimal
0.12999 · · ·. The set (0, 1] is clearly infinite (any finite set of reals would contain a least element, which (0, 1]
clearly does not). So (0, 1] being countable implies there is a bijection f : N → (0, 1]. Write
to describe the non-terminating decimal expansion of the nth real in the enumeration given by f . We’ll
produce a number r in (0, 1] which can’t be in the enumeration, so yielding a contradiction. Define the
number’s decimal expansion to be
0.r1 r2 r3 · · · ri · · ·
where
if dii 6= 1,
1
ri =
2 if dii = 1 .
Clearly r ∈ (0, 1]. Thus there is some natural number k such that f (k) = r. Hence by the uniqueness of the
decimal expansions ri = dki for all i. In particular,
rk = dkk .
But, from the definition of rk , we have that rk = 1 if dkk 6= 1, and rk = 2 if dkk = 1. In either case, rk 6= dkk —a
contradiction.
We conclude that the original assumption, that R is countable, is false. 2
To see why it is called a diagonal argument, imagine writing the enumerations as an array:
The decimal expansion of the real r which plays a key role in Cantor’s argument is defined by running down
the diagonal of the array changing 1’s to 2’s and non-1’s to 1’s. In this way the decimal expansion can never
be in the enumeration; no matter which row one considers, the decimal expansion of r will differ on the
diagonal.
Notice that Cantor’s theorem establishes the existence of irrational numbers, in fact shows that the set
of irrational numbers is uncountable, without exhibiting a single irrational number explicitly.
An analogous proof that there are uncountably many transcendental numbers is even more dramatic in
that it is very hard to prove a number is transcendental. An algebraic number is a real number x that is
the solution of a polynomial equation
a0 + a1 x + a2 x2 + · · · + an xn = 0
where a0 , a1 , a2 , · · · , an are integer coefficients. A real number which is not algebraic is called transcendental.
There are only countably many such polynomial equations2 and each has only finitely many solutions, so
there are only countably many algebraic numbers. But there are uncountably many reals. It follows that
there must be transcendental numbers, and indeed that the set of transcendental numbers is uncountable.
(Do you now know a single transcendental number? Well, π and e are. But could you prove it? Probably
not.)
Exercise 3.35 Prove that the set of transcendental numbers is uncountable. (This uses essentially the
same idea as Exercise 3.34.) 2
2
A polynomial is determined by its coefficients. So polynomials with integer coefficients are in 1-1 correspondence with
tuples of integers in the set n∈N Zn , a countable union of countable sets, so countable.
S
36 CHAPTER 3. RELATIONS AND FUNCTIONS
Investigating cardinality
By Lemma 3.24, if f : B → A is an injection and A is countable, then so is B. So, when investigating
cardinality,
• to show a set B is countable it suffices to exhibit an injection from B set into a set A known to be
countable; while
• to show a set A is uncountable it suffices to exhibit an injection from a set B known to be uncountable
into A. Because then, if A were countable, so would B be countable—a contradiction.
Sometimes (though rarely in undergraduate courses) we need to investigate cardinality beyond count-
ability or its failure. Then the key tool is the Schröder-Bernstein theorem.This says that two sets A and
B have the same cardinality iff there are injections f : A → B and g : B → A. The hard part of its proof
shows how to construct a bijection between A and B out of the two injections—see Exercise 3.38.
Exercise 3.36 By using a variation on the diagonal argument above, show that the powerset, P(N) =def
{S | S ⊆ N}, is uncountable. (See Section 4.3.2 for a proof.) 2
Exercise 3.37 Which of the following sets are finite, which are infinite but countable, and which are
uncountable?
• {f : N → N | ∀n ∈ N. f (n) ≤ f (n + 1)}
• {f : N → N | ∀n ∈ N. f (n) ≥ f (n + 1)}
Exercise 3.38 (Schröder-Bernstein theorem) Let f : A → B and g : B → A be injections between two sets
A and B. Note that the function g : B → g B is a bijection, with inverse function g −1 : g B → B. Define
subsets C1 , C2 , · · · , Cn , · · · of A by the following induction:
C1 = A \ (g B)
.
Cn+1 = (g ◦ f ) Cn
S
Define C = n∈N Cn . Now define a function h : A → B by
h(a) = f (a) if a ∈ C,
−1
h(a) = g (a) if a ∈
/C