0 Up votes0 Down votes

17 views454 pagesSep 11, 2013

© Attribution Non-Commercial (BY-NC)

PDF, TXT or read online from Scribd

Attribution Non-Commercial (BY-NC)

17 views

Attribution Non-Commercial (BY-NC)

- Basic Model Theory Dotes
- Introduction to Sets
- Introduction to Calculus
- Sl Primer
- Galois Sections
- BA Logic 4
- The Logic of Leibnizs Generales Inquisitiones
- actacyb_22_2_2015_3
- phil170-lec4-ch3b
- Operasi Ke Atas Set
- Possible World Semantics Kaplan
- 2 Lectures 9-10-Knowledge Representation Methods
- Logika Matematika
- A Concise Introduction to Logic
- mathgen-829267754
- An Entailment Relation for Reasoning on the web
- Kbs
- Label free proof systems for intuitionistic modal logics
- EFS Ch2 Online
- PartC-Chapter5-4~5

You are on page 1of 454

Noel Vaillant

http://www.probability.net/personal.html

(use Alt+Left-Arrow to navigate back within document)

August 29, 2013

Contents

1 Universal Algebra 5

1.1 Existence of Free Universal Algebra . . . . . . . . . . . . . . . . 5

1.1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.1.2 Type of Universal Algebra . . . . . . . . . . . . . . . . . . 6

1.1.3 Denition of Universal Algebra . . . . . . . . . . . . . . . 7

1.1.4 Homomorphism of Universal Algebra . . . . . . . . . . . . 7

1.1.5 Isomorphism of Universal Algebra . . . . . . . . . . . . . 9

1.1.6 Free Generator of Universal Algebra . . . . . . . . . . . . 10

1.1.7 Free Universal Algebra . . . . . . . . . . . . . . . . . . . . 12

1.1.8 Construction of Free Universal Algebra . . . . . . . . . . 14

1.1.9 Cantors Theorem . . . . . . . . . . . . . . . . . . . . . . 16

1.1.10 Disjoint Copy of a Set . . . . . . . . . . . . . . . . . . . . 17

1.1.11 Main Existence Theorem . . . . . . . . . . . . . . . . . . 20

1.2 Structural Induction, Structural Recursion . . . . . . . . . . . . . 21

1.2.1 Unique Representation in Free Universal Algebra . . . . . 21

1.2.2 Order in Free Universal Algebra . . . . . . . . . . . . . . 23

1.2.3 Universal Sub-Algebra of Universal Algebra . . . . . . . . 25

1.2.4 Generator of Universal Algebra . . . . . . . . . . . . . . . 29

1.2.5 Proof by Structural Induction . . . . . . . . . . . . . . . . 30

1.2.6 Denition by Recursion over N . . . . . . . . . . . . . . . 34

1.2.7 Denition by Structural Recursion . . . . . . . . . . . . . 43

1.3 Relation on Universal Algebra . . . . . . . . . . . . . . . . . . . . 50

1.3.1 Relation and Congruence on Universal Algebra . . . . . . 50

1.3.2 Congruence Generated by a Set . . . . . . . . . . . . . . . 51

1.3.3 Quotient of Universal Algebra . . . . . . . . . . . . . . . . 55

1.3.4 First Isomorphism Theorem . . . . . . . . . . . . . . . . . 56

1.4 Sub-Formula in Free Universal Algebra . . . . . . . . . . . . . . . 58

1.4.1 Sub-Formula of Formula in Free Universal Algebra . . . . 58

1.4.2 The Sub-Formula Partial Order . . . . . . . . . . . . . . . 60

1.4.3 Increasing Map on Free Universal Algebra . . . . . . . . . 63

1.4.4 Structural Substitution between Free Algebras . . . . . . 64

1

2 The Free Universal Algebra of First Order Logic 66

2.1 Formula of First Order Logic . . . . . . . . . . . . . . . . . . . . 66

2.1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 66

2.1.2 The Free Universal Algebra of First Order Logic . . . . . 68

2.1.3 Variable Substitution in Formula . . . . . . . . . . . . . . 70

2.1.4 Variable Substitution and Congruence . . . . . . . . . . . 75

2.1.5 Variable of a Formula . . . . . . . . . . . . . . . . . . . . 76

2.1.6 Substitution of Single Variable . . . . . . . . . . . . . . . 80

2.1.7 Free Variable of a Formula . . . . . . . . . . . . . . . . . 83

2.1.8 Bound Variable of a Formula . . . . . . . . . . . . . . . . 88

2.1.9 Valid Substitution of Variable . . . . . . . . . . . . . . . . 92

2.1.10 Dual Substitution of Variable . . . . . . . . . . . . . . . . 99

2.1.11 Local Inversion of Variable Substitution . . . . . . . . . . 102

2.2 The Substitution Congruence . . . . . . . . . . . . . . . . . . . . 109

2.2.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 109

2.2.2 The Strong Substitution Congruence . . . . . . . . . . . . 109

2.2.3 Free Variable and Strong Substitution Congruence . . . . 110

2.2.4 Substitution and Strong Substitution Congruence . . . . . 111

2.2.5 Characterization of the Strong Congruence . . . . . . . . 115

2.2.6 Counterexamples of the Strong Congruence . . . . . . . . 123

2.2.7 The Substitution Congruence . . . . . . . . . . . . . . . . 125

2.2.8 Free Variable and Substitution Congruence . . . . . . . . 128

2.2.9 Substitution and Substitution Congruence . . . . . . . . . 129

2.2.10 Characterization of the Substitution Congruence . . . . . 130

2.2.11 Substitution Congruence vs Strong Congruence . . . . . . 136

2.3 Essential Substitution of Variable . . . . . . . . . . . . . . . . . . 140

2.3.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 140

2.3.2 Minimal Transform of Formula . . . . . . . . . . . . . . . 141

2.3.3 Minimal Transform and Valid Substitution . . . . . . . . 147

2.3.4 Minimal Transform and Substitution Congruence . . . . . 152

2.3.5 Isomorphic Representation Modulo Substitution . . . . . 156

2.3.6 Substitution Rank of Formula . . . . . . . . . . . . . . . . 158

2.3.7 Existence of Essential Substitution . . . . . . . . . . . . . 171

2.3.8 Properties of Essential Substitution . . . . . . . . . . . . 179

2.4 The Permutation Congruence . . . . . . . . . . . . . . . . . . . . 188

2.4.1 The Permutation Congruence . . . . . . . . . . . . . . . . 188

2.4.2 Integer Permutation . . . . . . . . . . . . . . . . . . . . . 190

2.4.3 Iterated Quantication . . . . . . . . . . . . . . . . . . . . 192

2.4.4 Irreducible Formula . . . . . . . . . . . . . . . . . . . . . 195

2.4.5 Characterization of the Permutation Congruence . . . . . 196

2.5 The Absorption Congruence . . . . . . . . . . . . . . . . . . . . . 201

2.5.1 The Absorption Congruence . . . . . . . . . . . . . . . . . 201

2.5.2 Characterization of the Absorption Congruence . . . . . . 207

2.5.3 Absorption Mapping and Absorption Congruence . . . . . 210

2.6 The Propositional Congruence . . . . . . . . . . . . . . . . . . . 214

2.6.1 The Propositional Congruence . . . . . . . . . . . . . . . 214

2

3 The Free Universal Algebra of Proofs 215

3.1 The Hilbert Deductive Congruence . . . . . . . . . . . . . . . . . 215

3.1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 215

3.1.2 Axioms of First Order Logic . . . . . . . . . . . . . . . . . 216

3.1.3 Proofs as Free Universal Algebra . . . . . . . . . . . . . . 220

3.1.4 Provability and Sequent Calculus . . . . . . . . . . . . . . 226

3.1.5 The Deduction Theorem . . . . . . . . . . . . . . . . . . . 231

3.1.6 Transitivity of Consequence Relation . . . . . . . . . . . . 234

3.1.7 The Hilbert Deductive Congruence . . . . . . . . . . . . . 235

3.2 The Free Universal Algebra of Proofs . . . . . . . . . . . . . . . . 240

3.2.1 Totally Clean Proof . . . . . . . . . . . . . . . . . . . . . 240

3.2.2 Variable Substitution in Proof . . . . . . . . . . . . . . . 247

3.2.3 Hypothesis of a Proof . . . . . . . . . . . . . . . . . . . . 252

3.2.4 Axiom of a Proof . . . . . . . . . . . . . . . . . . . . . . . 254

3.2.5 Variable of a Proof . . . . . . . . . . . . . . . . . . . . . . 257

3.2.6 Specic Variable of a Proof . . . . . . . . . . . . . . . . . 263

3.2.7 Free Variable of a Proof . . . . . . . . . . . . . . . . . . . 265

3.2.8 Bound Variable of a Proof . . . . . . . . . . . . . . . . . . 269

3.2.9 Valid Substitution of Variable in Proof . . . . . . . . . . . 272

3.2.10 Valid Substitution of Axiom . . . . . . . . . . . . . . . . . 284

3.2.11 Valid Substitution of Totally Clean Proof . . . . . . . . . 287

3.3 Proof Modulo and Minimal Transform . . . . . . . . . . . . . . . 291

3.3.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 291

3.3.2 Valuation of Proof Modulo . . . . . . . . . . . . . . . . . 293

3.3.3 Clean Proof . . . . . . . . . . . . . . . . . . . . . . . . . . 304

3.3.4 Valid Substitution of Axiom Modulo . . . . . . . . . . . . 310

3.3.5 Valid Substitution of Clean Proof . . . . . . . . . . . . . . 319

3.3.6 Minimal Transform of Proof . . . . . . . . . . . . . . . . . 321

3.3.7 Minimal Transform of Clean Proof . . . . . . . . . . . . . 328

3.3.8 Minimal Transform and Valid Substitution . . . . . . . . 332

3.4 The Substitution Congruence for Proofs . . . . . . . . . . . . . . 336

3.4.1 The Substitution Congruence . . . . . . . . . . . . . . . . 336

3.4.2 Characterization of the Substitution Congruence . . . . . 339

3.4.3 Local Inversion of Substitution for Proofs . . . . . . . . . 347

3.4.4 Minimal Transform and Substitution Congruence . . . . . 354

3.4.5 Proof with Clean Minimal Transform . . . . . . . . . . . 360

3.4.6 Valuation Modulo and Substitution Congruence . . . . . 362

3.5 Essential Substitution for Proofs . . . . . . . . . . . . . . . . . . 363

3.5.1 Substitution Rank of Proof . . . . . . . . . . . . . . . . . 363

3.5.2 Existence of Essential Substitution . . . . . . . . . . . . . 377

3.5.3 Properties of Essential Substitution . . . . . . . . . . . . 384

3.5.4 Essential Substitution of Clean Proof . . . . . . . . . . . . 393

3.5.5 The Substitution Theorem . . . . . . . . . . . . . . . . . 395

3

4 The Gentzen LK-System 398

4.1 The Universal Algebra of Sequents . . . . . . . . . . . . . . . . . 398

4.1.1 The Set of Sequents . . . . . . . . . . . . . . . . . . . . . 398

4.1.2 Operators on the Set of Sequents . . . . . . . . . . . . . . 398

4.1.3 Operator Symbols on the Set of Sequents . . . . . . . . . 400

4.1.4 The Universal Algebra of Sequents . . . . . . . . . . . . . 401

4.2 The Free Universal Algebra of LK-Proofs . . . . . . . . . . . . . 401

4.2.1 LK-Proofs and Provable Sequents . . . . . . . . . . . . . 401

5 Semantics and Dual Space 403

5.1 Valuation and Semantics . . . . . . . . . . . . . . . . . . . . . . . 403

5.1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . 403

5.1.2 Valuation and Dual Space . . . . . . . . . . . . . . . . . . 404

5.1.3 Semantic Entailment and Valid Formula . . . . . . . . . . 409

5.1.4 Maximal Consistent Subset . . . . . . . . . . . . . . . . . 411

5.1.5 Lindenbaums Lemma . . . . . . . . . . . . . . . . . . . . 416

5.1.6 The Compactness Theorem . . . . . . . . . . . . . . . . . 418

5.1.7 Equivalence of Syntax and Semantics . . . . . . . . . . . . 419

5.1.8 Dual Characterization of the Deductive Congruence . . . 420

5.2 Elements of Classical Model Theory . . . . . . . . . . . . . . . . 422

5.2.1 Model and Variables Assignment . . . . . . . . . . . . . . 422

5.2.2 Model Valuation Function . . . . . . . . . . . . . . . . . . 423

5.2.3 The Relevance Lemma . . . . . . . . . . . . . . . . . . . . 427

5.2.4 The Substitution Lemma . . . . . . . . . . . . . . . . . . 429

5.2.5 The Soundness Theorem . . . . . . . . . . . . . . . . . . . 437

5.2.6 Regular Valuation . . . . . . . . . . . . . . . . . . . . . . 441

4

Chapter 1

Universal Algebra

1.1 Existence of Free Universal Algebra

1.1.1 Preliminaries

In the following, N = 0, 1, 2, . . . denotes the set of non-negative integers, while

N

set , and for all n N

:

n = 0, 1, . . . , n 1

Recall that a map or function is a (possibly empty) set of ordered pairs f such

that y = y

dom(f) = x : y, (x, y) f

while the range of f is the set:

rng(f) = y : x, (x, y) f

The notation f : A B indicates that f is a map with domain A and whose

range is a subset of B. In particular, f is a subset of the cartesian product:

A B = (x, y) : x A, y B

The set of all maps f : A B is denoted B

A

. Note that B

= as the empty

set is the only map f : B. The formula B

B

0

= 1 which makes it easy to remember, and holds even if B = 0. If A ,=

then

A

= as there is no map f : A . The formula

A

= can equally

be written 0

A

= 0 which is also easy to remember, but does not hold if A = 0.

There is nothing deep or interesting about the empty map : B, B

or

A

.

But they are often confusing and we should confront them at an early stage.

Regarding the cartesian product AB, it is very common to refer to it as A

2

whenever A = B. This may seem confusing at rst since A

2

is the set of maps

5

f : 0, 1 A, which is not the same thing as the set of ordered pairs (x, y) with

x, y A. However, it is natural to represent a map f : 0, 1 A by the ordered

pair (f(0), f(1)). If x = f(0) and y = f(1), then we are eectively representing

f = (0, x), (1, y) by the ordered pair (x, y). It makes communication easier.

In summary, when we refer to (x, y) as the element of AA, things are exactly

as they are. But if we are referring to (x, y) as an element of A

2

, what we really

mean is the map f = (0, x), (1, y), i.e the maps f : 0, 1 A such that

f(0) = x and f(1) = y. Note that the sets A and A

1

are also dierent.

1.1.2 Type of Universal Algebra

Denition 1 A Type of Universal Algebra is a map with rng() N.

Since the empty set is a map with empty range, it is also is a type of universal

algebra. When is an element of N

n

, it is a map : n N which can be

represented as the n-uple ((0), . . . , (n1)). If is a type of universal algebra,

its cardinal number represents the number of operators dened on any universal

algebra of type (which can be nite, innite, countable or uncountable) while

for all i dom(), (i) N represents the arity of the i-th operator so to speak,

i.e. the number of arguments it has. If X is a universal algebra of type , then

an operator of arity (i) is a map f : X

(i)

X. Hence an operator of arity 1

is a map f : X

1

X while an operator of arity 2 is a map f : X

2

X. What

may be more unusual is an operator or arity 0, namely a map f : X

0

X. Since

X

0

= 0, an operator of arity 0 is therefore a map f : 0 X, which is a

set f = (0, f(0)) containing the single ordered pair (0, f(0)). Fundamentally,

there is not much dierence between specifying an operator of arity 0 on X, and

the constant element f(0) of X. It is however convenient to allow the arity of an

operator to be 0, so we do not have to treat constants and operators separately.

Universal algebras may have constants, like an identity element in a group.

If G is a group with identity element e and product , it is possible to regard

G as a universal algebra with 3 operators. The identity operator f : 0 G is

dened by f(0) = e, the product operator f : G

2

G by f(x) = x(0)x(1) and

the inverse operator f : G

1

G by f(x) = x(0)

1

. The type of this universal

algebra could be : 3 N dened by (0) = 0, (1) = 2 and (2) = 1,

that is = (0, 0), (1, 2), (2, 1). Of course a group G has more properties

than a universal algebra of type because the operators need to satisfy certain

conditions. Hence a group is arguably a universal algebra of type , but the

converse is not true in general.

There is something slightly unsatisfactory about denition (1), namely the

fact that the arity of the operators are ordered. After all, a group is also a univer-

sal algebra of type

provided , + and @ denote distinct sets.

Let be a type of universal algebra and f . Then f is an ordered pair

(i, (i)) for some i dom(). From now on, we shall write (f) rather than

(i). This notational convention is very convenient as we no longer need to

6

refer to dom(), or i dom(). If X is a universal algebra of type , we simply

require the existence of an operator T(f) : X

(f)

X for all f .

1.1.3 Denition of Universal Algebra

Denition 2 Let be a type of universal algebra. A Universal Algebra of type

is an ordered pair (X, T) where X is a set and T is a map with domain ,

such that for f we have T(f) : X

(f)

X.

In fact there is no need to keep writing T(f) or (X, T) when everything is clear

from the context. If X is a universal algebra of type , then for all f we

have the operator f : X

(f)

X, also denoted f. Of course, if X and Y are

two universal algebras of type , then f : X

(f)

X and f : Y

(f)

Y are

dierent sets in general. One is T(f) where (X, T) is the rst universal algebra

referred to as X, while the other is S(f) where (Y, S) is the second universal

algebra referred to as Y .

If is the empty set, then T is a map with empty domain, i.e. the empty

set itself. So (X, ) is a universal algebra of empty type for any set X, which

is not very dierent from the set X itself. A universal algebra of empty type is

therefore a set with no structure. If is not an empty type of universal algebra,

then T has a non-empty domain and therefore cannot be empty. So there is at

least one operator T(f) : X

(f)

X. If X is the empty set then we must have

(f) 1, as there is no map T(f) : 0 . In other words, there cannot be

any constant in an empty universal algebra, as we should expect. Furthermore,

any T(f) : X

(f)

X is in fact the empty map : . In summary, if

is a type of universal algebra with constants (i.e. (f) = 0 for some f ),

then no universal algebra of type can be empty, while if has no constant

(i.e. (f) 1 for all f ), then the only empty universal algebra of type

is (, T) where T(f) = for all f . So much for confronting the fear of the

empty set.

1.1.4 Homomorphism of Universal Algebra

Recall that if f and g are both maps then g f is the set of ordered pairs:

g f = (x, z) : y, (x, y) f and (y, z) g

It is easy to check that g f is also a map, namely that z = z

whenever both

(x, z) and (x, z

) are elements of g f.

Let g : A B be a map. Then for all x A, it is a well established

convention to denote g(x) the unique element of B such that (x, g(x)) g. Now

if n N, we can dene a map g

n

: A

n

B

n

by setting:

g

n

(x

0

, . . . , x

n1

) = (g(x

0

), . . . , g(x

n1

))

or more rigorously:

x A

n

, i n , g

n

(x)(i) = g(x(i))

7

Note that if n = 0, then g

0

: A

0

B

0

is the map g

0

: 0 0. There

is only one such map, dened by g

0

(0) = 0 or g

0

= (0, 0). If n = 1, then

g

1

: A

1

B

1

is the map dened by g

1

((0, x)) = (0, g(x)) for all x A.

Anyone being confused by this last statement should remember that (0, x) is

simply the map f : 0 A dened by f(0) = x which is an element of A

1

not

fundamentally dierent from the constant x A. Likewise (0, g(x)) is simply

the map f : 0 B dened by f(0) = g(x) which is an element of B

1

not

fundamentally dierent from g(x) B. From now, whenever it is clear from the

context that x A

n

rather than x A, we shall write g(x) rather than g

n

(x).

Denition 3 Let X and Y be universal algebras of type . We say that a map

g : X Y is a morphism or homomorphism, if and only if:

f , x X

(f)

, g f(x) = f g(x)

With stricter notations, given two universal algebras (X, T) and (Y, S) of type

, a map g : X Y is a morphism, if and only if:

f , x X

(f)

, g T(f)(x) = S(f) g

(f)

(x)

Suppose = (0, 0), (1, 2), (1, 1) and let X, Y be universal algebras of type .

For example, let us assume that X and Y are groups. We have three operators

1

T(0, 0) : 0 X, T(1, 2) : X

2

X and T(1, 1) : X

1

X. To simplify

notations, for all x, y X, let us dene e X, x y and x

1

as:

2

e = T(0, 0)(0) , x y = T(1, 2)(x, y) , x

1

= T(2, 1)(x)

Adopting similar conventions for the universal algebra Y , the rst condition

required for a map g : X Y to be a morphism can be expressed as:

g(e) = g T(0, 0)(0) = T(0, 0) g

0

(0) = T(0, 0)(0) = e

While the second is, for all x, y X:

g(xy) = gT(1, 2)(x, y) = T(1, 2)g

2

(x, y) = T(1, 2)(g(x), g(y)) = g(x)g(y)

Finally the last condition is, for all x X:

g(x

1

) = g T(2, 1)(x) = T(2, 1) g

1

(x) = T(2, 1) g(x) = g(x)

1

It follows that g : X Y is a morphism, if and only if for all x, y X:

g(e) = e , g(x y) = g(x) g(y) , g(x

1

) = g(x)

1

In particular, we see that a morphism (of universal algebra of type ) is no

dierent from group morphism whenever X and Y are groups.

1

T is a map with domain . The notation T(0, 0) is a shortcut for T((0, 0)).

2

Here is an example when (x, y) does not really mean (x, y) in x y = T(1, 2)(x, y).

Instead, (x, y) is a notational shortcut for the element f X

2

dened by f = {(0, x), (1, y)}.

Equivalently, f is the map f : 2 X dened by f(0) = x and f(1) = y. Similarly x does

not really mean x in T(2, 1)(x), but is rather a notational shortcut for the element f X

1

dened by f = {(0, x)}. Equivalently, f is the map f : 1 X dened by f(0) = x.

8

Proposition 4 Let X, Y and Z be universal algebras of type . If g : X Y

and g

g : X Z is also a morphism.

Proof

For all f and x X

(f)

we have g

g f(x) = g

f g(x) = f g

g(x).

Recall that a map f is said to be injective or one-to-one if and only if x = x

f

1

= (y, x) : (x, y) f

is also a map. If f : A B then saying that f is injective can be expressed as:

x, x

A , f(x) = f(x

) x = x

1

is the range of f or rng(f), which may not be

the whole set B. We say that f : A B is surjective or onto if and only if

rng(f) = B, or equivalently:

y B , x A , y = f(x)

Note that a map f : A B is simply a set of ordered pairs with no knowledge

of the set B. In other words, being given the set f will not give you the set B,

which can be any set with rng(f) B. Saying that f is surjective is therefore

not meaningful on its own, unless the set B is clear from the context.

We say that f : A B is bijective, or that it is a bijection or one-to-one

correspondence if and only if it is both injective and surjective. When this is

the case we have f

1

: B A, and it is also a bijective map.

Denition 5 Let X and Y be universal algebras of type . We say that a map

g : X Y is an isomorphism if and only if g is a bijective morphism. If there

exists an isomorphism g : X Y , we say that X and Y are isomorphic.

Proposition 6 Let X and Y be universal algebras of type . If g : X Y is

an isomorphism, then g

1

: Y X is also an isomorphism.

Proof

Suppose g : X Y is a morphism which is bijective. Then g

1

: Y X is

also bijective and we only need to check that it is a morphism. Let f and

y Y

(f)

. We need to check that g

1

f(y) = f g

1

(y), and since g is an

injective map, this is equivalent to:

g g

1

f(y) = g f g

1

(y) (1.1)

9

The l.h.s of (1.1) is clearly f(y) and since g : X Y is a morphism, the r.h.s

is f g g

1

(y) . So it remains to check that g g

1

(y) = y for all y Y

(f)

.

This follows immediately from:

g g

1

(y)(i) = g(g

1

(y)(i)) = g(g

1

(y(i))) = y(i)

which is true for all i (f).

1.1.6 Free Generator of Universal Algebra

Recall that if f is a map and A is a set, the restriction of f to A is the set:

f

|A

= (x, y) : x A and (x, y) f

This is also a set of ordered pairs such that y = y

whenever (x, y) f

|A

and

(x, y

) f

|A

. Hence the restriction f

|A

is also a map. Furthermore if f : A

B

and A A

, then f

|A

: A B.

Denition 7 Let X be a universal algebra of type . We call free generator

of X any subset X

0

X with the following property: for any universal algebra

Y of type , and for any map g

0

: X

0

Y , there exists a unique morphism

g : X Y such that g

|X0

= g

0

.

Consider the set X = N together with the successor operator s : N N

dened by s(n) = n + 1. Then X can be viewed as a universal algebra of

type = (0, 1) where T(0, 1) : X

1

X is dened as T(0, 1)(n) = n(0) + 1.

Furthermore the set X

0

= 0 is a free generator of X. To check this, let

Y be another universal algebra of type and assume that g

0

: X

0

Y is

an arbitrary map. We have to prove that g

0

can be uniquely extended into

a morphism g : X Y . This is another way of saying that there exists a

morphism g : X Y such that g

|X0

= g

0

, and that such morphism is unique.

Since X

0

= 0, we have g

0

: 0 Y . We dene e = g

0

(0) Y . Consider the

map g : X Y dened by the recursion g(0) = e and g(n+1) = sg(n), where

s : Y

1

Y is the successor operator on Y . To check that g is a morphism, we

need to check the single condition for all n X:

g s(n) = s g(n)

which is true from the very denition of g. Hence we have proved the existence

of a morphism g : X Y , and since g(0) = e = g

0

(0) we have g

|X0

= g

0

. It

remains to check that g is unique. Suppose that g

: X Y is another morphism

such that g

|X0

= g

0

, i.e. g

(0) = e. In particular g

since g

is a morphism, if g

g

(n + 1) = s g

This proves by induction that g

= g.

10

We have proved that 0 is a free generator of N viewed as a universal

algebra with a single successor operator. Note that the empty set alone would

be too small to be a free generator of N. If g

0

: Y is a map then g

0

has

to be the empty set, and it is not dicult to extend g

0

into a full morphism

g : X Y whenever Y is not empty. Indeed pick an arbitrary e Y and dene

g by the same recursion as before, g(0) = e and g(n+1) = sg(n). We obtain a

morphism such that g

|X0

= = g

0

. However, such morphism will not be unique

as there are in general many ways to choose the element e Y . This shows that

the empty set is not a free generator of N viewed as a universal algebra with a

single successor operator. In fact, we could have made the argument simpler:

consider Y = which is a universal algebra of type by setting T(f) = for

all f

3

. Consider the map g

0

: Y which is just the empty map. Then it

is impossible to extend g

0

to a full morphism g : X Y , for the simple reason

that there cannot exist any map g : X since X is not empty.

We now claim that X

0

= 0, 1 is too large to be a free generator of N. In

the case of X

0

= , we failed to obtain uniqueness when Y had more than one

element, and we failed to obtain existence for Y = . In the case of X

0

= 0, 1,

we will fail to obtain existence. Indeed consider Y = N and g

0

: X

0

Y dened

by g

0

(0) = 2 and g

0

(1) = 4. Then no morphism g : X Y can extend g

0

, as

otherwise:

4 = g

0

(1) = g(1) = g(0 + 1) = g(0) + 1 = g

0

(0) + 1 = 3

So we have seen that X

0

= is too small, while X

0

= 0, 1 is too large

to be a free generator of N. This last statement is in fact misleading as size is

not everything. Consider X

0

= 1 with Y = N and g

0

: X

0

Y dened by

g

0

(1) = 0. Then no morphism g : X Y can extend g

0

as otherwise:

0 = g

0

(1) = g(1) = g(0 + 1) = g(0) + 1

contradicting the fact that g(0) N. So X

0

= 1 is not a free generator of N

viewed as a universal algebra with successor operator.

Suppose we now regard N as a universal algebra of type = (0, 1), (1, 0)

by adding to the successor operator the operator T(1, 0) : 0 N dened by

T(1, 0)(0) = 0. In eect, we are giving N additional structure by singling out the

element 0. We now claim that the empty set X

0

= is a free generator of N. So

let Y be a universal algebra of type and consider a map g

0

: X

0

Y . Since

X

0

= , g

0

is necessarily the empty map g

0

= . We need to show that g

0

can be

uniquely extended into a morphism g : X Y . Since Y is a universal algebra of

type , we have an operator T(1, 0) : 0 Y . Dene e = T(1, 0)(0) Y and

consider g : X Y dened by the recursion g(0) = e and g(n + 1) = s g(n).

Then g is a morphism as it satises the two conditions:

g T(1, 0)(0) = g(0) = e = T(1, 0)(0) = T(1, 0) g

0

(0)

3

We have T(f) : Y

(f)

Y since (f) 1 for all f . The empty set Y = is a

universal algebra of type only when has no constant, i.e. no operator with arity 0.

11

and:

g T(0, 1)(n) = g s(n) = g(n + 1) = s g(n) = T(0, 1) g

1

(n)

Furthermore, g

|X0

= = g

0

, and since any other morphism g

: X Y would

need to satisfy g

(0) = e and g

(n +1) = s g

shows that g is in fact unique. So we have proved that X

0

= is a free generator

of N viewed as a universal algebra of type .

Before we end this section, let us confront our fear of the empty set once

more. We have just seen that it is possible for X

0

= to be a free generator of a

universal algebra which is not empty. But such universal algebra had a constant

0. Suppose now that is a type of universal algebra without constant, i.e. such

that (f) 1 for all f . Then the empty set X = is a universal algebra of

type , provided the map T of domain is dened as T(f) = for all f .

Then T(f) is indeed a map T(f) : X

(f)

X, and it is the only possible choice.

We claim that X is the only universal algebra of type which can have X

0

=

as a free generator. So rst we show that X

0

= is indeed a free generator of

X. Suppose Y is a universal algebra of type and let g

0

: X

0

Y be a map.

Then g

0

is necessarily the empty map. Dene g = g

0

= . Then g : X Y and

in fact g is a morphism since the conditions required f , x X

(f)

. . .

are vacuously satised, as X

(f)

= whenever X = and (f) 1. We clearly

have g

|X0

= = g

0

. Furthermore, the morphism g = is unique, since it is the

only possible map g : X Y . So we have proved that X

0

= is a free generator

of X = viewed as a universal algebra of type . We now show that X = is

the only universal algebra of type which can have X

0

= as a free generator.

So suppose X

0

= is a free generator of some universal algebra X of type .

Let Y = be viewed as a universal algebra of type with the obvious structure

T. Consider the empty map g

0

: X

0

Y . Since X

0

is a free generator, g

0

can

be extended into a morphism g : X Y . But since Y is empty, there exists no

map g : X Y , unless X is also empty. So we have proved that X = .

1.1.7 Free Universal Algebra

Denition 8 A Universal Algebra is said to be free if it has a free generator.

We have already seen a few examples of free universal algebras. The set N

with the successor operator s : N

1

N , or the set N with both the successor

operator and the constant 0. We have seen that is also a free universal algebra

of type , whenever has no constant. Along the same lines, any set X is a

free universal algebra of empty type. Indeed take X

0

= X and suppose Y is

any set while g

0

: X

0

Y is a map. There exists a unique map g : X Y

such that g

|X0

= g

0

, namely g

0

itself. Furthermore, the conditions required for

g : X Y to be a morphism are vacuously satised when = . Hence we see

that X

0

= X is a free generator of X, as a universal algebra of empty type.

It would be wrong to think that most universal algebras are free. Before

we proceed, let us nd a simple example of universal algebra which is not free.

The empty set is not a universal algebra of type unless has no constant.

12

When this is the case the empty set is free. So let us try a slightly bigger set,

namely X = 0. If is the empty type, then X is free, with itself as a free

generator. Suppose = (0, 0). Then the only possible structure on X is

given by T(0, 0) : 0 X dened by T(0, 0)(0) = 0. In other words, there

is only one possible choice of constant within X. Unfortunately X is still free,

with the empty set as a free generator. For if Y is another universal algebra

of type = (0, 0) and g

0

: Y is a map, there exists a unique morphism

g : X Y which extends g

0

, namely the map g dened by g(0) = 0, where

the r.h.s 0 refer to the constant of Y . So we need to choose a slightly more

complex structure on X. Consider = (0, 1). Since X = 0, there is only

one possible choice of operator T(0, 1) : X

1

X, namely T(0, 1)(0) = 0. With

this particular structure, X becomes a universal algebra of the same type as

N with a single successor operator s : N

1

N. We claim that X is not free.

If it was free, there would exist X

0

X which is a free generator of X. The

only possible values for X

0

are X

0

= and X

0

= 0. Now X

0

= cannot be

a free generator of X. As we have already seen, since has no constant, the

empty set is the only universal algebra of type which can have an empty free

generator. Suppose now that X

0

= 0 is a free generator of X. We shall arrive

at a contradiction. Consider the map g

0

: X

0

N dened by g

0

(0) = 0. Since

X

0

is a free generator of X, there exists a unique morphism g : X N such

that g

|X0

= g

0

. In fact, we must have g = g

0

since X

0

= X. But g = g

0

is not

a morphism. Indeed, If g was a morphism, we would have:

0 = g(0) = g T(0, 1)(0) = s g(0) = 0 + 1 = 1

So we have found a simple example of universal algebra which is not free, namely

X = 0 of type = (0, 1) with the only possible operator T(0, 1) : X

1

X.

Of course, having one single example of universal algebra which fails to be

free is little evidence so far. The following proposition shows that free universal

algebras are in fact pretty rare. There is essentially at most one free universal

algebra of type , for a given cardinality of free generator.

Proposition 9 Suppose X and Y are two free universal algebras of type with

free generators X

0

and Y

0

respectively. If there exists a bijection j : X

0

Y

0

,

then X and Y are isomorphic.

Proof

Since Y

0

Y we also have j : X

0

Y . Since X

0

is a free generator of X,

there exists a unique morphism g : X Y such that g

|X0

= j. We claim

that g is in fact an isomorphism. To show this, we only need to prove that

g : X Y is bijective. We shall do so by nding a map g

: Y X such that

g

g = id

X

and g g

= id

Y

where id

X

: X X and id

Y

: Y Y are the

identity mappings. Since j : X

0

Y

0

is a bijection, we have j

1

: Y

0

X

0

.

In particular, j

1

: Y

0

X and since Y

0

is a free generator of Y there exists

a unique morphism g

: Y X such that g

|Y0

= j

1

. We will complete the

proof by showing that g

g = id

X

and g g

= id

Y

. Since both g : X Y and

13

g

: Y X are morphisms, g

(g

g)

|X0

= g

(g

|X0

) = g

j = g

|Y0

j = j

1

j = id

X0

It follows that g

X0

: X

0

X.

Since X

0

is a free generator of X, such morphism is unique. As id

X

: X X is

also a morphism such that (id

X

)

|X0

= id

X0

we conclude that g

g = id

X

. We

prove similarly that g g

= id

Y

.

1.1.8 Construction of Free Universal Algebra

In this section, we explicitly construct a free universal algebra of type whose

free generator is a copy of a given set X

0

. In a later section, we shall prove the

existence of a free universal algebra whose generator is the set X

0

itself. Recall

that if A and B are sets, the dierence A B is dened as:

A B = x : x A and x , B

This notion will be used while proving the following proposition:

Proposition 10 Let be a type of universal algebra and X

0

be a set. Dene:

Y

0

= (0, x) : x X

0

, Y

n+1

= Y

n

Y

n

, n N

with:

Y

n

=

_

(1, (f, x)) : f , x Y

(f)

n

_

Let:

Y =

+

_

n=0

Y

n

and T be the map with domain dened by setting T(f) : Y

(f)

Y as:

T(f)(x) = (1, (f, x))

Then (Y, T) is a free universal algebra of type with free generator Y

0

.

Proof

First we need to check that we indeed have T(f) : Y

(f)

Y for all f .

It is clear that T(f) is a well dened map with domain Y

(f)

. However given

x Y

(f)

, we need to check that T(f)(x) Y . In order to do so, it is sucient

to show the existence of n N such that x Y

(f)

n

as this will imply that:

T(f)(x) = (1, (f, x))

Y

n

Y

n+1

Y

If (f) = 0 then Y

(f)

n

= Y

(f)

= 1 for all n N and in particular x Y

(f)

n

.

So we assume that (f) 1. Since x : (f) Y , given i (f) we have

x(i) Y . So there exists n

i

N such that x(i) Y

ni

. If we dene:

n = max(n

0

, . . . , n

(f)1

)

14

since Y

ni

Y

n

for all i (f), we see that x(i) Y

n

for all i (f). It follows

that x : (f) Y

n

, i.e. x Y

(f)

n

and we have proved that T(f) : Y

(f)

Y

for all f as required. It follows that Y is a set and T is a map with domain

such that T(f) : Y

(f)

Y for all f . So (Y, T) is a universal algebra

of type . It remains to show that (Y, T) is free with Y

0

as a free generator.

So let (Z, S) be a universal algebra of type and g

0

: Y

0

Z be a map. We

need to show that g

0

can be uniquely extended into a morphism g : Y Z.

We dene g by setting g

|Y0

= g

0

and g

|(Yn+1)

= g

n+1

where each g

n

is a map

g

n

: Y

n

Z and the sequence (g

n

)

nN

is dened by recursion with the property

that (g

n+1

)

|Yn

= g

n

for all n N. Specically, we dene g

n+1

(y) = g

n

(y) for

all y Y

n

, and given y Y

n+1

Y

n

Y

n

, we consider f and x Y

(f)

n

such that y = (1, (f, x)). Note that such representation of y exists and is clearly

unique. We then dene g

n+1

(y) by setting:

g

n+1

(y) = S(f)(g

(f)

n

(x)) (1.2)

Recall that g

(f)

n

: Y

(f)

n

Z

(f)

is the map dened by g

(f)

n

(x)(i) = g

n

(x(i))

for all i (f). Since S(f) : Z

(f)

Z it follows that g

n+1

(y) as given by

equation (1.2) is a well-dened element of Z. This completes our recursion and

we have a sequence of maps g

n

: Y

n

Z such that (g

n+1

)

|Yn

= g

n

for all n N.

From this last property, it follows that g : Y Z is itself well-dened by setting

g

|Yn

= g

n

for all n N. So we have map g : Y Z such that g

|Y0

= g

0

. We

shall now check that g is a morphism. So let f and x Y

(f)

. We need to

check that gT(f)(x) = S(f)g

(f)

(x). Since x Y

(f)

we have already shown

the existence of n N such that x Y

(f)

n

. In fact, let us pick n to be the

smallest of such integers. By denition we have T(f)(x) = (1, (f, x)). From this

equality and x Y

(f)

n

, it follows that T(f)(x) is an element of

Y

n

Y

n+1

. We

claim that T(f)(x) is in fact an element of Y

n+1

Y

n

. So we need to show that

T(f)(x) , Y

n

. Suppose to the contrary that T(f)(x) Y

n

. Let k N denote

the smallest integer such that T(f)(x) Y

k

. Note that k n. If k = 0 we

obtain (1, (f, x)) = (0, x

) for some x

X

0

which is a contradiction. So k 1

and Y

k

= Y

k1

Y

k1

. From the minimality of k we have T(f)(x) , Y

k1

. It

follows that T(f)(x)

Y

k1

. So there exist f

and x

Y

(f)

k1

such that:

(1, (f, x)) = T(f)(x) = (1, (f

, x

))

From this we see that x = x

Y

(f)

k1

. Since k n, we have k 1 < n and

x Y

(f)

k1

contradicts the minimality of n. So we have shown that T(f)(x) Y

n

leads to a contradiction, and it follows that T(f)(x) Y

n+1

Y

n

. Thus:

g T(f)(x) = g

n+1

(T(f)(x)) = S(f)(g

(f)

n

(x)) = S(f) g

(f)

(x)

where the last equality follows from g

n

= g

|Yn

and x Y

(f)

n

. This completes

our proof of the fact that g : Y Z is a morphism. It remains to check that

g is unique. So let g

|Y0

= g

0

. We

15

shall prove by induction that g

|Yn

= g

|Yn

for all n N. Since g

|Y0

= g

0

= g

|Y0

,

this is clearly true for n = 0. So we assume that n N and y Y

n+1

. We need

to show that g(y) = g

for y Y

n

. So we may assume that y Y

n+1

Y

n

Y

n

. In particular, there

exist f and x Y

(f)

n

such that y = (1, (f, x)). It follows that y = T(f)(x)

and nally:

g(y) = g T(f)(x) = S(f) g

(f)

(x) = S(f) g

(f)

(x) = g

T(f)(x) = g

(y)

where the third equality follows from the induction hypothesis and x Y

(f)

n

.

1.1.9 Cantors Theorem

Given an arbitrary set X

0

, we were able to construct a free universal algebra of

type whose free generator Y

0

is a copy of X

0

, i.e. a set for which there exists

a bijection j : X

0

Y

0

. Our aim is to go slightly beyond that and nd a free

universal algebra of type with free generator the set X

0

itself. For this, we

shall need a couple of set theoretic results which we include in this section and

the following for the sake of completeness. In particular we shall need to prove

that any set A has a disjoint copy of itself, i.e. that there exist a set B with

A B = and a bijection j : A B. To prove this result, we shall make use

of Cantors Theorem which is the focus of the present section.

Given a set A, recall that T(A) denotes the power set of A, i.e. the set of

all subsets of A, that is:

T(A) = B : B A

Note that there is an obvious bijection j : 2

A

T(A), which is dened by

j(x) = a A : x(a) = 1. Cantors Theorem asserts that T(A) has higher

cardinality than the set A, i.e. that there exists no injective map j : T(A) A.

Most of us will be familiar with this result, and indeed other similar results such

as the fact that R has higher cardinality than N. Some of us may remember a

version of Cantors diagonal argument. We restrict our attention to the interval

]0, 1[ and consider every x ]0, 1[ as a sequence x = 0.11010111001 . . . This

sequence is not unique but after some ironing out, we may be convinced that

]0, 1[ has the same cardinality as 2

N

which in turn has the same cardinality

as T(N). Hence Cantors diagonal argument essentially proves that T(N) is a

bigger set than N, and R having a higher cardinality than N is essentially a

particular case of Cantors Theorem.

There is an easy way to remember the proof of Cantors Theorem, which

is to think of Russells paradox. Bertrand Russell discovered that x : x , x

cannot be a set, or more precisely that the statement:

yx[x y x , x]

leads to a contradiction. If a = x : x , x is a set, then a a implies that a , a,

while a , a implies that a a. Now suppose we have a bijection j : T(A) A

16

(we assume this is a bijection rather than an injection to make this discussion

simpler). Then every element of A can be viewed as a subset of A. It is tempting

to consider the set of those elements of A which do not belong to themselves, but

rather than considering the meaning of literally as in a = x A : x , x,

we need to adjust slightly with a = j(x A : x , j

1

(x)) A. Following

Russells argument, we then ask whether a A belongs to itself, or specically

if a j

1

(a). But assuming a j

1

(a) leads to a , j

1

(a), while assuming

a , j

1

(a) leads to a j

1

(a). So we have proved that there cannot exist a

bijection j : T(A) A. The following lemma deals with an injection rather

than a bijection. We need to be slightly more careful, but the idea underlying

the proof is the same.

Lemma 11 (Cantors Theorem) Let A be an arbitrary set. There exists no

injective map j : T(A) A.

Proof

Suppose j : T(A) A is an injective map and dene b

= j(B

) where:

B

We shall complete the proof by showing that both b

and b

, B

lead

to a contradiction. So suppose rst that b

that b

= j(B) and b

) = b

= j(B) and

since j is an injective map, it follows that B

= B. So we see that b

, B

which

contradicts the initial assumption of b

, B

.

Since b

= j(B

), taking B = B

b

= j(B) and b

initial assumption of b

, B

.

1.1.10 Disjoint Copy of a Set

In this section we prove that any set A has a disjoint copy of itself, namely

that there exists a set B with A B = and a bijection j : A B. We shall

prove this result using Cantors Theorem (lemma (11)) as well as the Axiom of

Choice. There are probably many other ways to prove it, some of which not

involving the Axiom of Choice. It is in fact unknown to me whether this can be

proved within ZF rather than ZFC.

4

Given a set A, recall that the Axiom of Choice states the existence of a

choice function on A, i.e. the existence of a map k : T(A) A such that

k(x) x for all x T(A) . A choice function on A is simply a map which

chooses an arbitrary element from every non-empty subset of A.

Lemma 12 Let A be an arbitrary set. There exists a set B with AB = and

a bijective map j : A B.

4

For those interested, there is a thread on sci.math entitled [Set Theory] A set has a

disjoint copy of itself (which may have the answer to the ZF question). I am grateful to

those who contributed to this thread. The proof of lemma (12) is due to Robin Chapman.

17

Proof

For all x T(A) dene A

x

= (x, y) : y A. There is a clear bijection between

A and A

x

, namely j

x

: A A

x

dened by j

x

(y) = (x, y). We shall complete

the proof by taking B = A

x

for some x T(A) for which AA

x

= . Of course

we need to check that it is always possible to do so. Suppose to the contrary

that A A

x

,= for all x T(A). Using the Axiom of Choice, there exists

a choice function k : T(A) A. We dene j : T(A) A by setting

j(x) = k(AA

x

). Note that j(x) is well dened since AA

x

,= . We obtain a

map j : T(A) A such that j(x) AA

x

for all x T(A). It is now sucient

to show that j is injective, as this will contradict Cantors Theorem. So suppose

x, x

). Since j(x) A

x

there exists y A

such that j(x) = (x, y). Similarly, there exists y

) = (x

, y

).

From j(x) = j(x

) we obtain (x, y) = (x

, y

x = x

Given a set X

0

, our goal is to obtain a free universal algebra of type with

free generator the set X

0

itself. Dening Y

0

= (0, x) : x X

0

, we were

able to construct a free universal algebra Y with free generator Y

0

, as described

in proposition (10). So we have an injection j : X

0

Y , where Y is a free

universal algebra of type . In fact, this injection is a bijection between X

0

and Y

0

, the free generator of Y . In order for us to construct a free universal

algebra with free generator X

0

, all we need is a copy of Y containing X

0

. In

other words we need a set X with X

0

X and a bijection g : X Y . Once

we have this set X and the bijection g : X Y , we can easily carry over the

structure of universal algebra from Y onto X, by choosing the structure on X

which turns the bijection g : X Y into an isomorphism. However, we want

X

0

to be a free generator of X. One way to ensure this is to request that the

bijection g : X Y carries X

0

onto Y

0

. In other words, we want the restriction

g

|X0

to coincide with the bijection j : X

0

Y

0

. The following lemma shows

the existence of the set X with the bijection g : X Y satisfying the required

property g

|X0

= j.

Note that the idea of starting from an injection X

0

Y and obtaining a

copy of Y containing X

0

while preserving this injection can be used in many

other cases. Most of us are familiar with the way the ring of integers Z is cre-

ated as a quotient set (N N)/ with the appropriate equivalence relation.

We obtain an embedding j

1

: N Z. We then construct the eld Q of rational

numbers and we obtain another embedding j

2

: Z Q. We go on by construct-

ing the eld R of real numbers and the eld C of complex numbers with their

associated embedding j

3

: Q R and j

4

: R C. Strictly speaking, the set

theoretic inclusions N Z Q R C are false and most living mathemati-

cians do not care. The inclusion N Z has to be true. If it is not, it needs to be

re-interpreted in a way which makes it true. In computing terms, mathemati-

cians are eectively overloading the operators and . This is all very nice

and ne in practice. But assuming we wanted to code or compile a high level

mathematical statement into a low level expression of rst order predicate logic,

it may be that dening Z, Q, R and C in a way which avoids the overloading of

18

primitive symbols, will make our life a lot easier. We believe the aim of creating

a formal high level mathematical language whose statements could be compiled

as formulas of rst order logic is a worthy objective. Such high level language

would most likely need to allow the overloading of symbols. So it may be that

whether N Z is literally true or not will not matter. There is a fascinating

website [45] on http://www.metamath.org/ created by Norman Megill where

these questions are likely to have been answered. It is certainly our intention

to use this reference more and more as this document progresses.

Recall that if f : A B is a map and A

A, then f(A

) is the set:

f(A

) = y : x , x A

and (x, y) f

which coincides with rng(f

|A

). In particular, f(A) = rng(f). The notation

f(A

context, and depends on whether x is viewed as an element of A or a subset

of A. It can easily be both, as 0 is both an element and a subset of 1. Some

authors will use the notation f[A

).

Lemma 13 Let X

0

and Y be sets and j : X

0

Y be an injective map. There

exist a set X and a bijection g : X Y such that X

0

X and g

|X0

= j.

Proof

Consider the set A = X

0

Y . Using lemma (12) there exists a set B with

A B = and a bijective map i : A B. Dene:

X = X

0

i(Y j(X

0

))

and g : X Y by setting g(x) = j(x) for all x X

0

and g(x) = i

1

(x) for

all x i(Y j(X

0

)). Note rst that g(x) is well dened since x X

0

and

x i(Y j(X

0

)) cannot occur at the same time, as X

0

A, i(Y j(X

0

)) B

and A B = . Note also that g(x) is dened for all x X. To show that

we have g : X Y we need to check that g(x) Y for all x X. If x X

0

then this is clear since j : X

0

Y and g(x) = j(x). If x i(Y j(X

0

)),

then x can be written as x = i(y) for some y Y j(X

0

). It follows that

g(x) = i

1

(x) = y Y . So we have proved that g : X Y . We obviously

have X

0

X and g

|X0

= j. So we shall complete the proof by showing that

g : X Y is a bijection. First we show that it is surjective. So let y Y . We

need to show that y = g(x) for some x X. If y j(X

0

) then y = j(x) for

some x X

0

and in particular y = g(x). Otherwise y Y j(X

0

) and taking

x = i(y) i(Y j(X

0

)) we see that y = i

1

(x) and in particular y = g(x). So

we have proved that g is surjective. To show that it is injective, let x, x

X

and assume that g(x) = g(x

we cannot have x X

0

while x

i(Y j(X

0

)). If this was the case, we would

have g(x) = j(x) j(X

0

) while g(x

) = i

1

(x

) Y j(X

0

) contradicting the

fact that g(x) = g(x

0

) while the other does not. Similarly,

we cannot have x i(Y j(X

0

)) while x

X

0

. It follows that either both x

and x

lie in X

0

or they both lie in i(Y j(X

0

)). In the rst case we obtain

19

j(x) = g(x) = g(x

) = j(x

) and since j : X

0

Y is injective we see that

x = x

1

(x) = g(x) = g(x

) = i

1

(x

) and

since i

1

: B A is injective we see that x = x

injective, and nally g : X Y is a bijection.

1.1.11 Main Existence Theorem

Given a set X

0

, we are now in a position to prove the existence of a free uni-

versal algebra of type with X

0

as free generator. As already hinted in the

previous section, the proof essentially runs in three stages. We start using

proposition (10) to construct a free universal algebra Y with free generator

Y

0

= (0, x) : x X

0

. We then use lemma (13) to obtain a copy X of Y

and a bijection g : X Y which preserves the bijection j : X

0

Y

0

. We

nally dene on X the unique structure of universal algebra of type turning

g : X Y into an isomorphism.

Theorem 1 Let be a type of universal algebra and X

0

be an arbitrary set.

There exists a free universal algebra of type with free generator X

0

. Such

universal algebra is unique up to isomorphism.

Proof

Uniqueness up to isomorphism is a direct consequence of proposition (9). So

we only need to prove the existence. If we dene Y

0

= (0, x) : x X

0

,

from proposition (10) we have a free universal algebra Y with free generator Y

0

.

Furthermore, the map j : X

0

Y dened by j(x) = (0, x) for all x X

0

is an

injective map. Using lemma (13) there exist a set X and a bijection g : X Y

such that X

0

X and g

|X0

= j. At this stage, the set X is only a set, not a

universal algebra of type . However, using the bijection g : X Y we can

easily carry over the structure from Y onto X. Specically, we dene a map T

with domain by setting T(f) : X

(f)

X to be dened by:

x X

(f)

, T(f)(x) = g

1

f g(x) (1.3)

where it is understood that f on the r.h.s. of this equation is a shortcut for

the operator f : Y

(f)

Y and g refers to g

(f)

: X

(f)

Y

(f)

, while

g

1

is simply the inverse g

1

: Y X. So T(f) as dened by equation (1.3)

is indeed a map T(f) : X

(f)

X. It follows that (X, T) is now a universal

algebra of type and X

0

X. We shall complete the proof of this theorem by

showing that X

0

is a free generator of X. Note that this is hardly surprising

since j : X

0

Y

0

is a bijection which coincide with the bijection g : X Y

on X

0

, and we know that Y

0

is a free generator of Y . In order to prove this

formally, let Z be a universal algebra of type and h

0

: X

0

Z be a map. We

need to show that h

0

can be uniquely extended into a morphism h : X Z.

Before we do so, note that from equation (1.3) we have for all x X

(f)

:

g T(f)(x) = f g(x)

20

which shows that g : X Y is not only a bijection, but also a morphism, i.e. g

is an isomorphism. Now from h

0

: X

0

Z we obtain a map h

0

j

1

: Y

0

Z.

Since Y

0

is a free generator of Y , there exists a morphism h

: Y Z such that

h

|Y0

= h

0

j

1

. It follows that h : X Z dened by h = h

g is a morphism,

and furthermore, we have:

h

|X0

= h

g

|X0

= h

j = h

|Y0

j = h

0

j

1

j = h

0

So we have proved the existence of a morphism h : X Z such that h

|X0

= h

0

.

It remains to check that h : X Z is in fact unique. So suppose h

now refers

to a morphism h

: X Z such that h

|X0

= h

0

. Then h g

1

: Y Z and

h

g

1

: Y Z are two morphisms which coincide on Y

0

, since:

(h g

1

)

|Y0

= h

|X0

j

1

= h

0

j

1

= h

|X0

j

1

= (h

g

1

)

|Y0

It follows that h g

1

= h

g

1

, from the uniqueness property of Y

0

being a

free generator of Y . We conclude that h = h

.

1.2 Structural Induction, Structural Recursion

1.2.1 Unique Representation in Free Universal Algebra

In an earlier section, we claimed that most universal algebras were not free. The

following theorem arguably provides the most convincing evidence of this fact.

Let X be a group viewed as a universal algebra of type = (0, 0), (1, 1), (2, 2),

where the product T(2, 2) : X

2

X is denoted . Then the following theorem

shows that X cannot be a free universal algebra of type unless:

x

1

y

1

= x

2

y

2

x

1

= x

2

and y

1

= y

2

for all x

1

, x

2

, y

1

and y

2

X. This is a pretty strong condition. In fact, we can

easily show that X can never be a free universal algebra of type . Indeed, let

e = T(0, 0)(0) be the identity element of X. Then e = e e, or equivalently:

T(0, 0)(0) = T(2, 2)(e, e)

The following theorem shows this cannot be true in a free universal algebra.

Theorem 2 Let X be a free universal algebra of type with free generator

X

0

X . Then for all y X, one and only one of the following is the case:

(i) y X

0

(ii) y = f(x) , f , x X

(f)

Furthermore, the representation (ii) is unique, that is:

f(x) = f

(x

) f = f

and x = x

for all f, f

, x X

(f)

and x

X

(f

)

.

21

Proof

We shall rst prove the theorem for a particular case of free universal algebra of

type . Instead of looking at X itself, we shall rst consider the free universal

algebra Y with free generator Y

0

= (0, x) : x X

0

as described in proposi-

tion (10). So let y Y and suppose that y , Y

0

. There exists n N such that

y Y

n+1

. Let n denote the smallest of such integers. Then y Y

n+1

Y

n

Y

n

.

Hence, there exist f and x Y

(f)

n

such that y = (1, (f, x)). However by

denition, we have f(x) = (1, (f, x)). Since Y

(f)

n

Y

(f)

, we have found f

and x Y

(f)

such that y = f(x). This shows that (ii) is satised whenever

(i) is not. We shall now prove that (i) and (ii) cannot occur simultaneously.

Indeed if y = f(x) for some f and x Y

(f)

, then y = (1, (f, x)). If y is

also an element of Y

0

then y = (0, x

) for some x

X

0

, which is a contradic-

tion as 0 ,= 1. So we have proved that one and one only of (i) and (ii) must

occur. It remains to show that the representation (ii) is unique. So suppose

f(x) = f

(x

) for some f, f

, x Y

(f)

and x

Y

(f

)

. Then we have

(1, (f, x)) = (1, (f

, x

and x = x

. So

we have proved the theorem in the case of the free universal algebra Y . We shall

now prove the theorem for X. Consider the bijection j : X

0

Y

0

dened by

j(x) = (0, x). Then we also have j : X

0

Y and since X

0

is a free generator of

X, the map j can be uniquely extended into a morphism g : X Y . Similarly,

the map j

1

: Y

0

X can be uniquely extended into a morphism g

: Y X.

Furthermore, since g

(g

g)

|X0

= g

j = g

|Y0

j = j

1

j = (id

X

)

|X0

we conclude by uniqueness that g

g = id

X

and similarly g g

= id

Y

. This

shows that g : X Y and g

inverse of each other. Of course we already knew that X and Y were isomorphic

from the existence of the bijection j : X

0

Y

0

. But we now have a particular

isomorphism g : X Y which is such that g

|X0

= j. This should allow us

to complete the proof of the theorem. So suppose y X and y , X

0

. Let

y

= g(y) Y . Since the theorem is true for Y , either (i) or (ii) is true for y

.

We claim that y

Y

0

is impossible, as otherwise:

y = g

g(y) = g

(y

) = g

|Y0

(y

) = j

1

(y

) X

0

which contradicts the assumption y , X

0

. It follows that (ii) is true for y

, i.e.

y

= f(x

Y

(f)

. Taking x = g

(x

) X

(f)

, since

g

: Y X is a morphism we obtain:

y = g

(y

) = g

f(x

) = f g

(x

) = f(x)

which shows that (ii) is true for y. We now prove that (i) and (ii) cannot

occur simultaneously. Suppose that y X

0

and y = f(x) for some f and

x X

(f)

. Taking y

= g(y) Y and x

= g(x) Y

(f)

, we obtain:

y

= g(y) = g

|X0

(y) = j(y) Y

0

22

and furthermore:

y

)

which shows that (i) and (ii) are simultaneously true for y

Y , which is a

contradiction. To complete the proof of the theorem, it remains to show that

the representation (ii) is unique. So suppose f(x) = f

(x

) for some f, f

,

x X

(f)

and x

X

(f

)

. We obtain:

f(g(x)) = f g(x) = g f(x) = g f

(x

) = f

(g(x

))

From the uniqueness of the representation (ii) in Y , it follows that f = f

and

g(x) = g(x

) Y

(f)

. Hence, for all i (f):

g(x(i)) = g(x)(i) = g(x

)(i) = g(x

(i))

and since g : X Y is injective, we conclude that x(i) = x

for all i (f), we have proved that x = x

.

Proposition 14 A free universal algebra of type has a unique free generator.

Proof

Let X be a free universal algebra of type . Suppose X

0

X and Y

0

X

are both free generators of X. We need to show that X

0

= Y

0

. First we show

that X

0

Y

0

. So let y X

0

. Applying theorem (2) of page 21 to X with free

generator Y

0

we see that if y , Y

0

there exists f and x X

(f)

such that

y = f(x). But this contradicts theorem (2) applied to X with free generator

X

0

since y X

0

, and (i) and (ii) cannot occur simultaneously. it follows that

y Y

0

and we have proved that X

0

Y

0

. The reverse inclusion is proved in a

similar fashion.

1.2.2 Order in Free Universal Algebra

In this section, we dene the notion of order on a free universal algebra. This

notion will prove useful on several occasions, and specically when proving in

proposition (28) that a free generator is also a generator. Loosely speaking, given

a universal algebra X of type , the order on X is a map : X N representing

the degree of complexity of the elements of X, viewed as expressions in a formal

language. For instance suppose X is of type = (0, 2) with one single binary

operator : X

2

X and free generator X

0

= 0. We have (0) = 0 while

(00) = 1 and (0(00)) = 2. The complexity of a formula is sometimes a

useful tool to carry out induction arguments over N. For those already familiar

with the subject, we do not dene the order : X N by structural recursion,

e.g. (0) = 0 and (x y) = 1 + max((x), (y)). Instead, we shall embed

N with the appropriate structure of universal algebra of type , and consider

: X N as the unique morphism such that

|X0

= 0. In eect, we are limiting

23

ourselves to denitions by recursions over N, which is a standard mathematical

argument already used in proposition (10). We shall not make use of denitions

by structural recursion on free universal algebras, until the principle has been

justied in a later section.

Denition 15 Let be a type of universal algebra. We call default structure

of type on N the map T with domain such that T(f) : N

(f)

N is:

n N

(f)

, T(f)(n) = 1 + maxn(i) : i (f)

for all f , where it is understood that max() = 0.

Denition 16 Let X be a free universal algebra of type with free generator

X

0

X. We call order on X the unique morphism : X N such that

|X0

= 0, where N is embedded with its default structure of type . Given

x X, we call order of x the integer (x) N where is the order on X.

Proposition 17 Let X be a free universal algebra of type with free generator

X

0

X and : X N be the order on X. Then for all x X we have:

(x) = 0 x X

0

Furthermore, for all f and x X

(f)

we have:

(f(x)) = 1 + max(x(i)) : i (f)

Proof

First we show the equality. Suppose f and x X

(f)

. Let T denote the

default structure of type on N as per denition (15). Since : X N is a

morphism, we have:

(f(x)) = T(f)((x))

= 1 + max(x)(i) : i (f)

= 1 + max(x(i)) : i (f)

We now show the equivalence. Since

|X0

= 0 from denition (16), it is clear

that y X

0

implies (y) = 0. Suppose conversely that y X and (y) = 0.

We need to show that y X

0

. Suppose to the contrary that y , X

0

. From

theorem (2) of page 21 there exist f and x X

(f)

such that y = f(x). So:

(y) = (f(x)) = 1 + max(x(i)) : i (f) 1

which contradicts the initial assumption of (y) = 0.

Suppose X = N is the free universal algebra of type = (0, 1) with the

single successor operator s : X

1

X and free generator X

0

= 0. Then

(0) = 0 while (1) = (s(0)) = 1 +(0) = 1. If we now regard X = N as the

24

free universal algebra of type = (0, 1), (1, 0) by adding the constant 0, then

X now has X

0

= as free generator. Furthermore:

(0) = (T(1, 0)(0)) = 1 +max() = 1

More generally, the order of constants in a free universal algebra is 1 and not 0.

Only the elements of the free generator have order 0.

We shall now complete this section with a small proposition on the structure

of a free universal algebra in relation to its order mapping. Note that the

denition of X

0

below is consistent with the existing notation X

0

referring to

the free generator of X, since we have (x) = 0 x X

0

.

Proposition 18 Let X be a free universal algebra of type with free generator

X

0

X. Let : X N be the order on X and dene:

X

n

= x X : (x) n , n N

Then for all n N we have:

X

n+1

= X

n

f(x) : f , x (X

n

)

(f)

Proof

First we show the inclusion . It is clear that X

n

X

n+1

. So let f and

x (X

n

)

(f)

. We need to show that f(x) X

n+1

that is (f(x)) n+1 which

follows from proposition (17) and:

(f(x)) = 1 + max(x(i)) : i (f) 1 +n

where the inequality stems from (x(i)) n for all i (f). We now prove

the inclusion . So suppose y X

n+1

X

n

. Then we must have (y) = n + 1

and in particular (y) ,= 0. From proposition (17) it follows that y , X

0

and consequently using theorem (2) of page 21 we see that y can be uniquely

represented as y = f(x) for some f and x X

(f)

. It remains to show that

x is actually an element of (X

n

)

(f)

, i.e. that x(i) X

n

for all i (f) which

is vacuously true in the case when (f) = 0. So let i (f). We have:

1 +(x(i)) 1 + max(x(i)) : i (f) = (f(x)) = (y) = n + 1

from which we conclude that (x(i)) n as requested.

1.2.3 Universal Sub-Algebra of Universal Algebra

In this section we introduce the notion of universal sub-algebras. The main

motivation for this will appear later when we investigate equivalence relations

and congruences on universal algebras. An equivalence relation on a universal

algebra X is a subset of XX with certain closure properties, and can therefore

be regarded as a universal sub-algebra of X X, provided the latter has been

embedded with the appropriate structure of universal algebra. Rather, than

focussing on the specics of X X, we will study universal sub-algebras in a

general setting.

25

Denition 19 Let X be a universal algebra of type . We say that Y X is a

Universal Sub-Algebra of X if and only if it is closed under every operator i.e.

f , x X

(f)

, [ x Y

(f)

f(x) Y ]

If Y is a universal sub-algebra of X, we call induced structure on Y the map T

with domain such that for all f , the operator T(f) : Y

(f)

Y is:

x Y

(f)

, T(f)(x) = f(x) Y

Let X be a universal algebra of type and Y be a universal sub-algebra of X.

Given f , when using loose notations we have two operators f : X

(f)

X

and f : Y

(f)

Y . However, the latter is simply the restriction of the former

to the smaller domain Y

(f)

X

(f)

, and the notation f(x) is therefore

unambiguous whenever x is an element of Y

(f)

. The best example of universal

sub-algebras are possibly homomorphic images of universal algebras. We have:

Proposition 20 Let h : X Y be a homomorphism between two universal

algebras X and Y of type . Then the image h(X) is a sub-algebra of Y .

Proof

Let f and y h(X)

(f)

. We need to show that f(y) h(X). How-

ever, for all i (f) we have y(i) h(X). Hence there exists x

i

X such

that y(i) = h(x

i

). Let x X

(f)

be dened by x(i) = x

i

for all i (f).

Then we have y(i) = h(x

i

) = h(x(i)) = h(x)(i) for all i (f) and con-

sequently y = h(x). Since h : X Y is a homomorphism, it follows that

f(y) = f h(x) = h f(x) = h(x

) with x

X

such that f(y) = h(x

Restriction of homomorphisms to universal sub-algebras are homomorphisms.

We had to say this once to avoid future logical aws in forthcoming arguments.

For example, if h : X Y is a morphism and X

0

is a sub-algebra of X, we

would like to use proposition (20) to argue that h(X

0

) is a sub-algebra of Y .

This is indeed the case, but we need to argue that h

|X0

: X

0

Y is a morphism.

Proposition 21 Let h : X Y be a morphism between two universal algebras

of type . Given a sub-algebra X

0

X, the restriction h

|X0

is a morphism.

Proof

Given f and x X

(f)

0

we need to check the equality h f(x) = f h(x).

This follows from the fact that every operator f : X

(f)

0

X

0

is the restriction

of f : X

(f)

X and h : X

0

Y is the restriction of h : X Y .

Let / be a non-empty set. Recall that / is the set dened by:

/ = x : Z / , x Z

When / = , the set / is normally not dened, as there is no such things as

the set of all sets. Suppose now that / is a non-empty set of subsets of a given

26

set X. Since / is non-empty, it has an element Z / which by assumption is

a subset of X. So every element x Z is also an element of X and it follows

that / could equally have been dened as:

/ = x X : Z / , x Z

This last expression is now meaningful when / = , and yields = X. Hence

we shall adopt the convention that / = X whenever / = is viewed as a set

of subsets of X, and X is clearly given from the context.

Proposition 22 Let X be a universal algebra of type and / be a set of

universal sub-algebras of X. Then / is a universal sub-algebra of X.

Proof

Let Y = /. We need to show that Y is a universal sub-algebra of X. So let

f and x Y

(f)

. We need to show that f(x) Y . So let Z /. We need

to show that f(x) Z. But Y Z and x Y

(f)

. So x Z

(f)

. Since Z is a

universal sub-algebra of X, we conclude that f(x) Z.

Denition 23 Let X be a universal algebra of type and X

0

X. Let / be

the set of universal sub-algebras of X dened by:

/ = Y : X

0

Y and Y universal sub-algebra of X

We call Universal Sub-Algebra of X generated by X

0

the universal sub-algebra

of X denoted X

0

and dened by X

0

= /.

Proposition 24 Let X be a universal algebra of type and X

0

X. Then, the

universal sub-algebra X

0

generated by X

0

is the smallest universal sub-algebra

of X containing X

0

, i.e. such that X

0

X

0

.

Proof

Dene / = Y : X

0

Y and Y universal sub-algebra of X. From deni-

tion (23), we have X

0

= /. We need to show that X

0

is a universal sub-

algebra of X which contains X

0

, and that it is the smallest universal sub-algebra

of X with such property. Since every element of / is a universal sub-algebra of

X, from proposition (22), X

0

= / is also a universal sub-algebra of X. To

show that X

0

X

0

assume that x X

0

. We need to show that x /. So

let Y /. We need to show that x Y . But this is clear since X

0

Y . So we

have proved that X

0

is a universal sub-algebra of X containing X

0

. Suppose

that Y is another universal sub-algebra of X such that X

0

Y . We need to

show that X

0

is smaller than Y , that is X

0

Y . But Y is clearly an element

of /. Hence if x X

0

= /, it follows immediately that x Y . This shows

that X

0

Y .

Suppose X and Y are universal algebras of type and g : X Y is a

morphism. Given X

0

X, the following proposition asserts that the direct

27

image g(X

0

) of the universal sub-algebra of X generated by X

0

is also the

universal sub-algebra g(X

0

) of Y generated by the direct image g(X

0

). This

proposition will be used for example when proving proposition (452), stating

that the provable sequents of the Gentzen LK-system are in fact the sequents

belonging to the sub-algebra generated by the elementary sequents .

Proposition 25 Let X, Y be universal algebras of type and g : X Y be a

morphism. For every subset X

0

X we have the following equality:

g(X

0

) = g(X

0

)

Proof

First we show : by virtue of proposition (24), g(X

0

) is the smallest sub-

algebra of Y containing the direct image g(X

0

). In order to prove , it is there-

fore sucient to show that g(X

0

) is a sub-algebra of Y with g(X

0

) g(X

0

).

This last inclusion follows immediately from X

0

X

0

. Being a homomorphic

image of the sub-algebra X

0

, the fact that g(X

0

) is a sub-algebra of Y follows

from proposition (20). So we now prove . Consider the subset X

1

dened by:

X

1

= x X

0

: g(x) g(X

0

)

In order to prove , it is sucient to prove that X

0

X

1

. Thus we need

to show that X

1

is a sub-algebra of X with X

0

X

1

. The fact that X

0

X

1

follows from the inclusions X

0

X

0

and g(X

0

) g(X

0

). So it remains to

show that X

1

is a sub-algebra of X. Consider f and x X

(f)

1

. We need

to show that f(x) X

1

. However, from X

1

X

0

we obtain x X

0

(f)

and it follows that f(x) X

0

since X

0

is a sub-algebra of X. In order

to show that f(x) X

1

, it remains to prove that g f(x) g(X

0

). Hav-

ing assumed that g : X Y is a morphism, this amounts to showing that

f g(x) g(X

0

). However, since g(X

0

) is a sub-algebra of Y , in order to

show that f g(x) g(X

0

) we simply need to prove that g(x) g(X

0

)

(f)

.

Thus given i (f), we need to show that g(x)(i) = g(x(i)) g(X

0

). It is

therefore sucient to prove that x(i) X

1

which follows from x X

(f)

1

.

Let X be a universal algebra of type and X

0

X. The universal sub-

algebra X

0

generated by X

0

was dened in terms of an intersection /. This

may be viewed as a denition from above: we start from universal sub-algebras

which are larger than X

0

, including X itself, and we reduce these universal

sub-algebras by taking the intersection between them, until we arrive at X

0

.

The following proposition may be viewed as a denition from below. We start

from the smallest possible set, which is the generator X

0

, and we gradually add

all the elements which should belong to X

0

in view of its closure properties.

Note that the denition from below makes use of a recursion principle, whereas

the denition from above does not.

Proposition 26 Let X be a universal algebra of type and X

0

X. Dene:

X

n+1

= X

n

X

n

, n N

28

with:

X

n

=

_

f(x) : f , x X

(f)

n

_

Then:

X

0

=

+

_

n=0

X

n

Proof

Let Y =

nN

X

n

. We need to show that Y = X

0

. First we show that

Y X

0

. It is sucient to prove by induction that X

n

X

0

for all n N.

Since X

0

X

0

, this is obviously true for n = 0. Suppose we have X

n

X

0

.

We claim that X

n+1

X

0

. It is sucient to prove that

X

n

X

0

. So

let f and x X

(f)

n

. We have to show that f(x) X

0

. But since

X

n

X

0

, we have X

(f)

n

X

0

(f)

. It follows that x X

0

(f)

. But

X

0

is a universal sub-algebra of X, and we conclude that f(x) X

0

. This

completes our induction argument, and we have proved that Y X

0

. We

now show that X

0

Y . Since X

0

Y , from proposition (24), X

0

being the

smallest universal sub-algebra containing X

0

, it is sucient to show that Y is

also a universal sub-algebra of X. So let f and x Y

(f)

. We need to

show that f(x) Y . It is sucient to show that x X

(f)

n

for some n N, as

this will imply f(x)

X

n

X

n+1

Y . If (f) = 0 then X

(f)

n

= 1 = Y

(f)

for all n N and x X

(f)

n

for all n N. Suppose (f) 1. Given i (f),

since x Y

(f)

we have x(i) Y . So there exists n

i

N such that x(i) X

ni

.

Dene n N by:

n = max(n

0

, . . . , n

(f)1

)

Since X

ni

X

n

, we have x(i) X

n

for all i (f). So x X

(f)

n

.

1.2.4 Generator of Universal Algebra

In this section, we prove that a free generator is also a generator. This is one

case where considering the order : X N on a free universal algebra X can

be seen to be very useful.

Denition 27 Let X be a universal algebra of type and X

0

X. We say

that X

0

is a generator of X, if and only if X

0

= X.

Proposition 28 Let X be a universal algebra of type and X

0

X. If X

0

is

a free generator of X, then it is also a generator of X.

Proof

Suppose X

0

is a free generator of X. We want to show that X

0

is a generator

of X, i.e. that X

0

= X. Suppose to the contrary that there exists y X such

that y , X

0

. Let : X N be the order on the free universal algebra X and

consider the set:

A = (y) : y X , y , X

0

29

Then A is a non-empty subset of N which therefore has a smallest element.

So assume that y , X

0

corresponds to the smallest element of A. Since

X

0

X

0

, it is clear that y , X

0

. Since X is a free universal algebra, from

theorem (2) of page 21 there exist f and x X

(f)

such that y = f(x). It

follows from proposition (17) that:

(y) = (f(x)) = 1 + max(x(i)) : i (f)

In particular, we see that (x(i)) < (y) for all i (f). From the minimality

of (y) it follows that x(i) X

0

for all i (f). So x X

0

(f)

. Note that

this conclusion holds even if (f) = 0, and the argument presented is perfectly

valid in that case. Now since X

0

is a universal sub-algebra of X, we conclude

from x X

0

(f)

that f(x) X

0

. So we have proved that y X

0

which

contradicts the initial assumption.

1.2.5 Proof by Structural Induction

We are all familiar with the notion of proof by induction over N. Let be a

formula of rst order logic and u be a variable. In order to prove that [n/u]

is true for all n N, a proof by induction over N consists in proving rst that

[0/u] is true, and then proving the implication [n/u] [n + 1/u] for all

n N. A proof by induction over N is legitimate as the following is a theorem:

[ [0/u] (n N , [n/u] [n + 1/u]) ] (n N , [n/u]) (1.4)

Hence for every formula of rst order logic and every variable u, we have

a corresponding theorem (1.4). This correspondence may be called a theorem

schema, in the same way that ZFC has a few axiom schema. If we denote

Th[, u] the theorem obtained in (1.4) from the formula and the variable u,

then the statement uTh[, u] cannot be represented as a formula of rst order

logic, and is therefore not a theorem. It may be called a meta-theorem, which

is a part of meta-mathematics. It is said that a meta-theorem can also become

a theorem, but only as part of a wider formal system. There is something

fundamentally disturbing about meta-theorems: most of us do not understand

them. There is always a high level of discomfort when referring to formulas of

rst order logic and variables without having dened any of those terms. It is

also problematic to use notations such as [n/u] ( with n in place of u) which

is most likely not always meaningful: some form of restriction should probably

be imposed on the variables u and n, unless maybe is viewed as an equivalence

class rather than a string. The truth is we do not really know.

At the same time, there is something fascinating and magical about meta-

mathematics: one of our favorite meta-theorems states that given a property

[u], if there exists an ordinal such that [], then there exists a smallest

ordinal with such property. This is powerful. This is not something we want to

give up. And yet we hardly understand it, and it is not something we can prove.

Suppose we had a compiler which would transform a high level mathematical

30

statement into a formula of rst order logic; suppose we had dened the notion of

mathematical proof as a nite sequence of low level formulas satisfying certain

properties. Then a meta-theorem would not be compiled and would not be

proved. But we could use its meta-proof to teach our compiler to automatically

generate the appropriate fragment of code needed to construct a proof of Th[, u]

from the formula . There is light at the end of the tunnel.

In this section, we shall make little mention of the ordinals so as to keep as

wide an audience as possible. As it turns out, every n N is an ordinal and the

set N itself is an ordinal (also denoted ), but what really matters is the fact

already used before that every non-empty subset of N has a smallest element.

Now suppose we want to prove theorem (1.4) given a formula and a variable

u: we assume the left-hand-side of (1.4) is true. We then consider the set:

A = n N : [n/u]

and we need to show that A = . Note that the existence of the set A is a direct

consequence of the Axiom Schema of Comprehension which makes the formula:

NA[n(n A (n N) ([n/u]))]

an axiom of ZFC. Now suppose A ,= . Then A is a non-empty subset of N

which therefore has a smallest element, say n N. Since [0/u] is true, we must

have n ,= 0. So n 1 and n 1 N. From the minimality of n, it follows that

[n 1/u] is true. From the implication [n 1/u] [n/u] we conclude that

[n/u] is also true, contradicting the fact that n A. So we have shown that

A = , which completes the proof of theorem (1.4).

Because our proof was somehow parameterized with the formula , we could

call it a meta-proof. So we have just produced a piece of meta-mathematics.

However, this could have been avoided: when dealing with mathematical induc-

tion over N, there is no need to consider a formula of rst order predicate logic.

Attempting to prove that a property is true for all n N is not fundamentally

dierent from proving that a particular subset of N, namely the subset on which

the property is true coincide with the whole of N. So let Y N be a subset

of N. In order to prove that Y = N, it is sucient to show that 0 Y and

furthermore that (n Y ) (n + 1 Y ) for all n N. Indeed, the following is

a theorem:

Y N , [ (0 Y ) n((n Y ) (n + 1 Y )) ] (Y = N) (1.5)

No more meta-mathematics, no more guilt. We are back to the solid grounds

of standard mathematical arguments. We may be wrong and deluded in our

beliefs, but we certainly lose the awareness of it. The proof of theorem (1.5)

is essentially the same but without the disturbing reference to the formula :

suppose the complement of Y in N is a non empty-set. It has a smallest element

n which cannot be 0. From n1 Y we obtain n Y which is a contradiction.

We can now resume our study of universal algebras and deal with the topic

of proof by structural induction. Let X be a universal algebra of type and

31

suppose X

0

X is a generator of X. In order to prove that a property holds

for all y X, it is sucient to prove that the property is true for all y X

0

and

furthermore given f and x X

(f)

, that the property is also true for f(x)

whenever it is true for all x(i)s with i (f). Just like in the case of induction

over N, it would be possible to consider a formula of rst order predicate logic,

and indulge in meta-mathematics. Instead, we shall safely quote:

Theorem 3 Let X be a universal algebra of type . Let X

0

X be a generator

of X. Suppose Y X is a subset of X with the following properties:

(i) x X

0

x Y

(ii) (i (f) , x(i) Y ) f(x) Y

where (ii) holds for all f and x X

(f)

. Then Y = X.

Proof

We need to show that Y = X. From (i) we see immediately that X

0

Y . Since

X

0

is a generator of X, we have X

0

= X. Consequently, it is sucient to prove

that Y is a universal sub-algebra of X, as this would imply that X

0

Y , and

nally X Y . In order to show that Y is a universal sub-algebra of X, consider

f and x Y

(f)

. We need to prove that f(x) Y . From (ii), it is sucient

to show that x(i) Y for all i (f). This follows from x Y

(f)

.

Note that theorem (3) does not require X to be a free universal algebra, but

simply that it should have a generator X

0

X. Furthermore, if f is such

that (f) = 0, then (ii) reduces to f(0) Y . In other words, in order to prove

that a property holds for every element of a universal algebra with constants,

the least we can do is check that every constant has the required property.

Theorem (3) will be used over and over again in these notes. A proof by

structural induction is pretty much all we have in many cases and it is no wonder

that it should be used at all times. However, there will be cases when a simple

structural induction is not enough for our purpose. This is usually the case when

a property depends on more than one single variable and we need to design an

argument which we may regard as a case of double induction. Most of us are

familiar with this situation when attempting to prove a property P(n, m) which

is a binary predicate of n, m N. We shall now deal with a case which will

be very important when attempting to prove the cut elimination theorem of

Gentzen sequent calculus. This theorem essentially asserts that the cut rule:

1

1

,

2

,

2

1

,

2

1

,

2

does not need to be used in order to establish the provability of a sequent .

As we shall see, the provable sequents (without cuts) are exactly those belonging

to the sub-algebra S

0

(V ) of the algebra of sequents S(V ) generated by the

set of elementary sequents S

0

(V ) = : P(V ). The cut elimination

theorem is simply a closure property. Given P(V ), consider the operator:

s

1

s

2

= (s

1

) (s

2

) (s

1

) (s

2

)

32

The cut elimination theorem asserts that the sub-algebra S

0

(V ) is closed under

the binary cut operator associated with the formula P(V ). In other

words, if s

1

, s

2

S(V ) are provable sequents (without cuts) then so is the

sequent s

1

s

2

. Adding the cut rule does not increase the set of provable

sequents. For those who are not yet familiar with Gentzen sequent calculus, let

us rephrase the issue on a more abstract level. Let X be a universal algebra of

type , which represents our algebra of sequents S(V ) of denition (448). The

operator symbols f corresponds to the rules of the Gentzen LK-system,

excluding the cut rule. Consider an arbitrary subset X

0

X and its generated

sub-algebra X

0

. Then X

0

corresponds to the set of elementary sequents S

0

(V )

and X

0

corresponds to the sub-algebra of provable sequents. Given a binary

operator : X

2

X, we shall need to prove that X

0

is closed under :

x

1

X

0

, x

2

X

0

x

1

x

2

X

0

This is the essence of the cut elimination theorem and motivates the following:

Proposition 29 Let X be a universal algebra of type and X

0

X generating

the sub-algebra X

0

. Let be a binary operator on X with the properties:

(i) x

1

X

0

, x

2

X

0

x

1

x

2

X

0

(ii) x

1

X

0

, x

2

X

0

(g)

x

1

g(x

2

) X

0

(iii) x

1

X

0

(f)

, x

2

X

0

f(x

1

) x

2

X

0

(iv) x

1

X

0

(f)

, x

2

X

0

(g)

f(x

1

) g(x

2

) X

0

0

is closed under :

x

1

X

0

, x

2

X

0

x

1

x

2

X

0

Proof

We shall prove this proposition with several induction arguments. First we need:

x

1

X

0

, y

2

X

0

x

1

y

2

X

0

(1.6)

We should easily be able to prove this with a structural induction argument

using properties (i) and (ii). In these notes, most induction arguments will be

carried out via a simple reference to theorem (3) of page 32 above. However,

our universal algebra X is not generated by X

0

so we cannot apply theorem (3)

directly to X. We would need to apply the theorem to the sub-algebra X

0

with the induced structure. To avoid any possible logical aws, or any sense of

unease or suspicion arising from this, we shall refrain from using theorem (3)

altogether. After all, the theorem is not deep and we do not need it. Consider:

Y = y

2

X

0

: x

1

X

0

, x

1

y

2

X

0

In order to show that (1.6) is true, it is sucient to prove that X

0

Y .

From proposition (24), the sub-algebra X

0

being the smallest sub-algebra of

33

X containing X

0

, it is sucient to show that Y is a sub-algebra of X with

X

0

Y . The fact that X

0

Y follows immediately from X

0

X

0

and

property (i). So it remains to show that Y is a sub-algebra of X. So let g

and suppose that x

2

Y

(g)

. By virtue of denition (19) we simply need to

show that g(x

2

) Y . However, since Y X

0

we have x

2

X

0

(g)

, and it

follows that g(x

2

) X

0

since X

0

is a sub-algebra of X. In order to show that

g(x

2

) Y , it remains to prove that x

1

g(x

2

) X

0

for all x

1

X

0

. However,

this follows immediately from property (ii) and the fact that x

2

X

0

(g)

.

This completes our proof of property (1.6). We shall use another induction for:

x

1

X

0

(f)

, y

2

X

0

f(x

1

) y

2

X

0

(1.7)

for all f . Here again, this should not be too dicult using properties (iii)

and (iv). So assume f is given and dene the following subset of X:

Y = y

2

X

0

: x

1

X

0

(f)

, f(x

1

) y

2

X

0

In order to show that (1.7) is true, it is sucient to prove that X

0

Y . So

we need to show that Y is a sub-algebra of X and X

0

Y . The latter follows

immediately from X

0

X

0

and property (iii). So it remains to show that

Y is a sub-algebra of X. So let g and suppose that x

2

Y

(g)

. We need

to show that g(x

2

) Y . However, since Y X

0

we have x

2

X

0

(g)

,

and it follows that g(x

2

) X

0

since X

0

is a sub-algebra of X. In order

to show that g(x

2

) Y , it remains to prove that f(x

1

) g(x

2

) X

0

for all

x

1

X

0

(f)

. However, this follows immediately from property (iv) and the

fact that x

2

X

0

(g)

. This completes our proof of property (1.7). We are

now ready to perform our last induction argument so as to prove:

y

1

X

0

, y

2

X

0

y

1

y

2

X

0

(1.8)

Once again, we consider a subset Y of X dened as follows:

Y = y

1

X

0

: y

2

X

0

, y

1

y

2

X

0

In order to prove property (1.8) and complete the proof of this proposition, it is

sucient to prove that X

0

Y . So we need to show that Y is a sub-algebra

of X with X

0

Y . The fact that X

0

Y follows from X

0

X

0

and prop-

erty (1.6). So it remains to show that Y is a sub-algebra of X. So let f

and suppose that x

1

Y

(f)

. We need to show that f(x

1

) Y . However, since

Y X

0

we have x

1

X

0

(f)

and it follows that f(x

1

) X

0

since X

0

is

a sub-algebra of X. In order to show that f(x

1

) Y , it remains to prove that

f(x

1

) y

2

X

0

for all y

2

X

0

. However, this follows immediately from

property (1.7) and the fact that x

1

X

0

(f)

. This completes our proof.

1.2.6 Denition by Recursion over N

Our aim is to introduce the idea of denition by structural recursion on a free

universal algebra of type . We shall deal with the subject in a later section.

34

In this section, we shall concentrate on a simpler notion, that of denition by

recursion over N, also known as denition by simple recursion. Consider the

function g : N N dened by g(0) = 0 and:

g(n + 1) = (n + 1). g(n) , n N

The existence of the function g is often taken for granted. Most of us needed

many years as mathematical students before it nally occurred that the truth

of the following statement was far from obvious:

g[ (g : N N) (g(0) = 1) (n N , g(n + 1) = (n + 1). g(n)) ]

Loosely speaking, dening a map g by recursion consists in rst dening g(0),

and having dened g(0), g(1),. . . g(n 1), to then specify what g(n) is as a

function of all the preceding values g(0), g(1),. . . , g(n 1). More formally,

suppose A is a set and we wish to dene a map g : N A by recursion over

N. We rst dene g(0) A, and then dene g(n) as a function of g

|n

. In other

words, we set g(n) = h(g

|n

) for some function h. Incidentally, the function h is

called an oracle function, as it enables us to predict what the next value of g

is, given all the preceding values. Of course, we want everything to make sense:

so h(g

|n

) should always be meaningful, and since our objective is to obtain

g : N A in which case g

|n

A

n

for all n N, we should probably request

that the oracle function be a map h :

nN

A

n

A. We could imagine an

oracle function with a wider domain and a wider range (as long as h(g

|n

) is a

well dened element of A), but this is not likely to add much to the generality

of the present discussion. So we shall stick to h :

nN

A

n

A. One thing to

note is that the expression g(n) = h(g

|n

) is also meaningful in the case of n = 0.

It is therefore unnecessary to dene g(0) separately: just set h() appropriately

and request that g(n) = h(g

|n

) for all n N rather than just n N

. In the

above example of g(n) = n! and A = N, the oracle function h :

nN

N

n

N

should be dened by setting h() = 1 and for all n N

and g : n N:

h(g) = n.g(n 1)

Note that this denition is legitimate since N

n

N

n

= for n ,= n

.

We are now faced with a crucial question, namely that of the truth of the

following statement, given a set A and an oracle function h :

nN

A

n

A.

g[ (g : N A) (n N , g(n) = h(g

|n

) ]

This will be proved in the next lemma, together with the uniqueness of the func-

tion g : N A. However before we proceed, a few comments are in order. The

proof of lemma (30) below may appear daunting and tedious, as we systemati-

cally check a variety of small technical details. However, there is not much to it.

The key to remember is that a recursion over N is nothing but an induction over

N. Specically, for all n N, there must exist a map g : n N with the right

property, for if there exists an n N for which this is not the case, choosing n

35

to be the smallest of such integer, we can extend the map g : (n1) A using

g(n) = h(g

|n

) and obtain a map g

reaching a contradiction. Once the induction argument is complete, proving the

existence of a map g : N A is easily done by gathering together all the ordered

pairs contained in the various maps g

are extensions of one another.

Lemma 30 Let A be a set and h :

nN

A

n

A be a map. There exists a

unique map g : N A such that g(n) = h(g

|n

) for all n N.

Proof

First we prove the uniqueness property. Suppose g, g

that g(n) = h(g

|n

) and g

(n) = h(g

|n

) for all n N. We need to show that

g = g

that g

|n

= g

|n

for all n N, for which we shall use an induction argument.

Since g

|0

= = g

|0

the property is true for n = 0. Suppose it is true for n N.

Then g

|n

= g

|n

and consequently g(n) = h(g

|n

) = h(g

|n

) = g

(n). Hence:

g

|(n+1)

= g

|n

(n, g(n)) = g

|n

(n, g

(n)) = g

|(n+1)

and we see that the property is true for n + 1. This completes the proof of

the uniqueness property. In order to prove the existence of g : N A with

g(n) = h(g

|n

) for all n N, we shall rst restrict our attention to nite domains

and prove by induction the existence for all n N of a map g : n A such

that g(k) = h(g

|k

) for all k n. This is clearly true for n = 0, since the empty

set is a map g : 0 A for which the condition g(k) = h(g

|k

) for all k 0 is

vacuously satised. So we assume n N, and the existence of a map g : n A

such that g(k) = h(g

|k

) for all k n. We need to show the existence of a

map g

: (n + 1) A such that g

(k) = h(g

|k

) for all k n + 1. Consider

the map g

: (n + 1) A dened by g

|n

= g and g

k n + 1. We need to check that g

(k) = h(g

|k

). If k = n, we need to check

that g

(n) = h(g

|n

) = h(g) which is true by denition of g

. If k n, then:

g

(k) = g

|n

(k) = g(k) = h(g

|k

) = h(g

|k

)

This completes our induction argument and for all n N we have proved the

existence of a map g : n A such that g(k) = h(g

|k

) for all k n. In fact we

claim that such a map is unique. For if g

identical induction argument to the one already used shows that g(k) = g

(k)

for all k n. Hence, for all n N, we have proved the existence of a unique

map g

n

: n A such that g

n

(k) = h((g

n

)

|k

) for all k n. Note that from the

uniqueness property we must have (g

n+1

)

|n

= g

n

for all n N. So every g

n+1

is an extension of g

n

. We are now in a position to prove the existence of a map

g : N A such that g(n) = h(g

|n

) for all n N, by considering g =

nN

g

n

.

First we show that g is indeed a map. It is clearly a set of ordered pairs. Suppose

(x, y) g and (x, y

36

n, n

n

and (x, y

) g

n

. Without loss of generality, we

may assume that n n

(g

n

)

|n

= g

n

. From (x, y) g

n

we obtain x n and consequently:

y

= g

n

(x) = (g

n

)

|n

(x) = g

n

(x) = y

So we have proved that g is indeed a map. It is clear that dom(g) = N and

rng(g) A. So g is a map g : N A. It remains to check that g(n) = h(g

|n

)

for all n N. So suppose n N. Let k n + 1. Since (k, g

n+1

(k)) g

n+1

g,

we obtain g

n+1

(k) = g(k). It follows in particular that (g

n+1

)

|n

= g

|n

and

g

n+1

(n) = g(n). Since g

n+1

(k) = h((g

n+1

)

|k

) for all k n+1 we conclude that:

g(n) = g

n+1

(n) = h((g

n+1

)

|n

) = h(g

|n

)

There is however one thing to note: the proof of lemma (30) tacitly makes

use of the Axiom Schema of Replacement without any explicit mention of the

fact. This is one other thing we usually take for granted. We have avoided any

mention of the Axiom Schema of Replacement to keep the proof leaner, thereby

following standard mathematical practice. However, considering the low level

nature of the result being proved, we feel it is probably benecial to say a few

words about it, or else the whole proof could be construed as a cheat. At some

point, we considered the set g =

nN

g

n

which is really a notational shortcut

for g = B where B = g

: n N , g

= g

n

. Recall that given a set z, the

set z is dened as:

z = x : y , (x y) (y z)

The existence of this set is guaranteed by the Axiom of Union. So it would seem

that dening g =

nN

g

n

is a simple application of the Axiom of Union and

of course it is. But there is more to the story: we need to justify the fact that

B is indeed a set and we have not done so. If we knew that G : N

nN

A

n

dened by G(n) = g

n

was a map, then B would simply be the range of G, i.e.

B = rng(G). Showing that B is a set would still require the Axiom Schema of

Replacement (as far as we can tell), but it would not be controversial to remain

silent about it. But why is G not a map? Why cant we dene G : N

nN

A

n

by setting G(n) = g

n

for all n N? This is something we do all the time.

Consider n N. We proved the existence and uniqueness of a map g : n A

such that g(k) = h(g

|k

) for all k n. We then labeled this unique map as g

n

.

In fact, we proved that the following formula of rst order predicate logic:

G[n, g] = (n N) [ (g : n A) (k n , g(k) = h(g

|k

)) ]

is a functional class with domain N. We have not formally dened what a

functional class is and we are not able to do so at this stage. Informally, G

is a functional class as a formula of rst order predicate logic where two free

variables n and g (in that order) have been singled out, and which satises:

ngg

[ G[n, g] G[n, g

] (g = g

) ]

37

where G[n, g

] has the obvious meaning. Note that G has other variables such

as A and h, while N is a constant. The functional class G has a domain:

dom(G)[n] = g G[n, g]

which is itself a formula of rst order predicate logic with the free variable n

singled out, something which we should call a class. As it turns out, we have:

n[ dom(G)[n] (n N) ]

which allows us to say that the functional class G has domain N. In general,

the domain of a functional class need not be a set. The functional class G[n, g]

also has a range, which is dened as the class:

rng(G)[g] = nG[n, g]

The Axiom Schema of Replacement asserts that if the domain of a functional

class is a set, then its range is also a set. More formally:

Bg[ (g B) rng(G)[g] ]

which shows as requested, that B = g

: n N , g

= g

n

is indeed a set,

since g

= g

n

is simply a notational shortcut for G[n, g

that B is a set. We did not need to dene a map G : N

nN

A

n

by setting

G(n) = g

n

for all n N. We considered a functional class instead. But the

question still stands: the practice of casually dening a map G : N

nN

A

n

by setting G(n) = g

n

is very common. Surely, it is a legitimate practice. To

avoid a confusing conict of notation let us keep G as referring to our functional

class, and consider the map G

: N

nN

A

n

dened by G

(n) = g

n

for all

n N. What we are really saying is that G

G

= (n, g

n

) : n N or equivalently G

is legitimate provided G

G

z[ (z G

However, G is a functional class whose domain is the set N, while its range is

the set B. Hence, we have the implication G[n, g] ((n, g) N B), and it

follows that (1.9) can equivalently be expressed as:

G

z[ (z G

) (z N B) [z] ] (1.10)

where [z] stands for ng[(z = (n, g)) G[n, g]]. Since (1.10) is a direct conse-

quence of the Axiom Schema of Comprehension, this completes our proof that

G

Unfortunately, we are not in a position to close our discussion on the subject

of recursion over N. Yes we have lemma (30), of which we gave a rather de-

tailed proof, including nal meta-mathematical remarks which hopefully were

as convincing as one could have made them. The truth is, lemma (30) is rather

38

useless, as it does not do what we need: suppose we want to dene the map g

with domain N, by setting g(0) = 0 and g(n +1) = T(g(n)) for all n N. In

order to apply lemma (30) we need to produce a set A. Yet we have no idea what

the set A should be. So we are back to the very beginning of this section, asking

the very same question as initially: does there exists a map g with domain N

such that g(0) = 0 and g(n + 1) = T(g(n)) for all n N? Of course once we

know that g exists, it is possible for us to produce a set A, namely A = rng(g) or

anything larger. We can dene an oracle function h :

nN

A

n

A by setting

h() = 0 and h(g) = T(g(n 1)) for all n N

lemma (30) works like a dream. But it is clearly too late, as we needed to know

the existence of g in the rst place.

One may argue that dening g(0) = 0 and g(n + 1) = T(g(n)) is not

terribly useful, and it may be that lemma (30) is pretty much all we need in

practice. But remember proposition (10) in which we claim to have constructed

a free universal algebra of type . We crucially dened the sequence (Y

n

)

nN

with a recursion over N, by setting Y

0

= (0, x) : x X

0

, Y

n+1

= Y

n

Y

n

and:

Y

n

=

_

(1, (f, x)) : f , x Y

(f)

n

_

, n N

Just as in the case of g(n + 1) = T(g(n)), it is not clear what set A should be

used in order to apply lemma (30). We need something more powerful.

Let us go back to the initial problem: we would like to dene a map g with

domain N by rst specifying g(0), and having dened g(0), g(1), . . . , g(n1), by

specifying what g(n) is as a function of g(0), g(1),. . . , g(n 1). So we need an

oracle function h :

nN

A

n

A so as to be able to set g(n) = h(g

|n

). Finding

such an oracle function will not be an easy task without a set A. But why should

A be a set? The only reason we insisted on A being a set was to keep clear

of the akiness of meta-mathematics. We wanted a theorem proper, namely

lemma (30), with a solid proof based on a standard mathematical argument. In

the case of induction, it was possible for us to stay within the realm of standard

mathematics. When it comes to recursion, it would seem that we have no choice

but to step outside of it.

So let us assume that A is a class, namely a formula of rst order predicate

logic with a variable x singled out. We could denote this class A[x] to emphasize

the fact that A is viewed as a predicate over the variable x. Of course, the formula

A may have many other variables, and in fact x itself need not be a free variable

of A. We could have A[x] = , also denoted A[x] = or indeed:

A[x] = (x(x x)) (x(x x))

The class A is simply such that xA[x] is a true statement. This class is the

largest possible, since A[x] is true for all x. We could call A[x] the category of

all sets also denoted Set, but we have no need to do so. Note that it is possible

for this class to have x as a free variable, as in:

A[x] = (y x) (y x)

39

The good thing about having A as a class is that it no longer requires us to know

what it is: if we have no idea as to which class to pick, we can simply decide

that A is the class of all sets. Now we need an oracle function h :

nN

A

n

A.

Since A is not a set but a class, we should be looking for a functional class

H :

nN

A

n

A, rather than a function. But we hardly know what this

means, and a few clarications are in order: rst of all, given a functional

class H[x, y], given two classes A[x] and B[x], we need to give meaning to the

statement H : B A. Informally, this statement should indicate that H is a

functional class with domain B and range inside A. The fact that H[x, y] is a

functional class is formally translated as:

xyy

[ H[x, y] H[x, y

] (y = y

) ]

The fact that H has domain B can be written as:

x[ B[x] y(H[x, y]) ]

and nally expressing that the range of H is inside A can be written as:

y[ x(H[x, y]) A[y] ]

So we now know what the statement H : B A formally represents. If we

intend to give meaning to H :

nN

A

n

A, we still need to spell out what the

class

nN

A

n

is. First we dene the class A

n

[x] for n N. Informally, A

n

[x]

should indicate that x is a map with domain n and range inside A, i.e.:

A

n

[x] = (x is a map) (dom(x) = n) y[ (y rng(x) A[y]) ]

Finally, the class

nN

A

n

should be dened as:

_

nN

A

n

_

[x] = n[ (n N) A

n

[x] ]

So the statement H :

nN

A

n

A is now meaningful. So suppose it is true. We

are looking for a map g : N A such that g(n) = H(g

|n

) for all n N. Things

are starting to be clearer. The statement g : N A is clearly represented by:

(g is a map) (dom(g) = N) y[ (y rng(g) A[g]) ]

while the statement g(n) = H(g

|n

) is an intuitive way of saying H[g

|n

, g(n)].

Furthermore, if we have H :

nN

A

n

A and g : N A, then for all n A

it is easy to check that g

|n

: n A, by which we mean that A

n

[g

|n

] is true. It

follows that dom(H)[g

|n

] is true, and consequently since H is functional, there

exists a unique y

n

such that H[g

|n

, y

n

], which furthermore is such that A[y

n

] is

true. We would like g : N A to be such that g(n) is precisely that unique y

n

,

for all n N. So it all makes sense.

As an example, let us go back to the case when g(n + 1) = T(g(n)) for all

n N with g(0) = 0. Because we have no idea what the class A should be, let

us pick A to be the class of all sets. We need to nd an oracle functional class

40

H :

nN

A

n

A which correctly sets up our recursion objective. Informally

speaking, we want H() = 0 and H(g) = T(g(n 1)) for all n N

and

g : n A. If we want to formally code up the functional class H[g, y] as a

formula of rst order predicate logic, since A

0

[g] = (g = ), this can be done as:

H[g, y] = [A

0

[g] (y = 0)] n[(n N

) A

n

[g] (y = T(g(n 1)))]

The fundamental question is this: does there exist a map g with domain N such

that g(n) = H(g

|n

) for all n N? This is the object of meta-theorem (1) below.

Before, we proceed with the proof of meta-theorem (1), a few remarks may

be in order: we were compelled by the nature of the problem to indulge in a fair

amount of meta-mathematical discussions, i.e. discussions involving formulas of

rst order logic, variables, classes and functional classes, terms which have not

been dened anywhere. This of course falls very short of the usually accepted

standards of mathematical proof. It is however better than nothing at all. We

do not have the conceptual tools to do much more at this stage. It is hoped

that the study of universal algebras and the introduction of formal languages

as algebraic structures will eventually allow us to handle meta-mathematics

without the hand waving. For now, we did everything we could and were as

careful as possible in attempting to give legitimacy to the principle of recursion

over N. So we shall accept the existence of a sequence (Y

n

)

nN

such that

Y

n+1

= Y

n

Y

n

for all n N, where:

Y

n

=

_

(1, (f, x)) : f , x Y

(f)

n

_

, n N

with the belief the existence of (Y

n

)

nN

could be formally proven within ZFC, if

we precisely knew what that means. If it so happens that one of our conclusions

is wrong, it is very likely that the error will be caught at some point, once we

have claried the ideas of formal languages and formal proofs.

MetaTheorem 1 Let A be a class and H :

nN

A

n

A be a functional class.

There exists a unique map g : N A such that g(n) = H(g

|n

) for all n N.

Proof

First we prove the uniqueness property. Suppose g, g

that g(n) = H(g

|n

) and g

(n) = H(g

|n

) for all n N. We need to show that

g = g

that g

|n

= g

|n

for all n N, for which we shall use an induction argument.

Since g

|0

= = g

|0

the property is true for n = 0. Suppose it is true for n N.

Then g

|n

= g

|n

and consequently g(n) = H(g

|n

) = H(g

|n

) = g

(n). Hence:

g

|(n+1)

= g

|n

(n, g(n)) = g

|n

(n, g

(n)) = g

|(n+1)

and we see that the property is true for n + 1. This completes the proof of

the uniqueness property. In order to prove the existence of g : N A with

g(n) = H(g

|n

) for all n N, we shall rst restrict our attention to nite domains

and prove by induction the existence for all n N of a map g : n A such

41

that g(k) = H(g

|k

) for all k n. This is clearly true for n = 0, since the empty

set is a map g : 0 A for which the condition g(k) = H(g

|k

) for all k 0 is

vacuously satised. So we assume n N, and the existence of a map g : n A

such that g(k) = H(g

|k

) for all k n. We need to show the existence of a

map g

: (n + 1) A such that g

(k) = H(g

|k

) for all k n + 1. Consider

the map g

: (n + 1) A dened by g

|n

= g and g

k n + 1. We need to check that g

(k) = H(g

|k

). If k = n, we need to check

that g

(n) = H(g

|n

) = H(g) which is true by denition of g

. If k n, then:

g

(k) = g

|n

(k) = g(k) = H(g

|k

) = H(g

|k

)

This completes our induction argument and for all n N we have proved the

existence of a map g : n A such that g(k) = H(g

|k

) for all k n. In fact

we claim that such a map is unique. For if g

identical induction argument to the one already used shows that g(k) = g

(k)

for all k n. Hence, for all n N, we have proved the existence of a unique

map g : n A such that g(k) = H(g

|k

) for all k n. It follows that:

G[n, g] = (n N) [ (g : n A) (k n , g(k) = H(g

|k

)) ]

is a functional class with domain N. From the Axiom Schema of Replacement:

rng(G) = g : n N , G[n, g]

is therefore a set. We dene g = rng(G) and we shall complete our proof by

showing that g : N A is a map such that g(n) = H(g

|n

) for all n N. First

we show that g is a set of ordered pairs. Let z g. There exists g

rng(G)

such that z g

. Since g

] for some n N. It

follows that g

: n A and in particular g

z g

we assume that (x, y) g and (x, y

. Since

g = rng(G), there exist g

1

, g

2

rng(G) such that (x, y) g

1

and (x, y

) g

2

.

Furthermore, there exist n

1

, n

2

N such that G[n

1

, g

1

] and G[n

2

, g

2

]. Without

loss of generality we may assume that n

1

n

2

. From G[n

2

, g

2

] it is not dicult

to show that G[n

1

, (g

2

)

|n1

] is also true. Since G is functional, it follows that

g

1

= (g

2

)

|n1

. From (x, y) g

1

and g

1

: n

1

A we obtain x n

1

. Hence:

y

= g

2

(x) = (g

2

)

|n1

(x) = g

1

(x) = y

We now show that dom(g) = N. First we show that N dom(g). So let

n N. We need to show that n dom(g). However, the functional class G

has domain N. In particular, there exists g

] is true. From

g

(n)) g

] we see

that g

(n)) g, and in

particular n dom(g). We now prove that dom(g) N. So let x dom(g). We

need to show that x N. However, there exists y such that (x, y) g. Hence,

there exists g

42

such that G[n, g

: n A and we conclude

from (x, y) g

remains to check that A[g(n)] is true for all n N. So let n N. We need to

show that A[g(n)] is true. However n n +1 and since G has domain N, there

exists g

]. From g

(n)) g

.

Furthermore, A[g

] we obtain g

rng(G), and it

follows that (n, g

(n)] is

true we conclude that A[g(n)] is also true. So we have proved that g : N A

is a map. It remains to check that g(n) = H(g

|n

) for all n N. So let n N.

We need to show that g(n) = H(g

|n

). Consider once more the map g

rng(G)

such that G[n + 1, g

] is true. Since g

(k, g

(k)) g

all k n+1, and we see that g

|n

= g

|n

as well as g

]

we also have g

(k) = H(g

|k

) for all k n + 1. In particular, we have:

g(n) = g

(n) = H(g

|n

) = H(g

|n

)

Let = (0, 1), (1, 2) and X

0

be a set. We know from theorem (1) of page 20

that there exists a free universal algebra X of type whose free generator is

X

0

. Let us denote : X

1

X and : X

2

X the two operators on X. This

particular choice of notations should invite us to view X as a free universal

algebra of propositional logic. We know from theorem (2) of page 21 that any

proposition of X is either an atomic proposition = p for some p X

0

, or

the negation of a proposition =

1

or the conjunction of two propositions

=

1

2

. These three cases are exclusive, and these representations are

unique. In eect, the free universal algebra X is partitioned into three parts

X = X

0

X

specifying the three restrictions g

|X0

, g

|X

and g

|X

separately. We saw from

proposition (17) that the order : X N had this sort of three-fold structure:

X , () =

0 if = p X

0

1 + (

1

) if =

1

1 + max((

1

), (

2

)) if =

1

2

(1.11)

However, we did not invoke equation (1.11) as a denition of the order : X

N as this would not guarantee the existence of . This is very similar to the

simple recursion problem: dening a map g : N N by setting g(0) = 1 and

g(n + 1) = (n + 1).g(n) does not in itself guarantee the existence of g. We

now know that g exists, but we needed to justify the principle of denition by

recursion over N in the form of lemma (30) and meta-theorem (1) of page 41.

Equation (1.11) is clearly recursive as it links () on the left-hand-side to other

values (

1

) and (

2

) assigned by the map to other points. It is not obvious

43

that exists so we had to nd some other way to dene it. And yet we may

feel there is nothing wrong with equation (1.11). From a computing point of

view, it seems pretty obvious that any computation of () would terminate.

For instance taking = (p

1

((p

2

) p

3

)), equation (1.11) would lead to:

() = ((p

1

((p

2

) p

3

)))

= 1 +(p

1

((p

2

) p

3

))

= 2 + max((p

1

), ((p

2

) p

3

))

= 2 +((p

2

) p

3

)

= 3 + max((p

2

), (p

3

))

= 3 +(p

2

)

= 4 +(p

2

)

= 4

Equation (1.11) is a case of denition by structural recursion. There are many

natural mappings on X which could be dened in a similar way. For instance,

suppose we needed a map g : X T(X

0

) returning the set of all atomic

propositions involved in a formula X. In the case of = (p

1

((p

2

)p

3

)),

we would have g() = p

1

, p

2

, p

3

. A natural way to dene the map g is:

X , g() =

p if = p X

0

g(

1

) if =

1

g(

1

) g(

2

) if =

1

2

(1.12)

As another example, suppose we had a truth table v : X

0

0, 1 indicating

whether an atomic proposition p is true (v(p) = 1) or false (v(p) = 0) for all

p X

0

. We would like to dene a map g : X 0, 1 indicating whether a

proposition is true (g() = 1) or false (g() = 0). Once again, it is natural to

dene the map g using structural recursion:

X , g() =

v(p) if = p X

0

1 g(

1

) if =

1

g(

1

). g(

2

) if =

1

2

(1.13)

We know that equations (1.12) and (1.13) are ne: we just need to prove it.

So let us go back to a more general setting and consider a free universal

algebra X of type with free generator X

0

X. Let A be a set. We would like

to dene a map g : X A by structural recursion. We know from theorem (2)

of page 21 that any element of X is either an element of X

0

, or an element of

the form f(x) for some unique f and x X

(f)

. Dening g : X A by

structural recursion consists rst in specifying g(x) for all x X

0

. So we need

a map g

0

: X

0

A with the understanding that g(x) = g

0

(x) for all x X

0

.

For all f and x X

(f)

, we then want to specify g(f(x)) as a function of

all the individual g(x(i))s for all i (f). So we need a map h(f) : A

(f)

A

with the understanding that g(f(x)) = h(f)(g(x)). Note that if (f) = 0, this

amounts to having a map h(f) : 0 A and requesting that g(f(0)) = h(f)(0).

44

In other words, it amounts to specifying the value h(f)(0) assigned by the map

g to the constant f(0). We are now in a position to ask the key question: given

a map g

0

: X

0

A and given a map h(f) : A

(f)

A for all f , does there

exist a map g : X A such that g

|X0

= g

0

and g(f(x)) = h(f)(g(x)) for all

f and x X

(f)

? This question is dealt with in the following theorem.

To prove theorem (4), we are eectively resorting to the same trick as the

one used to dene the order : X N in denition (16): once we give ourselves

a map h(f) : A

(f)

A for all f , we are eectively specifying a structure

of universal algebra of type on A, and requesting that g(f(x)) = h(f)(g(x))

is simply asking that g : X A be a morphism. The existence of g such that

g

|X0

= g

0

is guaranteed by the fact that X

0

is a free generator of X.

Theorem 4 Let X be a free universal algebra of type with free generator

X

0

X. Let A be a set and g

0

: X

0

A be a map. Let h be a map with

domain such that h(f) is a map h(f) : A

(f)

A for all f . Then, there

exists a unique map g : X A such that:

(i) x X

0

g(x) = g

0

(x)

(ii) x X

(f)

g(f(x)) = h(f)(g(x))

where (ii) holds for all f .

Proof

Since h is a map with domain and we have h(f) : A

(f)

A for all f , the

ordered pair (A, h) is in fact a universal algebra of type . Since g

0

: X A

is a map and X is a free universal algebra of type with free generator X

0

,

there exists a unique morphism g : X A such that g

|X0

= g

0

. From this last

equality, we see that (i) is satised. Since g is a morphism, for all f and

x X

(f)

we have:

g(f(x)) = g f(x) = h(f) g(x) = h(f)(g(x))

where it is understood that g(x) on the right-hand-side of this equation refers

to the element of A

(f)

dened by g(x)(i) = g(x(i)) for all i (f). Hence

we see that (ii) is satised by g : X A for all f . So we have proved

the existence of g : X A such that (i) and (ii) holds for all f . Suppose

g

is clearly a morphism

with g

|X0

= g

0

and it follows from the uniqueness of g that g

= g.

This was disappointingly simple. One would have expected the principle

of denition by structural recursion to be a lot more complicated than that of

recursion over N. And it can be. We eectively restricted ourselves to the

simple case of g : X A where A is a set rather than a class, and g(f(x))

is simply a function of the g(x(i))s. This would be similar to considering

g : N A given a set A, and requesting that g(n) = h g(n 1) rather than

g(n) = h(g

|n

). Anticipating on future events, suppose X is a free algebra of

rst order logic, generated by atomic propositions (x y) (with x, y belonging

45

to a set of variables V ), with the constant , the binary operator and a

unary quantication operator x for every variable x V . Given a set M with

a binary relation r M M and a map a : V M (a variables assignment),

a natural thing to ask is which of the formulas X are true with respect to

the model (M, r) under the assignment a : V M. In other words, it is very

tempting to dene a truth function g

a

: X 2 = 0, 1 with the formula:

g

a

() =

1

r

( a(x), a(y) ) if = (x y)

0 if =

g

a

(

1

) g

a

(

2

) if =

1

2

min g

b

(

1

) : b = a on V x if = x

1

being understood that g

a

(

1

) g

a

(

2

) is the usual g

a

(

1

) g

a

(

2

) in 0, 1.

This denition of the concept of truth will be seen to be awed: it is clear enough

at this stage that theorem (4) will not be directly applicable to this case, since

we are attempting to dene g

a

: X 2 in terms of other functions g

b

: X 2.

We will need to nd some other way to prove the existence of g

a

. Going back

to propositional logic, another possible example is the following:

X , g() =

0 if = p X

0

T(g(

1

)) if =

1

g(

1

) g(

2

) if =

1

2

(1.14)

This would constitute a case when theorem (4) fails to be applicable, as there is

no obvious set A for g : X A. We shall not provide a meta-theorem for this.

We shall however now provide a stronger version of theorem (4) which will

be required at a later stage of this document. For example, when studying the

Hilbert deductive system on the free algebra of rst order predicate logic P(V ),

we shall dene the notion of proofs as elements of another free algebra (V ),

which in turn will lead to the following recursion:

(V ) , Val() =

if = P(V )

if = , A(V )

if = , , A(V )

M(Val (

1

), Val (

2

)) if =

1

2

xVal (

1

) if = x

1

, x , Sp (

1

)

if = x

1

, x Sp (

1

)

when attempting to dene Val () as representing the conclusion being proved

by the proof . The details of this denition are not important at this stage,

but we should simply notice that given a variable x and the associated unary

operator x : (V ) (V ), we were unable to dene Val (x

1

) simply in

terms of Val (

1

) as an application of theorem (4) would require. The denition

of Val(x

1

) is also based on whether x Sp (

1

), i.e. on whether x is a free

variable of the premises involved in the proof

1

. Going back to the general

setting of an arbitrary free algebra X of type , this is therefore a case when

given f and x X

(f)

, g(f(x)) is not simply dened in terms of g(x), but

46

is also based on x itself. So we would like to set g(f(x)) = h(f)(g(x), x) rather

than the more restrictive g(f(x)) = h(f)(g(x)) of theorem (4).

The proof of the following theorem is identical in spirit to that of Lemma (30).

The only new idea is the introduction of the subsets X

n

X of proposition (18):

X

n

= x X : (x) n , n N

where : X N is the order mapping of denition (16) which allows to reduce

our problem to that of induction over N. Once we have shown the existence

of maps g

n

: X

n

A with the right property, and which are extensions of

one another, we prove the existence of the larger map g : X A simply by

collecting the appropriate ordered pairs in one single set g =

nN

g

n

. Note

that it is probably possible to prove theorem (5) using lemma (30) rather than

duplicating what is essentially the same argument.

Theorem 5 Let X be a free universal algebra of type with free generator

X

0

X. Let A be a set and g

0

: X

0

A be a map. Let h be a map with

domain such that h(f) is a map h(f) : A

(f)

X

(f)

A for all f .

Then, there exists a unique map g : X A such that:

(i) x X

0

g(x) = g

0

(x)

(ii) x X

(f)

g(f(x)) = h(f)(g(x), x)

where (ii) holds for all f .

Proof

We shall rst prove the uniqueness property. So suppose g, g

: X A are two

maps satisfying (i) and (ii) above. We need to show that g = g

or equivalently

that g(x) = g

argument based on theorem (3) of page 32. Since X

0

is a generator of X, we shall

rst check this is the case when x X

0

. This follows immediately from (i) and

g(x) = g

0

(x) = g

an arbitrary f and assuming x X

(f)

is such that g(x(i)) = g

(x(i)) for

all i (f). We need to show that g(f(x)) = g

g(x) in (ii) above refers to the element of A

(f)

dened by g(x)(i) = g(x(i))

for all i (f). In the case when (f) = 0 we have g(x) = 0. So with this

in mind and a similar notational convention for g

g(x) = g

g(f(x)) = h(f)(g(x), x) = h(f)(g

(x), x) = g

(f(x))

This completes our induction argument and the proof of uniqueness. We shall

now prove the existence of the map g : X A. We dene:

X

n

= x X : (x) n , n N

where : X N is the order on X as per denition (16). Note that from

proposition (17) we have x X

0

(x) = 0 so this new denition does not

47

conict with the notation X

0

used for the free generator on X. We now consider

the subset Y N of all n N which satisfy the property that there exists a

unique map g

n

: X

n

A such that:

(iii) x X

0

g

n

(x) = g

0

(x)

(iv) f(x) X

n

g

n

(f(x)) = h(f)(g

n

(x), x)

where (iv) holds for all f and x X

(f)

. In order to prove the existence of

the map g : X A, it is sucient to prove that Y = N. We shall rst prove

this is the case. So suppose Y = N. We need to show the existence of the map

g : X A. Dene g =

nN

g

n

. Each g

n

being a map is a set of ordered pairs.

So g is also a set of ordered pairs. In fact, it is a functional set of ordered pairs:

x, y, y

, ((x, y) g) ((x, y

) g) (y = y

)

Suppose this is true for the time being. Then g is a map. Furthermore, since

g

n

: X

n

A and X

n

X for all n N we have:

(x, y) g n N[(x, y) g

n

] (x X) (y A)

So it is clear that dom(g) X and rng(g) A. In fact, since every x X is

an element of X

n

for any n (x), we have dom(g) = X and we conlude that

g : X A. In order to prove the existence of g : X A it remains to show

that (i) and (ii) above are satised. So let x X

0

. From (x, g

0

(x)) g

0

g it

follows immediately that g(x) = g

0

(x) which shows that (i) is indeed true. Let

f and x X

(f)

. Picking n N large enough so that f(x) X

n

we obtain

(f(x), g

n

(f(x))) g

n

g from which we conclude that g(f(x)) = g

n

(f(x)).

Furthermore, for all i (f) from proposition (17) we have (f(x)) (x(i))

which shows that x(i) X

n

and consequently (x

i

, g

n

(x(i))) g

n

g i.e.

g(x(i)) = g

n

(x(i)). This being true for all i (f), we obtain g(x) = g

n

(x), an

equality which is still true when (f) = 0. Hence, using (iv) above we have:

g(f(x)) = g

n

(f(x)) = h(f)(g

n

(x), x) = h(f)(g(x), x)

which shows that (ii) is indeed true. This completes the proof of the existence

of g : X A having admitted that g is a functional relation. We shall now go

back to this particular point and show that g is indeed functional. So let x, y, y

.

Let n N be the smallest integer such that (x, y) g

n

and likewise let n

N

be the smallest integer such that (x, y

) g

n

. Without loss of generality, we

may assume that n n

and consequently X

n

X

n

. Consider the restriction

(g

n

)

|Xn

: X

n

A. Since g

n

: X

n

A satises (iii) and (iv) above for n

, for

all z X

0

we have (g

n

)

|Xn

(z) = g

n

(z) = g

0

(z) and furthermore given f

and z X

(f)

such that f(z) X

n

we have:

(g

n

)

|Xn

(f(z)) = g

n

(f(z)) = h(f)(g

n

(z), z) = h(f)((g

n

)

|Xn

(z), z)

where the last equality follows from the fact that z(i) X

n

for all i (f).

Hence we see that the map (g

n

)

|Xn

: X

n

A also satises (iii) and (iv) above

48

and from the uniqueness property of g

n

we conclude that (g

n

)

|Xn

= g

n

. We

are now in a position to prove that y = y

. From (x, y) g

n

we obtain x X

n

and y = g

n

(x) while from (x, y

) g

n

we obtain y

= g

n

(x) = (g

n

)

|Xn

(x).

From (g

n

)

|Xn

= g

n

we therefore conclude that y = y

proof of the existence of the map g : X A having assumed the equality

Y = N. We shall complete the proof of this theorem by showing the equality

Y = N is indeed true. So given n N we need to show the existence and

uniqueness of a map g

n

: X

n

A which satises (iii) and (iv) above. First

we prove the uniqueness. So we assume that g, g

: X

n

A are two maps

satisfying (iii) and (iv) above and we need to show that g(x) = g

x X

n

. We shall do so by proving the implication x X

n

g(x) = g

(x) by

structural induction on X, using theorem (3) of page 32. First we check that

this is true for x X

0

. In this case from (iii) above we obtain immediately

g(x) = g

0

(x) = g

(f)

such that the

implication x(i) X

n

g(x(i)) = g

g(x) = g

need to check the implication f(x) X

n

g(f(x)) = g

follows immediately from (iv) and:

g(f(x)) = h(f)(g(x), x) = h(f)(g

(x), x) = g

(f(x))

This completes our structural induction argument and g

n

: X

n

A is indeed

unique. We shall now prove the existence g

n

: X

n

A using an induction

argument on N. For n = 0, we already have a map g

0

: X

0

A which clearly

satises (iii) above. It also vacuously saties (iv) as theorem (2) of page 21

shows no element of X

0

can be of the form f(x) for f and x X

(f)

. So

we assume that g

n

: X

n

A exists for a given n N and we need to show the

existence of g

n+1

: X

n+1

A. Recall the equality from proposition (18):

X

n+1

= X

n

f(x) : f , x (X

n

)

(f)

So we shall dene g

n+1

: X

n+1

A by setting (g

n+1

)

|Xn

= g

n

and:

g

n+1

(y) = h(f)(g

n

(x), x)

for all y X

n+1

X

n

, where y = f(x) is the unique representation of y with

f and x (X

n

)

(f)

. Such representation is indeed unique, as follows from

theorem (2) of page 21. We have thus dened a map g

n+1

: X

n+1

A and it

remains to check that g

n+1

satises (iii) and (iv) above. So let x X

0

. Since

g

n

satises (iii) we have g

n+1

(x) = (g

n+1

)

|Xn

(x) = g

n

(x) = g

0

(x) and g

n+1

also satises (iii). So let f and x X

(f)

be such that y = f(x) X

n+1

.

We need to show that g

n+1

(f(x)) = h(f)(g

n+1

(x), x). We shall distinguish two

cases: rst we assume that f(x) X

n

. Then, since (iv) is true for g

n

:

g

n+1

(f(x)) = (g

n+1

)

|Xn

(f(x))

= g

n

(f(x))

(iv) true g

n

= h(f)(g

n

(x), x)

49

= h(f)((g

n+1

)

|Xn

(x), x)

= h(f)(g

n+1

(x), x)

We now assume that f(x) X

n+1

X

n

. From x (X

n

)

(f)

we obtain:

g

n+1

(f(x)) = h(f)(g

n

(x), x)

= h(f)((g

n+1

)

|Xn

(x), x)

= h(f)(g

n+1

(x), x)

So we have proved that g

n+1

satises (iv) above as requested.

1.3 Relation on Universal Algebra

1.3.1 Relation and Congruence on Universal Algebra

A relation is a set of ordered pairs. If X is a set then a relation on X is a set of

ordered pairs which is also a subset of X X. A map g : A B between two

sets A and B is a particular type of relation which is a subset of AB. It is a

functional relation as it satises the property:

xyy

[ ((x, y) g) ((x, y

) g) (y = y

) ]

A map g : X X is a functional relation on X. In this section we shall

introduce other types of relations on X, which are of particular interest. Most

of us will be familiar with equivalent relations on X. An equivalence relation on

X is a relation on X which is reexive, symmetric and transitive. A relation

is said to be reexive if and only if it satises:

x[ (x X) (x x) ]

Note that it is very common to write x x and x y rather than (x, x) or

(x, y) . A relation on X is said to be symmetric if and only if it satises:

xy[ (x y) (y x) ]

Finally, a relation on X is said to be transitive if and only if:

xyz[ (x y) (y z) (x z) ]

We shall now introduce a new type of relation on X, in the case when X is

a universal algebra of type . Note that given f and x, y X

(f)

, we

shall write x y as a notational shortcut for the statement x(i) y(i) for all

i (f). Note that if (f) = 0 then x y is vacuously true. Beware that the

symbol thus becomes overloaded. In eect, we are dening new relations

on X

n

for n N. So 0 0 may be vacuously true when referring to the relation

on X

0

, but may not be true (if 0 X) with respect to the relation on X.

50

Denition 31 Let X be a universal algebra of type . Let be a relation on

X. We say that is a congruent relation on X, if and only if:

f , x, y X

(f)

, x y f(x) f(y)

It follows that if X is a universal algebra of type with constants, and is a

congruent relation on X, then f(0) f(0) for all f such that (f) = 0.

Denition 32 Let X be a universal algebra of type . We call congruence on

X any equivalence relation on X which is a congruent relation on X.

The notion of congruence on a universal algebra is very important. This

is particularly the case when dealing with free universal algebras. As already

seen following theorem (2) of page 21, most interesting algebraic structures

are not free (a notable exception being formal languages encountered in logic

textbooks). A congruence on a universal algebra X of type will allow us

to dene a new universal algebra [X] of type , called the quotient universal

algebra of X. We shall see that quotients of free universal algebras are in fact

everywhere. This is probably one of the reasons free universal algebras are key.

A good example of congruence is the kernel of a morphism:

Denition 33 Let h : X Y be a homomorphism between two universal

algebras X and Y of type . We call kernel of h the relation ker(h) on X:

ker(h) = (x, y) X X : h(x) = h(y)

Proposition 34 Let h : X Y be a homomorphism between two universal

algebras X and Y of type . Then ker(h) is a congruence on X.

Proof

The relation ker(h) is clearly reexive, symmetric and transitive. So it is an

equivalence relation on X. It remains to show it is also a congruent relation.

For an easier formalism, denote ker(h) =. Let f and x, y X

(f)

such

that x y. We need to show that f(x) f(y) which is h f(x) = h f(y) :

h f(x) = f h(x) = f h(y) = h f(y)

The rst and third equality are just expressing the fact that h is a morphism,

while the second equality follows from h(x) = h(y), itself a consequence of the

fact that for all i (f) we have h(x)(i) = h(x(i)) = h(y(i)) = h(y)(i).

1.3.2 Congruence Generated by a Set

Let X be a universal algebra of type and R

0

X X. Then R

0

is a relation

on X. However, R

0

may not have the right properties and in particular may not

be a congruence on X. In this section, we prove the existence of the congruence

generated by R

0

, namely the smallest congruence on X containing R

0

in the

51

sense of inclusion. The notion of congruence generated by a subset of X X

is a very handy way of creating interesting congruences on X. As we shall see,

it is possible to view a congruence on X as a universal sub-algebra of X X,

provided the latter has been embedded with the right structure of universal

algebra. The congruence generated by R

0

will be seen to be the universal sub-

algebra of X X generated by R

0

, as per denition (23).

Before we proceed, we shall review a few simple lemmas which show that

common properties of a relation such as reexivity, symmetry, transitivity and

being a congruent relation, are in fact akin to closure properties.

Lemma 35 Let X be a set and T

x

: (X X)

0

X X be dened by:

T

x

(0) = (x, x) , (x X)

A relation is reexive on X if and only if it is closed under T

x

for all x X.

Proof

Suppose is closed under T

x

for all x X. We need to show that is a

reexive relation on X. So let x X. We need to show that x x. Since

0 ()

0

, we obtain T

x

(0) . Hence we see that (x, x) or equivalently

x x. Conversely, suppose is a reexive relation on X. We need to show

that is closed under T

x

for all x X. So let x X. We need to show that

is closed under T

x

. So let u ()

0

. We need to show that T

x

(u) . But

u = 0 and T

x

(0) = (x, x). So we need to show that (x, x) or equivalently

x x which follows immediately from the reexivity of .

If X is a set and z (XX)

1

then z is a map z : 0 XX. So z(0) is an

ordered pair (x, y). Recall that the notation (x, y) may be used as a notational

shortcut to refer to the map z : 0 X X dened by z(0) = (x, y).

Lemma 36 Let X be a set and : (X X)

1

X X be dened by:

(x, y) (X X)

1

, (x, y) = (y, x)

A relation is symmetric on X if and only if it is closed under .

Proof

Suppose is closed under . We need to show that is a symmetric relation

on X. So let x, y X such that x y. We need to show that y x. Since

(x, y) ()

1

, we obtain (x, y) . Hence we see that (y, x) or equiva-

lently y x. Conversely, suppose is a symmetric relation on X. We need

to show that is closed under . So let (x, y) ()

1

. We need to show that

(x, y) . So we need to show that (y, x) or equivalently y x which

follows immediately from the symmetry of and x y

If X is a set and z (X X)

2

then z is a map z : 0, 1 X X. So

z(0) is an ordered pair (x, y) and z(1) is an ordered pair (y

notation [(x, y), (y

map z : 0, 1 X X dened by z(0) = (x, y) and z(1) = (y

, z).

52

Lemma 37 Let X be a set and : (X X)

2

X X be dened by:

[(x, y), (y

, z)] =

_

(x, y) if y ,= y

(x, z) if y = y

Proof

Suppose is closed under . We need to show that is a transitive relation on

X. So let x, y, z X such that x y and y z. We need to show that x z.

Since [(x, y), (y, z)] ()

2

we obtain [(x, y), (y, z)] . Hence we see that

(x, z) or equivalently x z. Conversely, suppose is a transitive relation

on X. We need to show that is closed under . So let [(x, y), (y

, z)] ()

2

.

Then x y and y

, z)] . If y ,= y

follows immediately from the transitivity of and x y and y z.

Let X be a set and

0

,

1

: XX X be the projection mappings, namely

the maps dened by

0

(x, y) = x and

1

(x, y) = y for all x, y X. Following

our well established convention, for all n N recall that

0

may be used as a

notational shortcut for

n

0

: (X X)

n

X

n

dened by

n

0

(z)(i) =

0

(z(i)) for

all i n. A similar comment obviously applies to

1

.

Lemma 38 Let X be a universal algebra of type . Consider the structure of

universal algebra of type on X X dened by:

T(f)(z) = (f

0

(z), f

1

(z)) , z (X X)

(f)

, f

where

0

,

1

: X X X are the projection mappings. Then, a relation is

a congruent relation on X, if and only if it is closed under T(f) for all f .

Proof

Note from denition (19) that being closed under T(f) for all f could

equally have been phrased as being a universal sub-algebra of X X viewed

as a universal algebra of type . Note also that given z (X X)

(f)

for

f ,

0

(z) and

1

(z) are well-dened elements of X

(f)

(specically we have

0

(z)(i) =

0

(z(i)) for all i (f) with similar equalities for

1

(z)). It follows

that f

0

(z) and f

1

(z) are well-dened elements of X and we see that T(f)

is indeed a well-dened operator T(f) : (XX)

(f)

XX. We now proceed

with the proof: suppose is closed under T(f) for all f . We need to show

that is a congruent relation on X. So let f and x, y X

(f)

and suppose

that x y. We need to show that f(x) f(y). Dene z (X X)

(f)

by

z(i) = (x(i), y(i)) for all i (f), being understood that z = 0 is (f) = 0.

From x y, we have x(i) y(i) for all i (f). It follows that z(i) for all

i (f) and consequently z ()

(f)

. Since is closed under T(f) we obtain

T(f)(z) . However, for all i (f) we have

0

(z)(i) =

0

(z(i)) = x(i) and

therefore

0

(z) = x. Similarly we have

1

(z) = y. It follows that:

T(f)(z) = (f

0

(z), f

1

(z)) = (f(x), f(y))

53

From T(f)(z) we conclude that f(x) f(y). Conversely, suppose is a

congruent relation on X. We need to show that is closed under T(f) for all

f . So let f and z ()

(f)

. We need to show that T(f)(z) . Dene

x, y X

(f)

by setting x =

0

(z) and y =

1

(z). Then T(f)(z) = (f(x), f(y))

and it remains to show that f(x) f(y). Since is a congruent relation on

X, this will be achieved by showing that x y, or equivalently that x(i) y(i)

for all i (f). However, for all i (f) we have x(i) =

0

(z)(i) =

0

(z(i))

and similarly y(i) =

1

(z(i)). It follows that z(i) = (x(i), y(i)). Consequently,

we only need to show that z(i) for all i (f). But this is an immediate

consequence of z ()

(f)

.

Theorem 6 Let X be a universal algebra of type and R

0

X X. Then,

there exists a unique smallest congruence on X such that R

0

.

Proof

First we show the uniqueness. Suppose and are two congruence on X which

are both the smallest congruence on X containing R

0

. Since is a congruence

on X containing R

0

, from the minimality of we obtain . Likewise, since

is a congruence on X containing R

0

, from the minimality of we obtain

. We now show the existence. For all x X, let T

x

: (X X)

0

X X

be dened as in lemma (35). Let : (X X)

1

X X be dened as in

lemma (36) and : (X X)

2

X X be dened as in lemma (37). For all

f, let T(f) : (X X)

(f)

X X be dened as in lemma (38). Consider

the sets

0

= ((0, x), 0) : x X,

1

= ((1, 0), 1),

2

= ((2, 0), 2) and

3

= ((3, f), (f)) : f . Note that these sets are all maps with range

inside N. Furthermore, their domains are pairwise disjoint. It follows that

=

0

3

is a map with range inside N, i.e. rng(

) N. In other

words,

,

such that T

(f) : (X X)

(f)

X X for all f

and T

(f) is dened

as:

T

(f) =

T

x

if f

0

, f = ((0, x), 0) , x X

if f

1

, f = ((1, 0), 1)

if f

2

, f = ((2, 0), 2)

T(f

) if f

3

, f = ((3, f

), (f

)) , f

(1.15)

Note that equation (1.15) is indeed such that T

(f) : (XX)

(f)

XX for

all f

) is a universal algebra

of type

0

be the universal sub-algebra of

X X generated by R

0

X X. We shall complete the proof of the theorem

by showing that the relation has all the requested properties. First we show

that is a congruence on X. Since is a universal sub-algebra of X X, it

is closed under every operator T

. In particular, it is closed

under T

x

for all x X. It follows from lemma (35) that is a reexive relation

on X. Similarly is closed under and , and we see from lemma (36) and

lemma (37) that is a symmetric and transitive relation on X. Furthermore,

54

is closed under every operator T(f

) for all f

that is a congruent relation on X. So we have proved that is an equivalence

relation on X which is a congruent relation, i.e. that is a congruence on X.

From = R

0

we obtain immediately R

0

. It remains to show that is the

smallest congruence on X with R

0

. So we assume that R is a congruence

on X such that R

0

R. We need to show that R. Since = R

0

and

R

0

R it is sucient to show that R is a universal sub-algebra of X X, as

this will imply R

0

R by virtue of proposition (24), and nally R. So

suppose f

(f). If f

0

then

f = ((0, x), 0) for some x X and we need to show that R is closed under T

x

which follows immediately from lemma (35) and the reexivity of R. If f

1

then we need to show that R is closed under which follows immediately from

lemma (36) and the symmetry of R. If f

2

then we need to show that R is

closed under which follows immediately from lemma (37) and the transitivity

of R. Finally, if f

3

then f = ((3, f

), (f

)) for some f

and we need to

show that R is closed under T(f

and the fact that R is a congruent relation on X. In all four possible cases, we

have proved that R is closed under T

(f).

Denition 39 Let X be a universal algebra of type and R

0

XX. We call

congruence on X generated by R

0

the smallest congruence on X containing R

0

.

1.3.3 Quotient of Universal Algebra

In this section we dene the quotient universal algebra [X] of type derived

from a universal algebra X of type and a congruence on X. Given x X,

we shall denote [x] the equivalent class of x modulo , namely:

[x] = y X : x y

Note that [x] = [y] is equivalent to x y for all x, y X. Given f and

x X

(f)

, [x] to denote the element of [X]

(f)

dened by [x](i) = [x(i)].

Theorem 7 Let X be a universal algebra of type and be a congruence

on X. Given x X, let [x] denote the equivalence class of x modulo and

[X] be the quotient set [X] = [x] : x X. Let : X [X] be dened by

(x) = [x] for all x X. Then, there exists a unique structure of universal

algebra of type on [X] such that is a surjective morphism. Furthermore:

x X

(f)

, f([x]) = [f(x)] (1.16)

for all f . This structure is called the quotient structure on [X].

Proof

Note that given f and x X

(f)

, [x] refers to the element of [X]

(f)

dened

by [x](i) = [x(i)] for all i (f), being understood that [x] = 0 is (f) = 0.

It follows that equation (1.16) is meaningful. Note also that : X [X]

55

is a surjective map, regardless of any structure on [X]. We shall rst prove

the existence of a structure of universal algebra of type on [X] which makes

: X [X] into a morphism. We need to show the existence of a map T with

domain such that T(f) : [X]

(f)

[X] for all f and:

x X

(f)

, f(x) = T(f) (x) (1.17)

So let f . We need to dene some T(f) : [X]

(f)

[X]. Let x

[X]

(f)

.

We need to dene T(f)(x). First we shall show that there exists x X

(f)

such that x

exists x

i

X such that x

(i) = [x

i

]. Dene x X

(f)

by setting x(i) = x

i

for

all i (f), being understood that x = 0 if (f) = 0. Then, for all i (f) we

have [x](i) = [x(i)] = [x

i

] = x

. We now dene

T(f)(x

[f(x)] is independent of the particular x X

(f)

such that x

= [x]. So suppose

that x, y X

(f)

such that [x] = [y]. We need to show that [f(x)] = [f(y)] or

equivalently that f(x) f(y). Since is a congruence, this will be achieved by

showing that x y or equivalently that x(i) y(i) for all i (f). However,

[x] = [y] and it follows that [x(i)] = [x](i) = [y](i) = [y(i)] for all i (f)

from which we obtain x(i) y(i). So we have proved that T(f)(x

) is well

dened. Furthermore since T(f)(x

) [X]. Hence

we have successfully dened T(f) : [X]

(f)

[X] for all f . It follows

that the ordered pair ([X], T) is a universal algebra of type . it remains to

check that : X [X] is a morphism under this particular structure, i.e. that

equation (1.17) is satised for all f . So let x X

(f)

and x

= [x]. We

have:

f(x) = [f(x)] = T(f)(x

This completes our proof of the existence of a structure of universal algebra of

type on [X] such that : X [X] is a surjective morphism. We shall now

prove the uniqueness. So suppose S is another map with domain such that

S(f) : [X]

(f)

[X] for all f with respect to which is a morphism. We

need to show that S = T. So let f . We need to show that S(f) = T(f). So

let x

[X]

(f)

. We need to show that S(f)(x

) = T(f)(x

). Let x X

(f)

be such that x

S(f)(x

)

We shall complete the proof of the theorem by showing that equation (1.16)

holds for all f . So let x X

(f)

. We need to show that f([x]) = [f(x)].

But this follows immediately from T(f)([x]) = [f(x)] and the fact that f([x])

is a notational shortcut for T(f)([x]).

1.3.4 First Isomorphism Theorem

Let h : X Y be a homomorphism between two universal algebras X and Y

of type . We know from proposition (34) that ker(h) is a congruence on X.

56

From theorem (7) we obtain the quotient universal algebra [X] of type derived

from X and ker(h). Furthermore from proposition (20) the homomorphic image

h(X) is a sub-algebra of Y and in particular, it is also a universal algebra of

type . As it turns out, the algebras [X] and h(X) are isomorphic. This is of

course hardly surprising for anyone who has done a little bit of algebra before.

Theorem 8 Let h : X Y be a homomorphism between two universal algebras

X and Y of type . Let [X] be the quotient universal algebra of type derived

from X and the congruence ker(h). Let h

x X , h

([x]) = h(x)

Then h

Proof

Before we start, we should point out that the map h

dened by the formula h

choice of x [x]. Indeed, if x

[x], then x

x which is (x

, x) ker(h)

and consequently h(x

is a bijective

morphism. First we show that it is bijective. It is clearly surjective, so we

shall prove that h

is injective. Let x, x

X such that h

([x]) = h

([x

]). We

need to show that [x] = [x

as h(x) = h(x

) ker(h) or x x

. Hence we

obtain [x] = [x

is a morphism. So

let f and x

[X]

(f)

. We need to show that h

f(x

) = f h

(x

).

However, for all i (f) we have x

i

X such that

x

(i) = [x

i

]. Let x X

(f)

be dened by x(i) = x

i

for all i (f). Then we

have x

(i) = [x

i

] = [x(i)] = [x](i) and consequently x

= [x]. Hence:

h

f(x

) = h

f([x])

theorem (7) = h

([f(x)])

= h(f(x))

h is a morphism = f h(x)

A: to be proved = f h

([x])

= f h

(x

)

So it remains to show that h(x) = h

h(x)(i) = h(x(i)) = h

([x(i)]) = h

([x](i)) = h

([x])(i)

Note that this proof works very well when (f) = 0.

As an application of the rst isomorphism theorem (8), we now present a

result which we are unlikely to use again but which may be viewed as a vin-

dication of the eort we have put into the analysis of free universal algebras.

In theorem (1) of page 20, given an arbitrary set X

0

we showed the existence

of a free universal algebra X of type with free generator X

0

. In theorem (7)

57

of page 55, given a congruence on X we showed how to construct the quo-

tient universal algebra [X] of type . The following theorem shows that the

construction mechanism X

0

X [X] is as general as it gets: every universal

algebra of type is in fact some quotient universal algebra [X] derived from a

free universal algebra X and a congruence on X. Consequently, if we ever

wish to construct a universal algebra of a certain type and with certain proper-

ties, there is absolutely no loss in generality in rst considering a free universal

algebra, and subsequently nding the appropriate congruence on it so as to t

the required properties.

For instance, suppose we have a free universal algebra X with a binary

operator . We would like this operator to be commutative. We should only

make sure our congruence on X contains the set:

A = (x y, y x) : x, y X

If this is the case, the corresponding operator on the quotient universal algebra

[X] will indeed be commutative. For if x

, y

x

= [x] and y

x

of some free universal algebra X of type , relative to some congruence on X.

Proof

Let Y be a universal algebra of type and X

0

= Y . From theorem (1) of

page 20 there exists a free universal algebra X of type with free generator X

0

.

In particular X

0

X. Consider the identity mapping j : X

0

Y . Since X

0

is a free generator of X, there exists a unique morphism g : X Y such that

g

|X0

= j. Let = ker(g) be the kernel of g. From proposition (34) we know

that is a congruence on X. We shall complete the proof of this theorem by

showing the corresponding quotient universal algebra [X] is isomorphic to Y .

From the rst isomorphism theorem (8) we know that the map g

: [X] g(X)

dened by g

g(X) = Y , i.e. that g is a surjective morphism. So let y Y . We need to show

the existence of x X such that g(x) = y. But Y = X

0

X and:

g(y) = g

|X0

(y) = j(y) = y

1.4.1 Sub-Formula of Formula in Free Universal Algebra

In this section we formalize the notion of sub-formula in a free universal algebra.

Specically, given a free universal algebra X of type , we dene a relation _

58

on X such that _ expresses the fact that the formula is a sub-formula

of the formula . For example, when studying our free universal algebra of

rst order logic in a later part of this document, we shall want to say that the

formula = x(x y) is a sub-formula of the formula = yx(x y). This

notion will prove important when dening substitutions of variables which are

valid for a given formula . Loosely speaking, a substitution is valid for if

no free variable gets caught under the scope of a quantier. Making this idea

precise requires the notion of sub-formula. In order to add further motivation to

this topic, we shall point out that valid substitutions are themselves a key notion

when dening specialization axioms, which are axioms of the form x [y/x]

where the substitution [y/x] of the variable y in place of x is valid for . It is

very important for us to properly dene the idea of valid substitutions: if we

allow too much freedom in which a variable y can be substituted for x, our

axioms may prove too much including statements which are not true. On the

other hand, if we are too restrictive our axioms may prove too little and Godels

completeness theorem may fail to be true.

The notion of sub-formula can easily be dened on any free universal algebra

and not just in the context of rst order logic. So we shall write x _ y rather

than _ and carry out the analysis in its general setting. Given a free

universal algebra X of type with free generator X

0

X, for all y X we

shall dene the set Sub (y) of all sub-formulas of y, and simply dene x _ y as

equivalent to x Sub (y). The key idea to remember is that given f and

x X

(f)

, the sub-formulas of f(x) are f(x) itself, as well as the sub-formulas

of every x(i), for all i (f). As shall see, the relation _ is a partial order on

X, i.e. a relation which is reexive, anti-symmetric and transitive on X. Recall

that _ is said to be anti-symmetric if and only if for all x, y X we have:

(x _ y) (y _ x) (x = y)

Denition 40 Let X be a free universal algebra of type with free generator

X

0

X. We call sub-formula mapping the map Sub : X T(X) dened by:

(i) x X

0

Sub (x) = x

(ii) x X

(f)

Sub(f(x)) = f(x)

_

i(f)

Sub (x(i))

where (ii) holds for all f . Given x, y X, we say that x is a sub-formula

of y, denoted x _ y, if and only if x Sub (y).

Proposition 41 The structural recursion of denition (40) is legitimate.

Proof

We need to show the existence of a unique map Sub : X T(X) such that (i)

and (ii) of denition (40) hold. We do so by applying theorem (5) of page 47

59

with A = T(X) and g

0

: X A dened by g

0

(x) = x for all x X

0

. Given

f we take h(f) : A

(f)

X

(f)

A dened by:

h(f)(a, x) = f(x)

_

i(f)

a(i)

From theorem (5) of page 47 we obtain the existence and uniqueness of a map

g : X A which satises g(x) = x for all x X

0

, and for f , x X

(f)

:

g(f(x)) = h(f)(g(x), x) = f(x)

_

i(f)

g(x)(i) = f(x)

_

i(f)

g(x(i))

which is exactly (ii) of denition (40) with g = Sub .

1.4.2 The Sub-Formula Partial Order

The objective of this section is to show that _ is a partial order.

Proposition 42 Let X be a free universal algebra of type with free generator

X

0

X. The relation _ on X is reexive.

Proof

We need to show that x Sub(x) for all x X. We shall prove this result by

structural induction using theorem (3) of page 32. If x X

0

then Sub (x) = x

and the property x Sub(x) is clear. Suppose f and x X

(f)

are such

that x(i) Sub (x(i)) for all i (f). We need to show the property is also

true for f(x), i.e that f(x) Sub (f(x)). This follows immediately from:

Sub(f(x)) = f(x)

_

i(f)

Sub (x(i))

X

0

X. For all x, y X we have the equivalence:

x _ y Sub (x) Sub (y)

In particular, the relation _ on X is transitive.

Proof

First we show the implication . Let x, y X such that Sub(x) Sub (y).

From proposition (42) we have x Sub(x) and consequently x Sub (y) which

shows that x _ y. We now show the reverse implication . We shall do so by

considering the property P(y) dened for y X as:

x X , [ x Sub(y) Sub (x) Sub(y) ]

60

We shall prove P(y) for all y X by structural induction using theorem (3) of

page 32. First we assume that y X

0

. Then Sub(y) = y and the condition

x Sub(y) implies that x = y. In particular x X

0

and Sub(x) = x which

shows that the inclusion Sub (x) Sub (y) is indeed true. So the property P(y)

holds for y X

0

. Let f and y X

(f)

be such that P(y(i)) holds for

all i (f). We need to show that the property P(f(y)) is also true. So let

x X be such that x Sub (f(y)). We need to show that Sub(x) Sub (f(y)).

However, from denition (40) we have:

Sub (f(y)) = f(y)

_

i(f)

Sub (y(i)) (1.18)

Hence the condition x Sub(f(y)) implies that x = f(y) or x Sub (y(i))

for some i (f). Suppose rst that x = f(y). Then Sub (x) Sub (f(y))

follows immediately. Suppose now that x Sub (y(i)) for some i (f). Hav-

ing assumed the property P(y(i)) is true, it follows that Sub(x) Sub (y(i))

and nally from equation (1.18) we conclude that Sub (x) Sub (f(y)). This

completes our induction argument and the proof that P(y) holds for all y X.

Proving the relation _ is reexive and transitive worked pretty well with

structural induction arguments. The proof that _ is anti-symmetric will also

rely on induction but will be seen to be more dicult. Given f and

x X

(f)

a key step in the argument will be to claim that f(x) cannot be a

sub-formula of any x(i) for all i (f). This seems pretty obvious but requires

some care. We shall achieve this by using the order mapping : X N as per

denition (16) of page 24. Recall that given x X the order (x) oers some

measure of complexity for the formula x. The next proposition shows that if x

is a sub-formula of y, then it has no greater complexity than y. Since we already

know from proposition (17) that f(x) has greater complexity than every x(i),

we shall easily conclude that f(x) cannot be a sub-formula of x(i).

Proposition 44 Let X be a universal algebra of type with free generator

X

0

X. Then for all x, y X we have:

x _ y (x) (y)

where : X N is the order mapping of denition (16).

Proof

Given y X consider the property P(y) dened by:

x X , [ x Sub(y) (x) (y) ]

We shall complete the proof of this proposition by showing P(y) is true for all

y X, which we shall do by a structural induction argument using theorem (3)

of page 32. First we assume that y X

0

. Then Sub(y) = y and the condition

61

x Sub (y) implies that x = y and in particular (x) (y). So the property

P(y) is true whenever y X

0

. Next we assume that f and y X

(f)

are

such that P(y(i)) is true for all i (f). We need to show the property P(f(y))

is also true. So let x X be such that x Sub(f(y)). We need to show that

(x) (f(y)). From denition (40) we have:

Sub (f(y)) = f(y)

_

i(f)

Sub (y(i))

Hence the condition x Sub (f(y)) implies that x = f(y) or x Sub (y(i)) for

some i (f). Suppose rst that x = f(y). Then (x) (f(y)) follows

immediately. Suppose now that x Sub (y(i)) for some i (f). Having

assumed the property P(y(i)) is true, it follows that (x) (y(i)). Using

proposition (16) we obtain:

(x) (y(i)) < 1 + max(y(i)) : i (f) = (f(y))

So we have proved that (x) < (f(y)) and in particular (x) (f(y)). This

completes our induction argument and the proof that P(y) holds for all y X.

X

0

X. The relation _ on X is anti-symmetric.

Proof

Given x, y X we have to show that if x _ y and y _ x then x = y. Given

y X consider the property P(y) dened by:

x X , [(x _ y) (y _ x) (x = y) ]

We shall complete the proof of this proposition by showing P(y) is true for all

y X, which we shall do by a structural induction argument using theorem (3)

of page 32. First we assume that y X

0

. We need to show that P(y) is true.

So let x X be such that x _ y and y _ x. In particular we have x _ y, i.e.

x Sub(y). From y X

0

we obtain Sub (y) = y and we conclude that x = y

as requested. So P(y) is indeed true for all y X

0

. Next we assume that f

and y X

(f)

are such that P(y(i)) is true for all i (f). We need to show

that P(f(y)) is also true. So let x X be such that x _ f(y) and f(y) _ x.

We need to show that x = f(y). Suppose to the contrary that x ,= f(y). We

shall arrive at a contradiction. From x _ f(y) we obtain x Sub(f(y)) and

from denition (40) we have:

Sub (f(y)) = f(y)

_

i(f)

Sub (y(i)) (1.19)

Having assumed that x ,= f(y) it follows that x Sub (y(i)) for some i (f).

Hence we have proved that x _ y(i) for some i (f). However, it is clear from

62

equation (1.19) that Sub (y(i)) Sub(f(y)) and it follows from proposition (43)

that y(i) _ f(y). From the assumption f(y) _ x, we obtain y(i) _ x by

transitivity. Hence we see that x X is an element such that x _ y(i) and

y(i) _ x. From our induction hypothesis, we know that P(y(i)) is true. From

x _ y(i) and y(i) _ x we therefore obtain x = y(i). In particular, using

proposition (17) of page 24 we have:

(x) = (y(i)) < 1 + max(y(i)) : i (f) = (f(y))

So we have proved that (x) < (f(y)). However, from f(y) _ x and proposi-

tion (44) we obtain (f(y)) (x). This is our desired contradiction.

Proposition 46 Let X be a free universal algebra of type with free generator

X

0

X. The relation _ on X is a partial order.

Proof

The relation _ is reexive, anti-symmetric and transitive as can be seen from

propositions (42), (45) and (43) respectively. It is therefore a partial order.

1.4.3 Increasing Map on Free Universal Algebra

Recall that a pre-ordered set is an ordered pair (A, ) where A is a set and is

a preorder on A, namely a binary relation on A which is reexive and transitive.

In the following chapters, we shall encounter many cases of maps v : X A

where X is a free universal algebra and A is pre-ordered set. For example, if

X = P(V ) is the free universal algebra of rst order logic of denition (52)

and A = T(V ) is the power set of V (the set of variables), we shall encounter

the maps Var : X A and Bnd : X A which respectively return the set

of variables and bound variables of a formula X. Another example is

X = (V ) of denition (234), i.e. the free universal algebra of proofs on P(V )

for which we shall have a map Hyp : X A where A = T(P(V )) returning the

set of all hypothesis of a proof X. We shall also have a map Var : (V ) A

where A = T(V ) returning the set of variables being used in a proof X. All

these cases are examples of maps v : X A which are increasing in the sense

that v(x) v(y) whenever x is a sub-formula of y i.e. x _ y. For example if

is a sub-formula of then Var() Var(), or if is a sub-proof of then

Hyp() Hyp (). The following proposition allows us to establish this type of

result once and for all with the right level of abstraction.

Proposition 47 Let X be a free universal algebra of type with free generator

X

0

X. Let (A, ) be a pre-ordered set and v : X A be a map such that:

i (f) , v(x(i)) v(f(x))

for all f and x X

(f)

. Then for all x, y X we have the implication:

x _ y v(x) v(y)

63

Proof

Given y X we need to show the property: x X [ x _ y v(x) v(y) ].

We shall do so by structural induction using theorem (3) of page 32. First we

assume that y X

0

. We need to show the property is true for y. So let x _ y be

a sub-formula of y. We need to show that v(x) v(y). However, since y X

0

we have Sub(y) = y. So from x _ y we obtain x Sub(y) and consequently

x = y. So v(x) v(y) follows from the reexivity of the preorder . Next we

assume that f and y X

(f)

is such that y(i) satises our property for

all i (f). We need to show that same is true of f(y). So let x _ f(y) be a

sub-formula of f(y). We need to show that v(x) v(f(y)). However we have:

x Sub (f(y)) = f(y)

_

i(f)

Sub(y(i))

So we shall distinguish two cases: rst we assume that x = f(y). Then the

inequality v(x) v(f(y)) follows from the reexivity of . Next we assume

that x Sub(y(i)) for some i (f). Then we have x _ y(i) and having as-

sumed y(i) satises our induction property, we obtain v(x) v(y(i)). However,

by assumption we have v(y(i)) v(f(y)) and v(x) v(f(y)) follows from the

transitivity of the preorder on A. This completes our induction argument.

1.4.4 Structural Substitution between Free Algebras

If V and W are sets and : V W is a map, we shall see from denition (53)

and denition (272) that it is possible to dene corresponding : P(V ) P(W)

or : (V ) (W) which are substitutions of variable inside formulas or

inside proofs. These maps are not morphisms of free universal algebras, if only

because P(V ) and P(W) do not have the same type. However, these maps are

pretty close to being morphism, and we shall now study some of their common

properties under the possible abstraction of structural substitution. Recall that

given a type of universal algebra and f , the arity of f is denoted (f).

Denition 48 Let and be two types of universal algebra. We say that a

map q : is arity preserving, if and only if for all f we have:

q(f) = (f)

In other words the arity of the operator q(f) is the same as that of f .

Recall that the which appears on the right-hand-side of (ii) in deni-

tion (49) below refers to the map : X

(f)

Y

(f)

dened by (x)(i) = (x(i))

for all i (f). It follows that the expression q(f)((x)) is always meaningful

since q : is arity preserving and (f) is precisely the arity of q(f).

Denition 49 Let X, Y be free universal algebras of type , and with free

generators X

0

, Y

0

respectively. A map : X Y is a structural substitution if

64

and only if there exists an arity preserving map q : such that:

(i) x X

0

(x) Y

0

(ii) x X

(f)

(f(x)) = q(f)((x))

where (ii) holds for all f .

One of the motivations to consider structural substitutions is to prove the

following proposition in a general setting. If : X Y is a structural substi-

tution between two free universal algebras, then given x, y X we have:

y _ x (y) _ (x)

In other words, if y is a sub-formula of x then (y) is also a sub-formula of (x).

This property can be summarized with the inclusion (Sub (x)) Sub ((x))

for all x X. As it turns out, the reverse inclusion is also true:

Proposition 50 Let X, Y be free universal algebras and : X Y be a struc-

tural substitution. Then for all x X we have the equality:

Sub ((x)) = (Sub (x))

i.e. the sub-formulas of (x) are the images of the sub-formulas of x by .

Proof

Given x X we need to show that Sub ((x)) = (Sub (x)). We shall do so

with a structural induction argument, using theorem (3) of page 32. First we

assume that x X

0

. Since : X Y is structural we have (x) Y

0

and so:

Sub((x)) = (x) = (x) = (Sub (x))

So let f and x X

(f)

be such that the equality is true for all x(i) with

i (f). We need to show the equality is also true for f(x). Since : X Y

is a structural substitution, let q : be an arity preserving map for which

(ii) of denition (49) holds. Then we have the equalities:

Sub((f(x))) = Sub ( q(f)((x)) )

def. (40) = q(f)((x))

_

i(q(f))

Sub ( (x)(i) )

q arity preserving = (f(x))

_

i(f)

Sub ( (x(i)) )

induction = (f(x))

_

i(f)

( Sub (x(i)) )

= ( f(x)

_

i(f)

Sub (x(i)) )

def. (40) = ( Sub (f(x)) )

65

Chapter 2

The Free Universal Algebra

of First Order Logic

2.1 Formula of First Order Logic

2.1.1 Preliminaries

This work is an attempt to provide an algebraization of rst order logic with

terms and without equality. Due to personal ignorance, we are not in a position

to say much of the history of this problem, or the existing literature. We shall

nonetheless endeavor to give here an honest account of our little understanding.

Any specialist who believes this account can be improved in any way is welcome

to contact the author. The idea of turning rst order logic into algebra is not

new. Following wikipedia, it appears Alfred Tarski initially worked on the alge-

braization of rst order logic without terms and with equality, which led to the

emergence of cylindric algebras. At a later stage, Paul Halmos developed a ver-

sion without equality, which led to polyadic algebras. There is also a categorical

approach initially due to William Lawvere, leading to functorial semantics. The

most recent treatment of algebraization of rst order logic without terms seems

to be the work of Ildiko Sain in [52]. There is also the categorical work of George

Voutsadakis, for example in [64] following a recent trend of abstract algebraic

logic which seems to have been initiated by W.J. Blok and D. Pigozzi [6]. A new

book [1] from Hajnal Andreka, Istv an Nemeti and Ildik o Sain on algebraic logic

is about to be released. There are a few older monographs on cylindric algebras

such as [2] and Paul Halmos [28] on polyadic algebras. It is our understanding

that most of the work done so far has focussed on rst order logic without terms,

an exception being the paper from Janis Cirulis [11], of which we are hoping

to get a copy soon. The algebraization of rst order logic with terms seems to

have received far less attention than its counterpart without terms, as it fails to

fall under the scope of currently known techniques of abstract algebraic logic.

Before we complete our history tour, we would like to mention the books of

66

Donald W. Barnes and John M. Mack [4] and P.T. Johnstone [32] which are

the initial motivation for the present work. For a mathematician not trained

in formal logic, these books have something magical. It is hard for us to say if

they succeeded in presenting their subject. Many of the proofs are very short

and require a fair amount of maturity. This document is an attempt to follow

their trail while making the material accessible to less sophisticated readers. We

shall now explain our purpose in more details.

Our aim is to study mathematical statements as mathematical objects of

their own. We believe universal algebras are likely to be the right tool for

this study. We would like to represent the set of all possible mathematical

statements as a universal algebra of some type. Without knowing much of the

details at this stage, we shall call this universal algebra the universal algebra of

rst order logic. The elements of this universal algebra will be called formulas

of rst order logic. It may appear as somewhat naive to refer to the universal

algebra of rst order logic as if we had some form of uniqueness property. There

are after all many logical systems which may be classied as rst order, and

many more algebras arising from these systems. However, we are looking for

an algebra which is minimal in some sense, and encompasses the language of

ZF on which most of modern mathematics can be built. When looking at a

given mathematical statement, we are often casually told that it could be (at

least in principle) coded into the language of ZF. Oh really? We would love

to see that. There are so many issues surrounding this question, it does not

seem obvious at all. One cannot simply dene predicates of ever increasing

complexity and hope to blindly substitutes these denitions within formulas.

Most mathematical objects are not uniquely dened as sets, but are complex

structures which are known up to isomorphism. The list of diculties is endless.

And there is of course category theory. Granted category theory will never t

into the language of ZF, so we shall need another algebra for that. But who

knows? it may be that the universal algebra of rst order logic will be applicable

to category theory: once we can formally dene a predicate of a single variable,

we can formally dene a class as a proper mathematical object and dwell into

the wonders of meta-mathematics without the intuition and the hand waving.

So much for nding the names. The real challenge is to determine the

appropriate denitions. We saw in theorem (9) of page 58, that there was

no loss of generality in viewing our universal algebra as a quotient of a free

universal algebra, modulo the right congruence. One possible way to dene the

universal algebra of rst order logic is therefore to provide specic answers to

the following questions: First, a free generator X

0

needs to be chosen. We then

need to agree on a specic type of universal algebra in order to derive a free

universal algebra X of type with free generator X

0

. Finally, a decision needs

to be made on what the appropriate congruence on X should be.

These we believe are the right questions. For those already familiar with

elements of formal logic, we may outline now a possible answer. Having chosen

a formal language with a deductive system on it, we can consider the relation

dened by if and only if the formulas and are both provable

with respect to this deductive system. This choice of particular congruence gives

67

rise to a Lindenbaum-Tarski algebra. So it is possible our universal algebra of

rst order logic is just a particular case of Lindenbaum-Tarski (and it would

probably have been sensible to call it that way). However at this point of the

document, we do not know whether the provability of is decidable.

We may have heard a few things about the undecidability of rst order logic

and suspect that ( ) is in fact undecidable. If this was the case, a

computer would not be able to tell in general whether the equivalence

holds. This would be highly unsatisfactory. Whatever congruence we eventually

choose, surely we should want it to be decidable. The universal algebra of rst

order logic is about mathematical statements, not theorems. Those statements

which happen to have the same meaning should be regarded as identical, and a

computer program should be able to establish this identity. Those mathematical

statements which happen to be mathematically equivalent should be dealt with

by proof theory, model theory and set theory.

2.1.2 The Free Universal Algebra of First Order Logic

In this section, we shall limit our investigation to the free generator X

0

and

type of universal algebra , postponing the issue of congruence to later parts

of this document. So we are looking to dene the free universal algebra of rst

order logic. First we shall deal with the free generator X

0

. The elements of

X

0

should represent the most elementary mathematical statements. Things like

(x y) or (x = y) are possible candidates for membership to X

0

. We could also

have constant symbols and regard (0 y) or (x = ) as elementary statements.

More generally, statements such as R[x, y] or even S[s, 0, u, , w] could be viewed

as elementary statements, where R and S are so-called predicate symbols. We

may even consider R[f(1, y), z] where f is a so-called function symbol. As far

as we are concerned, the universal algebra of rst order logic should be the

mathematical language of the lowest possible level. In computing terms, it

should be akin to assembly language. There should be no constant, no function

symbol and no predicate symbol beyond the customary . Even the equality

= should be banned. The universal algebra of rst order logic should contain

the bare minimum required to express every standard mathematical statement.

This bare minimum we believe can be based simply on elementary propositions

of the form (x y) where x and y belong to a set of variable V . So our free

generator X

0

should therefore be reduced to:

X

0

= (x y) : x, y V

Turning now to the type of universal algebra , we believe the minimal set

of operations (also known as connectives) required to express every standard

mathematical statement consists in the contradiction constant , which is an

operator of arity 0, the implication operator which is a binary operator, and

for all x V , the quantication operator x which is a unary operator. So the

free universal algebra of rst order logic should consist in elements of the form:

, (x y) , xy (x y) , z[(z x) (z y)] , etc.

68

At this point in time, we have very little to justify this choice, beyond its

simplicity. Clearly, there would be no point in dening and studying a free

universal algebra of rst order logic which does not fulll its role. At some

stage, we will need to consider higher level formal languages which are actually

usable by human beings to express interesting mathematics, and show that high

level statements can eectively be compiled into the low level. This we believe

is the only way to vindicate our choice. For now, we hope simply to reassure

the reader that our conception of bare minimum is sensible: for example, the

negation operator could be compiled as = ( ), the disjunction and

conjunction operators as = and = () respectively,

the equivalence operator as ( ) = [( ) ( )] and nally the

equality predicate as:

(x = y) = z[(z x) (z y)] z[(x z) (y z)]

This does not tell us how to introduce constant symbols and function symbols,

and we are still a very long way to ever compile a statement such as:

1

2

_

+

e

x

2

/2

dx = 1

We hope to address some of these questions in later parts of this document. For

now, we shall rest on the belief that our free universal algebra of rst order logic

is the right tool to consider and study.

But assuming our faith is justied, assuming that interesting mathematical

statements can eectively be compiled as formulas of rst order logic, one im-

portant question still remains: why should we care about a low level algebra

whose mathematical statements are so remote from day to day mathematics?

Why not consider a high level language directly? The answer is twofold: From a

purely mathematical point of view it is a lot easier to deal with a simple algebra.

For instance, if we are looking to prove anything by structural induction, we only

need to consider (x y), , and x for all x V which would not be the case

with a more complex algebra. Furthermore from a computing perspective, we

are unlikely to write sensible software unless we start from the very simple and

move on to the high level. A computer chip typically understands a very limited

set of instructions. High level languages are typically compiled into a sequence

of these elementary tasks. Without thinking very hard on this, it is a natural

thing to believe that a similar approach should be used for meta-mathematics.

At the end of the day, if it is indeed the case that deep mathematical statements

can be compiled as formulas of rst order logic, focussing on these formulas will

surely prove very useful.

Denition 51 Let V be a set. We call First Order Logic Type associated with

V , the type of universal algebra dened by:

= , x : x V

where = ((0, 0), 0), = ((1, 0), 2) and x = ((2, x), 1) given x V .

69

There is no particular conditions imposed on the set V , which could be

empty, nite, innite, countable or uncountable. The set of denition (51) is

a set of ordered pairs which is functional. It is therefore a map with domain

dom() = (0, 0), (1, 0) (2, x) : x V and range rng() = 0, 1, 2. Since

rng() N, by virtue of denition (1) is indeed a type of universal algebra.

With our customary abuse of notation described in page 6, we have () = 0,

() = 2 and (x) = 1 for all x V . It follows that is understood to be

an operator of arity 0, while is binary and x is unary.

Denition 52 Let V be a set with rst order logic type . We call Free Uni-

versal Algebra of First Order Logic associated with V , the free universal algebra

P(V ) of type with free generator P

0

(V ) = V V .

The free universal algebra P(V ) exists by virtue of theorem (1) of page 20. It

is also unique up to isomorphism and we have P

0

(V ) P(V ). For all x, y V

the ordered pair (x, y) will be denoted (x y). It follows that the free generator

P

0

(V ) of P(V ) is exactly what we had promised:

P

0

(V ) = (x y) : x, y V

Furthermore, we have the operators : P(V )

0

P(V ), : P(V )

2

P(V )

and x : P(V )

1

P(V ). We shall refer to the constant (0) simply as .

Given , P(V ), we shall write instead of (, ). Given x V and

P(V ), we shall write x instead of x().

2.1.3 Variable Substitution in Formula

Let V be a set and x, y, z V . Then = x(x z) and = y(y z) are

elements of P(V ). In the case when x ,= z and y ,= z most of us would regard

and as being the same mathematical statement. Yet from theorem (2) of

page 21, and are distinct elements of P(V ) when x ,= y. We are still a

long way to have a clear opinion on what an appropriate congruence on P(V )

should be. Yet we feel that whatever our choice of congruence , we should

have . So we need to formalize the idea that replacing the variable x in

= x(x z) by the variable y does not change the meaning of the formula .

The rst step is for us to formally dene the notion of variable substitution.

Variable substitutions is a key idea in every textbook of mathematical logic.

However, the usual treatment attempts to dene substitutions where variables

are replaced by terms. Since quantication can only occur with respect to a

variable, only free occurrences of variables are substituted with terms, leaving

bound occurrences unchanged. This creates a major drawback: if : V W is

a map and P(V ), we certainly want the substituted formula () to be an

element of P(W), which would be impossible to achieve if we were to leave bound

occurrences of variables unchanged. So contrary to standard practice, we shall

dene a notion of variable substitution where every variable is carried over by

: V W. Dening : P(V ) P(W) from the map : V W we believe is

very fruitful. This type of substitution will not be capture-avoiding in general,

70

but this is no dierent from the general treatment where we often require a

term t to be substitutable for a variable x in , or to be free for x in . Note

that our formal language P(V ) has no term beyond the variables themselves. So

focussing on variables only for substitutions is no restriction of generality. In our

view, terms or constants should not exist in a low level mathematical statement.

The constant = 3.14159 . . . should be a low level predicate (x), and given a

predicate Q(x) the statement Q() obtained by substituting the variable x by

the ground term , should in fact be the statement x[(x) Q(x)] which is

syntactically a very dierent operation from a substitution of variable.

Denition 53 Let V and W be two sets and : V W be a map. We call

substitution mapping between P(V ) and P(W) associated with : V W the

map

P(V ) ,

() =

((x) (y)) if = (x y)

if =

(

1

)

(

2

) if =

1

2

(x)

(

1

) if = x

1

(2.1)

This is one of our rst denition by structural recursion. The principle of such

denition on a free universal algebra is justied by virtue of theorem (4) of

page 45. As this is one of our rst use of this theorem, we shall make sure its

application is done appropriately by checking all the relevant details.

Proposition 54 The structural recursion of denition (53) is legitimate.

Proof

We need to show the existence and uniqueness of the map

: P(V ) P(W)

satisfying equation (2.1). We shall do so by applying theorem (4) of page 45

to the free universal algebra P(V ) with free generator X

0

= P

0

(V ) and the set

A = P(W). First we dene g

0

: X

0

A by g

0

(x y) = ((x) (y)) for all

x, y V . Next, given f we need to dene an operator h(f) : A

(f)

A.

For all

1

,

2

A and for all x V , we set:

(i) h()(0) =

(ii) h()(

1

,

2

) =

1

2

(iii) h(x)(

1

) = (x)

1

Applying theorem (4) of page 45, there exists a unique map

: P(V ) A

such that

|X0

= g

0

and for all f and y P(V )

(f)

:

(f(y)) = h(f)(

(y)) (2.2)

In other words, there exists a unique map

x, y V we have

Taking f = and y = 0 in equation (2.2) we obtain:

() =

71

Taking f = and y = (

1

,

2

) P(V )

2

we obtain:

(

1

2

) = h()(

(

1

),

(

2

)) =

(

1

)

(

2

) (2.4)

Finally, taking f = x and y =

1

P(V )

1

given x V :

(x

1

) = h(x)(

(

1

)) = (x)

(

1

) (2.5)

Since equations (2.3), (2.4) and (2.5) are exactly as equation (2.1), we conclude

there is a unique map

Let U, V, W be sets while : U V and : V W are maps. From

denition (53) we obtain the substitution mappings

have a substitution mapping ( )

to ask is whether ( )

. The following

proposition shows that it is indeed the case. As a consequence, we shall be able

to simplify our notations by referring to the substitution mappings

and

( )

a substitution mapping. Whether the notation is understood to mean

or ( )

Proposition 55 Let U, V and W be sets. Let : U V and : V W

be maps. Let

mappings associated with and respectively. Then:

( )

where ()

Proof

We need to show that ( )

() =

do so by structural induction, using theorem (3) of page 32. Since P

0

(U) is a

generator of P(U), we show rst that the property is true on P

0

(U). So let

= (x y) P

0

(U), where x, y U. We have:

( )

() = ( ((x)) ((y)) ) =

( (x) (y) ) =

()

Next we check that the property is true for P(U):

( )

() = =

() =

()

Next we check that the property is true for =

1

2

, if it is true for

1

,

2

:

( )

() = ( )

(

1

) ( )

(

2

)

=

(

1

))

(

2

))

=

(

1

)

(

2

) )

=

(

1

2

))

=

()

72

Finally we check that the property is true for = x

1

, if it is true for

1

:

( )

() = ((x)) ( )

(

1

)

= ((x))

(

1

))

=

((x)

(

1

))

=

(x

1

))

=

()

by (x) = x for all x V , equation (2.1) of denition (53) becomes:

P(V ) , () =

(x y) if = (x y)

if =

(

1

) (

2

) if =

1

2

x(

1

) if = x

1

It seems pretty obvious that : P(V ) P(V ) is also the identity mapping, i.e.

that () = for all P(V ). Yet, formally speaking, there seems to be no

other way but to prove this once and for all. So we shall do so now:

Proposition 56 Let V be a set and i : V V be the identity mapping. Then,

the associated substitution mapping i : P(V ) P(V ) is also the identity.

Proof

We need to show that i() = for all P(V ). We shall do so by structural

induction, using theorem (3) of page 32. Since P

0

(V ) is a generator of P(V ),

we show rst that the property is true on P

0

(V ). So let = (x y) P

0

(V ):

i() = ( i(x) i(y) ) = (x y) =

The property is clearly true for P(V ) since i() = . Next we check that

the property is true for =

1

2

, if it is true for

1

,

2

P(V ):

i() = i(

1

) i(

2

) =

1

2

=

Finally we check that the property is true for = x

1

, if it is true for

1

:

i() = i(x)i(

1

) = x

1

=

Since P(V ) is a free universal algebra, every formula P(V ) has a well

dened set of sub-formulas Sub() as per denition (40) of page 59. If V and

W are sets and : V W is a map with associated substitution mapping

: P(V ) P(W), then given P(V ) and a sub-formula _ it seems

pretty obvious that the image () is also a sub-formula of (). In fact,

the converse is also true and the sub-formulas of () are simply the images

() by of the sub-formulas _ . This property stems from the fact that

: P(V ) P(W) is a structural substitution, as per denition (49).

73

Proposition 57 Let V, W be sets and : V W be a map. The associated

substitution : P(V ) P(W) is a structural substitution and for all P(V ) :

Sub(()) = (Sub ())

Proof

By virtue of proposition (50) it is sucient to prove that : P(V ) P(W)

is a structural substitution as per denition (49). Let (V ) and (W) denote

the rst order logic types associated with V and W respectively as per deni-

tion (51). Let q : (V ) (W) be the map dened by:

f (V ) , q(f) =

if f =

if f =

(x) if f = x

Then q is clearly arity preserving. In order to show that is a structural sub-

stitution, we simply need to check that properties (i) and (ii) of denition (49)

are met. First we start with property (i): so let P

0

(V ). Then = (x y)

for some x, y V and we need to show that () P

0

(W) which follows im-

mediately from () = (x) (y). So we now show property (ii). Given

f (V ), given P(V )

(f)

we need to show that (f()) = q(f)(()).

First we assume that f = . Then (f) = 0, = 0 and consequently:

(f()) = ((0))

(0) denoted = ()

def. (53) =

(0) denoted = (0)

: 0 0 = q()((0))

= q(f)(())

Next we assume that f =. Then (f) = 2 and given = (

0

,

1

) :

(f()) = (

0

1

)

def. (53) = (

0

) (

1

)

: P(V )

2

P(W)

2

= q()((

0

,

1

))

= q(f)(())

Finally we assume that f = x, x V . Then (f) = 1 and given = (

0

) :

(f()) = (x

0

)

def. (53) = (x)(

0

)

: P(V )

1

P(W)

1

= q(x)((

0

))

= q(f)(())

74

2.1.4 Variable Substitution and Congruence

Let V, W be sets and : V W be a map. From denition (53) we have a

substitution mapping : P(V ) P(W) which we still denote by virtue of

proposition (55). Suppose we have a congruence on P(V ) and a congruence on

P(W), both denoted for the purpose of this discussion. Given , P(V )

such that , it will often be useful for us to know whether the substitution

mapping preserves the equivalence of and , i.e. whether () ().

When this is the case, a very common strategy to go about the proof is to

consider a relation on P(V ) dened by if and only if () (),

and to argue that is in fact a congruence on P(V ). Once we know that is

a congruence on P(V ), a proof of () () is simply achieved by showing

an inclusion of the form R

0

where R

0

is a generator of the congruence

on P(V ), in the sense of denition (39). Indeed, such an inclusion implies that

from which we see that for all , P(V ) we have:

() ()

The following proposition conrms that is a congruence on P(V ).

Proposition 58 Let V and W be sets and : V W be a map. Let be an

arbitrary congruence on P(W) and let be the relation on P(V ) dened by:

() ()

for all , P(V ). Then is a congruence on P(V ).

Proof

Since the congruence on P(W) is an equivalence relation, is clearly reexive,

symmetric and transitive on P(V ). So we simply need to show that is a

congruent relation on P(V ). Since is reexive, we have () () and so

. Suppose

1

,

2

,

1

and

2

P(V ) are such that

1

1

and

2

2

.

Dene =

1

2

and =

1

2

. We need to show that , or

equivalently that () (). This follows from the fact that (

1

) (

1

),

(

2

) (

2

) and furthermore:

() = (

1

2

)

= (

1

) (

2

)

(

1

) (

2

)

= (

1

2

)

= ()

where the intermediate crucially depends on being a congruent relation

on P(W). We now suppose that

1

,

1

P(V ) are such that

1

1

. Let

x V and dene = x

1

and = x

1

. We need to show that , or

equivalently that () (). This follows from (

1

) (

1

) and:

() = (x

1

)

75

= (x) (

1

)

(x)(

1

)

= (x

1

)

= ()

where the intermediate crucially depends on being a congruent relation.

2.1.5 Variable of a Formula

Let V be a set and x, y V . Then = x(x y) is an element of P(V ). In

this section, we aim to formalize the idea that the set of variables of is x, y.

Hence we want to dene a map Var : P(V ) T(V ) such that Var() = x, y.

Denition 59 Let V be a set. The map Var : P(V ) T(V ) dened by the

following structural recursion is called variable mapping on P(V ):

P(V ) , Var() =

x, y if = (x y)

if =

Var(

1

) Var(

2

) if =

1

2

x Var(

1

) if = x

1

(2.6)

We say that x V is a variable of P(V ) if and only if x Var().

Proposition 60 The structural recursion of denition (59) is legitimate.

Proof

We need to show the existence and uniqueness of Var : P(V ) T(V ) satisfying

equation (2.6). This follows from an immediate application of theorem (4)

of page 45 to the free universal algebra P(V ) and the set A = T(V ), using

g

0

: P

0

(V ) A dened by g

0

(x y) = x, y for all x, y V , and the

operators h(f) : A

(f)

A (f ) dened for all V

1

, V

2

A and x V as:

(i) h()(0) =

(ii) h()(V

1

, V

2

) = V

1

V

2

(iii) h(x)(V

1

) = x V

1

Recall that a set A is said to be nite if and only if there exists a bijection

j : n A for some n N. The set A is said to be innite if it is not nite.

Note that if A and B are nite sets, then A B is also nite. We shall accept

this fact without proof in this document. The following proposition shows that

a formula of rst order predicate logic always has a nite number of variables.

Proposition 61 Let V be a set and P(V ). Then Var() is nite.

76

Proof

Given P(V ), we need to show that Var() is a nite set. We shall do so by

structural induction using theorem (3) of page 32. Since P

0

(V ) is a generator

of P(V ), we rst check that the property is true for P

0

(V ). So suppose

= (x y) for some x, y V . Since Var() = x, y, it is indeed a nite

set. Next we check that the property is true for P(V ), which is clear since

Var() = . Next we check that the property is true for =

1

2

, if it is true

for

1

,

2

P(V ). This follows immediately from Var() = Var(

1

) Var(

2

)

which is clearly a nite set if both Var(

1

) and Var(

2

) are nite. Finally we

check that the property is true for = x

1

if it is true for

1

. This is also

immediate from Var() = x Var(

1

) and the fact that Var(

1

) is nite.

In the following proposition we show that if _ is a sub-formula of ,

then the variables of are also variables of as we should expect:

Proposition 62 Let V be a set and , P(V ). Then we have:

_ Var() Var()

Proof

This is a simple application of proposition (47) to Var : X A where X = P(V )

and A = T(V ) where the preorder on A is the usual inclusion . We sim-

ply need to check that given

1

,

2

P(V ) and x V we have the inclusions

Var(

1

) Var(

1

2

), Var(

2

) Var(

1

2

) and Var(

1

) Var(x

1

)

which follow immediately from the recursive denition (59).

Let V, W be sets and : V W be a map with associated substitution

mapping : P(V ) P(W). Given P(V ), the variables of are the

elements of the set Var(). The following proposition allows us to determine

which are the variables of (). Specically:

Var(()) = (x) : x Var()

In other words the variables of () coincide with the range of the restriction

|Var()

. As discussed in page 19, this range is denoted (Var()).

Proposition 63 Let V and W be sets and : V W be a map. Then:

P(V ) , Var(()) = (Var())

where : P(V ) P(W) also denotes the associated substitution mapping.

Proof

Given P(V ), we need to show that Var(()) = (x) : x Var(). We

shall do so by structural induction using theorem (3) of page 32. Since P

0

(V )

is a generator of P(V ), we rst check that the property is true for P

0

(V ).

So suppose = (x y) P

0

(V ) for some x, y V . Then we have:

Var(()) = Var((x y))

77

= Var( (x) (y) )

= (x), (y)

= (u) : u x, y

= (u) : u Var(x y)

= (x) : x Var()

Next we check that the property is true for P(V ):

Var(()) = Var() = = (x) : x Var()

Next we check that the property is true for =

1

2

if it is true for

1

,

2

:

Var(()) = Var((

1

2

))

= Var((

1

) (

2

))

= Var((

1

)) Var((

2

))

= (x) : x Var(

1

) (x) : x Var(

2

)

= (x) : x Var(

1

) Var(

2

)

= (x) : x Var(

1

2

)

= (x) : x Var()

Finally we check that the property is true for = x

1

if it is true for

1

:

Var(()) = Var((x

1

))

= Var((x) (

1

))

= (x) Var((

1

))

= (x) (u) : u Var(

1

)

= (u) : u x Var(

1

)

= (u) : u Var(x

1

)

= (x) : x Var()

mapping : P(V ) P(W). It will soon be apparent that whether or not

: V W is injective plays a crucial role. For example if = xy(x y)

with x ,= y and (x) = u while (y) = v, we obtain () = uv(u v).

When is injective we have u ,= v and it is possible to argue in some sense

that the meaning of () is the same as that of . If is not an injective

map, then we no longer have the guarantee that u ,= v. In that case ()

may be equal to uu(u u), which is a dierent mathematical statement

from that of . Substitution mappings which arise from an injective map are

therefore important. However, there will be cases when we shall need to consider

a map : V W which is not injective. One common example is the map

78

[y/x] : V V dened in denition (65) which replaces a variable x by a variable

y, but leaves the variable y as it is, if already present in the formula. Since

[y/x](x) = y = [y/x](y), this map is not injective when x ,= y. This map is not

the same as the map [y : x] : V V dened in denition (66) which permutes the

two variables x and y. In contrast to [y/x] the permutation [y : x] is an injective

map. However if a formula P(V ) does not contain the variable y, it is easy

to believe that the associated substitution mappings [y/x] : P(V ) P(V ) and

[y : x] : P(V ) P(V ) have an identical eect on the formula , or in other

words that [y/x]() = [y : x](). If this is the case, many things can be said

about the formula [y/x]() despite the fact that [y/x] is not an injective map,

simply because of the equality [y/x]() = [y : x](). More generally, many things

can be said about a formula () whenever it coincides with a formula (),

and is an injective map. To achieve the equality () = () we only need

and to coincide on Var() as we shall now check in the following proposition.

Proposition 64 Let V and W be sets and , : V W be two maps. Then:

|Var()

=

|Var()

() = ()

for all P(V ), where , : P(V ) P(W) are also the substitution mappings.

Proof

Given P(V ), we need to show that if and coincide on Var() V ,

then () = (), and conversely that if () = (), then and coincide on

Var(). We shall do so by structural induction using theorem (3) of page 32.

Since P

0

(V ) is a generator of P(V ), we rst check that the equivalence is true for

P

0

(V ). So suppose = (x y) for some x, y V , and suppose furthermore

that

|Var()

=

|Var()

. Since Var() = x, y it follows that (x) = (x) and

(y) = (y). Hence, we have the following equalities:

() = (x y)

= ( (x) (y) )

= ( (x) (y) )

= (x y)

= ()

Conversely, if () = () then ( (x) (y) ) = ( (x) (y) ) and it follows

that (x) = (x) and (y) = (y). So and coincide on Var(). Next we

check that the equivalence is true for P(V ). Since Var() = , we always

have the equality

|Var()

= =

|Var()

. Furthermore () = = () is

also always true. So the equivalence does indeed hold. Next we check that the

equivalence is true for =

1

2

, if it is true for

1

,

2

P(V ). So we

assume that and coincide on Var(). We need to prove that () = ().

However, since Var() = Var(

1

) Var(

2

), and coincide both on Var(

1

)

and Var(

2

). Having assumed the property is true for

1

and

2

it follows that

79

(

1

) = (

1

) and (

2

) = (

2

). Hence:

() = (

1

2

)

= (

1

) (

2

)

= (

1

) (

2

)

= (

1

2

)

= ()

Conversely if () = () then we obtain (

1

) (

2

) = (

1

) (

2

).

Using theorem (2) of page 21 it follows that (

1

) = (

1

) and (

2

) = (

2

).

Having assumed the equivalence is true for

1

and

2

we conclude that and

coincide on Var(

1

) and Var(

2

) and consequently they coincide on Var().

Finally we check that the equivalence is true for = x

1

if it is true for

1

.

So we assume that and coincide on Var(). We need to show () = ().

However, since Var() = x Var(

1

), and coincide on Var(

1

) and we

have (x) = (x). Having assumed the property is true for

1

it follows that

(

1

) = (

1

), and consequently:

() = (x

1

)

= (x) (

1

)

= (x) (

1

)

= (x

1

)

= ()

Conversely if () = () then we obtain (x) (

1

) = (x) (

1

). Using

theorem (2) of page 21 it follows that (

1

) = (

1

) and (x) = (x). Having

assumed the equivalence is true for

1

we conclude that and coincide on

Var(

1

) and consequently they coincide on Var() = x Var(

1

).

2.1.6 Substitution of Single Variable

In denition (53) we introduced the notion of substitution mapping associated

with a given map. Our motivation was to formalize the idea that x(x z)

and y(y z) were identical mathematical statements when z , x, y, or

equivalently that replacing the variable x by the variable y in x(x z) did not

change the meaning of the formula. We are now in a position to formally dene

the substitution of a variable by another.

Denition 65 Let V be a set and x, y V . We call substitution of y in place

of x, the map [y/x] : V V dened by:

u V , [y/x](u) =

_

y if u = x

u if u ,= x

If we denote [y/x] : P(V ) P(V ) the associated substitution mapping, given

P(V ) the image [y/x]() is called with y in place of x and denoted [y/x].

80

The substitution of y in place of x has a fundamental aw: it is not an

injective map. In most introductory texts on mathematical logic, this is hardly

a problem as the set of variables V is always assumed to be innite. So if we wish

to argue that xy(x y) is the same mathematical statement as yx(y x),

we can always choose a variable z , x, y and prove the equivalence as:

xy(x y) zy(z y)

zx(z x)

yx(y x)

Unfortunately, this will not be possible in the case when V = x, y and x ,= y,

i.e. when V has only two elements. As we shall see in later parts of this

document, a congruence dened on P(V ) in terms of the substitution mapping

[y/x] will lead to the paradoxical situation of xy(x y) , yx(y x) when

V = x, y. To remedy this fact, we shall introduce the permutation mapping

[y : x] and use this as the basis of a new congruence which will turn out to be

simpler, equivalent to the traditional notion based on [y/x] for V innite, and

working equally well for V nite or innite.

Denition 66 Let V be a set and x, y V . We call permutation of x and y,

the map [y : x] : V V dened by:

u V , [y : x](u) =

y if u = x

x if u = y

u if u , x, y

If we denote [y : x] : P(V ) P(V ) the associated substitution mapping, given

P(V ) the image [y : x]() is denoted [y : x].

An immediate consequence of this denition is:

Proposition 67 Let V , W be sets and : V W be an injective map. Then

for all x, y V we have the following equality:

[y : x] = [(y): (x)]

Proof

Let u V . We shall distinguish three cases. First we assume u , x, y. Then:

[y : x](u) = (u) = [(y): (x)] (u)

where the last equality crucially depends on (u) , (x), (y) which itself

follows from the injectivity of and u , x, y. We now assume that u = x:

[y : x](u) = (y)

= [(y): (x)] (x)

= [(y): (x)] (u)

81

Finally, we assume that u = y and obtain:

[y : x](u) = (x)

= [(y): (x)] (y)

= [(y): (x)] (u)

In all cases we see that [y : x](u) = [(y): (x)] (u) as requested.

As already noted, the permutation [y : x] is injective while the substitution

[y/x] is not. However, there will be cases when the formulas [y/x] and [y : x]

coincide, given a formula . Knowing when the equality holds is important and

one simple sucient condition is y , Var(), as will be seen from the following:

Proposition 68 Let V be a set and U V . Then for all x, y V we have:

y , U [y/x]

|U

= [y : x]

|U

Proof

We assume that y , U. Let u U. We need to show that [y/x](u) = [y : x](u).

We shall distinguish three cases: rst we assume that u , x, y. Then the

equality is clear. Next we assume that u = x. Then the equality is also clear.

Finally we assume that u = y. In fact, this cannot occur since y , U and u U.

y , Var() [y/x] = [y : x]

Proof

We assume that y , Var(). We need to show that [y/x] = [y : x]. From

proposition (64) it is sucient to show that [y/x] and [y : x] coincide on Var(),

which follows immediately from y , Var() and proposition (68).

When replacing a variable x by a variable y in a formula , and subsequently

replacing the variable y by a variable z, we would expect the outcome to be the

same as replacing the variable x by the variable z directly. This is in fact the

case, provided y is not already a variable of . Assuming x, y and z are distinct

variables, a simple counterexample is = (x y).

Proposition 70 Let V be a set and x, y, z V . Then for all P(V ):

y , Var() [y/x][z/y] = [z/x]

Proof

Suppose y , Var(). We need to show that [z/y] [y/x]() = [z/x](). From

proposition (64) it is sucient to prove that [z/y] [y/x] and [z/x] coincide on

82

Var(). So let u Var(). We need to show that [z/y] [y/x](u) = [z/x](u).

Since y , Var() we have u ,= y. Suppose rst that u = x. Then we have:

[z/y] [y/x](u) = [z/y](y) = z = [z/x](u)

Suppose now that u ,= x. Then u , x, y and furthermore:

[z/y] [y/x](u) = [z/y](u) = u = [z/x](u)

In any case, we have proved that [z/y] [y/x](u) = [z/x](u).

When replacing a variable x by a variable y in a formula , we would expect

all occurrences of the variable x to have disappeared in [y/x]. In other words,

we would expect the variable x not to be a variable of the formula [y/x]. This

is indeed the case when x ,= y, a condition which may easily be forgotten.

Proposition 71 Let V be a set, x, y V with x ,= y. Then for all P(V ):

x , Var([y/x])

Proof

Suppose to the contrary that x Var([y/x]). From proposition (63), we have

Var([y/x]) = [y/x](Var()). So there exists u Var() such that x = [y/x](u).

If x ,= u we obtain [y/x](u) = u and consequently x = u. If x = u we obtain

[y/x](u) = y and consequently x = y. In both cases we obtain a contradiction.

2.1.7 Free Variable of a Formula

When = x(x y) the variables of are x and y i.e. Var() = x, y.

However, it is clear that a critical distinction exists between the role played

by the variables x and y. The situation is very similar to that of an integral

_

f(x, y) dx where x is nothing but a dummy variable. A dummy variable can

be replaced. In contrast, the variable y cannot be replaced without aecting

much of what is meant by the integral, or the formula . The variable y is called

a free variable of the formula . In this section, we formally dene the notion

of free variable and prove a few elementary properties which are related to it.

Denition 72 Let V be a set. The map Fr : P(V ) T(V ) dened by the

following structural recursion is called free variable mapping on P(V ):

P(V ) , Fr () =

x, y if = (x y)

if =

Fr (

1

) Fr (

2

) if =

1

2

Fr (

1

) x if = x

1

(2.7)

We say that x V is a free variable of P(V ) if and only if x Fr ().

Proposition 73 The structural recursion of denition (72) is legitimate.

83

Proof

We need to show the existence and uniqueness of Fr : P(V ) T(V ) satisfying

equation (2.7). This follows from an immediate application of theorem (4)

of page 45 to the free universal algebra P(V ) and the set A = T(V ), using

g

0

: P

0

(V ) A dened by g

0

(x y) = x, y for all x, y V , and the

operators h(f) : A

(f)

A (f ) dened for all V

1

, V

2

A and x V as:

(i) h()(0) =

(ii) h()(V

1

, V

2

) = V

1

V

2

(iii) h(x)(V

1

) = V

1

x

mapping : P(V ) P(W) and given a formula , we checked that the variables

of () were simply the elements of the direct image of Var() by , that is

Var(()) = (Var()). We now show two similar results for the free variables of

(), namely Fr (()) (Fr ()) in the general case and Fr (()) = (Fr ())

in the case when some restriction is imposed on the map , which we require

to be injective on the domain Var(). If = x(x y) and is not injective

on x, y, then it is possible to have () = x(x x) which would clearly

contradict Fr (()) = (Fr ()). However, the requirement that

|Var()

be

injective will be shown to be sucient but is not necessary. If = (x y) and

= [y/x], we have () = (y y) and the equality Fr (()) = (Fr ()) still

holds. We start with the general case leading to the weaker inclusion:

Proposition 74 Let V , W be sets and : V W be a map. Let P(V ) :

Fr (()) (Fr ())

where : P(V ) P(W) also denotes the associated substitution mapping.

Proof

Given P(V ), we need to show the inclusion Fr (()) (x) : x Fr ().

We shall do so by structural induction using theorem (3) of page 32. Since P

0

(V )

is a generator of P(V ), we rst check that the property is true for P

0

(V ).

So suppose = (x y) P

0

(V ) for some x, y V . Then, we have:

Fr (()) = Fr ((x y))

= Fr ( (x) (y) )

= (x), (y)

= (u) : u x, y

= (u) : u Fr (x y)

= (x) : x Fr ()

Having proved the equality, it follows in particular that the inclusion is true.

Next we check that the property is true for P(V ):

Fr (()) = Fr () = (x) : x Fr ()

84

Next we check that the property is true for =

1

2

if it is true for

1

,

2

:

Fr (()) = Fr ((

1

2

))

= Fr ((

1

) (

2

))

= Fr ((

1

)) Fr ((

2

))

(x) : x Fr (

1

) (x) : x Fr (

2

)

= (x) : x Fr (

1

) Fr (

2

)

= (x) : x Fr (

1

2

)

= (x) : x Fr ()

Finally we check that the property is true for = x

1

if it is true for

1

:

Fr (()) = Fr ((x

1

))

= Fr ((x) (

1

))

= Fr ((

1

)) (x)

(u) : u Fr (

1

) (x)

see below (u) : u Fr (

1

) x

= (u) : u Fr (x

1

)

= (x) : x Fr ()

We shall complete the proof by justifying the used inclusion:

(u) : u Fr (

1

) (x) (u) : u Fr (

1

) x

So suppose y = (u) for some u Fr (

1

) and y ,= (x). Then in particular

u ,= x, and if follows that y = (u) with u Fr (

1

) x.

We now prove a second version of proposition (74) which requires stronger

assumptions but leads to an equality rather than mere inclusion:

Proposition 75 Let V and W be sets and : V W be a map. Let P(V )

be such that

|Var()

is an injective map. Then, we have:

Fr (()) = (Fr ())

where : P(V ) P(W) also denotes the associated substitution mapping.

Proof

Given P(V ) such that

|Var()

is injective, we need to show the equality

Fr (()) = (x) : x Fr (). We shall do so by structural induction using

theorem (3) of page 32. Since P

0

(V ) is a generator of P(V ), we rst check that

the property is true for P

0

(V ). So suppose = (x y) P

0

(V ) for some

x, y V . Then, regardless of whether (x) = (y) or not, we have:

Fr (()) = Fr ((x y))

85

= Fr ( (x) (y) )

= (x), (y)

= (u) : u x, y

= (u) : u Fr (x y)

= (x) : x Fr ()

Next we check that the property is true for P(V ):

Fr (()) = Fr () = = (x) : x Fr ()

Next we check that the property is true for =

1

2

if it is true for

1

,

2

.

Note that if

|Var()

is injective, it follows from Var() = Var(

1

) Var(

2

)

that both

|Var(1)

and

|Var(2)

are injective, and consequently:

Fr (()) = Fr ((

1

2

))

= Fr ((

1

) (

2

))

= Fr ((

1

)) Fr ((

2

))

= (x) : x Fr (

1

) (x) : x Fr (

2

)

= (x) : x Fr (

1

) Fr (

2

)

= (x) : x Fr (

1

2

)

= (x) : x Fr ()

Finally we check that the property is true for = x

1

if it is true for

1

.

Note that if

|Var()

is injective, it follows from Var() = x Var(

1

) that

|Var(1)

is also injective, and consequently:

Fr (()) = Fr ((x

1

))

= Fr ((x) (

1

))

= Fr ((

1

)) (x)

= (u) : u Fr (

1

) (x)

see below = (u) : u Fr (

1

) x

= (u) : u Fr (x

1

)

= (x) : x Fr ()

We shall complete the proof by justifying the used equality:

(u) : u Fr (

1

) (x) = (u) : u Fr (

1

) x

First we show the inclusion . Suppose y = (u) for some u Fr (

1

) and

y ,= (x). Then in particular u ,= x, and if follows that y = (u) with

u Fr (

1

) x. We now show the reverse inclusion . Suppose y = (u) for

some u Fr (

1

) x. Then in particular y = (u) for some u Fr (

1

) and

we need to show that y ,= (x). Suppose to the contrary that y = (x). Then

86

(u) = (x) with u Fr (

1

) Var(

1

) Var() and x Var(). Having

assumed that

|Var()

is injective, we obtain u = x, contradicting the fact that

u Fr (

1

) x.

For an easy future reference, we now apply proposition (75) to the single vari-

able substitution mapping = [y/x]. We require that y , Var() to guarantee

the injectivity of the map

|Var()

.

Proposition 76 Let V be a set, P(V ), x, y V with y , Var(). Then:

Fr ([y/x]) =

_

Fr () x y if x Fr ()

Fr () if x , Fr ()

Proof

Let P(V ) such that y , Var(). Let : V V be the single variable

substitution map = [y/x] dened by (x) = y and (u) = u for u ,= x. From

the assumption y , Var() it follows that

|Var()

is an injective map. Indeed,

suppose (u) = (v) for some u, v Var(). We need to show that u = v,

which is clearly the case when u ,= x and v ,= x. So suppose u = x and v ,= x.

From (u) = (v) we obtain y = v contradicting the assumption y , Var().

So u = x and v ,= x is impossible and likewise u ,= x and v = x is an impossible

case. Of course the case u = x and v = x leads to u = v. So we have proved that

u = v in all possible cases and

|Var()

is indeed an injective map. From propo-

sition (75) it follows that Fr (()) = (Fr ()), i.e. Fr ([y/x]) = (Fr ()).

We shall complete the proof by showing that (Fr ()) = Fr () x y

when x Fr (), while (Fr ()) = Fr () when x , Fr (). First we assume

that x , Fr (). We need to show that (Fr ()) = Fr (). First we show the

inclusion . So suppose z = (u) for some u Fr (). We need to show that

z Fr (). Since u Fr (), it is sucient to prove that (u) = u. Hence it

is sucient to show that u ,= x which follows immediately from the assumption

x , Fr (). This completes our proof of . We now show the reverse inclusion

. So suppose z Fr (). We need to show that z = (u) for some u Fr ().

It is sucient to show that z = (z) or z ,= x which follows from z Fr ()

and x , Fr (). This completes our proof in the case when x , Fr (). We now

assume that x Fr (). We need to show that (Fr ()) = Fr () x y.

First we prove the inclusion . So suppose z = (u) for some u Fr (). We

assume that z ,= y and we need to show that z Fr () and z ,= x. First we

show that z ,= x. So suppose to the contrary that z = x. Then (u) = x. If

u ,= x we obtain (u) = u ,= x. Hence it follows that u = x and consequently

(u) = (x). So z = y contradicting the initial assumption. So we need to

show that z Fr (). Once again, since z = (u) and u Fr (), it is sucient

to prove that (u) = u or u ,= x. So suppose to the contrary that u = x.

Then z = (u) = (x) = y which contradicts the initial assumption z ,= y.

This completes our proof of . We now show the reverse inclusion . Having

assumed that x Fr (), we have y = (x) (Fr ()). So it remains to show

that (Fr ()) Fr () x. So suppose z Fr () and z ,= x. We need to

show that z = (u) for some u Fr () for which it is clearly sucient to prove

87

that z = (z) or z ,= x, which is true by assumption.

In proposition (58) we showed that the relation dened by if and

only if () () was a congruence on P(V ), given an arbitrary substitution

: V W and congruence on P(W). The objective was to obtain an easy

way to prove an implication of the form () () where is

another congruence on P(V ) for which there is a known generator R

0

. We are

now interested in an implication of the form Fr () = Fr (). One

natural step towards proving such an implication consists in showing that the

relation dened by if and only if Fr () = Fr (), is itself a congruence

on P(V ). This is the purpose of the next proposition.

Proposition 77 Let V be a set and be the relation on P(V ) dened by:

Fr () = Fr ()

for all , P(V ). Then is a congruence on P(V ).

Proof

The relation is clearly reexive, symmetric and transitive on P(V ). So we

simply need to show that is a congruent relation on P(V ). By reexivity, we

already have . Suppose

1

,

2

,

1

and

2

P(V ) are such that

1

1

and

2

2

. Dene =

1

2

and =

1

2

. We need to show that

, or equivalently that Fr () = Fr (). This follows from the fact that

Fr (

1

) = Fr (

1

), Fr (

2

) = Fr (

2

) and:

Fr () = Fr (

1

2

)

= Fr (

1

) Fr (

2

)

= Fr (

1

) Fr (

2

)

= Fr (

1

2

)

= Fr ()

We now suppose that

1

,

1

P(V ) are such that

1

1

. Let x V and

dene = x

1

and = x

1

. We need to show that , or equivalently

that Fr () = Fr (). This follows from the fact that Fr (

1

) = Fr (

1

) and:

Fr () = Fr (x

1

) = Fr (

1

) x = Fr (

1

) x = Fr (x

1

) = Fr ()

As already noted, the variable x in x(x y) or the integral

_

f(x, y) dx is

a dummy variable. In mathematical logic, dummy variables are called bound

variables. For the sake of completeness, we now formally dene the set of bound

variables of a formula , i.e. the set of all variables which appear in some

88

quantier x within the formula . It should be noted that a variable x can be

both a bound variable and a free variable, as is the case for the formula:

= x(x y) (x y)

Denition 78 Let V be a set. The map Bnd : P(V ) T(V ) dened by the

following structural recursion is called bound variable mapping on P(V ):

P(V ) , Bnd () =

if = (x y)

if =

Bnd(

1

) Bnd(

2

) if =

1

2

x Bnd (

1

) if = x

1

(2.8)

We say that x V is a bound variable of P(V ) if and only if x Bnd().

Proposition 79 The structural recursion of denition (78) is legitimate.

Proof

We need to show the existence and uniqueness of Bnd : P(V ) T(V ) satisfying

equation (2.8). This follows from an immediate application of theorem (4)

of page 45 to the free universal algebra P(V ) and the set A = T(V ), using

g

0

: P

0

(V ) A dened by g

0

(x y) = for all x, y V , and the operators

h(f) : A

(f)

A (f ) dened for all V

1

, V

2

A and x V as:

(i) h()(0) =

(ii) h()(V

1

, V

2

) = V

1

V

2

(iii) h(x)(V

1

) = x V

1

in general. The formula = (x y) x(x y) is an example where such

intersection is not empty. However:

Proposition 80 Let V be a set and P(V ). Then we have:

Var() = Fr () Bnd () (2.9)

Proof

We shall prove the inclusion (2.9) by structural induction using theorem (3) of

page 32. Since P

0

(V ) is a generator of P(V ), we rst check that the inclusion is

true for P

0

(V ). So suppose = (x y) P

0

(V ) for some x, y V . Then:

Var() = Var(x y)

= x, y

= x, y

= Fr (x y) Bnd(x y)

= Fr () Bnd()

89

Next we check that the property is true for P(V ):

Var() = = Fr () Bnd()

Next we check that the property is true for =

1

2

if it is true for

1

,

2

:

Var() = Var(

1

2

)

= Var(

1

) Var(

2

)

= Fr (

1

) Bnd(

1

) Fr (

2

) Bnd (

2

)

= Fr (

1

2

) Bnd (

1

2

)

= Fr () Bnd ()

Finally we check that the property is true for = x

1

if it is true for

1

:

Var() = Var(x

1

)

= x Var(

1

)

= x Fr (

1

) Bnd(

1

)

= x ( Fr (

1

) x ) Bnd(

1

)

= Fr (x

1

) Bnd(x

1

)

= Fr () Bnd()

then the bound variables of are also bound variables of . Note that this

property is not true of free variables since Fr (

1

) , Fr (x

1

)) in general.

Proposition 81 Let V be a set and , P(V ). Then we have:

_ Bnd () Bnd()

Proof

This is a simple application of proposition (47) to the map Bnd : X A

where X = P(V ) and A = T(V ) where the preorder on A is the usual in-

clusion . We simply need to check that given

1

,

2

P(V ) and x V we

have the inclusions Bnd(

1

) Bnd(

1

2

), Bnd (

2

) Bnd (

1

2

) and

Bnd(

1

) Bnd (x

1

) which follow immediately from denition (78).

Let V, W be sets and : V W be a map with associated substitution

mapping : P(V ) P(W). Given P(V ), the bound variables of are the

elements of the set Bnd(). The following proposition allows us to determine

which are the bound variables of (). Specically:

Bnd (()) = (x) : x Bnd()

In other words the bound variables of () coincide with the range of the re-

striction

|Bnd ()

. As discussed in page 19, this range is denoted (Bnd ()).

90

Proposition 82 Let V and W be sets and : V W be a map. Then:

P(V ) , Bnd (()) = (Bnd ())

where : P(V ) P(W) also denotes the associated substitution mapping.

Proof

Given P(V ), we need to show that Bnd(()) = (x) : x Bnd (). We

shall do so by structural induction using theorem (3) of page 32. Since P

0

(V )

is a generator of P(V ), we rst check that the property is true for P

0

(V ).

So suppose = (x y) P

0

(V ) for some x, y V . Then we have:

Bnd (()) = Bnd ((x y))

= Bnd ( (x) (y) )

=

= (u) : u

= (u) : u Bnd (x y)

= (x) : x Bnd ()

Next we check that the property is true for P(V ):

Bnd (()) = Bnd() = = (x) : x Bnd ()

Next we check that the property is true for =

1

2

if it is true for

1

,

2

:

Bnd(()) = Bnd((

1

2

))

= Bnd((

1

) (

2

))

= Bnd((

1

)) Bnd((

2

))

= (x) : x Bnd(

1

) (x) : x Bnd (

2

)

= (x) : x Bnd(

1

) Bnd(

2

)

= (x) : x Bnd(

1

2

)

= (x) : x Bnd()

Finally we check that the property is true for = x

1

if it is true for

1

:

Bnd (()) = Bnd((x

1

))

= Bnd((x) (

1

))

= (x) Bnd ((

1

))

= (x) (u) : u Bnd (

1

)

= (u) : u x Bnd (

1

)

= (u) : u Bnd(x

1

)

= (x) : x Bnd()

91

2.1.9 Valid Substitution of Variable

Suppose we had a parameterized integral I(x) =

_

f(x, y)dy dened for x A.

Given some a A, we would naturally write I(a) =

_

f(a, y)dy. However, if y

was also an element of A, very few of us would dare to say I(y) =

_

f(y, y)dy.

Substituting the variable y in place of x is not valid, or in other words the

substitution [y/x] is not a valid substitution for the formula =

_

f(x, y)dy.

Similarly, if we had the formula = y(x y) P(V ) with x ,= y which

expresses some unary predicate I(x), it would be a natural thing to write the

formula I(a) = y(a y) whenever a ,= y, while referring to y(y y) as rep-

resenting I(y) would make no sense. Here again it is clear that the substitution

[y/x] is not a valid substitution for the formula = y(x y) when x ,= y. It

is not clear at this stage how I(y) should be dened but we certainly know it

cannot be dened in terms of a substitution of variable which is not valid. At

some point, it will be important for us to dene I(y) in order to claim that:

xy(x y) I(a)

is a legitimate axiom, including when a = y. We shall worry about this later. In

this section, we want to formally dene the notion of substitution : V W

which is valid for a formula P(V ). We are keeping W as an arbitrary set

rather than W = V to make this discussion as general as possible.

So suppose = y(x y) with x ,= y and : V W is an arbitrary

map. Then () = v(u v) where u = (x) and v = (y). The question we

are facing is to determine which conditions should be imposed on to make

it a valid substitution for . Since x is a free variable of y(x y), a natural

condition seems to require that u be a free variable of v(u v). This can

only happen when u ,= v which leads to the condition (x) ,= (y). So it seems

that an injective would be a valid substitution for . In fact, we know from

proposition (64) that () only depends on the restriction

|Var()

so we may

require that

|Var()

be injective rather than itself. However, does injectivity

really matter? Suppose we had = y[(x y) (y z)] with x, y, z distinct.

There would be nothing wrong with a substitution leading to the formula

v[(u v) (v u)] with u ,= v. There is nothing absurd in considering the

binary predicate I(x, z) = y[(x y) (y z)] with (x, z) = (u, u) (having

changed the bound variable y by v). So injectivity does not matter. What

matters is the fact that the free variables x and z of have been substituted by

the free variable u in v[(u v) (v u)]. In other words, when considering a

formula = y[ . . . x . . . z . . . ] with x and z free, what matters is not to end

up with something like () = (y)[ . . . (x) . . . (z) . . . ] with (x) = (y)

or (z) = (y). We do not want free variables of to become articially bound

by the substitution . So it seems that a possible condition for the substitution

to be valid for is the following:

x Fr () (x) Fr (())

So let us consider = xy(x y) with x ,= y as a new example. In this case,

the formula has no free variables and there is therefore no risk of having a free

92

variable getting articially bound by a substitution . So any substitution

would seem to be valid for , which of course isnt the case. As a rule of thumb,

a valid substitution is one which prevents a mathematician writing nonsense.

If = x with = y(x y), then we cannot hope () = (x)() to be

a legitimate expression, unless () itself is a legitimate expression. So yes, we

do not want free variables to become articially bound by the substitution ,

but these free variables are not so much the free variables of itself. There are

also the free variables of or more generally of any sub-formula of . So in the

light of this discussion we shall attempt the following:

Denition 83 Let V and W be sets and : V W be a map. Let P(V ).

We say that is valid for if and only if for every sub-formula _ we have:

x Fr () (x) Fr (())

where : P(V ) P(W) also denotes the associated substitution mapping.

Recall that the notion of sub-formula and the relation _ are dened in

denition (40) of page 59. An immediate consequence of denition (83) is:

Proposition 84 Let V and W be sets and : V W be a map. Let P(V ).

Then is valid for if and only if it is valid for any sub-formula _ .

Proof

Since _ , i.e. is a sub-formula of itself, the if part of this proposition

is clear. So we now prove the only if part. So suppose is valid for and

let _ . We need to show that is also valid for . So let _ and let

x Fr (). We need to show that (x) Fr (()), which follows immediately

from the validity of for and the fact (by transitivity) that _ , i.e. that

is also a sub-formula of .

Another immediate consequence of denition (83) is:

Proposition 85 Let V and W be sets and : V W be a map. Let P(V ).

Then is valid for if and only if for every sub-formula _ we have:

Fr (()) = (Fr ())

Proof

The substitution : V W if valid for if and only if for all _ :

x Fr () (x) Fr (())

This condition is clearly equivalent to (Fr ()) Fr (()), where (Fr ())

refers to the direct image of the set Fr () by the map : V W. From propo-

sition (74) we know the reverse inclusion Fr (()) (Fr ()) is always true.

As anticipated, if is injective on Var() then it is valid for :

93

Proposition 86 Let V and W be sets and : V W be a map. Let P(V )

such that

|Var()

is an injective map. Then is valid for .

Proof

Let : V W be map and P(V ) such that the restriction

|Var()

is an

injective map. We need to show that is valid for . So let _ . Using

proposition (85), we need to show that Fr (()) = (Fr ()). From propo-

sition (75), it is sucient to prove that

|Var()

is injective. Since

|Var()

is

injective, it is sucient to show that Var() Var() which follows from _

and proposition (62).

If it is meaningful to speak of (

1

) and (

2

), it should also be meaningful

to consider (

1

) (

2

) which is the same as (

1

2

). So in order to

prove that a substitution is valid for =

1

2

, it should be sucient to

establish its validity both for

1

and

2

. The following proposition establishes

that fact, which may be useful for structural induction arguments on P(V ).

Proposition 87 Let V and W be sets and : V W be a map. Let P(V )

of the form =

1

2

with

1

,

2

P(V ). Then is valid for if and only

if it is valid for both

1

and

2

.

Proof

Suppose is valid for =

1

2

. From the equality:

Sub () =

1

2

Sub (

1

) Sub(

2

) (2.10)

we obtain

1

Sub (

1

) Sub () and

2

Sub(

2

) Sub (). Hence we see

that

1

_ and

2

_ i.e. both

1

and

2

are sub-formulas of . It follows

from proposition (84) that is valid for both

1

and

2

. Conversely, suppose

is valid for

1

and

2

. We need to show that is valid for =

1

2

. So

let _ and u Fr (). We need to show that (u) Fr (()). From _

we have Sub (). So from the above equation (2.10), we must have =

or Sub (

1

) or Sub (

2

). So we shall distinguish three cases: rst we

assume that Sub(

1

). Then _

1

and from u Fr () and the validity

of for

1

we see that (u) Fr (()). Next we assume that Sub (

2

).

Then a similar argument shows that (u) Fr (()). Finally we assume that

= . Then Fr () = Fr (

1

2

) = Fr (

1

) Fr (

2

) and from u Fr () we

must have u Fr (

1

) or u Fr (

2

). So we shall distinguish two further cases:

rst we assume that u Fr (

1

). From

1

_

1

and the validity of for

1

we

obtain (u) Fr ((

1

)). However, we have:

Fr ((

1

)) Fr ((

1

)) Fr ((

2

))

= Fr ((

1

) (

2

))

= Fr ((

1

2

))

= Fr (())

Hence we see that (u) Fr (()). Next we assume that u Fr (

2

). Then

a similar argument shows that (u) Fr (()). In all possible cases we have

94

shown that (u) Fr (()).

The next proposition may also be useful for induction arguments on P(V ).

It establishes conditions for a substitution to be valid for a formula of the

form = x

1

. As expected, the validity of for

1

is a prerequisite. However,

we also require free variables of not to become articially bound by the sub-

stitution . This naturally leads to the condition u Fr () (u) ,= (x).

Proposition 88 Let V and W be sets and : V W be a map. Let P(V )

of the form = x

1

with

1

P(V ) and x V . Then is valid for if and

only if it is valid for

1

and for all u V we have:

u Fr (x

1

) (u) ,= (x)

Proof

First we show the only if part. So suppose is valid for = x

1

. From:

Sub () = x

1

Sub (

1

) (2.11)

we obtain

1

Sub(

1

) Sub () and consequently

1

_ i.e.

1

is a sub-

formula of . It follows from proposition (84) that is valid for

1

. So let

u Fr (x

1

) = Fr (). It remains to show that (u) ,= (x). Since _ and

u Fr () it follows from the validity of for that (u) Fr (()). Hence

(u) is a free variable of () = (x)(

1

), so (u) ,= (x) as requested.

We now prove the if part. So suppose is valid for

1

and furthermore

that (u) ,= (x) whenever u Fr (x

1

) = Fr (). We need to show that

is valid for = x

1

. So let _ and u Fr (). We need to show

that (u) Fr (()). From _ we have Sub(). So from the above

equation (2.11), we must have = or Sub (

1

). So we shall distinguish

two cases: rst we assume that Sub(

1

). Then _

1

and from u Fr ()

and the validity of for

1

we see that (u) Fr (()). Next we assume that

= . Then Fr () = Fr (x

1

) = Fr (

1

) x and from u Fr () we must

have in particular u Fr (

1

). From

1

_

1

and the validity of for

1

we

obtain (u) Fr ((

1

)). Furthermore, from u Fr () and = we obtain

u Fr () and this implies by assumption that (u) ,= (x). Thus:

(u) Fr ((

1

)) (x) = Fr ((x)(

1

))

= Fr ((x

1

))

= Fr (())

Hence we see that (u) Fr (()) as requested.

Looking back at denition (83), a substitution is valid for if and only if

for all P(V ) we have the following property:

( _ ) [ u Fr () (u) Fr (()) ]

95

In the next proposition, we oer another criterion for the validity of for :

(x

1

_ ) [ u Fr (x

1

) (u) ,= (x) ]

This criterion is arguably simpler as we no longer need to check every sub-

formula _ , but instead can limit our attention to those sub-formula of the

form = x

1

with

1

P(V ) and x V . Furthermore, we no longer need

to establish that (u) is a free variable of (), but instead have to show that

(u) ,= (x) which is also a lot simpler.

Proposition 89 Let V and W be sets and : V W be a map. Let P(V ).

Then is valid for if and only if for all

1

P(V ) and x V we have:

(x

1

_ ) [ u Fr (x

1

) (u) ,= (x) ]

Proof

First we show the only if part: So suppose is valid for . Let

1

P(V )

and x V such that = x

1

_ and let u Fr (). We need to show that

(u) ,= (x). However, from the validity of for we have (u) Fr (()).

So (u) is a free variable of () = (x)(

1

) and (u) ,= (x) as requested.

We now prove the if part: Consider the property P

() dened by:

1

x [ (x

1

_ ) [ u Fr (x

1

) (u) ,= (x) ] ]

Then we need to prove that P

do so by structural induction, using theorem (3) of page 32. First we assume

that = (x y) for some x, y V . We need to show that the implication is

true for . So suppose P

which is always the case when = (x y). Next we assume that = . Then

is once again always valid for and the implication is true. Next we assume

that =

1

2

where the implication is true for

1

,

2

P(V ). We need to

show that the implication is also true for . So we assume that P

() is true.

We need to show that is valid for =

1

2

. Using proposition (87) it

is sucient to prove that is valid for both

1

and

2

. Having assumed the

implication is true for

1

and

2

, it is therefore sucient to prove that P

(

1

)

and P

(

2

) are true. First we show that P

(

1

) is true. So let P(V )

and z V such that z _

1

. Suppose u Fr (z). We need to show

that (u) ,= (z). Having assumed P

z _ , which follows immediately from z _

1

and

1

_ . So we have

proved that P

(

1

) is indeed true and a similar argument shows that P

(

2

)

is true. This concludes the case when =

1

2

. Next we assume that

= x

1

where x V and the implication is true for

1

P(V ). We need

to show that the implication is also true for . So we assume that P

() is

true. We need to show that is valid for = x

1

. Using proposition (88) it

is sucient to prove that is valid for

1

and furthermore that (u) ,= (x)

whenever u Fr (x

1

). First we show that is valid for

1

. Having assumed

the implication is true for

1

, it is sucient to prove that P

(

1

) is true. So let

P(V ) and z V such that z _

1

. Suppose u Fr (z). We need to

96

show that (u) ,= (z). Having assumed P

that z _ , which follows immediately from z _

1

and

1

_ . So we

have proved that P

(

1

) is indeed true and is therefore valid for

1

. Next

we show that (u) ,= (x) whenever u Fr (x

1

). So let u Fr (x

1

). We

need to show that (u) ,= (x). Having assumed P

() is true, it is sucient

to prove that x

1

_ which is immediate since x

1

= .

The following proposition is a simple application of proposition (86):

Proposition 90 Let V be a set and x, y V . Let P(V ). Then we have:

y , Var() ([y/x] valid for )

Proof

We assume that y , Var(). We need to show that the substitution [y/x] is

valid for . Using proposition (86), it is sucient to prove that [y/x]

|Var()

is an

injective map. This follows immediately from y , Var() and proposition (68).

our rule of thumb says it does make logical sense to speak of (). So if W is

another set and : V W is a substitution which is valid for (), it should

make logical sense to speak of (()) = ( )(). So we should expect the

substitution to be valid for . Luckily, this happens to be true. In fact,

the converse is also true: if is valid for then not only is is valid for

(), but surprisingly itself is necessarily valid for .

Proposition 91 Let U, V , W be sets and : U V and : V W be maps.

Then for all P(U) we have the equivalence:

( valid for ) ( valid for ()) ( valid for )

where : P(U) P(V ) also denotes the associated substitution mapping.

Proof

First we prove : so we assume that is valid for P(U) and is valid

for (). We need to show that is valid for . So let _ . Using

proposition (85) we need to show that Fr ( ()) = ( )(Fr ()):

Fr ( ()) = Fr ((()))

(() _ ()) ( valid for ()) = (Fr (()))

( _ ) ( valid for ) = ((Fr ()))

= ( )(Fr ())

Note that () _ () follows from _ and proposition (57). We now

prove : So suppose is valid for . We need to show that is valid for

and is valid for (). First we show that is valid for (), having assumed

97

is indeed valid for . So let _ (). Using proposition (85) we need to show

that Fr (()) = (Fr ()). However from proposition (57), there exists _

such that = (). Hence we have the following equalities:

Fr (()) = Fr ((())

= Fr ( ())

( _ ) ( valid for ) = (Fr ())

= ((Fr ()))

( _ ) ( valid for ) = (Fr (()))

= (Fr ())

It remains to prove that is valid for . So consider the property:

( valid for ) ( valid for )

We need to show this property holds for all P(U). We shall do so by a

structural induction argument, using theorem (3) of page 32. First we assume

that = (x y) for some x, y U. Then is always valid for and the prop-

erty is true. Likewise, is always valid for = and the property is true for .

So we assume that =

1

2

where

1

,

2

P(U) satisfy the property. We

need to show that same is true of . So we assume that is valid for .

We need to show that is valid for =

1

2

. Using proposition (87) it is

sucient to prove that is valid for both

1

and

2

. First we show that is

valid for

1

. Having assumed the property is true for

1

it is sucient to show

that is valid for

1

, which follows from the validity of for =

1

2

and proposition (87). We prove similarly that is valid for

2

which completes

the case when =

1

2

. So we now assume that = x

1

where x U

and

1

P(U) satises our property. We need to show that same is true of .

So we assume that is valid for . We need to show that is valid for

= x

1

. Using proposition (88) it is sucient to show that is valid for

1

and furthermore that u Fr (x

1

) (u) ,= (x). First we show that is

valid for

1

. Having assumed the property is true for

1

it is sucient to prove

that is valid for

1

which follows from the validity of for = x

1

and proposition (88). So we assume that u Fr (x

1

) and it remains to show

that (u) ,= (x). So suppose to the contrary that (u) = (x). Then in par-

ticular (u) = (x) which contradicts the validity of for = x

1

.

Proposition 92 Let V, W be sets and , : V W be maps. Let P(V )

such that the equality () = () holds. Then we have the equivalence:

( valid for ) ( valid for )

Proof

So we assume that () = (). It is sucient to show the implication .

So we assume that is valid for . We need to show that is also valid for

98

. So let _ be a sub-formula of and x Fr (). We need to show that

(x) Fr (()). However from proposition (64) and the equality () = ()

we see that and coincide on Var(). Furthermore from proposition (62) we

have Var() Var(). It follows that and coincide on Var() and in partic-

ular (x) = (x). Using proposition (64) we also have () = (). Hence we

need to show that (x) Fr (()) which follows from the validity of for .

The following proposition will appear later as a useful criterion:

Proposition 93 Let V , W be sets and : V W be a map. Let P(V ).

We assume that there exists a subset V

0

V with the following properties:

(i) Bnd() V

0

(ii)

|V0

is injective

(iii) (V

0

) (Var() V

0

) =

Then the map : V W is valid for the formula P(V ).

Proof

Let x V and

1

P(V ) such that x

1

_ . Using proposition (89), given

u Fr (x

1

) we need to show that (u) ,= (x). However, from proposi-

tion (81) we have Bnd (x

1

) Bnd () and consequently x Bnd(). From the

assumption (i) it follows that x V

0

. We shall now distinguish two cases: rst

we assume that u V

0

. Then from assumption (ii), in order to show(u) ,= (x)

it is sucient to prove that u ,= x which follows from u Fr (x

1

). We now as-

sume that u , V

0

. However, from proposition (62) we have Var(x

1

) Var()

and consequently u Var(). It follows that u Var() V

0

. Hence, we see

that (u) ,= (x) is a consequence of assumption (iii) and x V

0

.

2.1.10 Dual Substitution of Variable

Until now we have studied one type of mapping : P(V ) P(W) which are

the variable substitutions arising from a single mapping : V W, as per

denition (53) of page 71. In this section, we wish to study another type of

substitution : P(V ) P(W) arising from two mappings

0

,

1

: V W. The

idea behind this new type is to allow us to move variables to dierent values,

according to whether a given occurrence of the variable is free or bound. For

example, suppose we had = x(x y) (x y). We want to construct a

dual substitution mapping : P(V ) P(W) such that:

() = u

(u

v) (u v)

More generally given a mapping

0

: V W such that

0

(x) = u and

0

(y) = v,

and another mapping

1

: V W such that

1

(x) = u

, we want to dene

: P(V ) P(W) which will assign free occurrences of a variable according to

0

and bound occurrences according to

1

.

99

One of the main motivations for introducing dual variable substitutions is

to dene a local inverse for the substitution : P(V ) P(W) associated with

a single map : V W. Suppose we had = x(x y) (z y) with x, y, z

distinct and = [x/z]. Then () = x(x y) (x y) and there is no way

to nd a mapping : W V such that () = . We need to go further.

So we are given

0

,

1

: V W and looking to dene : P(V ) P(W)

which assigns free and bound occurrences of variables as specied by

0

and

1

respectively. The issue we have is that on the one hand we need to have some

form of recursive denition, but on the other hand a sub-formula x y has no

knowledge of whether x and y will remain free occurrences of a given formula.

One possible solution is to always assume that x and y will remain free and

dene (x y) =

0

(x)

0

(y) accordingly, while substituting the variable

0

(x) by

1

(x) whenever a quantication x arises by setting:

(x

1

) =

1

(x)(

1

)[

1

(x)/

0

(x)] (2.12)

Unfortunately, this doesnt work. Suppose we have = x(x y) with x ,= y.

Take

0

(x) =

0

(y) = u and

1

(x) = u

() = u

(u

() = u

(u u)[u

/u] = u

(u

)

Another idea is to dene in two steps: rst we dene a map:

So given P(V ), we have a map

every subset U V a formula

obtained from by assuming all free variables are in U. Specically, if we dene

U

(x) =

0

(x) if x U and

U

(x) =

1

(x) if x , U, we put:

(x y)(U) =

U

(x)

U

(y)

In the case when = x

1

, we cannot easily dene

()(U) in terms of

(

1

)(U) because we want the variable x to be tagged as bound in

(

1

).

So we need to consider the formula

(

1

)(U x) instead, having excluded

the variable x from the set of possible free variables. Specically we dene:

(x

1

)(U) =

1

(x)

(

1

)(U x) (2.13)

Once we have dened

()(V )

since all free variables of are possibly in V . So let us go back to our example

of = x(x y) with x ,= y,

0

(x) =

0

(y) = u and

1

(x) = u

. We obtain:

() =

()(V ) = u

(x y)(V x) = u

(u

u)

This is exactly what we want. So lets hope for the best and dene:

100

Denition 94 Let V , W be sets and

0

,

1

: V W be maps. We call dual

variable substitution associated with (

0

,

1

) the map : P(V ) P(W) dened

by () =

the following structural recursion, given P(V ) and U T(V ):

()(U) =

U

(x)

U

(y) if = (x y)

if =

(

1

)(U)

(

2

)(U) if =

1

2

1

(x)

(

1

)(U x) if = x

1

(2.14)

where

U

(x) =

0

(x) if x U and

U

(x) =

1

(x) if x , U.

Proposition 95 The structural recursion of denition (94) is legitimate.

Proof

We need to prove the existence and uniqueness of

satisfying equation (2.14). We shall do so using theorem (4) of page 45. So

we take X = P(V ), X

0

= P

0

(V ) and A = [T(V ) P(W)]. We consider

the map g

0

: X

0

A dened by g

0

(x y)(U) =

U

(x)

U

(y). We dene

h() : A

0

A by setting h()(0)(U) = and h() : A

2

A by setting

h()(v)(U) = v(0)(U) v(1)(U). Finally, we dene h(x) : A

1

A with:

h(x)(v)(U) =

1

(x)v(0)(U x)

From theorem (4) there exists a unique map

: X A such that

() = g

0

()

whenever = (x y) and

(f()) = h(f)(

X

(f)

. So let us check that this works: from

() = g

0

() for = (x y)

we obtain

()(U) = g

0

(x y)(U) =

U

(x)

U

(y) which is the rst line of

equation (2.14). Take f = and = . We obtain the equalities:

()(U) =

()(U)

proper notation =

((0))(U)

=

(f(0))(U)

: X

0

A

0

= h(f)(

(0))(U)

= h(f)(0)(U)

= h()(0)(U)

=

which is the second line of equation (2.14). Recall that the

which appears in

the fourth equality refers to the unique mapping

: X

0

A

0

. We now take

f = and =

1

2

for some

1

,

2

P(V ). Then we have:

()(U) =

(

1

2

)(U)

(0) =

1

,

(1) =

2

=

(f(

))(U)

: X

2

A

2

= h(f)(

))(U)

= h()(

))(U)

101

=

)(0)(U)

)(1)(U)

=

(0))(U)

(1))(U)

=

(

1

)(U)

(

2

)(U)

This is the third line of equation (2.14). Finally consider f = x and = x

1

:

()(U) =

(x

1

)(U)

(0) =

1

=

(f(

))(U)

: X

1

A

1

= h(f)(

))(U)

= h(x)(

))(U)

=

1

(x)

)(0)(U x)

=

1

(x)

(0))(U x)

=

1

(x)

(

1

)(U x)

and this is the last line of equation (2.14).

2.1.11 Local Inversion of Variable Substitution

Any map : V W gives rise to a substitution mapping : P(V ) P(W).

In general, this substitution mapping has little chance to be injective unless

: V W is itself injective. However even when is not injective, there may

be cases where we can still argue the following implication is true:

() = () = (2.15)

For example, if Var() = Var() it is sucient that

|Var()

be an injective

map for (2.15) to be true. But this itself is not necessary. Consider the case

when = y(x y) (x z) with x, y, z distinct and = [y/z]. Then we

have () = y(x y) (x y). Suppose we knew for some reason that

Bnd() = Bnd () = y. Then this would exclude = z(x z) (x z)

and the implication (2.15) would hold, if not everywhere at least on the set:

() = P(V ) : Bnd() = Bnd()

However, if = [y/x] then () = y(y y) (y z) and the implica-

tion (2.15) fails to be true even if (). As it turns out, the substitution

is not valid for , and () is of little use if we mix up free and bound variables.

In this section, we wish to establish sucient conditions for the implica-

tion (2.15) to hold, if not everywhere at least locally on a domain (). One

way to achieve this is to prove that the substitution : P(V ) P(W) has

a left-inverse locally around , i.e. that there exists a subset P(V ) and

a map : P(W) P(V ) such that () = for all . So if we

102

happen to know that both and are elements of , we are guaranteed the

implication (2.15) is true. So we are given a map : V W and we want to

design a map : P(W) P(V ) which will reverse the eect of the substitution

: P(V ) P(W), at least locally on some interesting domain . We cannot

hope to achieve this for every , but we would like our result to be general

enough. Suppose we knew our substitution behaved on free variables in a

reversible way. Specically, we would have V

0

V such that

|V0

is an injective

map and Fr () V

0

. Suppose likewise that the impact on bound variables was

also reversible. So we assume there is V

1

V such that

|V1

is an injective map

and Bnd () V

1

. For example, if we go back to = y(x y) (x z)

with x, y, z distinct and = [y/z], then is of course not injective but

|V0

and

|V1

are both injective with V

0

= V y and V

1

= V x, z. As it turns

out, we also have Fr () V

0

and Bnd() V

1

. So behaves in a reversible

way both on free and bound variables. Consider now

0

,

1

: W V which are

left-inverse of on V

0

and V

1

respectively, i.e. such that:

(i) u V

0

0

(u) = u

(ii) u V

1

1

(u) = u

Then we should hope to reverse the impact of : P(V ) P(W) by acting

separately on the free and bound variables of () according to

0

and

1

re-

spectively. Specically, if we consider : P(W) P(V ) the dual variable

substitution associated with the ordered pair (

0

,

1

) as per denition (94) of

page 101, we should hope to obtain () = at least for all such that

Fr () V

0

and Bnd () V

1

. So let us see if this works in our case:

() = (y(x y) (x z))

= [y/z] = (y(x y) (x y))

W = V and denition (94) =

( y(x y) (x y) )(V )

=

( y(x y) )(V )

(x y)(V )

=

1

(y)

(x y)(V y) (

0

(x)

0

(y))

=

1

(y)(

0

(x)

1

(y)) (

0

(x)

0

(y))

A: to be proved = y(x y) (x z)

=

So it remains to show that

1

(y) = y,

0

(x) = x and

0

(y) = z. Since we have

V

0

= V y we obtain x, z V

0

and consequently from (i) above it follows

that

0

(x) =

0

[y/z](x) = x and

0

(y) =

0

[y/z](z) = z. Similarly, since

V

1

= V x, z we have y V

1

and consequently from (ii) above it follows that

1

(y) =

1

[y/z](y) = y as requested. Hence we see that our inversion scheme

is working, at least in this case. As it turns out, the substitution = [y/z] is

valid for the formula = y(x y) (x z). But what if wasnt valid for

? Well obviously, when the substitution is not valid for the free and bound

variables of () have been muddled up. We cannot expect our scheme to work

any longer. So let us consider = [y/x] instead which is clearly not valid for

103

= y(x y) (x z). Then

|V0

and

|V1

are still injective and we still have

Fr () V

0

and Bnd () V

1

. Of course the maps

0

,

1

: V V would need

to be dierent but even assuming (i) and (ii) above, our scheme would fail:

() = (y(x y) (x z))

= [y/x] = (y(y y) (y z))

W = V and denition (94) =

( y(y y) (y z) )(V )

=

( y(y y) )(V )

(y z)(V )

=

1

(y)

(y y)(V y) (

0

(y)

0

(z))

=

1

(y)(

1

(y)

1

(y)) (

0

(y)

0

(z))

A: to be proved = y(y y) (x z)

,=

So it remains to show that

1

(y) = y,

0

(y) = x and

0

(z) = z. Since we have

V

0

= V y we obtain x, z V

0

and consequently from (i) above it follows

that

0

(y) =

0

[y/x](x) = x and

0

(z) =

0

[y/x](z) = z. Similarly, since

V

1

= V x, z we have y V

1

and consequently from (ii) above it follows that

1

(y) =

1

[y/x](y) = y as requested. Ok so we are now ready to proceed. We

are given a map : V W and V

0

, V

1

V such that

|V0

and

|V1

are injective

maps. We then consider P(V ) dened by:

= P(V ) : (Fr () V

0

) (Bnd () V

1

) ( valid for )

We are hoping the inversion scheme will work on , namely that we can build a

map : P(W) P(V ) such that () = for all . This result is the

object of theorem (10) of page 107 below. The proof of this theorem relies on

a technical lemma for which we shall now provide a few words of explanations:

proving the formula () = is in fact showing

(())(W) = as follows

from denition (94). A structural induction with = x

1

leads to:

(())(W) =

((x

1

))(W)

=

( (x)(

1

) )(W)

=

1

(x)

((

1

))(W (x))

x Bnd () V

1

= x

((

1

))(W (x))

So we are immediately confronted with two separate issues. One the one hand

we cannot hope to carry out a successful induction argument relating to W

only, since W (x) appears on the right-hand-side of this equation. So we

need to prove something which relates to some

the condition is not very useful when = x

1

. From the equality

Fr () = Fr (

1

) x, it is clear that the condition Fr () V

0

does not imply

Fr (

1

) V

0

. So it is possible to have and yet

1

, . It is important

for us to design an induction argument in such a way that if an assumption is

made about = x

1

, this assumption is also satised by

1

so we can use our

induction hypothesis. The following lemma addresses these two issues:

104

Lemma 96 Let V , W be sets and : V W be a map. Let V

0

, V

1

be subsets

of V and

0

,

1

: W V be maps such that for all x V :

(i) x V

0

0

(x) = x

(ii) x V

1

1

(x) = x

Let

0

,

1

) as per

denition (94). Then for all U T(V ) and P(V ) we have:

provided U and satisfy the following properties:

(iii) ( Fr () U V

0

) ( Bnd () U V

1

)

(iv) ( valid for ) ( (U) (Fr () U) = )

Proof

We assume : V W is given together with the subsets V

0

, V

1

and the maps

0

,

1

: W V satisfying (i) and (ii). Let

map associated with the ordered pair (

0

,

1

) as per denition (94) of page 101.

Given U V and P(V ) consider the property q(U, ) dened by (iii) and

(iv). Then we need to show that for all P(V ) we have the property:

U V , [ q(U, )

(())(W (U)) = ]

We shall do so by a structural induction argument, using theorem (3) of page 32.

First we assume that = (x y) for some x, y V . Let U V and suppose

q(U, ) is true. We need to show that equation (2.16) holds. We have:

(())(W (U)) =

dene U

= W (U) =

((x y))(U

)

=

)

denition (94) =

U

(x)

U

(y)

A: to be proved = x y

=

So it remains to show that

U

(x) = x and

U

(y) = y. First we show

that

U

(x) = x. We shall distinguish two cases: rst we assume that x U.

Then (x) (U) and it follows that (x) , U

have

U

(x) =

1

(x). From the property (ii) above we have

1

(x) = x

whenever x V

1

. So we only need to show that x V

1

. However, having

assumed that q(U, ) is true, in particular we have Bnd() U V

1

. So x V

1

follows immediately from our assumption x U. Next we assume that x , U.

Since = (x y) we have x Fr (). So it follows that x Fr () U and

consequently (x) (Fr () U). Having assumed that q(U, ) is true, in

105

particular we have (U)(Fr ()U) = . Thus, from (x) (Fr ()U) we

obtain (x) , (U) and we see that (x) U

have

U

(x) =

0

(x). From the property (i) above we have

0

(x) = x

whenever x V

0

. So it remains to show that x V

0

. Having assumed that

q(U, ) is true, in particular we have Fr () U V

0

. So x V

0

follows

immediately from x Fr () U which we have already proved. This completes

our proof of

U

(x) = x. The proof of

U

(y) = y is identical so we are

now done with the case = (x y). Next we assume that = . Let U V

and suppose q(U, ) is true. We need to show that equation (2.16) holds:

(())(W (U)) =

()(W (U)) =

Next we assume that =

1

2

where

1

,

2

P(V ) satisfy our desired

property. We need to show that the same is true of . So let U V and

suppose q(U, ) is true. We need to show that equation (2.16) holds:

(())(W (U)) =

((

1

2

))(W (U))

dene U

= W (U) =

((

1

2

))(U

)

=

( (

1

) (

2

) )(U

)

denition (94) =

((

1

))(U

((

2

))(U

)

A: to be proved =

1

2

=

So it remains to show that equation (2.16) holds for

1

and

2

. However,

from our induction hypothesis, our property is true for

1

and

2

. Hence, it

is sucient to prove that q(U,

1

) and q(U,

2

) are true. First we show that

q(U,

1

) is true. We need to prove that (iii) and (iv) above are true for

1

:

Fr (

1

) U Fr () U V

0

where the second inclusion follows from our assumption of q(U, ). Furthermore:

Bnd (

1

) U Bnd() U V

1

So (iii) is now established for

1

. Also from q(U, ) we obtain:

(U) (Fr (

1

) U) (U) (Fr () U) =

So it remains to show that is valid for

1

, which follows immediately from

proposition (87) and the validity of for =

1

2

. This completes our proof

of q(U,

1

). The proof of q(U,

2

) being identical, we are now done with the case

=

1

2

. So we now assume that = x

1

where x V and

1

P(V )

satisfy our induction hypothesis. We need to show the same is true for . So

let U V and suppose q(U, ) is true. We need to show that equation (2.16)

holds for U, which goes as follows:

(())(W (U)) =

((x

1

))(W (U))

106

dene U

= W (U) =

((x

1

))(U

)

=

( (x)(

1

) )(U

)

denition (94) =

1

(x)

((

1

))( U

(x) )

(ii) and x Bnd() V

1

= x

((

1

))( U

(x) )

dene U

1

= U

(x) = x

((

1

))(U

1

)

A: to be proved = x

1

=

So it remains to show that

((

1

))(U

1

) =

1

. From U

= W (U) and

U

1

= U

(x) we obtain U

1

= W(U

1

) where U

1

= U x. So it remains

to show that

((

1

))(W (U

1

)) =

1

, or equivalently that equation (2.16)

holds for U

1

and

1

. Having assumed

1

satises our induction hypothesis, it

is therefore sucient to prove that q(U

1

,

1

) is true. So we need to show that

(iii) and (iv) above are true for U

1

and

1

:

Fr (

1

) U

1

= Fr (

1

) x U

= Fr () U

q(U, ) V

0

Furthermore:

Bnd (

1

) U

1

= Bnd (

1

) x U

= Bnd () U

q(U, ) V

1

and:

(U

1

) (Fr (

1

) U

1

) = (U

1

) ( Fr (

1

) x U )

= (U

1

) (Fr () U)

= ((U) (x)) (Fr () U)

q(U, ) = (x) (Fr () U)

(x) (Fr ())

A: to be proved =

So we need to show that (u) ,= (x) whenever u Fr (), which follows

immediately from proposition (88) and the validity of for = x

1

, itself a

consequence of our assumption q(U, ). So we are almost done proving q(U

1

,

1

)

and it remains to show that is valid for

1

, which is another immediate

consequence of proposition (88). This completes our induction argument.

Theorem 10 Let V , W be sets and : V W be a map. Let V

0

, V

1

be subsets

of V such that

|V0

and

|V1

are injective maps. Let be the subset of P(V ):

= P(V ) : (Fr () V

0

) (Bnd () V

1

) ( valid for )

107

Then, there exits : P(W) P(V ) such that:

, () =

where : P(V ) P(W) also denotes the associated substitution mapping.

Proof

Let : V W be a map and V

0

, V

1

V be such that

|V0

and

|V1

are

injective maps. We shall distinguish two cases: rst we assume that V = .

Then for all P(V ) the inclusions Fr () V

0

and Bnd () V

1

are always

true. Furthermore, from denition (83) the substitution is always valid for .

Hence we have = P(V ) and we need to nd : P(W) P(V ) such that

() = for all P(V ). We dene with the following recursion:

() =

if = (u v)

if =

(

1

) (

2

) if =

1

2

if = u

1

(2.17)

We shall now prove that () = using a structural induction argument.

Since V = there is nothing to check in the case when = (x y). So we

assume that = . Then () = and () = as requested. Next we

assume that =

1

2

with (

1

) =

1

and (

2

) =

2

. Then:

() = (

1

2

)

= ( (

1

) (

2

) )

= (

1

) (

2

)

=

1

2

=

Since V = there is nothing to check in the case when = x

1

. So this

completes our proof when V = , and we now assume that V ,= . Let x

0

V

and consider

0

: (V

0

) V and

1

: (V

1

) V to be the inverse mappings

of

|V0

and

|V1

respectively. Extend

0

and

1

to the whole of W by setting

0

(u) = x

0

if u , (V

0

) and

1

(u) = x

0

if u , (V

1

). Then

0

,

1

: W V are

left-inverse of on V

0

and V

1

respectively, i.e. we have:

(i) x V

0

0

(x) = x

(ii) x V

1

1

(x) = x

Let : P(W) P(V ) be the dual variable substitution associated with the

ordered pair (

0

,

1

) as per denition (94). We shall complete the proof of the

theorem by showing that () = for all where:

= P(V ) : (Fr () V

0

) (Bnd () V

1

) ( valid for )

So let . Then in particular satises property (iii) and (iv) of lemma (96)

in the particular case when U = . So applying lemma (96) for U = , we see

that

associated with . Hence we conclude that () =

(())(W) = .

108

2.2 The Substitution Congruence

2.2.1 Preliminaries

Before we start, we would like to say a few words to the more expert read-

ers. The notion of substitution congruence seems to be commonly known as

-equivalence in the computer science literature, especially within the context

of -calculus. We decided to use the phrase substitution congruence partly out

of ignorance and partly because rst order logic does not have the notion of

-equivalence and -equivalence as far as we can tell. Instead, we shall consider

other congruences on P(V ) which are the permutation, the absorption and the

propositional congruence which have no obvious counterpart in -calculus. So we

were tempted to change our terminology out of due respect for established tra-

ditions, but decided otherwise in the end. The notion of -equivalence and the

more general issue of variable binding in formal languages, has already received

some academic attention. For example, the interested reader may wish to refer

to Murdoch J. Gabbay [22] and Murdoch J. Gabbay and Aad Mathijssen [23].

These references also focus on capture-avoiding substitutions which we feel is

an important topic, intimately linked to -equivalence. Our own treatment of

capture-avoiding substitutions will give rise to essential substitutions.

2.2.2 The Strong Substitution Congruence

We all know that x(x z) and y(y z) should be identical mathematical

statements when z , x, y. In this section, we shall attempt to formally dene

a congruence on P(V ) such that x(x z) y(y z) is satised for all

z , x, y. More generally, given a set V and a formula

1

P(V ), we would

like our congruence to be such that x

1

y

1

[y/x] for all x, y V . In

other words, if we were to replace the variable x by the variable y in the formula

= x

1

, the formula = y

1

[y/x] resulting from the substitution should

have the same meaning as that of . One of the diculties in pinning down

a formal denition for the congruence is to know exactly what we want. If

1

= (x y) with x ,= y, then = x(x y) while = y(y y) and

it is clear that and do not represent the same mathematical statement.

It would therefore be inappropriate to require that x

1

y

1

[y/x] for all

x, y V , without some form of restriction on the variables x and y. Looking

back at the example of

1

= (x y), the problem arises from the fact that the

substitution [y/x] is not a valid substitution for x

1

. It is therefore tempting to

require that x

1

y

1

[y/x] for all x, y V such that [y/x] is valid for x

1

.

From proposition (90), we can easily check that [y/x] is automatically valid for

x

1

whenever the condition y , Var(

1

) is satised. So we could also require

that x

1

y

1

[y/x] solely when the condition y , Var(

1

) is met. This is

obviously simpler as it does not require the concept of valid substitution, and it

is also in line with the existing literature (e.g. see Donald W. Barnes, John M.

Mack [4] page 28). As it turns out, whether we decide to go for the condition

y , Var(

1

) or [y/x] is valid for x

1

will lead to the same congruence, as can

109

be seen from proposition (134). So the question is settled: we shall require that

x

1

y

1

[y/x] whenever y , Var(

1

). Since a congruence is always reexive,

there is no harm in imposing that x ,= y. We shall dene our congruence in

terms of a generator, in the sense of denition (39). Such a congruence exists

and is unique by virtue of theorem (6) of page 54. However despite our best

eorts, it will appear later that the congruence is not the right one. It will in

fact be too strong when the set V is a nite set. For this reason, the congruence

presented in this section will be called the strong substitution congruence. In

later parts of this document, we shall alter our denition slightly so as to reach

what we believe is a denitive notion of substitution congruence working equally

well for V nite and V innite. Despite its minor aws, the strong substitution

congruence deserves to be studied in its own right, as it seems to be the one

studied in every known textbook (which usually assumes an innite set V ).

Denition 97 Let V be a set. We call strong substitution congruence on P(V )

the congruence on P(V ) generated by the following set R

0

P(V ) P(V ):

R

0

= ( x

1

, y

1

[y/x] ) :

1

P(V ) , x, y V , x ,= y , y , Var(

1

)

where [y/x] denotes the substitution of y in place of x as per denition (65).

2.2.3 Free Variable and Strong Substitution Congruence

The strong substitution congruence is designed in such a way that if you take a

formula and replace its bound variables by other variables, you obtain a for-

mula which is equivalent to , provided the variable substitution is valid. The

strong substitution congruence is also designed to be the smallest congruence

on P(V ) with such property. So one would expect two equivalent formulas to

be identical in all respects, except possibly in relation to their bound variables.

In particular, if a formula is equivalent to a formula , we should expect

both formulas to have the same free variables. This is indeed the case, as the

following proposition shows. Since we already know from proposition (77) that

Fr () = Fr () denes a congruence on P(V ), the proof reduces to making

sure that every ordered pair (, ) belonging to the generator R

0

of the strong

substitution congruence, is such that Fr () = Fr ().

Proposition 98 Let be the strong substitution congruence on P(V ) where V

is a set. Then for all , P(V ) we have the implication:

Fr () = Fr ()

Proof

Let be the relation on P(V ) dened by Fr () = Fr (). We

need to show that or equivalently that the inclusion

holds. Since is the strong substitution congruence on P(V ), it is the smallest

congruence on P(V ) which contains the set R

0

of denition (97). In order to

show the inclusion it is therefore sucient to show that is a congruence

on P(V ) such that R

0

. However, we already know from proposition (77)

110

that is a congruence on P(V ). So it remains to show that R

0

. So let

1

P(V ) and x, y V be such that x ,= y and y , Var(

1

). Dene the

two formulas = x

1

and = y

1

[y/x]. We need to show that

or equivalently that Fr () = Fr (). We shall distinguish two cases. First we

assume that x , Fr (

1

). From the assumption y , Var(

1

) and proposition (76)

we obtain Fr (

1

[y/x]) = Fr (

1

). Furthermore, since Fr (

1

) Var(

1

), we also

have y , Fr (

1

). It follows that:

Fr () = Fr (y

1

[y/x])

= Fr (

1

[y/x]) y

= Fr (

1

) y

= Fr (

1

)

= Fr (

1

) x

= Fr (x

1

)

= Fr ()

We now consider the case when x Fr (

1

). From the assumption y , Var(

1

)

and proposition (76) we obtain Fr (

1

[y/x]) = Fr (

1

) x y, and so:

Fr () = Fr (y

1

[y/x])

= Fr (

1

[y/x]) y

= ( Fr (

1

) x y ) y

= ( Fr (

1

) x ) y

= Fr (

1

) x

= Fr (x

1

)

= Fr ()

Given a substitution mapping : P(V ) P(W) arising from an injective map

: V W, and given an arbitrary congruence on P(W), we showed in

proposition (58) that the relation on P(V ) dened by if and only if

() () is a congruence on P(V ). We now apply this fact to the strong

substitution congruence on P(W) to show that () () whenever we have

, where also denotes the strong substitution congruence on P(V ). In

other words, substitution mappings arising from injective substitution preserve

the strong substitution congruence. Since we know that is a congruence

on P(V ), the proof simply consists in showing that R

0

, where R

0

is the

generator of the strong substitution congruence on P(V ) as per denition (97).

111

Proposition 99 Let V and W be sets and : V W be an injective map.

Let be the strong substitution congruence both on P(V ) and P(W). Then:

() ()

for all , P(V ), where : P(V ) P(W) is also the substitution mapping.

Proof

Let be the relation on P(V ) dened by () (). We

need to show that or equivalently that the inclusion

holds. Since is the strong substitution congruence on P(V ), it is the smallest

congruence on P(V ) which contains the set R

0

of denition (97). In order to

show the inclusion it is therefore sucient to show that is a congruence

on P(V ) such that R

0

. However, we already know from proposition (58)

that is a congruence on P(V ). So it remains to show that R

0

. So

let

1

P(V ) and x, y V be such that x ,= y and y , Var(

1

). Dene

= x

1

and = y

1

[y/x]. We need to show that or equivalently that

() (). In order to do so, it is sucient to show that the ordered pair

((), ()) belongs to the generator R

0

of the strong substitution congruence

on P(W) as per denition (97). In other words, it is sucient to show the

existence of

1

P(W) and x

, y

W with x

,= y

and y

, Var(

1

), such

that () = x

1

and () = y

1

[y

/x

]. Take

1

= (

1

) P(W) together

with x

= (x) W and y

() = (x

1

) = (x) (

1

) = x

1

Furthermore, if we accept for now that [y/x] = [(y)/(x)] , we have:

() = (y

1

[y/x])

= (y) (

1

[y/x])

= y

([y/x](

1

))

= y

[y/x] (

1

)

= y

[(y)/(x)] (

1

)

= y

[y

/x

](

1

)

= y

1

[y

/x

]

So it remains to show that [y/x] = [(y)/(x)] is indeed true, and

furthermore that x

,= y

and y

, Var(

1

). Since : V W is an injective

map, x

,= y

, Var(

1

).

So suppose to the contrary that y

Var(

1

). We shall arrive at a contradiction.

Since

1

= (

1

), from proposition (63) we have:

Var(

1

) = (u) : u Var(

1

)

It follows that there exists u Var(

1

) such that y

= (u). However, y

= (y)

and : V W is an injective map. Hence we see that u = y and consequently

112

y Var(

1

) which contradicts our initial assumption of y , Var(

1

). We shall

complete the proof of this proposition by showing that [y/x] = [(y)/(x)].

So let u V , and suppose rst that u ,= x. Then:

[y/x](u) = ([y/x](u))

= (u)

= [(y)/(x)]((u))

= [(y)/(x)] (u)

where the third equality crucially depends on (u) ,= (x) which itself follows

from the injectivity of and u ,= x. We now assume that u = x. Then:

[y/x](u) = ([y/x](u))

= (y)

= [(y)/(x)]((u))

= [(y)/(x)] (u)

In both cases u ,= x and u = x we see that [y/x](u) = [(y)/(x)] (u).

We now wish to apply proposition (99) to the substitution mapping [y/x]

which is not injective when x ,= y. The trick is to consider the permutation

mapping [y : x] and argue that [y/x] coincides with [y : x] while [y/x] co-

incides with [y : x], provided the condition y , Var() Var() is satised.

Proposition 100 Let be the strong substitution congruence on P(V ) where

V is a set. Let , P(V ) and x, y V such that y , Var() Var(). Then:

[y/x] [y/x]

Proof

We assume that . We need to show that [y/x] [y/x]. Unfortunately,

the map [y/x] : V V is not injective when x ,= y since [y/x](x) = y = [y/x](y).

So we cannot argue directly from proposition (99) that [y/x] [y/x]. In-

stead, we shall consider the permutation [y : x] : V V as per denition (66).

Since [y : x] is injective, from proposition (99) we have [y : x] [y : x]. We

shall complete the proof of the proposition by proving [y : x] = [y/x] and

[y : x] = [y/x]. But this follows immediately from proposition (69) and the

assumption y , Var() Var().

As can be seen from denition (97), the strong substitution congruence was

dened so as to ensure that x

1

is always equivalent to y

1

[y/x] when x ,= y,

provided we have y , Var(

1

). The fundamental idea is that if we replace a

variable x which is not free, by a variable y which is not already present in a

formula, then we do not change the meaning of the formula. We now check that

this property is indeed true. The proof is done by structural induction.

113

Proposition 101 Let be the strong substitution congruence on P(V ) where

V is a set. Let P(V ), x, y V such that y , Var() and x , Fr (). Then:

[y/x]

Proof

We assume x, y V given. For all P(V ), we need to show the implication

(y , Var()) (x , Fr ()) [y/x] . We shall do so by structural

induction, using theorem (3) of page 32. Since P

0

(V ) is a generator of P(V ),

we show rst that the property is true on P

0

(V ). So let = (u v) P

0

(V ),

where u, v V . We assume that y , Var() and x , Fr (), and we need to

show that [y/x] . Since Var() = Fr () = u, v, we have x, y , u, v. In

particular, x , u, v and consequently we have:

[y/x] = ( [y/x](u) [y/x](v) ) = (u v) =

In particular [y/x] . Next we check that the property is true for P(V ):

[y/x] = [y/x]() =

and in particular [y/x] . Next we check that the property is true for

=

1

2

, if it is true for

1

,

2

P(V ). So we assume that y , Var()

and x , Fr (), and we need to show that [y/x] . From the equality

Var() = Var(

1

) Var(

2

) we see that y , Var(

1

) and y , Var(

2

). Likewise,

from Fr () = Fr (

1

) Fr (

2

) we obtain x , Fr (

1

) and x , Fr (

2

). Having

assumed the property is true for

1

and

2

, it follows that

1

[y/x]

1

and

2

[y/x]

2

. The strong substitution congruence being a congruent relation:

[y/x] =

1

[y/x]

2

[y/x]

1

2

=

Finally we check that the property is true for = u

1

, if it is true for

1

. So we

assume that y , Var() and x , Fr (), and we need to show that [y/x] .

We shall distinguish two cases. First we assume that x ,= u. Then, we have:

[y/x] = [y/x](u

1

) = [y/x](u)

1

[y/x] = u

1

[y/x]

So we need to show that u

1

[y/x] u

1

. The strong substitution congruence

being a congruent relation, it is sucient to prove that

1

[y/x]

1

. Having

assumed the property is true for

1

, it is therefore sucient to show y , Var(

1

)

and x , Fr (

1

). Since y , Var() and Var() = u Var(

1

), it is clear that

y , Var(

1

). So we need to show that x , Fr (

1

). So suppose to the contrary

that x Fr (

1

). Since Fr () = Fr (

1

) u and x ,= u, we obtain x Fr ()

which contradicts our initial assumption of x , Fr (). This completes our proof

in the case when x ,= u. We now assume x = u. Then:

[y/x] = [y/x](u

1

) = [y/x](u)

1

[y/x] = y

1

[y/x]

So we need to show that y

1

[y/x] x

1

. We shall consider two cases. First

we assume that x = y. So we need to show that x

1

[x/x] x

1

, for which

114

it is sucient to prove that

1

[x/x] =

1

which follows from proposition (56)

and the fact that [x/x] : V V is the identity mapping. We now assume that

x ,= y. It is sucient to prove that the ordered pair (x

1

, y

1

[y/x]) belongs

to the generator R

0

of the strong substitution congruence on P(V ) as per def-

inition (97). Since x ,= y, it remains to show that y , Var(

1

) which follows

immediately from y , Var() and Var() = x Var(

1

).

2.2.5 Characterization of the Strong Congruence

In denition (97) the strong substitution congruence was dened in terms of a

generator. This makes it very convenient to show that two given formulas

and are equivalent. For instance, if = xy(x y) and = yx(y x), if

there is u V such that u , x, y, the proof that would go as follows:

xy(x y) uy(u y)

ux(u x)

yx(y x)

The rst and third equivalence stem directly from denition (97), as does the

equivalence y(u y) x(u x). Knowing that is a congruent relation

allows us to establish the second equivalence, while knowing that is a transitive

relation allows us to conclude that . More generally, the knowledge of

the generator R

0

of denition (97) gives us the equivalence immediately,

for many pairs (, ). Using the congruent property, reexivity, symmetry and

transitivity of the relation , we readily obtain this equivalence for many more

pairs. So showing that is usually the easy part.

What is more dicult is proving that an equivalence does not hold.

For instance, if = (x y) and = , we would like to think that is not

equivalent to . However, denition (97) does not give us an immediate tool

to prove that , . Fortunately, we showed in proposition (98) that if

then we must have Fr () = Fr (). Since Fr () = x, y while Fr () = we

are able in this case to conclude that is not equivalent to . But if = (x y)

while = (y x) with x ,= y, then the implication Fr () = Fr ()

does not help us to conclude that , . Somehow we need something sharper.

So we need to prove an implication , having chosen a

relation which tells us a bit more about the formulas and , than the

simple Fr () = Fr (). In fact, we shall choose the relation so as to have the

equivalence , as a way of ensuring that the statement

tells us as much as possible about the formulas and . So before we prove

anything, our rst task is to choose a sensible relation .

So let us assume that . We know from theorem (2) of page 21 that

any formula of rst order predicate logic is either of the form (x y), or is the

contradiction constant , or is an implication

1

2

or is a quantication

x

1

. Let us review all these four cases in relation to : so suppose rst that

= (x y) with . Clearly we would expect the formula to be equal to

115

the formula . Suppose now that = . Then we would expect the formula

to be equal to . Suppose now that is an implication =

1

2

. If

we would also expect the formula to be an implication =

1

2

.

Furthermore, we would expect to have

1

1

and

2

2

.

Suppose now that is a quantication = x

1

. Then we would also expect

the formula to be a quantication = y

1

. However, we would not expect

the variables x and y to be the same in general. If x = y then we would expect

to have

1

1

, but if x ,= y then the relationship between

1

and

1

should

be more complex. Informally, we would expect the formula

1

to be the same

mathematical statement as the formula

1

, but with the variable x replaced by

the variable y. Of course we cannot hope to have

1

=

1

[y/x] in general, as

there may have been other changes of variable within the formulas

1

and

1

.

However, we would expect to have the equivalence

1

1

[y/x].

Unfortunately, this does not quite work. We already know from deni-

tion (97) that considering the formula

1

[y/x] is not very safe unless we have

y , Var(

1

). We have made no mention of this fact so far, so it is likely that

the simple condition

1

1

[y/x] is doomed, without further qualication. In

fact, consider the case when = xy(x y) and = yx(y x) with x ,= y.

Then

1

= y(x y) and

1

= x(y x). So we obtain

1

[y/x] = y(y y)

and we certainly expect the equivalence

1

1

[y/x] to be false. So we need

to look for something more complicated. Suppose there exists u V such that

u , x, y. Dening the formula = u(x u) the condition y , Var() is now

satised and we can safely consider the formula [y/x] = u(y u). From de-

nition (97) we obtain immediately

1

and

1

[y/x]. So this may be the

relationship we are looking for between the formula

1

and the formula

1

: the

existence of a third formula such that

1

and

1

[y/x], with the addi-

tional condition y , Var(). Note that we cannot hope to make this relationship

simpler in general. We have already established that

1

= and

1

[y/x],

(or indeed

1

= and

1

= [y/x]) fails to work. The condition

1

and

1

= [y/x] does not work in general either: from proposition (71) we know that

x can never be a variable of [y/x] when x ,= y, and consequently we cannot

hope to have the equality

1

= [y/x] in the case when

1

= x(y x). In the

light of these comments, we can now venture a sensible guess for our relation .

Denition 102 Let be the strong substitution congruence on P(V ) where V

is a set. Let , P(V ). We say that is almost strongly equivalent to and

we write , if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = x

1

and

1

1

(v) = x

1

, = y

1

, x ,= y ,

1

,

1

[y/x] , y , Var()

It should be noted that (v) of denition (102) is a notational shortcut for

the more detailed statement = x

1

, = y

1

, x ,= y and there exists a

116

formula P(V ) such that

1

,

1

[y/x] , y , Var().

Proposition 103 (i), (ii), (iii), (iv), (v) of denition (102) are mutually exclu-

sive.

Proof

This is an immediate consequence of theorem (2) of page 21 applied to the free

universal algebra P(V ) with free generator P

0

(V ), where a formula P(V )

is either an element of P

0

(V ), or the contradiction constant = , or an im-

plication =

1

2

, or a quantication = x

1

, but cannot be equal to

any two of those things simultaneously. Since (v) can only occur with x ,= y,

it also follows from theorem (2) that (v) cannot occur at the same time as (iv).

So we have dened our relation and it remains to prove the equivalence:

As we will soon discover, the dicult part is showing the implication . In

order to do so, we shall need to show that is a congruence on P(V ) which

contains the generator R

0

of denition (97). So we start by proving R

0

.

Proposition 104 Let be the almost strong equivalence relation on P(V )

where V is a set. Then contains the generator R

0

of denition (97).

Proof

Suppose x, y V and

1

P(V ) are such that x ,= y and y , Var(

1

).

Note that this cannot happen unless V has at least two elements. We dene

= x

1

and = y

1

[y/x]. We need to show that . We shall do

so by proving that (v) of proposition (102) is the case. Dene =

1

and

1

=

1

[y/x] = [y/x]. Since the strong substitution congruence is reexive

on P(V ), we have

1

and

1

[y/x]. It follows that = x

1

, = y

1

,

x ,= y,

1

,

1

[y/x] and y , Var().

We now need to show that is a congruence on P(V ). In particular, it is

an equivalence relation, i.e. a relation on P(V ) which is reexive, symmetric

and transitive. We rst deal with the reexivity.

Proposition 105 Let be the almost strong equivalence relation on P(V )

where V is a set. Then is a reexive relation on P(V ).

Proof

Let P(V ). We need to show that . From theorem (2) of page 21

we know that is either an element of P

0

(V ), or = or =

1

2

or

= x

1

for some

1

,

2

P(V ) and x V . We shall consider these four

mutually exclusive cases separately. Suppose rst that P

0

(V ): then from

= we obtain . Suppose next that = : then it is clear that .

Suppose now that =

1

2

. Since the strong substitution congruence is

117

reexive, we have

1

1

and

2

2

. It follows from (iii) of denition (102)

that . Suppose nally that = x

1

. From

1

1

and (iv) of def-

inition (102) we conclude that . In all cases, we have proved that .

Proposition 106 Let be the almost strong equivalence relation on P(V )

where V is a set. Then is a symmetric relation on P(V ).

Proof

Let , P(V ) be such that . We need to show that . We shall

consider the ve possible cases of denition (102): suppose rst that P

0

(V ),

P

0

(V ) and = . Then it is clear that . Suppose next that =

and = . Then we also have . We now assume that =

1

2

and =

1

2

with

1

1

and

2

2

. Since the strong substitution

congruence on P(V ) is symmetric, we have

1

1

and

2

2

. Hence we

have . We now assume that = x

1

and = x

1

with

1

1

.

Then once again by symmetry of the strong substitution congruence we have

1

1

and consequently . We nally consider the last possible case

of = x

1

, = y

1

with x ,= y and we assume the existence of P(V )

such that

1

,

1

[y/x] and y , Var(). Dene

= [y/x]. In order

to show that it is sucient to prove that

1

).

First we show that x , Var(

which in fact follows immediately from proposition (71) and x ,= y. We now

show that

1

1

and the strong substitution

congruence on P(V ) is a transitive relation, it is sucient to prove that:

[y/x][x/y]

In fact, the strong substitution congruence being reexive, it is sucient to

prove that = [y/x][x/y]. From proposition (70), since y , Var() we obtain

[x/x] = [y/x][x/y]. Since [x/x] : V V is the identity mapping, we conclude

from proposition (56) that [x/x] = and nally = [y/x][x/y].

Having shown that is a reexive and symmetric relation on P(V ), we now

prove that it is also a transitive relation. This is by far the most dicult result

of this section as many technical details need to be checked.

Proposition 107 Let be the almost strong equivalence relation on P(V )

where V is a set. Then is a transitive relation on P(V ).

Proof

Let , and P(V ) be such that and . We need to show

that . We shall consider the ve possible cases of denition (102) in

relation to . Suppose rst that , P

0

(V ) and = . Then from

we obtain , P

0

(V ) and = . It follows that , P

0

(V )

and = . Hence we see that . We now assume that = = .

Then from we obtain = = . It follows that = = and

118

consequently . We now assume that =

1

2

and =

1

2

with

1

1

and

2

2

. From we obtain =

1

2

with

1

1

and

2

2

. The strong substitution congruence being transitive, it follows

that

1

1

and

2

2

. Hence we see that . We now assume that

= x

1

and = x

1

with

1

1

, for some x V . From only the

cases (iv) and (v) of denition (102) are possible. First we assume that (iv) is

the case. Then = x

1

with

1

1

. The strong substitution congruence

being transitive, we obtain

1

1

and consequently . We now assume

that (v) is the case. Then = y

1

for some y V with x ,= y, and there

exists P(V ) such that

1

,

1

[y/x] and y , Var(). The strong

substitution congruence being transitive, we obtain

1

and consequently

. It remains to consider the last possible case of denition (102). So we

assume that = x

1

and = y

1

with x ,= y, and we assume the existence

of P(V ) such that

1

,

1

[y/x] and y , Var(). From only

the cases (iv) and (v) of denition (102) are possible. First we assume that (iv)

is the case. Then = y

1

with

1

1

. The strong substitution congruence

being transitive, we obtain

1

[y/x] and consequently . We now

assume that (v) is the case. Then = z

1

for some z V with y ,= z, and

there exists

1

,

1

). We

shall now distinguish two cases. First we assume that x = z. Then = x

1

and = x

1

and in order to show that it is sucient to prove that

1

1

. Since

1

and

1

the strong substitution congruence, it remains to show that

[z/y]. Having

assumed that x = z, we have to prove that

proposition (70) we have [y/x][x/y] = [x/x] and from proposition (56) we

obtain [x/x] = . It follows that [y/x][x/y] = and it remains to prove that

[y/x][x/y]

[y/x]

follows

from

1

[y/x] and

1

strong substitution congruence on P(V ). The fact that x , Var([y/x]) follows

from proposition (71) and the assumption x ,= y. The fact that x , Var(

)

follows from the assumptions x = z and z , Var(

in the case when x = z. We now assume that x ,= z. So we have x ,= y, y ,= z

and x ,= z, with = x

1

, = y

1

and = z

1

. Furthermore, there exist

and

1

,

1

[y/x],

1

and

1

[z/y].

Finally, we have y , Var() and z , Var(

Dene = [y/z]. It is sucient to show that

1

and

1

[z/x] with

z , Var(). The fact that z , Var() is a direct consequence of proposition (71)

and y ,= z. So it remains to show that

1

and

1

[z/x]. First we show

that

1

. Since

1

and = [y/z], from the symmetry and transitivity

of the strong substitution congruence on P(V ) it is sucient to prove that

[y/z] , which itself follows from proposition (101) provided we show that

y , Var() and z , Fr (). We already know that y , Var(), so it remains to

prove that z , Fr (). In order to do so, we shall rst prove the implication:

z Fr () z Fr ([y/x]) (2.18)

119

using proposition (76) and the assumption y , Var(). In the case x , Fr (),

we obtain Fr ([y/x]) = Fr () and the implication (2.18) is clear. In the case

when x Fr (), we obtain Fr ([y/x]) = Fr () x y, and the implica-

tion (2.18) follows immediately from the fact that z ,= x. Having proved the

implication (2.18), we can now show that z , Fr () by instead proving that

z , Fr ([y/x]). Since

1

[y/x] and

1

and transitivity of the strong substitution congruence on P(V ) that [y/x]

.

Thus, from proposition (98) we obtain Fr ([y/x]) = Fr (

), and it is therefore

sucient to prove that z , Fr (

)

and Fr (

) Var(

completes our proof of

1

. It remains to show that

1

[z/x]. Since

[y/z][z/x]

[z/y] (2.19)

We shall prove the equivalence (2.19) by proving the following two results:

[y/z][z/x] [y/z][z/x][x/y] (2.20)

Suppose for now that (2.20) and (2.21) have been proved. Comparing with the

equivalence (2.19), it is sucient to show that:

[y/z][z/x][x/y] = [y/x][x/z][z/y] (2.22)

So we shall now prove equation (2.22). From proposition (64) it is sucient

to show that the maps [x/y] [z/x] [y/z] and [z/y] [x/z] [y/x] coincide on

Var(). So let u Var(). In particular u ,= y and we have to show that:

[x/y] [z/x] [y/z](u) = [z/y] [x/z] [y/x](u) (2.23)

We shall distinguish three cases. First we assume that u , x, y, z. Then it is

clear that the equality (2.23) holds. Next we assume that u = x:

[x/y] [z/x] [y/z](u) = [x/y] [z/x](u) = [x/y](z) = z

and:

[z/y] [x/z] [y/x](u) = [z/y] [x/z](y) = [z/y](y) = z

So the equality (2.23) holds. Finally we assume that u = z:

[x/y] [z/x] [y/z](u) = [x/y] [z/x](y) = [x/y](y) = x

and:

[z/y] [x/z] [y/x](u) = [z/y] [x/z](u) = [z/y](x) = x

So the equality (2.23) holds again. This completes our proof of (2.23) and (2.22).

It remains to show that the equivalence (2.20) and (2.21) are true. First we

show the equivalence (2.20). Using proposition (101), it is sucient to show

120

that we have both x , Var([y/z][z/x]) and y , Fr ([y/z][z/x]). The fact that

x , Var([y/z][z/x]) is a consequence of proposition (71) and x ,= z. So we need

to show that y , Fr ([y/z][z/x]). We shall do so by applying proposition (76)

from which we obtain, provided we show z , Var([y/z]):

Fr ([y/z][z/x]) =

_

Fr ([y/z]) x z if x Fr ([y/z])

Fr ([y/z]) if x , Fr ([y/z])

(2.24)

However, before we can use equation (2.24) we need to check z , Var([y/z]),

which in fact immediately follows from proposition (71) and y ,= z. Having jus-

tied equation (2.24), it is now clear that in order to prove y , Fr ([y/z][z/x]),

it is sucient to prove that y , Fr ([y/z]). Since y , Var(), we can ap-

ply proposition (76) once more, and having already shown z , Fr () while

proving the equivalence

1

, we obtain Fr ([y/z]) = Fr (). Hence, it is

sucient to prove that y , Fr () which follows immediately from y , Var()

and Fr () Var(). This completes our proof of the equivalence (2.20). It re-

mains to show that the equivalence (2.21) is true. Using proposition (100), it is

sucient to prove that

) Var([y/x][x/z]). We

already know that z , Var(

quence of proposition (71) and x ,= z. So we need to show that

[y/x][x/z].

From

1

[y/x] and

1

we obtain [y/x]

cient to prove that [y/x] [y/x][x/z]. Using proposition (101), it is sucient

to show that x , Var([y/x]) and z , Fr ([y/x]). The fact that x , Var([y/x])

is an immediate consequence of proposition (71) and x ,= y. So it remains to

show that z , Fr ([y/x]), which in fact was already proved in the course of

proving the equivalence

1

.

Having shown that is a reexive, symmetric and transitive relation on

P(V ), it remains to prove that it is also a congruent relation on P(V ). However,

this cannot be done before we show the implication .

Proposition 108 Let be the almost strong equivalence and be the strong

substitution congruence on P(V ), where V is a set. For all , P(V ):

Proof

Let , P(V ) such that . We need to show that . We shall con-

sider the ve possible cases of denition (102) in relation to . Suppose rst

that = P

0

(V ). From the reexivity of the strong substitution congru-

ence, it is clear that . Suppose next that = = . Then we also have

. We now assume that =

1

2

and =

1

2

where

1

1

and

2

2

. The strong substitution congruence being a congruent relation on

P(V ), we obtain . Next we assume that = x

1

and = x

1

where

1

1

and x V . Again, the strong substitution congruence being a congru-

ent relation we obtain . Finally we assume that = x

1

and = y

1

where x ,= y, and there exists P(V ) such that

1

,

1

[y/x] and

121

y , Var(). Using once again the fact that the strong substitution congruence

is a congruent relation, we see that x and y [y/x]. By symmetry

and transitivity of the strong substitution congruence, it is therefore sucient

to show that x y [y/x] which follows immediately from x ,= y, y , Var()

and denition (97).

We are now in a position to show that is a congruent relation, which is

the last part missing before we can conclude that is a congruence on P(V ).

Proposition 109 Let be the almost strong equivalence relation on P(V )

where V is a set. Then is a congruent relation on P(V ).

Proof

From proposition (105), the almost strong equivalence is reexive and so

. We now assume that =

1

2

and =

1

2

where

1

1

and

2

2

. We need to show that . However from proposition (108) we

have

1

1

and

2

2

and it follows from denition (102) that . We

now assume that = x

1

and = x

1

where

1

1

and x V . We need

to show that . Once again from proposition (108) we have

1

1

and

consequently from denition (102) we obtain .

Proposition 110 Let be the almost strong equivalence relation on P(V )

where V is a set. Then is a congruence on P(V ).

Proof

We need to show that is reexive, symmetric, transitive and that it is a con-

gruent relation on P(V ). From proposition (105), the relation is reexive.

From proposition (106) it is symmetric while from proposition (107) it is tran-

sitive. Finally from proposition (109) the relation is a congruent relation.

So is a congruence on P(V ) such that R

0

. We conclude this section

with the equivalence and summarize with theorem (11) below.

Proposition 111 Let be the almost strong equivalence and be the strong

substitution congruence on P(V ), where V is a set. For all , P(V ):

Proof

From proposition (108) it is sucient to show the implication or equivalently

the inclusion . Since is the strong substitution congruence on P(V ), it

is the smallest congruence on P(V ) which contains the set R

0

of denition (97).

In order to show the inclusion it is therefore sucient to show that is

a congruence on P(V ) such that R

0

. The fact that it is a congruence stems

from proposition (110). The fact that R

0

follows from proposition (104).

122

We are now ready to provide a characterization of the strong substitution

congruence. It should be noted that (v) of theorem (11) below is a notational

shortcut for the more detailed statement = x

1

, = y

1

, x ,= y and

there exists a formula P(V ) such that

1

,

1

[y/x] , y , Var().

Theorem 11 Let be the strong substitution congruence on P(V ) where V is

a set. For all , P(V ), if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = x

1

and

1

1

(v) = x

1

, = y

1

, x ,= y ,

1

,

1

[y/x] , y , Var()

Proof

Immediately follows from proposition (111) and denition (102).

2.2.6 Counterexamples of the Strong Congruence

A fair amount of work has been devoted to the study of the strong substitution

congruence, culminating with its characterization in the form of theorem (11).

Unfortunately, most of this work was done vain. As we shall now discover, the

strong substitution congruence is not the appropriate notion to study. It may

give us insight and will certainly help us in the forthcoming developments, it

may be commonly referred to in the literature, but it is marred by a major

aw. The problem is as follows: when V = x, y with x ,= y, i.e. when V has

only two elements, the formulas = xy(x y) and = yx(y x) are not

equivalent. This is highly disappointing. If there is one thing we would expect of

a substitution congruence, it is certainly to be such that and be equivalent.

This leaves us with a painful alternative: we either give up on the possibility

of nite sets of variables V , or we abandon the notion of strong substitution

congruence and all the work that has gone along with it. As already hinted,

we are not prepared to accept that nothing interesting can be said with nite

sets V . There must be an appropriate notion of substitution congruence to be

dened on P(V ), and we shall therefore continue our search for it. But before

we resume our quest, we shall rst prove that the problem truly exists:

Proposition 112 Let be the strong substitution congruence on P(V ) where

V = x, y and x ,= y. Then, we have:

xy (x y) , yx(y x)

Proof

Dene

1

= y(x y) and

1

= x(y x). We need to show that x

1

, y

1

.

Suppose to the contrary that x

1

y

1

. We shall derive a contradiction.

123

Since x ,= y, from theorem (11) of page 123 there exists P(V ) such that

1

,

1

[y/x] and y , Var(). From

1

we see that y(x y) ,

and applying theorem (11) once more, since V = x, y we see that must

be of the form = x

1

or = y

1

. However the case = y

1

is impossi-

ble since y , Var(). Suppose now that = x

1

for some

1

P(V ). Then

x , Fr () = Fr (

1

)x. However we have y(x y) from proposition (98)

we have x = Fr ( y(x y) ) = Fr (). This is our desired contradiction.

As we have just seen, the strong substitution congruence is inadequate when

V has two elements. In fact, it is also inadequate when V has three elements as

the following proposition shows. We do not intend to spend too much time prov-

ing negative results, but we certainly believe the strong substitution congruence

on P(V ) will fail whenever V is a nite set.

Proposition 113 Let be the strong substitution congruence on P(V ) where

V = x, y, z and x ,= y, y ,= z and x ,= z. Then, we have:

xyz [(x y) (y z)] , yzx[(y z) (z x)]

Proof

Dene

1

= yz [(x y) (y z)] and

1

= zx[(y z) (z x)]. We

need to show that x

1

, y

1

. Suppose to the contrary that x

1

y

1

. We

shall derive a contradiction. Since x ,= y, from theorem (11) of page 123 there

exists P(V ) such that

1

,

1

[y/x] and y , Var(). From

1

we

see that yz [(x y) (y z)] , and applying theorem (11) once more,

since V = x, y, z we see that must be of the form = x

1

, = y

1

or = z

1

. However the case = y

1

is impossible since y , Var().

Furthermore, the case = x

1

is also impossible since this would imply that

x , Fr (), while from yz [(x y) (y z)] and proposition (98):

x = Fr ( yz [(x y) (y z)] ) = Fr ()

It follows that = z

1

for some

1

P(V ). Hence we see that:

yz [(x y) (y z)] z

1

Applying theorem (11) once more, there exists P(V ) such that we have

z [(x y) (y z)] ,

1

[z/y] and z , Var(). From the strong equiv-

alence z [(x y) (y z)] and yet another application of theorem (11),

since V = x, y, z we see that must be of the form = x

1

, = y

1

or

= z

1

. However, the case = z

1

is impossible since z , Var(). Suppose

now that = x

1

. Then x , Fr (), contradicting the equality:

x, y = Fr ( z [(x y) (y z)] ) = Fr ()

obtained from z [(x y) (y z)] and proposition (98). Since y Fr ()

we conclude similarly that = y

1

is equally impossible.

124

2.2.7 The Substitution Congruence

Prior to dening the strong substitution congruence in page 110, we discussed

what we believed were the requirements a substitution congruence ought to meet.

Unfortunately, despite our best eorts, we failed to dene the right notion. So

we are back to our starting point, enquiring about the appropriate denition of

a substitution congruence. In proposition (101) we showed that given a formula

, we have the equivalence [y/x] provided y , Var() and x , Fr ().

The key idea underlying this proposition is that some substitution should not

aect the meaning of a formula. This may give us a new angle of attack. In

this section, we dene those substitutions which we believe should have this

invariance property of not altering the equivalence class of a given formula ,

i.e. such that () . We shall then dene a new substitution congruence.

In proposition (101) we required that x , Fr (). This condition ensures

the substitution [y/x] does not aect free variables of the formula . There is

clearly a good reason for this. A substitution congruence is all about potentially

diering quantication variables. We cannot expect to have () unless the

free variables of are invariant under the substitution . Furthermore, proposi-

tion (101) also required y , Var(). This condition guarantees the substitution

[y/x] is valid for . This motivates the following denition:

Denition 114 Let V be a set and : V V be a map. Let P(V ). We

say that is an admissible substitution for if and only if it satises:

(i) valid for

(ii) u Fr () , (u) = u

Having dened admissible substitutions with respect to a formula , our

belief is that an appropriate substitution congruence should be such that

() whenever is admissible for . If we consider = xy(x y)

and the permutation = [y : x] for x ,= y, then is clearly admissible for .

Yet we know from proposition (112) that the equivalence () fails when

V = x, y and is the strong substitution congruence on P(V ). To remedy

this failure, we may conjecture that an appropriate denition of a substitution

congruence should be made in reference to ordered pairs (, ()) where is

admissible for . In other words, if we dene:

R

1

= ( , () ) : P(V ) , : V V admissible for

the right substitution congruence should simply be dened as the congruence on

P(V ) generated by R

1

. As it turns out, we shall adopt a dierent but equivalent

denition of the substitution congruence, in terms of a generator R

0

which is

a lot smaller than R

1

. In eect, rather than considering all possible ordered

pair (, ()) where is admissible for , we restrict our attention to the case

when = x

1

and = [y : x] for x ,= y and y , Fr (

1

), thereby obtaining

a denition of the substitution congruence which is formally very similar to

denition (97) of the strong substitution congruence.

125

Denition 115 Let V be a set. We call substitution congruence on P(V ) the

congruence on P(V ) generated by the following set R

0

P(V ) P(V ):

R

0

= ( x

1

, y

1

[y : x] ) :

1

P(V ) , x, y V , x ,= y , y , Fr (

1

)

where [y : x] denotes the permutation of x and y as per denition (66).

We have now dened what we hope will be a denitive notion of substitution

congruence. However, the denition (115) we chose does not make reference

to ordered pairs (, ()) where is an admissible substitution for . One of

our rst task is to make sure denition (115) is equivalent to having dened

the substitution congruence as generated by these ordered pairs. We start by

showing that () whenever is admissible for .

Proposition 116 Let be the substitution congruence on P(V ) where V is a

set. Let P(V ) and : V V be an admissible substitution for . Then:

()

Proof

We need to show the property [ ( admissible for ) () ] for all

P(V ). We shall do so by structural induction, using theorem (3) of page 32.

Since P

0

(V ) is a generator of P(V ), we shall rst show that the property is true

on P

0

(V ). So let = (x y) P

0

(V ) where x, y V . We assume that

: V V is an admissible substitution for . We need to show that ().

However since Fr () = x, y and is an admissible substitution for , we have

(x) = x and (y) = y and consequently:

() = (x y) = ( (x) (y) ) = (x y) =

and in particular we see that (). We now check that the property is

true for = . Note that any map : V V is an admissible substitution

for . Since we always have = (), it follows that (). We now

check that the property is true for =

1

2

if it is true for

1

,

2

P(V ).

So we assume that : V V is an admissible substitution for . We need

to show that (). Since =

1

2

and () = (

1

) (

2

), the

substitution congruence being a congruent relation on P(V ), it is sucient to

show that

1

(

1

) and

2

(

2

). First we show that

1

(

1

). Having

assumed the property is true for

1

, it is sucient to show that is an ad-

missible substitution for

1

. Since admissible for , in particular it is valid

for and it follows from proposition (87) that it is also valid for

1

. So it

remains to show that (u) = u for all u Fr (

1

) which follows immediately

from Fr () = Fr (

1

) Fr (

2

) and the fact that (u) = u for all u Fr ().

So we have proved that

1

(

1

) and we show similarly that

2

(

2

).

We now need to check that the property is true for = x

1

if it is true for

1

P(V ). So we assume that : V V is an admissible substitution for

. We need to show that (). We shall distinguish two cases: rst we

assume that (x) = x. Then () = x(

1

) and in order to show (),

126

the substitution congruence being a congruent relation on P(V ), it is sucient

to show that

1

(

1

). Having assumed the property is true for

1

, it is

therefore sucient to prove that is an admissible substitution for

1

. Since

admissible for , in particular it is valid for and it follows from proposi-

tion (88) that it is also valid for

1

. So it remains to show that (u) = u for all

u Fr (

1

). We shall distinguish two further cases: rst we assume that u = x.

Then (u) = u is true from our assumption (x) = x. So we assume that u ,= x.

It follows that u Fr (

1

) x = Fr (), and since is admissible for , we

conclude that (u) = u. This completes our proof of () in the case when

(x) = x. We now assume that (x) ,= x. Let y = (x). Then () = y (

1

)

and we need to show that x

1

y (

1

). However, since [y : x] [y : x] is the

identity mapping we have = [y : x]

: V V is dened

as

= [y : x] . It follows that (

1

) =

(

1

)[y : x] and we need to show

that x

1

y

(

1

)[y : x]. Let us accept for now that y , Fr (

(

1

)). Then

from denition (115) we obtain x

(

1

) y

(

1

)[y : x], and it is there-

fore sucient to prove that x

1

x

(

1

). So we see that it is sucient

to prove

1

(

1

) provided we can justify the fact that y , Fr (

(

1

)).

First we show that

1

(

1

). Having assumed our property is true for

1

it is sucient to prove that

is admissible for

1

. However, we have already

seen that is valid for

1

. Furthermore, since [y : x] is an injective map, from

proposition (86) it is a valid substitution for (

1

). It follows from proposi-

tion (91) that

= [y : x] is valid for

1

. So in order to prove that

is

admissible for

1

, it remains to show that

1

). So let

u Fr (

1

). We shall distinguish two cases: rst we assume that u = x. Then

is in fact an element of Fr (). Having assumed is admissible for we obtain

(u) = u. We also obtain the fact that is valid for = x

1

and consequently

(u) ,= (x), i.e. u ,= y. Thus

completes our proof that

is admissible for

1

and

1

(

1

). It remains to

show that y , Fr (

(

1

)). So suppose to the contrary that y Fr (

(

1

)). We

shall obtain a contradiction. Using proposition (74) there exists u Fr (

1

) such

that y =

is admissible for

1

we have

(u) = u

and consequently y = u Fr (

1

). From the assumption y = (x) ,= x we in

fact have y Fr (). So from the admissibility of for we obtain (y) = y

and furthermore from the validity of for = x

1

we obtain (y) ,= (x). So

we conclude that y ,= (x) which contradicts our very denition of y.

We are now in a position to check that the substitution congruence is also

generated by the set of ordered pairs (, ()) where is admissible for .

Proposition 117 Let V be a set. Then the substitution congruence on P(V )

is also generated by the following set R

1

P(V ) P(V ):

R

1

= ( , () ) : P(V ) , : V V admissible for

Proof

Let denote the substitution congruence on P(V ) and be the congruence

127

on P(V ) generated by R

1

. We need to show that =. First we show that

. Since is the smallest congruence on P(V ) which contains the set R

0

of denition (115), in order to prove it is sucient to prove that R

0

.

So let

1

P(V ) and x, y V be such that x ,= y and y , Fr (

1

). Dene

= x

1

and = y

1

[y : x]. We need to show that . The congruence

being generated by R

1

it is sucient to prove that (, ) R

1

. However, if

we dene : V V by setting = [y : x] we have:

= y

1

[y : x] = (x) (

1

) = (x

1

) = ()

Hence, in order to show (, ) R

1

, it is sucient to prove that is an ad-

missible substitution for . Being injective, it is clear from proposition (86)

that is valid for . So we need to prove that (u) = u for all u Fr ().

So let u Fr (). It is sucient to prove that u , x, y. The fact that

u ,= x is clear from u Fr () = Fr (

1

) x. The fact that u ,= y follows

from u Fr () Fr (

1

) and the assumption y , Fr (

1

). We now show that

. Since is the smallest congruence on P(V ) which contains the set R

1

,

it is sucient to show that R

1

. So let P(V ) and : V V be an

admissible substitution for . We need to show that (). But this follows

immediately from proposition (116).

2.2.8 Free Variable and Substitution Congruence

A lot of the work which was done for the strong substitution congruence needs

to be done all over again for the substitution congruence. We start by showing

that equivalent formulas have the same free variables. The following proposition

is the counterpart of proposition (98) of the strong substitution congruence.

Proposition 118 Let denote the substitution congruence on P(V ) where V

is a set. Then for all , P(V ) we have the implication:

Fr () = Fr ()

Proof

Let be the relation on P(V ) dened by Fr () = Fr (). We need

to show that or equivalently that the inclusion holds.

Since is the substitution congruence on P(V ), it is the smallest congruence

on P(V ) which contains the set R

1

of proposition (117). In order to show the

inclusion it is therefore sucient to show that is a congruence on P(V )

such that R

1

. However, we already know from proposition (77) that is

a congruence on P(V ). So it remains to show that R

1

. So let P(V )

and : V V be an admissible substitution for . We need to show that

() or equivalently that Fr () = Fr (()). However, since is valid for

, from proposition (85) we have Fr (()) = (Fr ()) so we need to show that

Fr () = (Fr ()) which follows from the fact that (u) = u for all u Fr ().

128

Proposition 119 Let denote the substitution congruence on P(V ) where V

is a set. Then for all

1

P(V ) and x, y V such that x, y , Fr (

1

) we have:

x

1

y

1

Proof

From y , Fr (

1

) and denition (115) we see that x

1

y

1

[y : x]. So

we need to show that y

1

[y : x] y

1

. Hence it is sucient to prove that

1

[y : x]

1

. Using proposition (116), we simply need to argue that [y : x]

is an admissible substitution for

1

. Being injective, from proposition (86) it

is a valid substitution for

1

. So it remains to show that [y : x](u) = u for all

u Fr (

1

) which follows immediately from x, y , Fr (

1

).

2.2.9 Substitution and Substitution Congruence

We now show that equivalence between formulas is invariant under injective

substitution. The following proposition is the counterpart of proposition (99)

of the strong substitution congruence.

Proposition 120 Let V and W be sets and : V W be an injective map.

Let be the substitution congruence both on P(V ) and P(W). Then:

() ()

for all , P(V ), where : P(V ) P(W) is also the substitution mapping.

Proof

Let be the relation on P(V ) dened by () (). We need to

show that or equivalently that the inclusion holds. Since

is the substitution congruence on P(V ), it is the smallest congruence on P(V )

which contains the set R

0

of denition (115). In order to show the inclusion

it is therefore sucient to show that is a congruence on P(V ) such that

R

0

. However, we already know from proposition (58) that is a congruence

on P(V ). So it remains to show that R

0

. So let

1

P(V ) and x, y V

be such that x ,= y and y , Fr (

1

). Dene = x

1

and = y

1

[y : x]. We

need to show that or equivalently that () (). In order to do so, it

is sucient to show that the ordered pair ((), ()) belongs to the generator

R

0

of the substitution congruence on P(W) as per denition (115). In other

words, it is sucient to show the existence of

1

P(W) and x

, y

W with

x

,= y

and y

, Fr (

1

), such that () = x

1

and () = y

1

[y

: x

]. Take

1

= (

1

) P(W) together with x

= (x) W and y

= (y) W. Then:

() = (x

1

) = (x) (

1

) = x

1

Furthermore, from proposition (67) we have [y : x] = [(y): (x)] and so:

() = (y

1

[y : x])

129

= (y) (

1

[y : x])

= y

([y : x](

1

))

= y

[y : x] (

1

)

= y

[(y): (x)] (

1

)

= y

[y

: x

](

1

)

= y

1

[y

: x

]

So it remains to show that x

,= y

and y

, Fr (

1

). Since : V W is an

injective map, x

,= y

y

, Fr (

1

). So suppose to the contrary that y

Fr (

1

). We shall arrive at a

contradiction. Since

1

= (

1

), from proposition (75) we have:

Fr (

1

) = (u) : u Fr (

1

)

It follows that there exists u Fr (

1

) such that y

= (u). However, y

= (y)

and : V W is an injective map. Hence we see that u = y and consequently

y Fr (

1

) which contradicts our initial assumption of y , Fr (

1

).

2.2.10 Characterization of the Substitution Congruence

Just like the strong substitution congruence, the substitution congruence was

dened in terms of a generator. This makes it convenient to prove an equivalence

, but inconvenient when it comes to proving this equivalence does not hold.

We shall therefore follow a similar strategy to that leading up to theorem (11)

of page 123. We refer the reader to the discussion preceding denition (102).

We shall dene a new relation on P(V ) and prove that .

The point of the relation is to give us more insight about the formulas and

whenever we have . Most of the hard work consists in proving that is

a transitive relation. However, this will be a lot simpler than in the case of the

strong substitution congruence. In fact comparing denition (121) below to its

counterpart denition (102), we see that these denitions are formally identical

with a dierence occurring solely in (v). For the strong substitution congruence:

(v) = x

1

, = y

1

, x ,= y ,

1

,

1

[y/x] , y , Var()

while for the substitution congruence we have:

(v) = x

1

, = y

1

, x ,= y ,

1

1

[y : x] , y , Fr (

1

)

This is the beauty of the substitution congruence. Not only does it work equally

well for V nite and V innite or so we believe, but it is also a lot simpler in

many respects. It involves the injective permutation [y : x] rather than the

non-injective substitution [y/x]. It makes no reference to the existence of a

third formula in the case of (v) but directly gives us

1

1

[y : x] instead.

The proofs in the case of the substitution congruence are simpler than their

counterparts of the strong substitution congruence.

130

Denition 121 Let be the substitution congruence on P(V ) where V is a

set. Let , P(V ). We say that is almost equivalent to and we write

, if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = x

1

and

1

1

(v) = x

1

, = y

1

, x ,= y ,

1

1

[y : x] , y , Fr (

1

)

Proposition 122 (i), (ii), (iii), (iv), (v) of def. (121) are mutually exclusive.

Proof

This is an immediate consequence of theorem (2) of page 21 applied to the free

universal algebra P(V ) with free generator P

0

(V ), where a formula P(V )

is either an element of P

0

(V ), or the contradiction constant = , or an im-

plication =

1

2

, or a quantication = x

1

, but cannot be equal to

any two of those things simultaneously. Since (v) can only occur with x ,= y,

it also follows from theorem (2) that (v) cannot occur at the same time as (iv).

Having dened the relation , we now proceed to prove the equivalence

. The strategy is the same as the one adopted for the strong

substitution congruence. The dicult part is to show the inclusion , which

we achieve by showing R

0

together with the fact that is a congruence.

Proposition 123 Let be the almost equivalence relation on P(V ) where V

is a set. Then contains the generator R

0

of denition (115).

Proof

Suppose x, y V and

1

P(V ) are such that x ,= y and y , Fr (

1

). Note that

this cannot happen unless V has at least two elements. We dene = x

1

and

= y

1

[y : x]. We need to show that . We shall do so by proving that

(v) of denition (121) is the case. Dene

1

=

1

[y : x]. Then we have = x

1

,

= y

1

, x ,= y and y , Fr (

1

). So it remains to show that

1

1

[y : x]

which is immediate from the reexivity of .

Proposition 124 Let be the almost equivalence relation on P(V ) where V

is a set. Then is a reexive relation on P(V ).

Proof

Let P(V ). We need to show that . From theorem (2) of page 21

we know that is either an element of P

0

(V ), or = or =

1

2

or

= x

1

for some

1

,

2

P(V ) and x V . We shall consider these four

mutually exclusive cases separately. Suppose rst that P

0

(V ): then from

= we obtain . Suppose next that = : then it is clear that .

131

Suppose now that =

1

2

. Since the substitution congruence is reexive,

we have

1

1

and

2

2

. It follows from (iii) of denition (121) that .

Suppose nally that = x

1

. From

1

1

and (iv) of denition (121) we

conclude that . In all cases, we have proved that .

Proposition 125 Let be the almost equivalence relation on P(V ) where V

is a set. Then is a symmetric relation on P(V ).

Proof

Let , P(V ) be such that . We need to show that . We shall

consider the ve possible cases of denition (121): suppose rst that P

0

(V ),

P

0

(V ) and = . Then it is clear that . Suppose next that =

and = . Then we also have . We now assume that =

1

2

and

=

1

2

with

1

1

and

2

2

. Since the substitution congruence

on P(V ) is symmetric, we have

1

1

and

2

2

. Hence we have .

We now assume that = x

1

and = x

1

with

1

1

. Then once again

by symmetry of the substitution congruence we have

1

1

and consequently

. We nally consider the last possible case of = x

1

, = y

1

with

x ,= y,

1

1

[y : x] and y , Fr (

1

). We need to show that

1

1

[x: y] and

x , Fr (

1

). First we show that

1

1

[x: y]. Note that [x : y] and [y : x] are

in fact the same substitutions. So we need to show that

1

1

[y : x]. Since

1

1

[y : x] and [y : x] : V V is injective, from proposition (120) we obtain:

1

[y : x]

1

[y : x][y : x]

It is therefore sucient to show that

1

1

[y : x][y : x] which follows from

proposition (56) and the fact that [y : x] [y : x] is the identity mapping. We now

show that x , Fr (

1

). From

1

1

[y : x] and proposition (118) we obtain

Fr (

1

) = Fr (

1

[y : x]). So we need to show that x , Fr (

1

[y : x]). So suppose

to the contrary that x Fr (

1

[y : x]). We shall derive a contradiction. Since

[y : x] is injective, from proposition (75) we have Fr (

1

[y : x]) = [y : x](Fr (

1

))

and consequently there exists u Fr (

1

) such that x = [y : x](u). It follows

that u = y which contradicts the assumption y , Fr (

1

).

Showing that is a transitive relation is the dicult part of this section.

The following proposition is the counterpart of proposition (107) of the strong

substitution congruence. Its proof is however a lot simpler.

Proposition 126 Let be the almost equivalence relation on P(V ) where V

is a set. Then is a transitive relation on P(V ).

Proof

Let , and P(V ) be such that and . We need to show that

. We shall consider the ve possible cases of denition (121) in relation to

. Suppose rst that , P

0

(V ) and = . Then from we obtain

, P

0

(V ) and = . It follows that , P

0

(V ) and = . Hence we

132

see that . We now assume that = = . Then from we obtain

= = . It follows that = = and consequently . We now assume

that =

1

2

and =

1

2

with

1

1

and

2

2

. From we

obtain =

1

2

with

1

1

and

2

2

. The substitution congruence

being transitive, it follows that

1

1

and

2

2

. Hence we see that .

We now assume that = x

1

and = x

1

with

1

1

, for some x V .

From only the cases (iv) and (v) of denition (121) are possible. First we

assume that (iv) is the case. Then = x

1

with

1

1

. The substitution

congruence being transitive, we obtain

1

1

and consequently . We

now assume that (v) is the case. Then = y

1

for some y V with x ,= y,

1

1

[y : x] and y , Fr (

1

). In order to prove it is sucient to show

that

1

1

[y : x] and y , Fr (

1

). First we show that

1

1

[y : x]. It is

sucient to prove that

1

[y : x]

1

[y : x] which follows from

1

1

, using

proposition (120) and the fact that [y : x] : V V is injective. We now show that

y , Fr (

1

). From

1

1

and proposition (118) we obtain Fr (

1

) = Fr (

1

).

Hence it is sucient to show that y , Fr (

1

) which is true by assumption. It

remains to consider the last possible case of denition (121). So we assume that

= x

1

and = y

1

with x ,= y,

1

1

[y : x] and y , Fr (

1

). From

only the cases (iv) and (v) of denition (121) are possible. First we

assume that (iv) is the case. Then = y

1

with

1

1

. The substitution

congruence being transitive, we obtain

1

1

[y : x] and consequently .

We now assume that (v) is the case. Then = z

1

for some z V with y ,= z,

1

1

[z : y] and z , Fr (

1

). We shall now distinguish two cases. First we

assume that x = z. Then = x

1

and = x

1

and in order to show that

it is sucient to prove that

1

1

. From

1

1

[z : y] and z = x we

obtain

1

1

[y : x] and it is therefore sucient to prove that

1

1

[y : x].

However, we know that

1

1

[y : x] and since [y : x] : V V is injective,

from proposition (120) we obtain

1

[y : x]

1

[y : x][y : x]. It is therefore

sucient to show that

1

1

[y : x][y : x] which follows from proposition (56)

and the fact that [y : x] [y : x] is the identity mapping. This completes our

proof in the case when x = z. We now assume that x ,= z. So we have x ,= y,

y ,= z and x ,= z, with = x

1

, = y

1

and = z

1

. Furthermore,

1

1

[y : x] and

1

1

[z : y] while we have y , Fr (

1

) and z , Fr (

1

),

and we need to show that . So we need to prove that

1

1

[z : x]

and z , Fr (

1

). First we show that z , Fr (

1

). So suppose to the contrary

that z Fr (

1

). We shall derive a contradiction. Since [y : x] is injective,

from proposition (75) we have Fr (

1

[y : x]) = [y : x](Fr (

1

)). It follows that

z = [y : x](z) is also an element of Fr (

1

[y : x]). However we have

1

1

[y : x]

and consequently from proposition (118) we obtain Fr (

1

) = Fr (

1

[y : x]).

Hence we see that z Fr (

1

) which is our desired contradiction. We shall

now prove that

1

1

[z : x]. Since

1

1

[z : y], it is sucient to show that

1

[z : y]

1

[z : x]. However we know that

1

1

[y : x] and since [z : y] : V V

is injective, from proposition (120) we obtain

1

[z : y]

1

[y : x][z : y]. It is

therefore sucient to show that

1

[y : x][z : y]

1

[z : x]. Let us accept for now:

[z : x] = [y : x] [z : y] [y : x] (2.25)

133

Then we simply need to show that

1

[y : x][z : y]

1

[y : x][z : y][y : x]. Using

proposition (116), it is therefore sucient to prove that [y : x] is an admissible

substitution for

1

[y : x][z : y]. Since [y : x] : V V is injective, from proposi-

tion (86) it is valid for

1

[y : x][z : y]. So it remains to show that [y : x](u) = u for

all u Fr (

1

[y : x][z : y]). It is therefore sucient to prove that neither x nor y

are elements of Fr (

1

[y : x][z : y]). However, since [z : y] [y : x] : V V is injec-

tive, from proposition (75) we have Fr (

1

[y : x][z : y]) = [z : y] [y : x](Fr (

1

)). So

we need to show that x and y do not belong to [z : y] [y : x](Fr(

1

)). First we

do this for x. Suppose x = [z : y] [y : x](u) for some u Fr (

1

). By injectivity

we must have u = y, contradicting the assumption y , Fr (

1

). We now deal

with y. So suppose y = [z : y] [y : x](u) for some u Fr (

1

). By injectivity we

must have u = z, contradicting the fact that z , Fr (

1

) which we have already

proven. It remains to prove that equation (2.25) holds. So let u V . We need:

[z : x](u) = [y : x] [z : y] [y : x](u)

This is clearly the case when u , x, y, z. The cases u = x, u = y and u = z

are easily checked.

The implication is the simple one. We need to prove it

now in order to show that is a congruent relation.

Proposition 127 Let be the almost equivalence and be the substitution

congruence on P(V ), where V is a set. For all , P(V ):

Proof

Let , P(V ) such that . We need to show that . We shall

consider the ve possible cases of denition (121) in relation to . Suppose

rst that = P

0

(V ). From the reexivity of the substitution congruence,

it is clear that . Suppose next that = = . Then we also have

. We now assume that =

1

2

and =

1

2

where

1

1

and

2

2

. The substitution congruence being a congruent relation on P(V ),

we obtain . Next we assume that = x

1

and = x

1

where

1

1

and x V . Again, the substitution congruence being a congruent relation we

obtain . Finally we assume that = x

1

and = y

1

where x ,= y,

1

1

[y : x] and y , Fr (

1

). For the last time, the substitution congruence

being a congruent relation we obtain y

1

[y : x]. Hence in order to show

it is sucient to show that x

1

y

1

[y : x] which follows immediately

from x ,= y, y , Fr (

1

) and denition (115).

Proposition 128 Let be the almost equivalence relation on P(V ) where V

is a set. Then is a congruent relation on P(V ).

Proof

From proposition (124), the almost equivalence is reexive and so . We

134

now assume that =

1

2

and =

1

2

where

1

1

and

2

2

.

We need to show that . However from proposition (127) we have

1

1

and

2

2

and it follows from denition (121) that . We now assume

that = x

1

and = x

1

where

1

1

and x V . We need to show that

. Once again from proposition (127) we have

1

1

and consequently

from denition (121) we obtain .

Proposition 129 Let be the almost equivalence relation on P(V ) where V

is a set. Then is a congruence on P(V ).

Proof

We need to show that is reexive, symmetric, transitive and that it is a con-

gruent relation on P(V ). From proposition (124), the relation is reexive.

From proposition (125) it is symmetric while from proposition (126) it is tran-

sitive. Finally from proposition (128) the relation is a congruent relation.

So we have shown that is a congruence on P(V ) which contains the genera-

tor R

0

of the substitution congruence. The equality = follows immediately.

Proposition 130 Let be the almost equivalence and be the substitution

congruence on P(V ), where V is a set. For all , P(V ):

Proof

From proposition (127) it is sucient to show the implication or equivalently

the inclusion . Since is the substitution congruence on P(V ), it is the

smallest congruence on P(V ) which contains the set R

0

of denition (115). In

order to show the inclusion it is therefore sucient to show that is a

congruence on P(V ) such that R

0

. The fact that it is a congruence stems

from proposition (129). The fact that R

0

follows from proposition (123).

We have no need to remember the relation . The equality = is wrapped

up in the following theorem for future reference. This is the counterpart of

theorem (11) of page 123 of the strong substitution congruence.

Theorem 12 Let be the substitution congruence on P(V ) where V is a set.

For all , P(V ), if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = x

1

and

1

1

(v) = x

1

, = y

1

, x ,= y ,

1

1

[y : x] , y , Fr (

1

)

Proof

Immediately follows from proposition (130) and denition (121).

135

2.2.11 Substitution Congruence vs Strong Congruence

In denition (97) we initially dened the strong substitution congruence think-

ing it was the appropriate notion to study. We then realized in proposition (112)

and proposition (113) that the strong substitution congruence is in fact unsatis-

factory in the case when the set of variables V has two or three elements. For ex-

ample, when V = x, y with x ,= y, we saw that the formulas = xy(x y)

and = yx(y x) failed to be equivalent. It is easy to believe that similar

failures can be uncovered whenever V is a nite set. So we decided to search for

a new notion of substitution congruence which led to denition (115). In this

section, we shall attempt to show that this new substitution congruence has all

the advantages of the strong substitution congruence, but without its aws.

First we look at the paradox of proposition (112). So let V = x, y with

x ,= y and = xy(x y) with = yx(y x). Then setting

1

= y(x y)

we have = x

1

and = y

1

[y : x]. Since x ,= y and y , Fr (

1

) we conclude

from denition (115) that where denotes the substitution congruence.

So the paradox of proposition (112) is lifted. Suppose now that V = x, y, z

where x, y and z are distinct, and dene = xyz [(x y) (y z)]

and = yzx[(y z) (z x)]. We claim that . If this is the

case, then the paradox of proposition (113) is also lifted. Let be the formula

dened by = yxz [(y x) (x z)]. Then is simply the formula

obtained from by permuting the variables x and y. In order to show

it is sucient to prove that and . First we show that .

Dening

1

= yz [(x y) (y z)] we have = x

1

and = y

1

[y : x].

Since x ,= y and y , Fr (

1

) we conclude from denition (115) that . We

now show that . Setting = xz [(y x) (x z)] together with

. It is therefore

sucient to show that

. Dening

1

= z [(y x) (x z)] we obtain

= x

1

and

= z

1

[z : x]. Since x ,= z and z , Fr (

1

) we conclude from

denition (115) that

is not subject to the paradoxes of proposition (112) and proposition (113).

Having reviewed the known shortcomings of the strong substitution congru-

ence, we shall now establish that the new substitution congruence is in fact

pretty much the same notion as the old. Specically, we shall see that both

congruences coincide when V is an innite set. Furthermore, even when V is

a nite set we shall see that two formulas and which are simply equiva-

lent with respect to the substitution congruence, are in fact strongly equivalent

provided and do not use up all the variables in V , i.e. Var() ,= V or

Var() ,= V . First we check that the strong substitution congruence is indeed

a relation which is stronger than the substitution congruence:

Proposition 131 Let be the substitution congruence and be the strong

substitution congruence on P(V ) where V is a set. Then for all , P(V ):

Proof

We need to show the inclusion . However, using denition (97) the strong

136

substitution congruence is generated by the following set:

R

0

= ( x

1

, y

1

[y/x] ) :

1

P(V ) , x, y V , x ,= y , y , Var(

1

)

while from denition (115) the congruence is generated by the set:

R

1

= ( x

1

, y

1

[y : x] ) :

1

P(V ) , x, y V , x ,= y , y , Fr (

1

)

So it is sucient to show that R

0

R

1

which follows from the fact that

1

[y/x] =

1

[y : x] whenever y , Var(

1

) as can be seen from proposition (69).

Proposition 132 Let be the strong substitution congruence on P(V ) where

V is a set. Let P(V ) such that y , Fr () and Var() ,= V . Then we have:

x y [y : x]

Proof

Suppose for now that y , Var(). From proposition (69) we have the equality

[y : x] = [y/x] and the strong equivalence x y [y : x] is therefore a of

consequence y , Var() and denition (97). So the conclusion of the proposition

follows easily with the simple assumption y , Var(). Thus we may assume that

y Var() from now on. Suppose now that P(V ) is such that y , Var()

and . Then for the reasons just indicated we obtain x y [y : x].

Furthermore, the strong substitution congruence being a congruent relation on

P(V ), from we have x x and y [y : x] y [y : x], where we

have used the fact that [y : x] [y : x] which itself follows from the injec-

tivity of [y : x] : V V and proposition (99). By transitivity it follows that

x y [y : x] and the proposition is proved. Thus, it is sucient to show

the existence of P(V ) with y , Var() and . Having assumed the

existence of z V such that z , Var(), let P(V ) be dened as = [z/y].

Note in particular that z ,= y since we have assumed y Var(). The fact that

y , Var() follows immediately from z ,= y and proposition (71). So it remains

to show that or equivalently that [z/y] which is a consequence of

proposition (101) and the facts that z , Var() and y , Fr ().

Proposition 133 Let be the substitution congruence and be the strong

substitution congruence on P(V ) where V is a set. Let , P(V ) be such

that Var() ,= V . Then we have the equivalence:

Proof

The implication follows from proposition (131). So we need to prove .

Specically, given P(V ), we need to show that satises the property:

Var() ,= V [ ]

137

We shall do so by a structural induction argument, using theorem (3) of page 32.

First we assume that = (x y) for some x, y V . As we shall see the con-

dition Var() ,= V will not be used here. So let P(V ) such that .

It is sucient to prove that . In fact it is sucient to show that =

which follows immediately from = (x y) and , using theorem (12) of

page 135. So we now assume that = . Then again from theorem (12) the

condition implies that = and we are done. So we now assume that

=

1

2

where

1

,

2

P(V ) satisfy our property. We need to show the

same is true of . So we assume that Var() ,= V and we consider P(V )

such that . We need to show that . However, using theorem (12)

once more the condition implies that must be of the form =

1

2

where

1

1

and

2

2

. Hence the strong substitution being a congru-

ent relation, in order to show it is sucient to prove that

1

1

and

2

2

. Having assumed our induction property is true for

1

, it follows from

Var(

1

) Var() that Var(

1

) ,= V and

1

1

is therefore an immediate

consequence of

1

1

. We prove similarly that

2

2

which completes the

case when =

1

2

. We now assume that = x

1

where x V and

1

P(V ) satises our property. We need to show the same is true for . So

we assume that Var() ,= V and consider P(V ) such that . We need

to show that . From theorem (12), the condition leads to two

possible cases: must be of the form = x

1

with

1

1

, or it must be of

the form = y

1

with x ,= y,

1

1

[y : x] and y , Fr (

1

). First we assume

that = x

1

which

1

1

. Then in order to show that it is sucient

to prove that

1

1

. Having assumed our induction property is true for

1

,

it follows from Var(

1

) Var() that Var(

1

) ,= V and

1

1

is therefore an

immediate consequence of

1

1

. So we now consider the second case when

= y

1

with x ,= y,

1

1

[y : x] and y , Fr (

1

). We need to show that

. However, using proposition (120) and the fact that [y : x] : V V is

an injective map such that [y : x] [y : x] is the identity mapping, we obtain

immediately

1

[y : x]

1

. Having assumed our property is true for

1

, from

Var(

1

) ,= V we obtain

1

[y : x]

1

. Composing once again on both side by

[y : x] we now argue from proposition (99) that

1

1

[y : x]. Thus in order to

show that it is sucient to prove that x

1

y

1

[y : x] which follows

immediately from proposition (132), y , Fr (

1

) and Var(

1

) ,= V .

So it is now clear that the substitution congruence and strong substitution

congruence are pretty much the same thing. We just need to bear in mind

that an equivalence may fail to imply a strong equivalence in

the case when all variables of V have been used up by both and . We

shall conclude this section by providing counterparts to proposition (116) and

proposition (117) for the strong substitution congruence.

Proposition 134 Let be the strong substitution congruence on P(V ) where

V is a set. Let P(V ) and : V V be an admissible substitution for

such that Var(()) ,= V . Then, we have:

()

138

Proof

Let be the substitution congruence on P(V ). Having assumed is admissible

for , using proposition (116) we obtain (). Since Var(()) ,= V we

conclude from proposition (133) that ().

Proposition (134) allows us to state another characterization of the strong

substitution congruence as the following proposition shows. In denition (97),

the strong substitution congruence was dened in terms of a generator:

R

0

= (, ()) : = x

1

, = [y/x] , x ,= y , y , Var(

1

)

As we shall soon discover, this generator is in fact a subset of the set R

1

of

ordered pairs (, ()) where is admissible for and such that Var(()) ,= V .

Since we now know from proposition (134) that R

1

is itself a subset of the strong

substitution congruence, it follows that R

1

is also a generator of the strong

substitution congruence, which we shall now prove formally:

Proposition 135 Let V be a set. Then the strong substitution congruence on

P(V ) is also generated by the following set R

1

P(V ) P(V ):

R

1

= ( , () ) : P(V ) , : V V admissible for , Var(()) ,= V

Proof

Let denote the strong substitution congruence on P(V ) and be the congru-

ence on P(V ) generated by R

1

. We need to show that =. First we show

that . Since is the smallest congruence on P(V ) which contains the

set R

0

of denition (97), in order to prove it is sucient to prove that

R

0

. So let

1

P(V ) and x, y V be such that x ,= y and y , Var(

1

).

Dene = x

1

and = y

1

[y/x]. We need to show that . The

congruence being generated by R

1

it is sucient to prove that (, ) R

1

.

However, if we dene : V V by setting = [y/x] we have:

= y

1

[y/x] = (x) (

1

) = (x

1

) = ()

Hence, in order to show (, ) R

1

, it is sucient to prove that is an ad-

missible substitution for and furthermore that Var(()) ,= V . The fact that

Var(()) ,= V follows immediately from x , Var([y/x]), which is itself a

consequence of x ,= y and proposition (71). So we need to show that is an

admissible substitution for . First we show that is valid for = [y/x]. This

follows immediately from proposition (90) and the fact that y is not an element

of Var() = Var(

1

) x. Next we show that (u) = u for all u Fr ().

So let u Fr () = Fr (

1

) x. Then in particular u ,= x and consequently

(u) = [y/x](u) = u. This completes our proof of . We now show that

. Since is the smallest congruence on P(V ) which contains the set R

1

,

it is sucient to show that R

1

. So let P(V ) and : V V be an

admissible substitution for such that Var(()) ,= V . We need to show that

(). But this follows immediately from proposition (134).

139

From proposition (135) the strong substitution congruence is generated by

the set of ordered pairs (, ()) where is admissible for and such that

Var(()) ,= V . This is also a aw of the strong substitution congruence as we

feel the condition Var(()) ,= V should not be there. In contrast, as can be seen

from proposition (117), the substitution congruence does not suer from this

condition, as it is simply generated by the set of ordered pairs (, ()) where

is admissible for . Whichever way we look at it, it is clear that the substitution

congruence is a better notion to look at than the strong substitution congruence.

In many respects, it is also a lot simpler. Before we close this section, we may go

back to a question we raised before dening the strong substitution congruence

in page 110. We decided to dene the strong substitution in terms of ordered

pairs (x

1

, y

1

[y/x]) where x ,= y and y , Var(

1

). What if we had opted for

the condition [y/x] valid for x

1

rather than y , Var(

1

) ? It is now clear

from proposition (134) that this would have yielded a congruence identical to

the strong substitution congruence. So we did well to keep it simple.

2.3 Essential Substitution of Variable

2.3.1 Preliminaries

The notion of essential substitution arises from the more general issue of capture-

avoiding substitutions in formal languages with variable binding. This question

is already dealt with in the computer science literature of which by and large,

we are sadly unaware. It is therefore very dicult for us to give due credit to the

work that has already been done. However, we would like to mention the papers

of Murdoch J. Gabbay [22] and Murdoch J. Gabbay and Aad Mathijssen [23],

whose existence came to our attention, and which deal with capture-avoiding

substitutions. Our own approach we think is original, but of course we cannot be

sure. The whole question of capture-avoiding substitutions arises from the fact

that most substitutions : P(V ) P(W) associated with a map : V W

are not capture-avoiding. We introduced the notion of valid substitutions in

denition (83) so as to distinguish those cases when () is capture-avoiding

and those when it is not. This was clearly a step forward but we were still

very short of dening a total map : P(V ) P(W) which would somehow

be associated to : V W, while avoiding capture for every P(V ). Our

solution to the problem relies on the introduction of the minimal transform

mapping / : P(V ) P(

V ) where

V = V N is the direct sum of V and N.

In considering the minimal extension

V of the set V , we are eectively adding

a new set of variables specically for the purpose of variable binding, an idea

which bears some resemblance with the introduction of atoms in the nominal set

approach of Murdoch J. Gabbay. The minimal transform mapping replaces all

bound variables from the set V to the set N. The benet of doing so is immediate

as given a map : V W, the obvious extension :

V

W applied to the

minimal transform /() is now capture-avoiding for all . In other words, the

formula /() is always logically meaningful. However, this formula belongs

140

to the space P(

W) and we are still short of dening an essential substitution

: P(V ) P(W). The breakthrough consists in noting that, provided the set

W is innite or larger than the set V , it is always possible to express the formula

/() as the minimal transform /() for some formula P(W). Using

the axiom of choice, an essential substitution : P(V ) P(W) associated with

the map : V W is simply dened in terms of / = /, and is

uniquely characterized modulo -equivalence, i.e. the substitution congruence.

Of course, anyone interested in computer science and computability in general

will not look favorably upon the use of the axiom of choice. We are dealing with

arbitrary sets V and W of arbitrary cardinality. In practice, a computer scientist

will have sets of variables which are well-ordered, and it is not dicult to nd

some P(W) such that /() = /() in a way which is deterministic.

2.3.2 Minimal Transform of Formula

There will come a point when we will want to invoke x

1

1

[a] as an

instance of the specialization axioms to argue that

1

[a] must be true if we

know that x

1

is itself true. In doing so, the formula

1

[a] should be some

form of evaluation of the formula

1

, where the free variable x of

1

has been

replaced by a. For example, when

1

= y(x y) with x ,= y, it would be

natural to dene

1

[a] = y(a y), provided a ,= y. In the case when a = y

such denition would not work. So we have a problem. It is important for us to

argue that x

1

1

[a] is a legitimate axiom even in the case when a = y. If

we fail to do so, our deductive system will be too weak and we will most likely

have a very hard time attempting to prove G odels completeness theorem.

There are no doubt several ways to solve our problem. One of them is to

abandon the aim of dening

1

[a] as a formula and dene it instead as an equiv-

alence class. So

1

[y] would not be dened as u(y u) for an arbitrary u ,= y

but rather as the full equivalence class of u(y u) (modulo the substitution

congruence for example). It is always an ugly thing to do to dene a mapping

a

1

[a] in terms of a randomly chosen u ,= y. By viewing

1

[a] as an equiv-

alence class we eliminate this dependency in u, which is aesthetically far more

pleasing. On the negative side, if we are later to attempt dening a deductive

congruence by setting whenever both and are provable

from our deductive system, having

1

[a] dened as an equivalence class would

mean our deductive congruence fails to be decoupled from the substitution con-

gruence. It would be very nice to dene a deductive congruence which has no

dependency to a substitution congruence.

There is possibly another approach to resolve our problem which is the one

pursued in this section. The formula

1

= y(x y) is a problem to us simply

because it has y as a variable. The way we have dened the algebra P(V ) has a

major drawback: we are using the same set of variables V to represent variables

which are free and those which are not. Things would be so much simpler if we

had (x ) or 0 (x 0) instead of y(x y). Life would be a lot easier if

we had an algebra where the free variables and the bound variables were taken

from dierent sets, more specically sets with empty intersection.

141

Denition 136 Let V be a set. We call minimal extension of V the set

V

dened as the disjoint union of V and N, that is:

V = 0 V 1 N

So now we have a set of variables

V with fundamentally two types of el-

ements. We can use the elements of the form (0, x) with x V to represent

free variables of a formula, and the elements of the form (1, n) with n N to

represent variables which are not free. Furthermore, since we have two obvi-

ous embeddings i : V

V and j : N

V there is no point writing (0, x) or

(1, n) and we can simply represent elements of

V as x and n, having in mind

the inclusions V

V and N

V with V N = . So we can now represent

elements of P(

V ) as

= 0 (x 0) without ambiguity. Of course, the formula

why we have dened

V in the rst place: we want free variables of any formula

to be chosen from V and bound variables to be chosen from N. So not every

element of P(

tion to a meaningful subset of P(

/ : P(V ) P(

V ) abides to

the right variable conventions, for all P(V ). The range of this mapping

/(P(V )) P(

So how should our mapping / : P(V ) P(

we would probably want to have /(x y) = x y P(

V ). We would also

request that /() = and /(

1

2

) = /(

1

) /(

2

). The real

question is to determine how /(x

1

) should be dened, given

1

P(V ) and

x V . The whole idea of the mapping / : P(V ) P(

V ) is to replace bound

variables in V of a formula P(V ) with nice looking variables 0, 1, 2, 3 . . . in

the formula /(). So /(x

1

) should be dened as:

/(x

1

) = n/(

1

)[n/x]

where n N

V . With such denition, we start from the formula /(

1

) which

has been adequately transformed until now, and then replace the free variable

x (if applicable) with an integer variable n so as to obtain /(

1

)[n/x], and we

nally substitute the quantication x with the corresponding n. This is all

looking good. The only thing left to determine is how to choose the integer n.

We know from our study of valid substitutions dened in page 93 that we cannot

just pick any n. It would not make sense to consider /(

1

)[n/x] unless the

substitution [n/x] is valid for /(

1

). For example, suppose = xy(x y),

i.e.

1

= y(x y). It is acceptable to dene /(

1

) = 0 (x 0) and choose

n = 0 or indeed /(

1

) = 7 (x 7) is also ne, since [n/y] is always valid for

(x y) regardless of the particular choice of n. However, having decided upon

/(

1

) = 0 (x 0), we cannot dene /() = 0 0 (0 0) as this would

make no sense. The substitution [0/x] is not valid for 0 (x 0). We have to

choose a dierent integer and set /() = 1 0 (1 0). The substitution [n/x]

should be valid for the formula /(

1

). In fact, the obvious choice of integer

is to pick n as the smallest integer for which [n/x] is valid for /(

1

). Note

142

that such an integer always exists: we know that /(

1

) has a nite number

of variables, so there exists n N which is not a variable of /(

1

). Having

chosen such an n, we see from proposition (90) that [n/x] is valid for /(

1

).

Denition 137 Let V be a set with minimal extension

V . We call minimal

transform mapping on P(V ) the map /: P(V ) P(

V ) dened by:

P(V ) , /() =

(x y) if = (x y)

if =

/(

1

) /(

2

) if =

1

2

n/(

1

)[n/x] if = x

1

(2.26)

where n = mink N : [k/x] valid for /(

1

).

Given P(V ) we call /() the minimal transform of .

Proposition 138 The structural recursion of denition (137) is legitimate.

Proof

We need to prove that there exists a unique map / : P(V ) P(

V ) which

satises equation (2.26). We shall do so using theorem (4) or page 45. So take

X = P(V ), X

0

= P

0

(V ) and A = P(

V ). Dene g

0

: X

0

A by setting

g

0

(x y) = (x y). Dene h() : A

0

A by setting h()(0) = and

h() : A

2

A by setting h()(

1

,

2

) =

1

2

. Finally, given x V ,

dene h(x) : A

1

A by setting h(x)(

1

) = n

1

[n/x] where:

n = n(x)(

1

) = mink N : [k/x] valid for

1

the following conditions: rst we have /(x y) = g

0

(x y) = (x y) which

is the rst line of equation (2.26). Next we have /() = h()(0) = which

is the second line. Next we have:

/(

1

2

) = h()(/(

1

), /(

2

)) = /(

1

) /(

2

)

which is the third line. Finally, given x V we have:

/(x

1

) = h(x)(/(

1

)) = n/(

1

)[n/x]

where n = mink N : [k/x] valid for /(

1

) and this is the fourth line.

The variables of the minimal transform /() are what we expect:

Proposition 139 Let V be a set and P(V ). Then we have:

Fr (/()) = Var(/()) V = Fr () (2.27)

where /() P(

143

Proof

We shall prove equation (2.27) with a structural induction argument, using

theorem (3) of page 32. First we assume that = (x y) with x, y V . We

need to show the equation is true for . However, we have /() = (x y)

and consequently Fr (/()) = x, y = Var(/()). So the equation is clearly

true. Next we assume that = . Then /() = and Fr (/()) = =

Var(/()). So the equation is also clearly true. Next we assume that =

1

2

where the equation is true for

1

,

2

P(V ). We need to show the

equation is also true for . On the one hand we have:

Var(/()) V = Var(/(

1

2

)) V

= Var(/(

1

) /(

2

)) V

= [ Var(/(

1

)) Var(/(

2

)) ] V

= [Var(/(

1

)) V ] [Var(/(

2

)) V ]

= Fr (

1

) Fr (

2

)

= Fr (

1

2

)

= Fr ()

and on the other hand:

Fr (/()) = Fr (/(

1

2

))

= Fr (/(

1

) /(

2

))

= Fr (/(

1

)) Fr (/(

2

))

= Fr (

1

) Fr (

2

)

= Fr (

1

2

)

= Fr ()

So the equation is indeed true for =

1

2

. Next we assume that = x

1

where x V and the equation is true for

1

P(V ). We need to show the

equation is also true for . Since /() = n/(

1

)[n/x] for some n N:

Var(/()) V = Var( n/(

1

)[n/x] ) V

= ( n Var( /(

1

)[n/x] ) ) V

V N = in

V = Var( /(

1

)[n/x] ) V

= Var( [n/x]( /(

1

) ) ) V

prop. (63) = [n/x]( Var( /(

1

) ) ) V

[n/x](x) = n , V = [n/x]( Var( /(

1

) ) x ) V

[n/x](u) = u if u ,= x = ( Var( /(

1

) ) x ) V

= ( Var(/(

1

)) V ) x

= Fr (

1

) x

= Fr (x

1

)

= Fr ()

144

Furthermore, since [n/x] is valid for /(

1

), we have:

Fr (/()) = Fr ( n/(

1

)[n/x] )

= Fr ( /(

1

)[n/x] ) n

= Fr ( [n/x]( /(

1

) ) ) n

prop. (85), [n/x] valid for /(

1

) = [n/x]( Fr ( /(

1

) ) ) n

[n/x](x) = n = [n/x]( Fr ( /(

1

) ) x ) n

[n/x](u) = u if u ,= x = Fr ( /(

1

) ) x n

= Fr (

1

) x n

Fr (

1

) V , n N = Fr (

1

) x

= Fr (x

1

)

= Fr ()

So we see that equation (2.27) is also true for = x

1

.

Proposition 140 Let V be a set and P(V ). Then we have:

Bnd (/()) = Var(/()) N (2.28)

where /() P(

Proof

We shall prove equation (2.28) with a structural induction argument, using

theorem (3) of page 32. First we assume that = (x y) with x, y V . We

need to show the equation is true for . However, we have /() = (x y) and

consequently Bnd(/()) = = Var(/()) N. So the equation is true. Next

we assume that = . Then /() = and Bnd(/()) = = Var(/()).

So the equation is also true. Next we assume that =

1

2

where the

equation is true for

1

,

2

P(V ). We need to show it is also true for :

Bnd(/()) = Bnd (/(

1

2

))

= Bnd (/(

1

) /(

2

))

= Bnd (/(

1

)) Bnd(/(

2

))

= (Var(/(

1

)) N) (Var(/(

2

)) N)

= ( Var(/(

1

)) Var(/(

2

)) ) N

= Var(/(

1

) /(

2

)) N

= Var(/(

1

2

)) N

= Var(/()) N

So the equation is indeed true for =

1

2

. Next we assume that = x

1

where x V and the equation is true for

1

P(V ). We need to show the

145

equation is also true for . Since /() = n/(

1

)[n/x] for some n N:

Bnd (/()) = Bnd ( n/(

1

)[n/x] )

= n Bnd(/(

1

)[n/x])

= n Bnd( [n/x](/(

1

)) )

prop. (82) = n [n/x]( Bnd(/(

1

)) )

[n/x](x) = n = n [n/x]( Bnd(/(

1

)) x )

[n/x](u) = u if u ,= x = n Bnd(/(

1

)) x

= n ( Var(/(

1

)) N) x

= ( n Var(/(

1

)) x ) N

[n/x](u) = u if u ,= x = ( n [n/x]( Var(/(

1

)) x ) ) N

[n/x](x) = n = ( n [n/x]( Var(/(

1

)) ) ) N

prop. (63) = ( n Var( [n/x](/(

1

)) ) ) N

= ( n Var( /(

1

)[n/x] ) ) N

= Var(n/(

1

)[n/x]) N

= Var(/()) N

So we see that equation (2.28) is also true for = x

1

.

Given P(V ) the minimal transform /() is an element of P(

V ). So it

is dicult to argue that both formulas and /() are substitution equivalent

as they do not sit on the same space. However, if we consider the inclusion map

i : V

V , it is possible to regard as an element of P(

both formulas are equivalent. Indeed, we have:

Proposition 141 Let V be a set and i : V

V be the inclusion map. We

denote the substitution congruence on P(

/() i()

Proof

We shall prove the equivalence /() i() by a structural induction argument,

using theorem (3) of page 32. First we assume that = (x y) for some

x, y V . Then we have the equality /() = (x y) = i() and the equivalence

is clear. Next we assume that = . Then we have /() = = i() and the

equivalence is also clear. So we assume that =

1

2

where

1

,

2

P(V )

satisfy the equivalence. Then we have:

/() = /(

1

2

)

= /(

1

) /(

2

)

i(

1

) i(

2

)

= i(

1

2

)

= i()

146

Finally we assume that = x

1

where x V and

1

P(V ) satises the

equivalence. In this case we have:

/() = /(x

1

)

n = mink : [k/x] valid for /(

1

) = n/(

1

)[n/x]

= [n/x](x/(

1

))

A: to be proved x/(

1

)

xi(

1

)

= i(x) i(

1

)

= i(x

1

)

= i()

So it remains to show that [n/x](x/(

1

)) x/(

1

). Hence, from propo-

sition (116) it is sucient to prove that [n/x] is an admissible substitution for

x/(

1

). We already know that [n/x] is valid for /(

1

). Using proposi-

tion (88), given u Fr (x/(

1

)), in order to prove that [n/x] is valid for

x/(

1

) we need to show that [n/x](u) ,= [n/x](x). So it is sucient to show

that [n/x](u) ,= n. Since u Fr (x/(

1

)), in particular we have u ,= x.

Hence, we have to show that u ,= n. Using proposition (139) we have:

u Fr (x/(

1

)) Fr (/(

1

)) V

and consequently from V N = we conclude that u ,= n. In order to show

that [n/x] is an admissible substitution for x/(

1

) it remains to prove that

[n/x](u) = u for all u Fr (x/(

1

)), which follows from u ,= x.

2.3.3 Minimal Transform and Valid Substitution

In the previous section, we hinted at the diculty of dening the evaluation

[a] when = y(x y) and a = y. The issue is that the substitution [y/x] is

not valid for the formula (when x ,= y), making it impossible to write:

a V , [a] = [a/x]

We dened the minimal transform mapping / : P(V ) P(

V ) with this

problem in mind. Now from denition (137), the minimal transform of is

/() = 0 (x 0) and it is clear that [a/x] is now valid for /() for all

a V . So it would be sensible to dene:

a V , [a] = /()[a/x]

Of course such a denition would lead to [a] = 0 (a 0) which is an element

of P(

are certainly moving forward. More generally suppose P(V ) is an arbitrary

formula and : V W is an arbitrary map. We would like to dene the formula

147

() in P(W) but in a way which is sensible, rather than following blindly the

details of denition (53). The problem is that the substitution may not be

valid for the formula . This doesnt mean we shouldnt be interested in (). In

many cases we may only care about what happens to the free variables. Bound

variables are not interesting. We do not mind having them moved around,

provided the basic structure of the formula remains. So when is valid for ,

this is what happens when using () as per denition (53). However when

is not valid for , we need to nd another way to move the free variables of

without making a mess of it. So consider the minimal transform /(). There is

no longer any conicts between the free and he bound variables. If : V W

is an arbitrary map, we can move the free variables of /() according to the

substitution without creating nonsense. To make this idea precise, we dene:

Denition 142 Let V and W be sets. Let : V W be a map. We call

minimal extension of the map :

V

W dened by:

u

V , (u) =

_

(u) if u V

u if u N

where

V and

W are the minimal extensions of V and W respectively.

So the map :

V

W is the map moving the free variables of /() according

to , without touching the bound variables. As expected we have:

Proposition 143 Let : V W be a map. Then for all P(V ) the

minimal extension :

V

W is valid for the minimal transform /().

Proof

We need to check the three properties of proposition (93) are met in rela-

tion to :

V

W and /() with V

0

= N. First we show property (i) :

we need to show that Bnd(/()) N which follows from proposition (140).

Next we show property (ii) : we need to show that

|N

is injective which

is clear from denition (142). We nally show property (iii) : we need to

show that (N) (Var(/()) N) = . This follows from (N) N and

(Var(/()) N) (V ) = (V ) W, while W N = .

So here we are. Given P(V ) and an arbitrary map : V W we cannot

safely consider () unless is valid for . However, there is no issues in looking

at /() instead, since is always valid for /(). Of course /() is an

element of P(

W) and not P(W). It is however a lot better to have a meaningful

element of P(

W), rather than a nonsensical formula () of P(W). But what if

was a valid substitution for ? Then () would be meaningful. There would

not be much point in considering /() as a general scheme for substituting

free variables, unless it coincided with () in the particular case when is valid

for . Since () P(W) while /() P(

W), we cannot expect these

formulas to match. However, after we take the minimal transform / () we

should expect it to be equal to /(). This is indeed the case, and is the

object theorem (13) below. For now, we shall establish a couple of lemmas:

148

Lemma 144 Let V, W be sets and : V W be a map. Let = x

1

where

1

P(V ) and x V such that (x) , (Fr ()). Then for all n N we have:

[n/x] /(

1

) = [n/(x)] /(

1

)

where :

V

W is the minimal extension of : V W.

Proof

Using proposition (64), we only need to show that the mappings [n/x] and

[n/(x)] coincide on Var(/(

1

)). So let u Var(/(

1

))

V . We want:

[n/x](u) = [n/(x)] (u) (2.29)

Since

V is the disjoint union of V and N, we shall distinguish two cases: rst

we assume that u N. From V N = we obtain u ,= x and conse-

quently [n/x](u) = (u) = u. From W N = we obtain u ,= (x)

and consequently [n/(x)] (u) = [n/(x)](u) = u. So equation (2.29) is

indeed satised. Next we assume that u V . We shall distinguish two fur-

ther cases: rst we assume that u = x. Then [n/x](u) = (n) = n and

[n/(x)] (u) = [n/(x)]((x)) = n and we see that equation (2.29) is again

satised. Next we assume that u ,= x. Then [n/x](u) = (u) = (u),

and furthermore [n/(x)] (u) = [n/(x)]((u)). In order to establish equa-

tion (2.29), it is therefore sucient to prove that (u) ,= (x). However, since

u Var(/(

1

)) and u V , it follows from proposition (139) that u Fr (

1

).

Having assumed that u ,= x we in fact have u Fr (x

1

) = Fr (). Having

assumed that (x) , (Fr ()) it follows that (u) ,= (x) as requested.

Lemma 145 Let V, W be sets and : V W be a map. Let = x

1

where

1

P(V ) and x V such that (x) , (Fr ()). Then for all k N we have:

[k/x] valid for /(

1

) [k/(x)] valid for /(

1

)

where :

V

W is the minimal extension of : V W.

Proof

First we show : So we assume that [k/(x)] is valid for /(

1

). We need

to show that [k/x] is valid for /(

1

). However, we know from proposition (143)

that is valid for /(

1

). Hence, from the validity of [k/(x)] for /(

1

)

and proposition (91) we see that [k/(x)] is valid for /(

1

). Furthermore,

having assumed (x) , (Fr ()), we can use lemma (144) to obtain:

[k/x] /(

1

) = [k/(x)] /(

1

) (2.30)

It follows from proposition (92) that [k/x] is valid for /(

1

), and in par-

ticular, using proposition (91) once more, we conclude that [k/x] is valid for

/(

1

) as requested. We now show : so we assume that [k/x] is valid for

/(

1

). We need to show that [k/(x)] is valid for /(

1

). However, from

149

proposition (91) it is sucient to prove that [k/(x)] is valid for /(

1

).

Using equation (2.30) and proposition (92) once more, we simply need to show

that [k/x] is valid for /(

1

). Having assumed that [k/x] is valid for /(

1

),

from proposition (91) it is sucient to show that is valid for [k/x] /(

1

).

We shall do so with an application of proposition (93) to V

0

= N. First we need

to check that Bnd ( [k/x] /(

1

) ) N. However, from proposition (82) we have

Bnd( [k/x] /(

1

) ) = [k/x]( Bnd (/(

1

)) ) and from proposition (140) we have

Bnd(/(

1

)) N. So the desired inclusion follows. Next we need to show that

|N

is injective which is clear from denition (142). Finally, we need to check

that (N) ( Var([k/x] /(

1

)) N) = . This follows from (N) N and

( Var([k/x] /(

1

)) N) (V ) = (V ) W, while W N = .

Theorem 13 Let V and W be sets. Let : V W be a map. Let P(V ).

If is valid for , then it commutes with minimal transforms, specically:

/() = / () (2.31)

where :

V

W is the minimal extension of : V W.

Proof

Before we start, it should be noted that in equation (2.31) refers to the

substitution mapping : P(V ) P(W) while the / on the right-hand-side

refers to the minimal transform mapping / : P(W) P(

W). The other /

which appears on the left-hand-side refers to the minimal transform mapping

/ : P(V ) P(

V ) P(

W). So

everything makes sense. For all P(V ), we need to show the property:

( valid for ) /() = / ()

We shall do so by structural induction using theorem (3) of page 32. First we

assume that = (x y) where x, y V . Then any is valid for and we need

to show equation (2.31). This goes as follows:

/() = /(x y)

= (x y)

= (x) (y)

= (x) (y)

= /((x) (y))

= /((x y))

= / (x y)

= / ()

Next we assume that = . Then we have /() = = / () and the

property is also true. Next we assume that =

1

2

where the property

is true for

1

,

2

P(V ). We need to show the property is also true for .

150

So we assume that is valid for . We need to show equation (2.31) holds

for . However, from proposition (87), the substitution is valid for both

1

and

2

. Having assumed the property is true for

1

and

2

, it follows that

equation (2.31) holds for

1

and

2

. Hence, we have:

/() = /(

1

2

)

= (/(

1

) /(

2

))

= (/(

1

)) (/(

2

))

= /((

1

)) /((

2

))

= /((

1

) (

2

))

= /((

1

2

))

= / ()

Finally we assume that = x

1

where x V and the property is true for

1

P(V ). We need to show the property is also true for . So we assume

that is valid for . We need to show equation (2.31) holds for . However,

from proposition (88), the substitution is also valid for

1

. Having assumed

the property is true for

1

, it follows that equation (2.31) holds for

1

. Hence:

/() = /(x

1

)

n = mink : [k/x] valid for /(

1

) = ( n/(

1

)[n/x] )

= (n) ( /(

1

)[n/x] )

= n [n/x] /(

1

)

A: to be proved = n[n/(x)] /(

1

)

= n[n/(x)] / (

1

)

= n/[(

1

)][n/(x)]

B: to be proved = m/[(

1

)][m/(x)]

m = mink : [k/(x)] valid for /[(

1

)] = /((x)(

1

))

= /((x

1

))

= / ()

So we have two more points A and B to justify. First we deal with point A. It

is sucient for us to prove the equality:

[n/x] /(

1

) = [n/(x)] /(

1

)

Using lemma (144) it is sucient to show that (x) , (Fr ()). So suppose

to the contrary that (x) (Fr ()). Then there exists u Fr () such that

(u) = (x). This contradicts proposition (88) and the fact that is valid for

, which completes the proof of point A. So we now turn to point B. We need

to prove that n = m, for which it is sucient to show the equivalence:

[k/x] valid for /(

1

) [k/(x)] valid for /[(

1

)]

151

This follows from lemma (145) and the fact that (x) , (Fr ()), together with

the induction hypothesis /(

1

) = / (

1

).

2.3.4 Minimal Transform and Substitution Congruence

Let = xy(x y) and = yx(y x), where x ,= y. We know that

where denotes the substitution congruence on P(V ). The quickest way to see

this is to dene

1

= y(x y) and argue using denition (115) of page 126

that = x

1

while = y

1

[y : x] with y , Fr (

1

). If we now look at minimal

transforms, since /(

1

) = 0 (x 0) and /(

1

[y : x]) = 0 (y 0) we obtain:

/() = 1 0 (1 0) = /()

So here is a case of two equivalent formulas with identical minimal transforms.

Of course, this is hardly surprising. We designed the minimal transform so as

to replace the bound variables with a unique and sensible choice. In fact, we

should expect the equality /() = /() to hold whenever . Conversely,

suppose P(V ) is a formula with minimal transform:

/() = 1 0 (1 0)

It is hard to imagine a formula which is not equivalent to and . It seems

pretty obvious that would need to be of the form = uv(u v) and it

would not be possible to have u = v. Hence:

= uv(u v) uy(u y) xy(x y) =

The main theorem of this section will show that is indeed equivalent to

/() = /(). As a preamble, we shall prove:

Proposition 146 Let V be a set and be the relation on P(V ) dened by:

/() = /()

for all , P(V ). Then is a congruence on P(V ).

Proof

The relation is clearly reexive, symmetric and transitive. So it is an equiv-

alence relation on P(V ) and we simply need to prove that it is a congruent

relation, as per denition (31) of page 51. We already know that . So let

=

1

2

and =

1

2

where

1

1

and

2

2

. We need to show

that . This goes as follows:

/() = /(

1

2

)

= /(

1

) /(

2

)

(

1

1

) (

2

2

) = /(

1

) /(

2

)

= /(

1

2

)

= /()

152

Next we assume that = x

1

and = x

1

where x V and

1

1

. We

need to show that . This goes as follows:

/() = /(x

1

)

n = mink : [k/x] valid for /(

1

) = n/(

1

)[n/x]

1

1

= n/(

1

)[n/x]

1

1

= m/(

1

)[m/x]

m = mink : [k/x] valid for /(

1

) = /(x

1

)

= /()

Then for all , P(V ) we have the equivalence:

/() = /()

where /() and /() are the minimal transforms as per denition (137).

Proof

First we show : consider the relation on P(V ) dened by if and only

if /() = /(). We need to show the inclusion . However, we know

from proposition (146) that is a congruence on P(V ) and furthermore from

proposition (117) that is generated by the set:

R

1

= ( , () ) : P(V ) , : V V admissible for

It is therefore sucient to prove the inclusion R

1

. So let : V V be

an admissible substitution for as per denition (114) of page 125. We need

to show that (), i.e. that /() = / (). Let :

V

V be the

minimal extension of as per denition (142) of page 148. Since is admissible

for , in particular is valid for . So we can apply theorem (13) of page 150

from which we obtain / () = /(). It is therefore sucient to prove

that /() = /(). Let i :

V

V be the identity mapping. We need

to show that i /() = /() and from proposition (64) it is sucient to

prove that i and coincide on Var(/()). So let u Var(/()). We need

to show that (u) = u. Since

V is the disjoint union of V and N, we shall

distinguish two cases: rst we assume that u N. Then (u) = u is immediate

from denition (142). Next we assume that u V . Then from u Var(/())

and proposition (139) it follows that u Fr (). Having assumed that is

admissible for we conclude that (u) = (u) = u as requested. We now

prove : we need to show that every P(V ) satises the property:

P(V ) , [ /() = /() ]

We shall do so by a structural induction argument using theorem (3) of page 32.

First we assume that = (x y) for some x, v V . Let P(V ) such that

153

/() = (x y) = /(). We need to show that . So it is sucient

to prove that = . From theorem (2) of page 21 the formula can be of

one and only one of four types: rst it can be of the form = (u v) for

some u, v V . Next, it can be of the form = , and possibly of the form

=

1

2

with

1

,

2

P(V ). Finally, it can be of the form = u

1

for

some u V and

1

P(V ). Looking at denition (137) we see that the minimal

transform /() has the same basic structure as . Thus, from the equality

/() = (x y) it follows that can only be of the form = (u v). So we

obtain /() = (u v) = (x y) and consequently u = x and v = y which

implies that = (x y) = as requested. We now assume that = . Let

P(V ) such that /() = = /(). We need to show that . Once

again it is sucient to prove that = . From/() = we see that can only

be of the form = . So = as requested. We now assume that =

1

2

where

1

,

2

P(V ) satisfy our property. We need to show the same if true

of . So let P(V ) such that /() = /(

1

) /(

2

) = /(). We

need to show that . From /() = /(

1

) /(

2

) we see that can

only be of the form =

1

2

. It follows that /() = /(

1

) /(

2

)

and consequently we obtain /(

1

) /(

2

) = /(

1

) /(

2

). Thus, using

theorem (2) of page 21 we have /(

1

) = /(

1

) and /(

2

) = /(

2

). Having

assumed

1

and

2

satisfy our induction property, it follows that

1

1

and

2

2

and consequently

1

2

1

2

. So we have proved that

as requested. We now assume that = x

1

where x V and

1

P(V )

satisfy our property. We need to show the same is true of . So let P(V )

such that /() = /(). We need to show that . We have:

/() = n/(

1

)[n/x] (2.32)

where n = mink N : [k/x] valid for /(

1

). Hence from the equality

/() = /() we see that can only be of the form = y

1

for some

y V and

1

P(V ). We shall distinguish two cases: rst we assume that

y = x. Then we need to show that x

1

x

1

and it is therefore sucient to

prove that

1

1

. Having assumed

1

satisfy our property, we simply need

to show that /(

1

) = /(

1

). However we have the equality:

/() = m/(

1

)[m/x] (2.33)

where m = mink N : [k/x] valid for /(

1

). Comparing (2.32) and (2.33),

from /() = /() and theorem (2) of page 21 we obtain n = m and thus:

/(

1

)[n/x] = /(

1

)[n/x] (2.34)

Consider the substitution :

V

V dened by = [n/x]. We shall conclude

that /(

1

) = /(

1

) by inverting equation (2.34) using the local inversion

theorem (10) of page 107 on the substitution . So consider the sets V

0

= V

and V

1

= N. It is clear that both

|V0

and

|V1

are injective maps. Dene:

= P(

V ) : (Fr () V

0

) (Bnd () V

1

) ( valid for )

154

Then using theorem (10) there exits : P(

V ) P(

all . Hence from equation (2.34) it is sucient to prove that /(

1

)

and /(

1

) . First we show that /(

1

) . We already know that

= [n/x] is a valid substitution for /(

1

). The fact that Fr (/(

1

)) V

0

follows from proposition (139). The fact that Bnd(/(

1

)) V

1

follows from

proposition (140). So we have proved that /(

1

) as requested. The proof

of /(

1

) is identical, which completes our proof of in the case

when = y

1

and y = x. We now assume that y ,= x. Consider the formula

= x

1

[x: y] where [x: y] is the permutation mapping as per denition (66)

of page 81. Suppose we have proved the equivalence

. Then in order

to prove it is sucient by transitivity to show that

. However,

having already proved the implication of this theorem, we know that

implies /() = /(

). Hence, if we have

, it is sucient to prove

) and

= x

1

where

1

=

1

[x: y]. So

we are back to the case when y = x, a case we have already dealt with. It fol-

lows that we can complete our induction argument simply by showing

.

Since = y

1

and

= x

1

[x : y] with x ,= y, from denition (115) of

page 126 we simply need to check that x , Fr (

1

). So suppose to the contrary

that x Fr (

1

). Since x ,= y we obtain x Fr (). From proposition (139)

it follows that x Fr (/()). Having assumed that /() = /() we ob-

tain x Fr (/()) and nally using proposition (139) once more, we obtain

x Fr (). This is our desired contradiction since = x

1

.

We conclude this section with an immediate consequence of theorem (13) of

page 150 and theorem (14). From proposition (120) we know that () ()

follows from whenever : V W is injective. We can now loosen the

hypothesis by requiring that be simply valid for and . Note that this

result is not true if denotes the strong substitution congruence rather than

the substitution congruence. Take V = x, y, z and W = x, y with x, y, z

distinct and = xy(x y) while = yx(y x) with (x) = x and

(y) = y. Then is valid for and but () () fails to be true.

Theorem 15 Let V and W be sets and : V W be a map. Let be the

substitution congruence on P(V ) and P(W). Then if is valid for and :

() ()

for all , P(V ), where : P(V ) P(W) is also the substitution mapping.

Proof

We assume that and : V W is valid for and . We need

to show that () (). Using theorem (14) it is sucient to prove that

/ () = / (). Since is valid for and , using theorem (13) of

page 150 it is therefore sucient to prove that /() = /(), which

follows immediately from /() = /(), itself a consequence of .

155

2.3.5 Isomorphic Representation Modulo Substitution

One of our goals in dening the minimal transform mapping /: P(V ) P(

V )

in page 143 was to design an algebra Q(V ) where the free and bound variables

would be chosen from dierent sets. We now pursue this idea further. Given a

set V , we dened the minimal extension

V by adding to V a disjoint copy of

N, giving us plenty of bound variables to choose from. Unfortunately in spite

of this, the free algebra P(

many formulas, including those such as = x(0 x) which contravene our

desired convention of keeping free variables in V and bound variables in N. So

we need to restrict our attention to a smaller subset of P(

choice is to pick Q(V ) = /(P(V )) i.e. to choose Q(V ) as the range of the

minimal transform mapping. From proposition (139) and proposition (140) this

guarantees all formulas have free variables in V and bound variables in N. So

we have the right set of formulas. However Q(V ) is not yet an algebra, as it is

not a universal sub-algebra of P(

formula x is not an element of Q(V ). Somehow we would like Q(V ) to be

an algebra. But of which type? The free universal algebras P(V ) and P(

V )

do not have the same type. The algebra P(

operators n for n N which P(V ) does not have. So what do we want for

Q(V )? All elements of Q(V ) have free variables in V . It does not add any

value to quantify a formula with respect to a variable which is not free. So it is

clear the unary operators n for n N should not be part of Q(V ), and Q(V )

should be of the same type of universal algebra as P(V ). So lets endow Q(V )

with the appropriate structure of universal algebra: First we need an operator

: Q(V )

0

Q(V ). Since = /() Q(V ) we should keep the structure

induced by P(

: Q(V )

2

Q(V ). Since for all

1

,

2

P(V ), we have:

/(

1

) /(

2

) = /(

1

2

)

we see that Q(V ) is closed under the operator of P(

V ). So we should keep

that too. Finally given x V , we need a unary operator x : Q(V )

1

Q(V ).

In this case the operator x of P(

not closed under x. So we need to dene a new operator which we denote x

(with the letter x in bold) to avoid any possible confusion. Let us pick:

Q(V ) , x = n[n/x] (2.35)

where n = mink N : [k/x] valid for and the n on the right-hand-side

of equation (2.35) is the usual quantication operator of P(

V ). We need to

check that this denition does indeed yield an operator x : Q(V )

1

Q(V ),

specically that x Q(V ) for all Q(V ). So let Q(V ). There exists

1

P(V ) such that = /(

1

) and consequently we have:

x = n[n/x] = n/(

1

)[n/x] = /(x

1

) Q(V )

where the last equality follows from denition (137) and:

n = mink N : [k/x] valid for /(

1

)

156

So Q(V ) is now a universal algebra of the same type as P(V ) which is what we

set out to achieve. Note that this algebra is not free in general since:

xy(x y) = 1 0 (1 0) = yx(y x)

whenever x and y are two distinct elements of V . This contradicts the unique-

ness principle of theorem (2) of page 21 which prevails in free universal algebras.

Denition 147 Let V be a set with rst order logic type . We call minimal

transform algebra associated with V , the universal algebra Q(V ) of type :

Q(V ) = /(P(V )) P(

V )

where / : P(V ) P(

, are induced from P(

x = n[n/x]

where n = mink N : [k/x] valid for .

Proposition 148 Let V be a set with minimal transform algebra Q(V ). Then,

the minimal transform mapping /: P(V ) Q(V ) is a surjective morphism.

Proof

The minimal transform mapping / : P(V ) Q(V ) is clearly surjective by

denition (147) of Q(V ). So it remains to show it is a morphism. From deni-

tion (137) of page 143 we have /() = and for all

1

,

2

P(V ):

/(

1

2

) = /(

1

) /(

2

)

So it remains to show that /(x

1

) = x/(

1

) for all x V and

1

P(V ).

However, dening n = mink N : [k/x] valid for /(

1

) we have:

/(x

1

) = n/(

1

)[n/x] = x/(

1

)

where the two equalities follow from denitions (137) and (147) respectively.

So from proposition (148) we have a morphism / : P(V ) Q(V ) which is

surjective, while from theorem (14) we have the equivalence:

/() = /()

So the kernel of this morphism is exactly the substitution congruence on P(V ).

Theorem 16 Let V be a set with minimal transform algebra Q(V ), and let

the quotient universal algebra of P(V ) modulo the substitution congruence be

denoted [P(V )] as per theorem (7). Let /

P(V ) , /

([]) = /()

where / is the minimal transform mapping. Then /

is an isomorphism.

157

Proof

From proposition (148) / : P(V ) Q(V ) is a surjective morphism and from

theorem (14), the kernel ker(/) coincides with the substitution congruence on

P(V ). Hence the fact that /

immediately from the rst isomorphism theorem (8) of page 57.

2.3.6 Substitution Rank of Formula

When V and W are sets and : V W is a map, given P(V ) our

motivating force in the last few sections has been to dene a map () even in

the case when is not a valid substitution for . Our strategy so far has been to

step outside of P(W) into the bigger space P(

W), and dene () as /()

where /() is the minimal transform of and :

V

W is the minimal

extension of , as per denitions (137) and (142) respectively. In this section and

the next, we wish to go further than this and dene () as an actual element

of P(W). This shouldnt be too hard. Indeed, when computing the minimal

transform /(), all the bound variables have been ordered and rationalized

in a given way. The eect of on /() is simply to move the free variables

from V to W which should have no impact of the conguration of the bound

variables. It is therefore not unreasonable to think that the formula /()

is still properly congured so to speak, in other words that /() = /()

for some P(W). If this is the case, we can simply dene () = .

This denition would not uniquely characterize the formula (), but it would

certainly dene a unique class modulo the substitution congruence, by virtue of

theorem (14) of page 153. So lets have a look at an example with = y(x y)

and x ,= y. Assuming (x) = u we obtain /() = 0(u 0), and sure

enough this is indeed the minimal transform of v(u v) where v W and

u ,= v. So our strategy is clear: all we need to do is prove that /() is indeed

equal to the minimal transform /() for some P(W). There is however

a glitch: the set W may be too small. Our example was successful because we

assumed the existence of v W such that u ,= v. This need not be the case.

We cannot have W = as otherwise there would be no map : V W when

x, y V ,= , but it is possible that W be limited to the singleton W = u.

When this is the case, there exists no P(W) such that /() = 0(u 0).

So it is clear we cannot hope to achieve /() = /() in general unless

W has suciently many variables to accommodate the formula /(). It

appears the formula 0(u 0) requires at least two variables. This is also the

case for 1 0(0 1) or (u v) with u ,= v, while 0(0 0) requires one

variable only. As for the formula ( ), it requires no variable at all.

So we need to make this idea precise: given the formula /() we have to

dene the minimum required number of variables in W so the formula can be

squeezed into P(W). This motivates the following denition:

Denition 149 Let V be a set and be the substitution congruence on P(V ).

158

For all P(V ) we call substitution rank of the integer rnk () dened by:

rnk () = min [Var()[ : P(V ) ,

where [Var()[ denotes the cardinal of the set Var(), for all P(V ).

Given a set A, it is customary to use the notation [A[ to refer to the cardinal

number of A. We have not formally dened the notion of ordinal and cardinal

numbers at this stage, but for all P(V ) the set Var() is nite and [Var()[

is simply the number of elements it has. So this should be enough for now. Given

a formula P(V ), we dened rnk () as the smallest number of variables used

by a formula , which is equivalent to modulo the substitution congruence.

Our hope is that provided rnk ( /() ) [W[, there should be enough

variables in W for us to nd P(W) such that /() = /(). So let us

see if this works: in the case /() = , the condition rnk ( /() ) [W[

becomes 0 [W[ and it is clear we do not require W to have any element. In the

case when /() = 0(0 0) the condition becomes 1 [W[ and it is clear W

should have at least one variable. If /() = 0(u 0) then the condition

becomes 2 [W[ which is another success. A more interesting example is

/() = 1 0(1 0) (u v) with u ,= v. This formula is equivalent to

= uv(u v) (u v) and consequently we have rnk ( /() ) = 2. So

the condition becomes 2 [W[ which is indeed the correct condition to impose

on W since we do not need more than two variables, as /() = /()

with = uv(u v) (u v). Hence we believe denition (149) refers to

the correct notion and we shall endeavor to prove the existence of P(W)

such that /() = /() whenever the condition rnk ( /() ) [W[ is

satised. For now, we shall establish some of the ranks properties:

Proposition 150 Let V be a set and P(V ). Then, we have:

[Fr ()[ rnk () [Var()[

Proof

The inequality rnk () [Var()[ follows immediately from denition (149). So

it remains to show that [Fr ()[ rnk (). So let P(V ) such that

where is the substitution congruence. We need to show [Fr ()[ [Var()[.

From proposition (118) we have Fr () = Fr (). Hence we need to show that

[Fr ()[ [Var()[ which follows from Fr () Var().

Given P(V ), we know from denition (149) that rnk () = [Var()[ for

some . Given a suitably large subset V

0

V , the following proposition

allows us to choose such a with the additional property Var() V

0

provided

Fr () V

0

. Obviously we cannot hope to have Var() V

0

unless V

0

is

large enough and Fr () V

0

since two substitution equivalent formulas have

the same free variables. Being able to nd a with Var() V

0

is crucially

important for us. If we go back to the case when /() = 0(u 0), our

rst step in proving the existence of such that /() = /() will be to

159

show the existence of

1

= v(u v), which is a

1

with Var(

1

) V

0

where

V

0

= W

W. When V

0

is not large enough, we cannot hope to nd a with

Var() V

0

. However, we can ensure that V

0

Var() which will also be a

useful property when calculating the substitution rank of

1

2

.

Proposition 151 Let V be a set and P(V ) such that Fr () V

0

for some

V

0

V . Let denote the substitution congruence on P(V ). Then there exists

P(V ) such that and [Var()[ = rnk () such that:

(i) rnk () [V

0

[ Var() V

0

(ii) [V

0

[ rnk () V

0

Var()

Proof

Without loss of generality, we may assume that [Var()[ = rnk (). Indeed,

suppose the proposition has been established with the additional assumption

[Var()[ = rnk (). We need to show it is then true in the general case. So given

V

0

V , consider P(V ) such that Fr () V

0

. From denition (149) there

exists

1

P(V ) such that

1

with the equality [Var(

1

)[ = rnk (). From

proposition (118) we obtain Fr () = Fr (

1

) and so Fr (

1

) V

0

. Hence we see

that

1

satises the assumption of the proposition with the additional property

[Var(

1

)[ = rnk (

1

). Having assumed the proposition is true in this case, we

obtain the existence of P(V ) such that

1

, [Var()[ = rnk (

1

) and

which satises (i) and (ii) where is replaced by

1

. However rnk (

1

) = rnk ()

and replacing by

1

in (i) and (ii) has no impact. So satises (i) and (ii).

Hence we have and [Var()[ = rnk () together with (i) and (ii) which

establishes the proposition in the general case. So we now assume without

loss of generality that [Var()[ = rnk () and Fr () V

0

. We need to show the

existence of such that [Var()[ = [Var()[ and which satises (i) and (ii).

Note that if V = then V

0

= and we can take = . So we assume V ,= . We

shall rst consider the case when rnk () [V

0

[ and show the existence of such

that Var() V

0

. Since Fr () V

0

the set V

0

is the disjoint union of Fr ()

and V

0

Fr (), giving us the equality [V

0

[ = [Fr ()[ + [V

0

Fr ()[. Since we

also have [Var()[ = [Fr ()[ +[Var() Fr ()[, we obtain from [Var()[ [V

0

[:

[Fr ()[ +[Var() Fr ()[ [Fr ()[ +[V

0

Fr ()[

Since [Fr ()[ is a nite cardinal it follows that [Var() Fr ()[ [V

0

Fr ()[.

Hence, there is an injection mapping i : Var() Fr () V

0

Fr (). Having

assumed V ,= consider x

u V , (u) =

u if u Fr ()

i(u) if u Var() Fr ()

x

if u , Var()

Dene = (). It remains to show that has the desired properties, namely

that , [Var()[ = [Var()[ and Var() V

0

. First we show . Using

proposition (116) it is sucient to prove that is an admissible substitution

160

for . It is clear that (u) = u for all u Fr (). So it remains to show that

is valid for . From proposition (86) it is sucient to prove that

|Var()

is

an injective map. So let u, v Var() such that (u) = (v). We need to show

that u = v. We shall distinguish four cases: rst we assume that u Fr () and

v Fr (). Then the equality (u) = (v) leads to u = v. Next we assume that

u , Fr () and v , Fr (). Then we obtain i(u) = i(v) which also leads to u = v

since i : Var() Fr () V

0

Fr () is an injective map. So we now assume

that u Fr () and v , Fr (). Then from (u) = (v) we obtain u = i(v)

which is in fact impossible since u Fr () and i(v) V

0

Fr (). The last

case u , Fr () and v Fr () is equally impossible which completes our proof

of . So we now prove that [Var()[ = [Var()[. From proposition (63)

we have Var() = Var(()) = (Var()). So we need [(Var())[ = [Var()[

which is clear since

|Var()

: Var() (Var()) is a bijection. So it remains to

show that Var() V

0

, or equivalently that (Var()) V

0

. So let u Var().

We need to show that (u) V

0

. We shall distinguish two cases: rst we

assume that u Fr (). Then (u) = u and the property (u) V

0

follows

from the inclusion Fr () V

0

. Next we assume that u , Fr (). Then we

have (u) = i(u) V

0

Fr () V

0

. So in the case when rnk () [V

0

[

we have been able to prove the existence of satisfying (i). In fact we claim

that also satises (ii). So let us assume that [V

0

[ rnk (). Then we must

have rnk () = [V

0

[ and we need to show that V

0

Var(). However, we have

[Var()[ = rnk () and consequently [Var()[ = [V

0

[ together with Var() V

0

.

Two nite subsets ordered by inclusion and with the same cardinal must be

equal. So Var() = V

0

. We now consider the case when [V

0

[ < rnk (). We

need to show the existence of such that [Var()[ = [Var()[ satisfying

(i) and (ii). In the case when [V

0

[ < rnk (), (i) is vacuously true, so we simply

need to ensure that V

0

Var(). Since [V

0

[ < [Var()[ we obtain:

[V

0

Var()[ = [V

0

[ [V

0

Var()[

< [Var()[ [V

0

Var()[

= [Var() V

0

[

So there is an injective map i : V

0

Var() Var() V

0

. Given x

V , dene:

u V , (u) =

u if u Var() i( V

0

Var() )

i

1

(u) if u i( V

0

Var() )

x

if u , Var()

Let = (). It remains to show that , [Var()[ = [Var()[ and

V

0

Var(). First we show that . Using proposition (116) it is suf-

cient to prove that is an admissible substitution for . So let u Fr (). We

need to show that (u) = u. So it is sucient to prove that u , i( V

0

Var() )

which follows from the fact that u V

0

, itself a consequence of Fr () V

0

.

In order to show that is also valid for , from proposition (86) it is su-

cient to prove that is injective on Var(). So let u, v Var() such that

(u) = (v). We need to prove that u = v. The only case when this may

161

not be clear is when (u) = u and (v) = i

1

(v) or vice versa. So we

assume that u Var() i( V

0

Var() ) and v i( V

0

Var() ). Then

we see that (u) = u Var() while (v) = i

1

(v) V

0

Var(). So

the equality (u) = (v) is in fact impossible, which completes our proof

of . As before, the fact that [Var()[ = [Var()[ follows from the

injectivity of

|Var()

and it remains to prove that V

0

Var(). So let

u V

0

we need to show that u Var() = (Var()) and we shall distin-

guish two cases: rst we assume that u Var(). Since u V

0

, it cannot

be an element of i( V

0

Var() ). It follows that u Var() i( V

0

Var() )

and consequently u = (u) (Var()) = Var(). Next we assume that

u V

0

Var(). Then i(u) is an element of i( V

0

Var() ) and therefore

(i(u)) = i

1

(i(u)) = u. Since i(u) is an element of Var() V

0

we conclude

that u = (i(u)) (Var()) = Var(), which completes our proof.

The substitution rank of a formula is essentially the minimum number of

variables needed to describe a representative of its class modulo substitution.

We should expect injective variable substitutions to have no eect on the rank.

Proposition 152 Let V, W be sets and : V W be a map. Then for all

P(V ), if

|Var()

is an injective map, we have the equality:

rnk (()) = rnk ()

where : P(V ) P(W) denotes the associated substitution mapping.

Proof

Let : V W and P(V ) such that

|Var()

is an injective map. We need

to show that rnk (()) = rnk (). First we shall show rnk (()) rnk ().

Using proposition (151) with V

0

= Var(), since we have Fr () Var() and

rnk () [Var()[, there exists P(V ) such that , [Var()[ = rnk ()

and Var() Var(). Having assumed is injective on Var(), it is therefore

injective on both Var() and Var(). From proposition (86) it follows that is

a valid substitution for both and . Hence from theorem (15) of page 155 we

obtain () () and consequently using proposition (63) :

rnk (()) [Var(())[ = [(Var())[ = [Var()[ = rnk ()

So it remains to show that rnk () rnk (()). If V = then rnk () = 0 and

we are done. So we may assume that V ,= . So let x

V and dene:

u W , (u) =

_

1

(u) if u (Var())

x

if u , (Var())

Then : W V is injective on Var(()) = (Var()) and hence:

rnk ( (()) ) rnk (())

So it suces for us to show that () = . From proposition (64) it is thus

sucient to show that (x) = x for all x Var(), which is clear.

162

If P(V ) we know from proposition (141) that /() is substitution

equivalent to i() where i : V

V is the inclusion map. Hence we have:

Proposition 153 Let V be a set and P(V ). Then the formula and its

minimal transform have equal substitution rank, i.e.:

rnk (/()) = rnk ()

Proof

Let denote the substitution congruence on P(

V ) and i : V

V be the in-

clusion map. From proposition (141) we have /() i() and consequently

rnk (/()) = rnk (i()). So we need to show that rnk (i()) = rnk () which

follows from proposition (152) and the fact that i : V

V is injective.

We have already established that an injective variable substitution does not

change the rank of a formula. If P(V ) and : V V is an admissible

substitution for , we also know from proposition (116) that (). Hence if

: V V is valid for while leaving the free variables unchanged, it will not

change the rank of the formula either. It is not unreasonable to think that

this property will remain true if we only impose that be injective on Fr ().

In fact, this should also apply to any : V W, without assuming W = V .

Proposition 154 Let V, W be sets and : V W be a map. Let P(V ).

We assume that is valid for and

|Fr ()

is an injective map. Then:

rnk (()) = rnk ()

where : P(V ) P(W) denotes the associated substitution mapping.

Proof

We shall proceed in two steps: rst we shall prove the proposition is true in

the case when W = V . We shall then extend the result to arbitrary W. So

let us assume W = V . Let : V V valid for P(V ) such that

|Fr ()

is an injective map. We need to show that rnk (()) = rnk (). If V =

then : V V is the map with empty domain, namely the empty set which is

injective on Var() = and rnk (()) = rnk () follows from proposition (152).

So we assume that V ,= . The idea of the proof is to write () =

1

0

()

where each substitution

0

,

1

is rank preserving. Having assumed injective

on Fr (), we have the equality [(Fr ()[ = [Fr ()[ and consequently:

[Var() Fr ()[ = [Var()[ [Fr ()[

[V [ [Fr ()[

= [V [ [ (Fr ()) [

= [ V (Fr ()) [

So let i : Var() Fr () V (Fr ()) be an injective map. Let x

V and

dene the substitution

0

: V V as follows:

x V ,

0

(x) =

(x) if x Fr ()

i(x) if x Var() Fr ()

x

if x , Var()

163

Let us accept for now that

0

is injective on Var(). Then using proposi-

tion (152) we obtain rnk (

0

()) = rnk (). So consider

1

: V V :

u V ,

1

(u) =

u if u (Fr ())

i

1

(u) if u i( Var() Fr () )

x

otherwise

Note that

1

is well dened since (Fr ()) i( Var() Fr () ) = . So let us

accept for now that

1

is admissible for

0

(). Then using proposition (116)

we obtain

1

0

()

0

() where is the substitution congruence on P(V ).

Hence in particular we have rnk (

1

0

()) = rnk (

0

()) = rnk (). So in order

to show that the proposition is true in the case when W = V , it remains to

prove that

0

is injective on Var(),

1

is admissible for

0

() and furthermore

that

1

0

() = (). First we show that

0

is injective on Var(). So let

x, y Var() such that

0

(x) =

0

(y). We need to show that x = y. We shall

distinguish four cases: rst we assume that x Fr () and y Fr (). Then

the equality

0

(x) =

0

(y) leads to (x) = (y). Having assumed

|Fr ()

is an

injective map, we obtain x = y. Next we assume that x Var() Fr () and

y Var() Fr (). Then the equality

0

(x) =

0

(y) leads to i(x) = i(y) and

consequently x = y. So we now assume that x Fr () and y Var() Fr ().

Then

0

(x) = (x) (Fr ()) and

0

(y) = i(y) V (Fr ()). So the

equality

0

(x) =

0

(y) is in fact impossible. We show similarly that the nal

case x Var() Fr () and y Fr () is also impossible which completes the

proof that

0

is injective on Var(). We shall now show that

1

0

() = ().

From proposition (64) it is sucient to prove that

1

0

(x) = (x) for all

x Var(). We shall distinguish two cases: rst we assume that x Fr ().

Then

0

(x) = (x) (Fr ()) and consequently

1

0

(x) = (x) as requested.

Next we assume that x Var()Fr (). Then

0

(x) = i(x) i( Var()Fr () )

and consequently

1

0

(x) = i

1

(i(x)) = (x). So it remains to show that

1

is admissible for

0

(), i.e. that it is valid for

0

() and

1

(u) = u for all

u Fr (

0

()). So let u Fr (

0

()). We need to show that

1

(u) = u. So

it is sucient to prove that u (Fr ()). However from proposition (74) we

have Fr (

0

())

0

(Fr ()) and consequently there exists x Fr () such that

u =

0

(x) = (x). It follows that u (Fr ()) as requested and it remains to

show that

1

is valid for

0

(). From proposition (91) it is sucient to show

that

1

0

is valid for . However, having proved that

1

0

() = () from

proposition (92) it is sucient to prove that is valid for which is in fact true

by assumption. This completes our proof of the proposition in the case when

W = V . We shall now prove the proposition in the general case. So we assume

that : V W is a map and P(V ) is such that is valid for and

|Fr ()

is an injective map. We need to prove that rnk (()) = rnk (). Let U be the

disjoint union of the sets V and W, specically:

U = 0 V 1 W

164

Let i : V U and j : W U be the corresponding inclusion maps. Consider

the formula

: U U be dened as:

u U ,

(u) =

_

j (u) if u V

u if u W

Let us accept for now that

is valid for

and that

|Fr (

)

is an injective

map. Having proved the proposition in the case when W = V , it can be applied

to

: U U and

proposition (152) we obtain the following equalities:

rnk (()) = rnk (j ())

A: to be proved = rnk (

))

case W = V = rnk (

)

= rnk (i())

prop. (152) = rnk ()

So it remains to show that j () =

is valid for

while

|Fr (

)

is an injective map. First we show that j() =

). Since

i(u)

for all u Var(). So let u Var(). In particular u V and consequently

i(u) i(V ) U. From the above denition of

we obtain immediately

is valid for

= i().

Using proposition (91) it is sucient to prove that

having proved that

to prove that j is valid for . Having assumed that is valid for , using

proposition (91) once more it remains to show that j is valid for () which

follows from the injectivity of j and proposition (86). So it remains to prove

that

|Fr (

)

is an injective map. So let u, v Fr (

) such that

(u) =

(v).

We need to show that u = v. However since

we have Fr (

and v = i(y). Having proved that j =

(u) =

j that (x) = (y). Having assumed that is injective on Fr () we conclude

that x = y and nally that u = v as requested.

As with anything involving the algebra P(V ), it is dicult to establish deeper

properties without resorting to some form of structural induction argument.

Hence if we want to say anything more substantial about the substitution rank

of a formula P(V ) we need to relate the rank of

1

2

and x

1

to the

ranks of

1

and

2

. These relationships are not as simple as one would wish.

Proposition 155 Let V be a set and P(V ) of the form =

1

2

where

1

,

2

P(V ). Then the substitution ranks of ,

1

and

2

satisfy the equality:

rnk () = max( [Fr ()[ , rnk (

1

) , rnk (

2

) )

165

Proof

First we show that max( [Fr ()[ , rnk (

1

) , rnk (

2

) ) rnk (). From propo-

sition (150) we already know that [Fr ()[ rnk (). So it remains to show

that rnk (

1

) rnk () and rnk (

2

) rnk (). So let be the substitution

congruence on P(V ) and . We need to show that rnk (

1

) [Var()[

and rnk (

2

) [Var()[. However, from =

1

2

and theorem (12) of

page 135 we see that must be of the form =

1

2

where

1

1

and

2

2

. Hence we have rnk (

1

) [Var(

1

)[ [Var()[ and simi-

larly rnk (

2

) [Var(

2

)[ [Var()[. So it remains to show the inequality

rnk () max( [Fr ()[ , rnk (

1

) , rnk (

2

) ). We shall distinguish two cases:

rst we assume that max(rnk (

1

), rnk (

2

)) [Fr ()[. Since Fr (

1

) Fr ()

and Fr (

2

) Fr () using proposition (151) we obtain the existence of

1

1

and

2

2

such that [Var(

1

)[ = rnk (

1

) and [Var(

2

)[ = rnk (

2

) with the

inclusions Var(

1

) Fr () and Var(

2

) Fr (). Since

1

2

:

rnk () [Var(

1

2

)[

= [Var(

1

) Var(

2

)[

Var(

i

) Fr () [Fr ()[

= max( [Fr ()[ , rnk (

1

) , rnk (

2

) )

Next we assume that [Fr ()[ max(rnk (

1

), rnk (

2

)). We shall distinguish

two further cases: rst we assume that rnk (

1

) rnk (

2

). Since we have both

Fr (

2

) Fr () and [Fr ()[ rnk (

2

), from proposition (151) we can nd

2

2

such that [Var(

2

)[ = rnk (

2

) and Fr () Var(

2

). In particular

we obtain the inclusion Fr (

1

) Var(

2

) and applying proposition (151) once

more, from rnk (

1

) rnk (

2

) = [Var(

2

)[ we obtain the existence of

1

1

such that [Var(

1

)[ = rnk (

1

) and Var(

1

) Var(

2

). It follows that:

rnk () [Var(

1

2

)[

= [Var(

1

) Var(

2

)[

Var(

1

) Var(

2

) = [Var(

2

)[

= rnk (

2

)

= max( [Fr ()[ , rnk (

1

) , rnk (

2

) )

The case rnk (

2

) rnk (

1

) is dealt with similarly.

Proposition 156 Let V be a set and P(V ) of the form = x

1

where

1

P(V ) and x V . Then the substitution ranks of and

1

satisfy:

rnk () = rnk (

1

) +

where 2 = 0, 1 is given by the equivalence = 1 if and only if:

( x , Fr (

1

) ) ( [Fr (

1

)[ = rnk (

1

) )

166

Proof

Let = x

1

where

1

P(V ) and x V . Dene = rnk () rnk (

1

). Then

is an integer, possibly negative. In order to prove that 2 it is therefore

sucient to prove that the following inequalities hold:

rnk (

1

) rnk () rnk (

1

) + 1 (2.36)

This will be the rst part of our proof. Next we shall show the equivalence:

( = 1) ( x , Fr (

1

) ) ( [Fr (

1

)[ = rnk (

1

) ) (2.37)

So rst we show that rnk (

1

) rnk (). Let where denotes the

substitution congruence on P(V ). We need to show that rnk (

1

) [Var()[.

Using theorem (12) of page 135, from the equivalence we see that is

either of the form = x

1

where

1

1

, or is of the form = y

1

where

1

1

[y : x], x ,= y and y , Fr (

1

). First we assume that = x

1

where

1

1

. Then we have the following inequalities:

rnk (

1

) [Var(

1

)[

[x Var(

1

)[

= [Var(x

1

)[

= [Var()[

Next we assume that = y

1

where

1

1

[y : x], x ,= y and y , Fr (

1

). The

permutation [y : x] being injective, from proposition (120) we obtain

1

1

where

1

=

1

[y : x]. Furthermore, dening

= x

1

we have =

[y : x].

Using the injectivity of [y : x] once more and proposition (63) we obtain:

[Var()[ = [Var(

[y : x])[ = [ [y : x](Var(

)) [ = [Var(

)[

So we need to prove that rnk (

1

) [Var(

)[ where

= x

1

and

1

1

.

Hence we are back to our initial case and we have proved that rnk (

1

) rnk ().

Next we show that rnk () rnk (

1

) + 1. So let

1

1

. We need to show

that rnk () 1 [Var(

1

)[ or equivalently that rnk () [Var(

1

)[ + 1:

rnk () = rnk (x

1

)

x

1

x

1

[Var(x

1

)[

= [x Var(

1

)[

[Var(

1

)[ + 1

So we are done proving the inequalities (2.36). We shall complete the proof

of this proposition by showing the equivalence (2.37). First we show : so

we assume that = 1. We need to show that x , Fr (

1

) and furthermore

that [Fr (

1

)[ = rnk (

1

). First we show that x , Fr (

1

). So suppose to the

contrary that x Fr (

1

). We shall obtain a contradiction by showing = 0,

that is rnk (

1

) = rnk (). We already know that rnk (

1

) rnk (). So we

167

need to show that rnk () rnk (

1

). So let

1

1

. We need to show that

rnk () [Var(

1

)[. However, from

1

1

and proposition (118) we obtain

Fr (

1

) = Fr (

1

) and in particular x Fr (

1

). It follows that:

rnk () = rnk (x

1

)

x

1

x

1

[Var(x

1

)[

= [x Var(

1

)[

x Fr (

1

) Var(

1

) = [Var(

1

)[

This is our desired contradiction and we conclude that x , Fr (

1

). It remains

to show that [Fr (

1

)[ = rnk (

1

). So suppose this equality does not hold. We

shall obtain a contradiction by showing = 0, that is rnk () rnk (

1

). So let

1

1

. We need to show once again that rnk () [Var(

1

)[. However, having

assumed the equality [Fr (

1

)[ = rnk (

1

) does not hold, from proposition (150)

we obtain [Fr (

1

)[ < rnk (

1

) and consequently from

1

1

we have:

[Fr (

1

)[ = [Fr (

1

)[ < rnk (

1

) [Var(

1

)[

It follows that the set Var(

1

) Fr (

1

) cannot be empty, and there exists

y Var(

1

) Fr (

1

). From x , Fr (

1

) and y , Fr (

1

) = Fr (

1

) using

proposition (119) we obtain the equivalence x

1

y

1

. Hence we also have

the equivalence x

1

y

1

and consequently:

rnk () = rnk (x

1

)

x

1

y

1

[Var(y

1

)[

= [y Var(

1

)[

y Var(

1

) = [Var(

1

)[

which is our desired contradiction and we conclude that [Fr (

1

)[ = rnk (

1

).

This completes our proof of in the equivalence (2.37). We now prove :

so we assume that x , Fr (

1

) and [Fr (

1

)[ = rnk (

1

). We need to show

that = 1, that is rnk () = rnk (

1

) + 1. We already have the inequality

rnk () rnk (

1

) + 1. So it remains to show that rnk (

1

) + 1 rnk ()

or equivalently rnk (

1

) < rnk (). So let . We need to show that

rnk (

1

) < [Var()[. Once again, using theorem (12) of page 135, from the

equivalence we see that is either of the form = x

1

where

1

1

,

or is of the form = y

1

where

1

1

[y : x], x ,= y and y , Fr (

1

). First

we assume that = x

1

where

1

1

. Hence rnk (

1

) [Var(

1

)[ and we

shall distinguish two further cases: rst we assume that rnk (

1

) = [Var(

1

)[.

Having assumed that [Fr (

1

)[ = rnk (

1

) we obtain:

[Fr (

1

)[ = [Fr (

1

)[ = rnk (

1

) = [Var(

1

)[

from which we see that Var(

1

) = Fr (

1

) and consequently it follows that

x , Fr (

1

) = Fr (

1

) = Var(

1

). Hence we see that:

rnk (

1

) [Var(

1

)[

168

x , Var(

1

) < [x Var(

1

)[

= [Var(x

1

)[

= [Var()[

So we now assume that rnk (

1

) < [Var(

1

)[, in which case we obtain:

rnk (

1

) < [Var(

1

)[

[x Var(

1

)[

= [Var(x

1

)[

= [Var()[

We now consider the case when = y

1

where

1

1

[y : x], x ,= y and

y , Fr (

1

). Once again, dening

1

=

1

[y : x] and

= x

1

we obtain

the equivalence

1

1

and [Var(

rnk (

1

) < [Var(

)[ knowing that

1

1

which follows from our initial case.

such that /() = /() provided we have rnk ( /()) [W[. Assuming

we prove this result, it will be important for us to have a way of telling whether

the condition rnk ( /()) [W[ is satised. The following proposition allows

us to do this. Given any map : V W, the associated variable substitution

: P(V ) P(W) cannot increase the substitution rank of a formula. Hence:

rnk ( /()) rnk (/()) = rnk () [Var()[ [V [

So we see for example that the condition [V [ [W[ is a sucient condition.

Note the following proposition makes no assumption on the validity of for .

Proposition 157 Let V, W be sets and : V W be a map. Let P(V ):

rnk (()) rnk ()

where : P(V ) P(W) denotes the associated substitution mapping.

Proof

We shall prove rnk (()) rnk () by structural induction using theorem (3)

of page 32. First we assume that = (x y) for some x, y V . Then we have:

rnk (()) = [ (x), (y) [ [ x, y [ = rnk ()

Next we assume that = . Then rnk (()) = rnk () = 0 = rnk (). So we

now assume that =

1

2

where

1

,

2

P(V ) satisfy our property:

rnk (()) = rnk ((

1

2

))

= rnk ((

1

) (

2

))

prop. (155) = max( [ Fr (()) [ , rnk ((

1

)) , rnk ((

2

)) )

169

max( [ Fr (()) [ , rnk (

1

) , rnk (

2

) )

prop. (74) max( [ (Fr ()) [ , rnk (

1

) , rnk (

2

) )

max( [Fr ()[ , rnk (

1

) , rnk (

2

) )

prop. (155) = rnk ()

Finally we assume that = x

1

where x V and

1

P(V ) satisfy our

induction property. Then () = (x)(

1

). Let = rnk () rnk (

1

) and

let = rnk (()) rnk ((

1

)). From proposition (156) we know that , 2.

We shall distinguish two cases: rst we assume that = 0. Then we have:

rnk (()) = rnk ((

1

)) rnk (

1

) rnk ()

Next we assume that = 1. We shall distinguish two further cases: if = 1 :

rnk (()) = 1 + rnk ((

1

)) 1 + rnk (

1

) = rnk ()

So it remains to deal with the last possibility when = 1 and = 0. Using

proposition (156), from = 0 we see that x Fr (

1

) or [Fr (

1

)[ < rnk (

1

).

So we shall distinguish two further cases. These cases may not be exclusive of

one another but we dont need them to be. So rst we assume x Fr (

1

).

Using proposition (156) again, from = 1 we obtain [Fr ((

1

))[ = rnk ((

1

))

and furthermore (x) , Fr ((

1

)). Having assumed that x Fr (

1

) it follows

that (x) is an element of (Fr (

1

)) but not an element of Fr ((

1

)). Hence,

we see that the inclusion Fr ((

1

)) (Fr (

1

)) which we know is true from

proposition (74) is in fact a strict inclusion. So we have a strict inequality

between the nite cardinals [Fr ((

1

))[ < [(Fr (

1

))[. Thus:

rnk (()) = 1 + rnk ((

1

))

[Fr ((

1

))[ = rnk ((

1

)) = 1 +[Fr ((

1

))[

[Fr ((

1

))[ < [(Fr (

1

))[ [(Fr (

1

))[

[Fr (

1

)[

prop. (150) rnk (

1

)

= 0 = rnk ()

So we now assume that [Fr (

1

)[ < rnk (

1

). In this case we have:

rnk (()) = 1 + rnk ((

1

))

[Fr ((

1

))[ = rnk ((

1

)) = 1 +[Fr ((

1

))[

prop. (74) 1 +[(Fr (

1

))[

1 +[Fr (

1

)[

[Fr (

1

)[ < rnk (

1

) rnk (

1

)

= 0 = rnk ()

170

Proposition 158 Let V be a set and n N such that n [V [. Then there

exists a formula P(V ) such that Fr () = and rnk () = n.

Proof

From the inequality n [V [ there exists an injective map u : n V . Dene

0

= and

k+1

= (u(k) u(k))

k

for k n. Let =

n

. For example,

in the case when n = 2 the formula is given by:

= ( u(1) u(1) ) [ ( u(0) u(0) ) ]

Dene

0

= and

k+1

= u(k)

k

for k n. Let =

n

. We shall complete

the proof of this proposition by showing that Fr () = and rnk () = n. First

we prove that Fr () = . From the recursion

k+1

= (u(k) u(k))

k

:

Fr (

k+1

) = u(k) Fr (

k

) , k n

Since Fr (

0

) = Fr () = an easy induction argument shows that we have

Fr (

k

) = u[k] for all k n + 1. Note that u[k] denotes the image of the

set k by u, i.e. the range of the restricted map u

|k

. We are using the square

brackets [ . ] to avoid any confusion between u[k] and u(k). In particular for

k = n we see that Fr () = Fr (

n

) = u[n] = rng(u). Furthermore, from the

recursion formula

k+1

= u(k)

k

we obtain the equality:

Fr (

k+1

) = Fr (

k

) u(k) , k n

Since Fr (

0

) = Fr () = rng(u), an easy induction argument shows that

Fr (

k

) = rng(u) u[k] for all k n + 1. In particular for k = n we have

the equality Fr () = Fr (

n

) = rng(u) u[n] = as requested. So it remains

to show that rnk() = n. Using proposition (156), from the recursion formula

k+1

= u(k)

k

and the fact that u(k) rng(u) u[k] = Fr (

k

) we obtain

rnk (

k

) = rnk (

k+1

). Note that u(k) rng(u) u[k] is true since u is injective.

Hence we see that rnk () = rnk (

0

) = rnk () and it is sucient to prove

that rnk () = n. However having proved Fr (

k

) = u[k], it follows from the

injectivity of u that [Fr (

k

)[ = k for all k n +1. From the recursion formula

k+1

= (u(k) u(k))

k

using proposition (155) we obtain:

rnk (

k+1

) = max( [Fr (

k+1

)[ , rnk (u(k) u(k)) , rnk (

k

) )

that is rnk (

k+1

) = max(k + 1, 1, rnk(

k

)) for all k n. Since rnk (

0

) = 0,

a simple induction argument shows that rnk (

k

) = k for all k n + 1. In

particular for k = n we obtain rnk () = rnk (

n

) = n as requested.

2.3.7 Existence of Essential Substitution

Given a map : V W we would like to prove the existence of an essential

substitution mapping, namely a map as dened below. Recall that the minimal

transform and minimal extension can be found in denitions (137) and (142):

171

Denition 159 Let V, W be sets and : V W be a map. We call essential

substitution mapping associated with , any map

/

= / (2.38)

where :

V

W is the minimal extension and / is the minimal transform.

We cannot expect an essential substitution mapping to be uniquely dened.

If denotes the substitution congruence on P(W) then from theorem (14) of

page 153, any other map

()

() for all

P(V ) will also satisfy equation (2.38). However, if

indeed satisfy equation (2.38), then for all P(V ) the equivalence class of

best we can do. The notion of an essential substitution mapping

associated

with a map we feel plays an important role. If P(V ) is such that is

valid for , then it follows from theorem (13) of page 150 that

() ()

where : P(V ) P(W) denotes the usual variable substitution mapping of

denition (53). So

which thanks to equation (2.38), assigns a meaningful formula

() even in the

case when is not a valid substitution for . This fundamentally allows us to

write x [y/x]

y V , without having to worry whether the substitution [y/x] is valid for .

For example, if = y(x y) with x ,= y, we shall now be able to claim

that x x(y x) is a legitimate axiom. So our aim is to prove the

existence of an essential substitution mapping

with , at least when W is a large enough set. Given P(V ) the rst

step in our proof is to show the existence of a formula P(W) such that

/() = /(). As already discussed in the previous section, we cannot

hope to obtain the existence of without some condition on the set W. We

conjectured the substitution rank of /() had to be smaller than [W[, i.e.

rnk ( /() ) [W[. So assuming this condition holds, we are setting out to

prove the existence of which is the object of theorem (17) below. Until now,

most of our results have been obtained by structural induction arguments. In

this case, structural induction does not seem to work. It appears the notion of

substitution rank does not lend itself easily to induction, and we shall need to

nd some other route. So let us go back to the simple case when = y(x y)

with x ,= y. Assuming (x) = u we obtain /() = 0(u 0) P(

W).

Our rst objective will be to show the existence of some

1

P(

W) such that

Var(

1

) W and /()

1

where denotes the substitution congruence

on P(

W). Hopefully the condition rnk ( /() ) [W[ will allow us to do

that using proposition (151). Following our example, the formula

1

would look

something like

1

= v(u v) P(

W) for some v W and u ,= v. Once we

have the formula

1

we can easily project it onto P(W) and dene = q(

1

)

where q :

W W is an appropriate substitution. Having dened a formula

P(W) it will remain to show that:

/() = /() (2.39)

172

We shall proceed as follows: we rst consider the operator A : P(

W) P(

W)

dened by A = p

/ where p :

W

W is an appropriate substitution and

/ : P(

W) P(

/()

1

and theorem (14) of page 153 we obtain immediately:

A /() = A(

1

) (2.40)

We then prove that A /() = /() so as to obtain:

/() = A(

1

) (2.41)

Using the injection i : W

W we nally prove that the minimal transform

/: P(W) P(

W) is in fact given by /= A i, and we conclude by arguing

that

1

= i q(

1

) = i() which gives us equation (2.39) from (2.41).

Before we formally dene the operator A, we shall say a few words on the

minimal extension

V of the set

V which is itself the minimal extension of V .

From denition (136) the minimal extension

V is dened as:

V = 0 V 1 N

Hence we have

V = 0

V 1 N. So the set

elements: those of the form (0, (0, x)) which we simply identify with x V ,

those of the form (0, (1, n)) which we identify with n N, and those of the form

(1, n) which we denote n for all n N. Thus, in the interest of lighter notations,

we regard

V = V N

N where

N is the image of N

through the embedding n n. So for example, if = y(x y) P(V ), we

shall continue to denote the minimal transform of as /() = 0(x 0), while

the minimal transform of /() is denoted

/ /() =

0(x

0) P(

V ).

With these notational conventions in mind, we can now state:

Denition 160 Let V be a set. We call weak transform on P(

V ) the map

A : P(

V ) P(

V ) dened by A = p

/ where

/ : P(

V ) P(

V ) is the

minimal transform mapping and p :

V

V is dened by:

u

V , p (u) =

_

u if u

V

n if u = n

N

So for example, if = 0(x 0) P(

V ) we obtain

/() =

0(x

0) and

consequently A() = 0(x 0) = . However, if = 1(0 1) then

/() =

0(0

0) and A() = 0(0 0). This last equality shows the limitations

of the operator A. It is not a very interesting operator, as the substitution

equivalence A() is not necessarily preserved. On the positive side, the

operator A has a simple denition which will make our forthcoming proofs a

lot easier. It also has the useful properties allowing us to prove theorem (17) :

Lemma 161 Let V be a set and A : P(

V ) P(

P(

V ). Let i : V

V be the inclusion map. Then we have:

/ = A i

where / : P(V ) P(

173

Proof

Let

/ : P(

V ) P(

V

V be

the map of denition (160). Given P(V ), since i : V

V is an injective

map, in particular it is valid for . Hence we have:

A i() = p

/ i()

theorem (13) = p

i /()

A: to be proved = /()

So it remains to show that p

V , where

i :

V

V is the

minimal extension of i. So let u

V . We shall distinguish two cases: rst we

assume that u V . Then

i(u) = i(u) = u and consequently p

i(u) = p (u) = u

as requested. Next we assume that u N. Then

i(u) = u and it follows that

p

feel this proof is not completely convincing, particularly with regards to the

step

i(u) = u. A blind reading of denition (142) for the minimal extension

i :

V

i(u) = u whenever u N. But of course,

the wording of denition (142) is the result of identications, which are now

possibly confusing us. So let i

2

: N

V and j

2

: N

V be the inclusion

maps. What is really meant by denition (142) is that

i i

2

(u) = j

2

(u) for all

u N. In our discussion prior to stating denition (160) we agreed to denote

j

2

(u) as u. Hence if we identify u and i

2

(u) we obtain

i(u) = u as claimed. So

let us pursue this further and make all our identications explicit. The wording

of denition (160) is itself the result of identications. Given u N the formula

p( u) = u should be rigorously written as p j

2

(u) = i

2

(u). So given u N, if

we identify u and i

2

(u)

V we have the following equalities:

p

i(u) = p

i i

2

(u)

def. (142) = p j

2

(u)

def. (160) = i

2

(u)

identication = u

Likewise, if we denote i

1

: V

V and j

1

:

V

identify i

1

(u) and u for all u V , we obtain the following equalities:

p

i(u) = p

i i

1

(u)

def. (142) = p j

1

i(u)

def. (160) = i(u)

i = i

1

= i

1

(u)

identication = u

174

Lemma 162 Let V, W be sets and : V W be a map. Then:

A / = /

where A : P(

W) P(

W) is the weak transform on P(

W).

Proof

For once we shall be able to prove the formula without resorting to a structural

induction argument. In the interest of lighter notations, we shall keep the same

notations /,

/, A and p in relation to the sets V and W. So let P(V ):

A /() = p

/ /()

theorem (13) of p. 150 = p

/ /()

prop. (141) = p

/ i()

A: to be proved = p

/ i()

= A i()

lemma (161) = /()

So it remains to show that p

(u) = p (u) for all u

V . So let u

V .

Since

V and

N, we shall distinguish two cases: rst we

assume that u

V . Then

(u) = (u)

W and consequently p

(u) = (u).

So the equality p

(u) = p (u) is satised since p (u) = u for u

V . Next

we assume that u

N i.e. that u = n for some n N. Then

(u) = u = n and

consequently p

(u) = n = p (u).

Before we move on to theorem (17) which is our key result, we should pause

a moment on an interesting consequence of lemma (162). In general given and

P(V ) such that where is the substitution congruence, we cannot

conclude that = . Likewise if

,

P(

we cannot conclude that that

=

. However, if both

and

are minimal

transforms then things are dierent: it is in fact possible to infer the equality

/() = /() simply from the substitution equivalence /() /():

Proposition 163 Let V be a set and , P(V ). Then we have:

/() /() /() = /()

where the relation denotes the substitution congruence on P(

V ).

Proof

We assume that /() /(). We need to show that /() = /(). How-

ever, from theorem (14) of page 153 we obtain

/ /() =

/ /(), where

/ : P(

V ) P(

tion (160), we see that A /() = A /(). Applying lemma (162) to

W = V and the identity mapping : V V we conclude that /() = /().

175

Lemma 164 Let V be a set and p :

V

V be the map of denition (160).

Then for all P(V ), the substitution p is valid for the formula

/ /().

Proof

Using proposition (86) it is sucient to show that p is injective on the set

Var(

/ /()). First we shall show that p is injective on V

N: so suppose

u, v V

N are such that p (u) = p (v). We need to show that u = v. We

shall distinguish four cases: rst we assume that u, v V

V . Then u = v

follows immediately from denition (160). Next we assume that u, v

N. Then

u = n and v = m for some n, m N. From p (u) = p (v) we obtain n = m and

consequently u = v. Next we assume that u V and v

N. Then v = m for

some m N and from p (u) = p (v) we obtain u = n which contradicts the fact

that V N = . So this case is in fact impossible. The case u

N and v V

is likewise impossible and we have proved that p is injective on V

N. So it

remains to show that Var(

/ /()) V

N. Let u Var(

/ /()). We

need to show that u V

N. Since

V =

V

N, we shall distinguish two cases:

rst we assume that u

V . Then using proposition (139) we obtain:

u Var(

/ /())

V = Fr (/()) = Fr () V V

N

Next we assume that u

N. Then it is clear that u V

N.

Theorem 17 Let V, W be sets and : V W be a map. Let P(V ) with:

rnk ( /() ) [W[

where :

V

W is the minimal extension of and /() is the minimal

transform of . Then, there exists P(W) such that /() = /().

Proof

Our rst step is to nd

1

P(

W) such that /()

1

and Var(

1

) W,

where denotes the substitution congruence on P(

W). We shall do so using

proposition (151) applied to the set

W and the formula /() P(

W).

Suppose for now that we have proved the inclusion Fr ( /()) W. Then

from the assumption rnk ( /() ) [W[ and proposition (151) we obtain the

existence of

1

P(

W) such that /()

1

and Var(

1

) W. In fact,

proposition (151) allows to assume that [Var(

1

)[ = rnk ( /() ) but we

shall not be using this property. So we need to prove that Fr ( /()) W:

Fr ( /()) = Fr ( (/()) )

prop. (74) ( Fr (/()) )

prop. (139) = (Fr ())

P(V ) (V )

def. (142) = (V )

W

176

So the existence of

1

P(

W) such that /()

1

and Var(

1

) W is

now established. Next we want to project

1

onto P(W) by dening = q(

1

)

where q :

W W is a substitution such that q(u) = u for all u W. To be

rigorous, we need to dene q(n) for n N which we cannot do when W = . So

in the case when W ,= , let u

W and dene q :

W W as follows:

u

W , q(u) =

_

u if u W

u

if u N

and consider the associated substitution mapping q : P(

W) P(W). In the

case when W = , there exists no substitution q :

W W but we can dene

the operator q : P(

W) P(W) with the following structural recursion:

q() =

if = (u v)

if =

q(

1

) q(

2

) if =

1

2

if = u

1

(2.42)

In both cases we set = q(

1

) P(W). We shall complete the proof of the

theorem by proving the equality /() = /(). Using lemma (162) :

/() = A /()

def. (160) = p

/ /()

theorem (14) and /()

1

= p

/(

1

)

= A(

1

)

A: to be proved = A i q(

1

)

= q(

1

) = A i()

lemma (161) = /()

So it remains to show that i q(

1

) =

1

where i : W

W is the inclusion

map. As before, we shall distinguish two cases: rst we assume that W ,= .

Then q arises from the substitution q :

W W and from proposition (64) it is

sucient to prove that i q(u) = u for all u Var(

1

). Since Var(

1

) W the

equality is clear. Next we assume that W = . From the inclusion Var(

1

) W

it follows that Var(

1

) = and it is therefore sucient to prove the property:

Var() = i q() =

for all P(

W). We shall do so by structural induction. Note that when

W = , the inclusion map i : W

W is simply the map with empty domain,

namely the empty set. First we assume that = (u v) for some u, v

W.

Then the above implication is vacuously true. Next we assume that = .

Then i q() = is clear. So we now assume that =

1

2

where

1

,

2

satisfy the above implication. We need to show the same is true of . So we

assume that Var() = . We need to show that i q() = . However, from

177

Var() = we obtain Var(

1

) = and Var(

2

) = . Having assumed

1

and

2

satisfy the implication, we obtain the equalities i q(

1

) =

1

and i q(

2

) =

2

from which i q() = follows immediately. So it remains to check the case

when = u

1

for which the above implication is also vacuously true.

Theorem 18 Let V, W be sets and : V W be a map. Then, there exists

an essential substitution mapping

only if [W[ is an innite cardinal or the inequality [V [ [W[ holds.

Proof

First we prove the if part: so we assume that [W[ is an innite cardinal,

or that it is nite with [V [ [W[. We need to prove the existence of an

essential substitution mapping

c : T(P(W)) P(W) be a choice function whose existence follows from the

axiom of choice. Let us accept for now that for all P(V ), there exists some

P(W) such that /() = /(). Given P(W), let [] denote the

congruence class of modulo the substitution congruence, which is a non-empty

subset of P(W). Dene

() = c([]), where

is an arbitrary formula of P(W) such that /() = /(). We need to

check that

choice of . But if

) then /() = /(

)

and it follows from theorem (14) of page 153 that [] = [

]. So it remains

to show the existence of such that /() = /() for all P(V ). So

let P(V ). Using theorem (17) of page 176 it is sucient to prove that

rnk ( /() ) [W[. The substitution rank of a formula being always nite,

this is clearly true if [W[ is innite. Otherwise, using proposition (157) :

rnk ( /() ) rnk (/())

prop. (153) = rnk ()

[Var()[

[V [

[V [ [W[ [W[

We now prove the only if part: So we assume there exists

: P(V ) P(W)

essential substitution associated with . We need to show that [W[ is an innite

cardinal, or that it is nite with [V [ [W[. So suppose [W[ is a nite cardinal.

There exists n N such that [W[ = n. We need to show that [V [ n holds. So

we assume to the contrary that n+1 [V [ and we shall derive a contradiction.

Using proposition (158) there exists a formula P(V ) such that Fr () =

and rnk () = n + 1. Hence we have the following:

n + 1 = rnk ()

prop. (153) = rnk (/())

A: to be proved = rnk ( /())

178

())

prop. (153) = rnk (

())

[Var(

())[

() P(W) [W[

= n

which is our desired contradiction. So it remains to show /() = /().

From proposition (64) it is enough to prove that (u) = u for all u Var(/()).

Using denition (142) of the minimal extension it is sucient to show that

Var(/()) N. Since

V = V N, it is therefore sucient to prove that

Var(/()) V = . However from proposition (139) we have the equality

Var(/()) V = Fr (). So the result follows from Fr () = .

2.3.8 Properties of Essential Substitution

Until now we have always started from a map : V W and investigated the

existence of an associated essential substitution

theorem (18) of page 178 we have a simple rule based on the cardinals [V [ and

[W[ allowing us to determine when such existence occurs. In this section, we

wish to investigate essential substitutions in their own right. We shall say that a

map

: V W such that

denition (159). We believe essential substitutions should play an important

role in mathematical logic. Our study of substitutions started with the (not

essential) substitutions mappings

: V W as per denition (53). These substitution mappings allowed us to

characterize the substitution congruence but are somewhat limited by the fact

that is generally not a valid substitution for P(V ). The introduction of

valid substitutions as per denition (83) allowed us to move forward somehow,

but the issue with valid substitutions fundamentally remains: if a substitution

: V W is valid for P(V ), then the associated

: P(V ) P(W)

behaves properly on . In other words, it is meaningful to speak of

().

However, this validity of for is a local property so to speak, and we are still

short of a map

essential substitutions allow us to achieve: if

substitution then

map : V W had the global property of being valid for all P(V ).

Denition 165 Let V, W be sets. We say that a map

: P(V ) P(W) is

an essential substitution if and only if there exists : V W such that:

/

= /

where :

V

W is the minimal extension and / is the minimal transform.

179

The following proposition shows that any map : V W associated with

an essential substitution

substitution

of confusion. In fact, there is no need to have separate notations

and . If

: P(V ) P(W) is an essential substitution, it is meaningful to speak of (x).

Proposition 166 Let V , W be sets and

substitution. Then the map : V W associated with

is unique.

Proof

Let

0

,

1

: V W such that /

=

i

/ for all i 2. We need to show

that

0

(x) =

1

(x) for all x V . So let x V . Dene = (x x). Then :

(

0

(x)

0

(x)) = (

0

(x)

0

(x))

=

0

(x x)

=

0

/()

= /

()

=

1

/()

= (

1

(x)

1

(x))

From (

0

(x)

0

(x)) = (

1

(x)

1

(x)) we conclude that

0

(x) =

1

(x).

The notion of essential substitution is tailor made for the substitution con-

gruence which is arguably the most important congruence in P(V ). If an essen-

tial substitution : P(V ) P(W) is redened without changing the class of

() modulo substitution, we still obtain an essential substitution which is in

fact identical to when viewed as a map : V W.

Proposition 167 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Let : P(V ) P(W) be a map such that () () for all

P(V ) where is the substitution congruence on P(W). Then is itself an

essential substitution with associated map : V W identical to .

Proof

Since is essential we have / () = /() for all P(V ). Having

assumed that () () for all P(V ), from theorem (14) of page 153

we have / () = / (). It follows that / () = /() and we

conclude that is itself essential with associated map : V W.

Suppose : P(V ) P(W) is an essential substitution. We have an associ-

ated map : V W which we have decided to call to keep our notations

light and natural. But to every map : V W there is an associated vari-

able substitution mapping

been our practice so far to denote the variable substitution

simply by .

Obviously we cannot keep calling everything without creating great con-

fusion. Whenever we are dealing with a map : V W and another map

180

: P(V ) P(W), the fact that these two maps have the same name is ne,

as we can tell from the context which map is being referred to. We are now

confronted with a situation where we have two maps : P(V ) P(W) which

cannot be distinguished from the data type of their argument, so to speak.

Hence our notation

per denition (53). Now given P(V ), we may be wondering what relation-

ship there is between () and

general since from proposition (167) we know that can be redened modulo

the substitution congruence without aecting its associated map : V W.

However, if is the substitution congruence on P(W) we may be able to claim

that ()

Proposition 168 Let V, W be sets and : P(V ) P(W) be an essential sub-

stitution. Then if is valid for P(V ), we have the substitution equivalence:

()

()

where

Proof

We assume that is valid for . We need to show that ()

(), that

is / () = /

theorem (13) of page 150 we have /

substitution we also have / () = /(). So the result follows.

We have spent a lot of time proving the existence of essential substitutions

without providing natural examples. The most obvious are the variable substitu-

tion mappings associated with injective maps : V W as per denition (53).

A more interesting and somewhat deeper result, is the fact that the minimal

transform mapping / : P(V ) P(

Proposition 169 Let V, W be sets and : V W be an injective map. Then

the associated map : P(V ) P(W) is essential with associated map itself.

Proof

Let : V W be an injective map. Let : P(V ) P(W) be the associ-

ated substitution mapping as per denition (53). The fact that both mappings

are called is standard practice at this stage for us. We need to prove that

: P(V ) P(W) is an essential substitution mapping, with associated map

: V W. In other words, we need to prove that / () = /() for all

P(V ). Using theorem (13) of page 150 it is sucient to show that is valid

for which follows from proposition (86) and the injectivity of : V W.

The minimal transform / is an essential substitution with associated map

the inclusion i : V

V . In this case, we shall break with our own tradition and

refrain from using the same notation for / and its associated map i : V

V .

Proposition 170 Let V be a set. The minimal transform / : P(V ) P(

V )

is an essential substitution with associated map the inclusion i : V

V .

181

Proof

Let

/ : P(

V ) P(

V ). We need to

show that

/ /() =

from proposition (86) it is valid for and it follows from theorem (13) of page 150

that

/ i() =

/ /() =

/ i().

Using theorem (14) of page 153 we need to show /() i() where is the

substitution congruence on P(

know from proposition (116) that () where denotes the substitution

congruence on P(V ). In other words, if is valid for and (u) = u for all

u Fr () then we have where = (). The following proposition is an

extension of this result for essential substitutions. In fact, the converse is now

also true. If then we must have = () for some essential substitution

such that (u) = u for all u Fr (). This is less deep than it looks:

Proposition 171 Let V be a set and be the substitution congruence on P(V ).

Then for all , P(V ) we have if and only if = () for some

essential substitution : P(V ) P(V ) such that (u) = u for all u Fr ().

Proof

First we show the if part: so suppose = () for some essential substi-

tution : P(V ) P(V ) such that (u) = u for all u Fr (). We need

to show that . From theorem (14) of page 153 it is sucient to prove

that /() = /(). Having assumed that = () we need to show that

/() = / (). However, since is essential we have / () = /().

Hence we need to show that /() = /(). Using proposition (64) it is

sucient to prove that (u) = u for all u Var(/()). So let u Var(/()).

Since

V = V N we shall distinguish two cases: rst we assume that u N. Then

(u) = u is clear from denition (142). Next we assume that u V . Then from

proposition (139) we obtain u Fr () and it follows that (u) = (u) = u. We

now prove the only if part: so suppose . We need to show that = ()

for some essential substitution : P(V ) P(V ) such that (u) = u for all

u Fr (). Let i : P(V ) P(V ) be the identity mapping. From proposi-

tion (169), i is an essential substitution associated with the identity i : V V .

Let : P(V ) P(V ) be dened by () = i() whenever ,= and () = .

Having assumed that we have () i() for all P(V ). It follows

from proposition (167) that is an essential substitution whose associated map

: V V is the identity. In particular, we have (u) = u for all u Fr ().

The composition of two essential substitutions is itself essential, while the

associated map is the obvious composition of the respective associated maps.

Proposition 172 Let U, V and W be sets while the maps : P(U) P(V )

and : P(V ) P(W) are essential substitutions. Then : P(U) P(W)

is itself an essential substitution with associated map : U W.

182

Proof

We need to show that /() = ( )/. However from denition (142), it

is clear that the minimal extension ( ) :

U

W is equal to the composition

of the minimal extensions . Hence we have:

/ ( ) = /

= /

= ( ) /

sition (85) we know that Fr (()) = (Fr ()). In fact this equality holds for

every sub-formula _ . The following proposition shows that the equality

Fr (()) = (Fr ()) holds whenever : P(V ) P(W) is an essential sub-

stitution. As already pointed out, this is as if was valid for all P(V ).

But of course, nothing about sub-formulas in this case. Consider the formula

= y(x y) where V = x, y and x ,= y. Let : P(V ) P(V ) be an

essential substitution associated with = [y/x]. Then : V V is clearly

not valid for and the equality Fr (()) = (Fr ()) may look very surprising.

Indeed, we have Fr () = x and consequently (Fr ()) = y. It is very

tempting to argue that () = y(y y) has no free variable and that the

equality therefore cannot be true. But remember that : P(V ) P(V ) does

not refer to the substitution mapping associated with : V V . The context

of our discussion makes it very clear that we are starting with : P(V ) P(V )

as a given essential substitution. Hence () is not equal to y(y y). In fact,

we must have / () = 0(y 0) and since V = x, y it is not dicult to

prove that the only possible value is () = x(y x), and Fr (()) = y.

Proposition 173 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Then for all P(V ) we have the equality:

Fr (()) = (Fr ())

Proof

Using proposition (139) we obtain the following:

Fr (()) = Fr ( / () )

= Fr ( /() )

valid for /() = ( Fr (/()) )

prop. (139) = (Fr ())

Fr () V = (Fr ())

183

If , : V W are two maps and P(V ), we know from proposition (64)

that () = () if and only if and coincide on Var(). The following

proposition provides the counterpart result for essential substitutions. So we

start from , : P(V ) P(W) two essential substitutions and we consider

the equivalence () () where is the substitution congruence. Note

that there is not much point considering the equality () = () in the case

of essential substitutions, since we know from proposition (167) that both

and can be arbitrarily redened modulo substitution, without aecting their

associated maps , : V W. So we can only focus on () () which

holds if and only if the associated maps , : V W coincide on Fr () :

Proposition 174 Let V, W be sets and , : P(V ) P(W) be two essential

substitutions. Then for all P(V ) we have the equivalence:

|Fr ()

=

|Fr ()

() ()

where denotes the substitution congruence on the algebra P(W).

Proof

From theorem (14) of page 153, () () is equivalent to the equality

/ () = / (). Having assumed and are essential, this is in turn

equivalent to /() = /(). Using proposition (64), this last equal-

ity is equivalent to (u) = (u) for all u Var(/()). Hence we need to

show that this last statement is equivalent to (u) = (u) for all u Fr ().

First we show : so suppose (u) = (u) for all u Var(/()) and let

u Fr (). We need to show that (u) = (u). From proposition (139) we have

Var(/()) V = Fr (). It follows that u Var(/()) V and consequently

we have (u) = (u) = (u) = (u) as requested. So we now prove : So

we assume that (u) = (u) for all u Fr () and consider u Var(/()).

We need to show that (u) = (u). Since

V = V N we shall distinguish two

cases: rst we assume that u N. Then (u) = u = (u). Next we assume that

u V . Then u Var(/()) V = Fr () and (u) = (u) = (u) = (u).

In theorem (15) of page 155 we proved that () () whenever and

: V W is a substitution which is valid for both and . We now provide

an extension of this result for an essential substitution : P(V ) P(W). We

should not confuse the following proposition with proposition (171) relative to

essential substitutions : P(V ) P(V ). If we want to claim that ()

then proposition (171) requires that (u) = u for all u Fr (). This is not the

same thing as claiming () () for which no special conditions on the set

Fr () = Fr () is attached (recall that Fr () = Fr () whenever ). If you

have , then you can move the free variables around as much as you want

with an essential substitution. It will not change the fact that () ().

Proposition 175 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Then for all formulas , P(V ) we have the implication:

() ()

184

where denotes the substitution congruence on P(V ) and P(W).

Proof

So we assume that . We need to show that () (). Using theo-

rem (14) of page 153 it is sucient to show that / () = / (). Having

assumed that is essential, it is sucient to show that /() = /()

which follows immediately from /() = /(), itself a consequence of .

for a formula P(V ) will preserve its substitution rank, provided

|Fr ()

is an

injective map. The same is true of an essential substitution : P(V ) P(W).

Proposition 176 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Let P(V ) such that

|Fr ()

is an injective map. Then:

rnk (()) = rnk ()

where rnk ( ) refers to the substitution rank as per denition (149).

Proof

Using proposition (153) we obtain the following:

rnk (()) = rnk (/ ())

essential = rnk ( /())

A: to be proved = rnk (/())

prop. (153) = rnk ()

So it remains to show that rnk ( /()) = rnk (/()). Using proposi-

tion (154) it is sucient to show that is valid for /() and furthermore that

it is injective on Fr (/()). We know that is valid for /() from proposi-

tion (143). We also know that Fr (/()) = Fr () from proposition (139). So

it remains to show that is injective on Fr () V which is clearly the case

since coincide with on V and is by assumption injective on Fr ().

Without the injectivity of on Fr (), the substitution rank is generally not

preserved. However as can be seen below, it can never increase. The following

proposition extends proposition (157) to essential substitutions.

Proposition 177 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Then for all formula P(V ) we have the inequality:

rnk (()) rnk ()

where rnk ( ) refers to the substitution rank as per denition (149).

185

Proof

Using proposition (153) we obtain the following:

rnk (()) = rnk (/ ())

essential = rnk ( /())

prop. (157) rnk (/())

prop. (153) = rnk ()

only so much we can say about (), even if we know about the structure of

. For example, if =

1

2

we cannot claim that () = (

1

) (

2

).

However, as the following proposition will show, we have () (

1

) (

2

)

where is the substitution congruence on P(W). A more interesting example

is the case when = x

1

. We would like to claim that () (x)(

1

).

However, there is little chance of this equivalence being true when (x) happens

to be a free variable of (). So the condition (x) , Fr (()) should be

a minimal requirement. Remember that the map : P(V ) P(W) is an

essential substitution. It is not simply the substitution mapping associated with

a map : V W as per denition (53). If this was the case then the equality

() = (x)(

1

) would hold, and the condition (x) , Fr (()) would be

automatically satised. When : P(V ) P(W) is an essential substitution,

it is very well possible that (x) Fr (()). Let = x(x y) with x ,= y

and : P(V ) P(V ) an essential substitution associated with [y/x]. Then

(x) = y while () = z(z y) for some z ,= y. So (x) Fr (()). The

following proposition will show that the condition (x) , Fr (()) is in fact

sucient to obtain the equivalence () (x)(

1

).

Proposition 178 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Let be the substitution congruence on P(W). Then we have:

P(V ) , () :

= ((x) (y)) if = (x y)

= if =

(

1

) (

2

) if =

1

2

(x)(

1

) if = x

1

, (x) , Fr (())

Proof

First we assume that = (x y) for some x, y V . We need to show that

() = (x) (y). However, any map : V W is valid for . It follows from

proposition (168) that ()

(), where

substitution mapping as per denition (53). From

equivalence ()

() = (x) (y) as requested. Next we assume that = . Then once

again is valid for and we obtain ()

theorem (12) we have () = . So we now assume that =

1

2

for some

186

1

,

2

P(V ). We need to show () (

1

) (

2

). Using theorem (14) of

page 153, we simply compute the minimal transforms:

/ () = /()

= /(

1

2

)

= ( /(

1

) /(

2

) )

= /(

1

) /(

2

)

= / (

1

) / (

2

)

= /( (

1

) (

2

) )

So we now assume that = x

1

and (x) , Fr (()). We need to show that

() (x)(

1

). Likewise, we shall compute minimal transforms:

/ () = /()

= /(x

1

)

n = mink : [k/x] valid for /(

1

) = ( n/(

1

)[n/x] )

= (n) ( /(

1

)[n/x] )

= n [n/x] /(

1

)

A: to be proved = n[n/(x)] /(

1

)

= n[n/(x)] / (

1

)

= n/[(

1

)][n/(x)]

B: to be proved = m/[(

1

)][m/(x)]

m = mink : [k/(x)] valid for /[(

1

)] = /((x)(

1

))

So it remains to justify point A and B. First we deal with point A: it is sucient

to prove the equality [n/x] /(

1

) = [n/(x)] /(

1

), which follows

from lemma (144) and (x) , (Fr ()), itself a consequence of (x) , Fr (())

and proposition (173). We now deal with point B: it is sucient to prove the

equivalence [k/x] valid for /(

1

) [k/(x)] valid for /(

1

) which fol-

lows from lemma (145) and the fact that (x) , (Fr ()).

This last proposition seems to indicate there is nothing we can say about

() if it happens to have (x) as a free variable. Luckily this is not the case:

Proposition 179 Let V, W be sets and : P(V ) P(W) be an essential

substitution. Let = x

1

where x V ,

1

P(V ). There exists an essential

substitution : P(V ) P(W) such that = on V x and (x) , Fr (()).

Furthermore, for any such we have the substitution equivalence:

() (x)(

1

)

187

Proof

We shall rst prove the substitution equivalence. So let : P(V ) P(W)

be an essential substitution which coincide with on V x and such that

(x) , Fr (()). We need to show that () (x)(

1

) where denotes

the substitution congruence on P(W). However, since Fr () V x we see

that and are essential substitutions which coincide on Fr (). It follows

from proposition (174) that () (). Hence it is sucient to prove that

() (x)(

1

). Applying proposition (178) it is sucient to show that

(x) , Fr (()). However, by assumption we have (x) , Fr (()) and so:

(x) , Fr (()) = (Fr ()) = (Fr ()) = Fr (())

where we have used proposition (173). It remains to show that such an essential

substitution : P(V ) P(W) exists. Suppose we have proved that Fr (())

is a proper subset of W. Then there exists y

W such that y

, Fr (()).

Consider the map : V W dened by:

u V , (u) =

_

(u) if u V x

y

if u = x

Then it is clear that coincides with on V x and (x) , Fr (()). In order

to show the existence of : P(V ) P(W) it is sucient to show the existence

of an essential substitution associated with : V W. From theorem (18) of

page 178 it is sucient to show that [W[ is an innite cardinal, or that it is

nite with [V [ [W[. However, this follows immediately from the existence of

the essential substitution : P(V ) P(W) and theorem (18). So it remains

to show that Fr (()) is a proper subset of W. This is clearly true if [W[ is an

innite cardinal. So we may assume that [W[ if nite, in which case we have

[V [ [W[. In particular, [V [ is also a nite cardinal and since x , Fr () we

have [Fr ()[ < [V [. Hence we have the following inequalities:

[Fr (())[ = [(Fr ())[ [Fr ()[ < [V [ [W[

So Fr (()) is indeed a proper subset of W, as requested.

2.4 The Permutation Congruence

2.4.1 The Permutation Congruence

We are still looking for the appropriate congruence which should be dened on

P(V ) so as to identify mathematical statements which are deemed identical.

Until now, we have highlighted the substitution congruence dened in page 126

as a possible source of identity. Unfortunately whatever nal congruence we go

for, it will need to be larger (i.e. weaker) than the substitution congruence. As

mathematicians, we are familiar with the fact that the order of quantication

in a given mathematical statement is immaterial. For example, the formulas

188

= xy(x y) and = yx(x y) should mean the same thing. Yet the

equivalence of and cannot be deduced from the substitution congruence

alone when x ,= y. Indeed, let denote the substitution congruence on P(V )

and suppose that . Dene

1

= y(x y) and

1

= x(x y). Then we

have x

1

y

1

with x ,= y. Using theorem (12) of page 135 it follows that

1

1

[y : x] which is x(x y) x(y x). Using theorem (12) once more

we see that (x y) (y x) which contradicts theorem (12). Permuting the

order of quantication cannot be achieved by substituting variables.

Denition 180 Let V be a set. We call permutation congruence on P(V ) the

congruence on P(V ) generated by the following set R

0

P(V ) P(V ):

R

0

= ( xy

1

, yx

1

) :

1

P(V ) , x, y V

We easily see that the permutation congruence preserves free variables :

Proposition 181 Let denote the permutation congruence on P(V ) where V

is a set. Then for all , P(V ) we have the implication:

Fr () = Fr ()

Proof

Let denote the relation on P(V ) dened by if and only if we have

Fr () = Fr (). Then we need to show that . However, we know from

proposition (77) that is a congruence on P(V ). Since is dened as the

smallest congruence on P(V ) which contains the set R

0

of denition (180), we

simply need to show that R

0

. So let

1

P(V ) and x, y V . We need

to show that xy

1

yx

1

which is Fr (xy

1

) = Fr (yx

1

). This is

clearly the case since both sets are equal to Fr (

1

) x, y.

Suppose

1

P(V ) and x, y, z V . If denotes the permutation congru-

ence on P(V ), then the following equivalence can easily be proved:

xyz

1

zyx

1

(2.43)

The most direct proof probably involves permuting pairs of adjacent variables

until we reach the conguration zyx having started from xyz. More

generally, given x V

n

where n N, given an arbitrary permutation : n n,

we would expect the following equivalence to hold equally:

x(n 1) . . . x(0)

1

x((n 1)) . . . x((0))

1

(2.44)

There are several issues to be addressed with equation (2.44). One of our con-

cerns will be of course to establish its truth. There is also the use of the loose

notation . . . which is arguably questionable in a document dealing with formal

logic. More fundamentally, regardless of whether formula (2.44) is true or false,

it is an ugly formula. Granted we could improve things slightly by writing:

x

n1

. . . x

0

1

x

(n1)

. . . x

(0)

1

(2.45)

189

but this is hardly satisfactory. One of our objectives is therefore to design the

appropriate formalism to remove the ugliness of (2.44). Now when it comes to

establishing its proof, the key idea is the same as with xyz and involves

permuting adjacent variables until we reach the appropriate conguration. So

we shall need the fact that an arbitrary permutation can always be expressed as

a composition of adjacent moves. We provide a proof in the following section.

2.4.2 Integer Permutation

We start with a couple of denitions including that of elementary permutation

which formalizes the idea of adjacent moves.

Denition 182 Let n N we call permutation of order n a bijection : n n.

Denition 183 Let n N, n 2. We call elementary permutation of order n

any permutation : n n of the form = [i : i + 1] for some i n 1.

For the sake of brevity, we allowed ourselves to use the notational shortcut

=

k

. . .

1

in the following proof. This is fair enough. In a way, we are still

doing meta-mathematics with the established standards of usual mathematics.

If we are one day to provide a formal proof of the following lemma, we shall

either need to discard the . . . , or create a high level language where its use is

permitted, and corresponding formulas correctly compiled as low level formulas

of rst order logic with some form of recursive wording.

Lemma 184 Let n N, n 2. Any permutation : n n of order n is a

composition of elementary permutations, i.e. there exist k N

and elementary

permutations

1

, . . . ,

k

such that:

=

k

. . .

1

Proof

We shall prove lemma (184), using an induction argument on n 2. First we

show that the lemma is true for n = 2. So suppose : 2 2 is a permutation

of order 2. We shall distinguish two cases. First we assume that = [0 : 1].

Then is an elementary permutation and there is nothing else to prove. We

now assume that is the identity. Then can be expressed as = [0: 1] [0: 1].

Having considered the only two possible cases, we conclude that lemma (184)

is true when n = 2. We now assume that lemma (184) is true for n 2. We

need to show that it is true for n + 1. So we assume that : (n + 1) (n +1)

is a permutation of order n + 1. We need to show that can be expressed

as a composition of elementary permutations. We shall distinguish two cases.

First we assume that (n) = n. Then the restriction

|n

is easily seen to be

a permutation of order n. Indeed, it is clearly an injective map

|n

: n n

which is also surjective. Using the induction hypothesis, there exist k N

and

elementary permutations

1

, . . . ,

k

of order n such that:

|n

=

k

. . .

1

190

For all j 1, . . . , k consider the extension

j

of

j

on n + 1 dened by

(

j

)

|n

=

j

and

j

(n) = n. Having assumed that (n) = n, we obtain:

=

k

. . .

1

It is therefore sucient to show that each

j

is an elementary permutation of

order n + 1. So let j 1, . . . , k. Since

j

is an elementary permutation of

order n, there exists i n 1 such that

j

= [i : i + 1] (of order n). It follows

immediately that

j

= [i : i +1] (or order n+1). So

j

is indeed an elementary

permutation of order n +1. This completes our proof of lemma (184) for n +1

in the case when (n) = n. We now assume that (n) ,= n. Then (n) n.

In other words, there exists j n such that (n) = n 1 j. We shall prove

by induction on j n that can be expressed as a composition of elementary

permutations of order n+1. Note that in order to do so, it is sucient to prove

the existence of m N

1

, . . . ,

m

such that:

m

. . .

1

(n) = n

Indeed if that is the case, having proved lemma (184) for n+1 in the case when

(n) = n, we deduce the existence of k N

1

, . . . ,

k

of order n + 1 such that:

m

. . .

1

=

k

. . .

1

and since

1

= for every elementary permutation , we conclude that:

=

1

. . .

m

k

. . .

1

So we need to show the existence of m N

1

, . . . ,

m

such that

m

. . .

1

(n) = n, and we shall do so by induction on

j n such that (n) = n1j. First we assume that j = 0. Then (n) = n1

and it is clear that [ n1 : n] (n) = n. So the property is true for j = 0. We

now assume that the property is true for j (n 1) and we need to show that

it is true for j + 1. So we assume that (n) = n 1 (j + 1). Then we have:

[ n 1 (j + 1) : n 1 j ] (n) = n 1 j

Having assumed the property is true for j, there exist m N

and elementary

permutations

1

, . . . ,

m

such that:

m

. . .

1

[ n 1 (j + 1) : n 1 j ] (n) = n

Hence we see that the property is also true for j + 1.

Having established that every permutation : n n is a composition of

elementary permutations for n 2, our main objective is to design a proof of :

x

n1

. . . x

0

1

x

(n1)

. . . x

(0)

1

(2.46)

191

However, we would also like to do so while at the same time creating a more

condensed formalism. In the next section, we shall dene the notion of iterated

quantication, allowing us to replace the expression x

n1

. . . x

0

1

by a simple

x

1

with x V

n

. Before we do so we shall introduce a simple equivalence

relation on V

n

so as to identify x V

n

with y = x . This will allow us to

replace the statement of the equivalence (2.46) with the following implication:

x y x

1

y

1

Denition 185 Let V be a set, n N and x, y V

n

. We say that x is

permutation equivalent to y and we write x y if and only if there exists a

permutation : n n of order n such that y = x .

Proposition 186 Let V be a set and n N. Let denote the permutation

equivalence on V

n

. Then is an equivalence relation on V

n

.

Proof

We need to show that is a reexive, symmetric and transitive relation on V

n

.

First we show that is reexive. So suppose x V

n

. We need to show that

x x. Let : n n be the identity permutation. Then we have x = x .

Note that if n = 0, then x = 0 and = 0 and the equality x = x is still

true. This shows that x x. We now show that is symmetric. So suppose

x, y V

n

and x y. We need to show that y x. By assumption, there

exists a permutation : n n such that y = x . Composing to the right

by the inverse permutation

1

: n n we obtain y

1

= x and it follows

that y x. We now show that is transitive. So suppose x, y, z V

n

are

such that x y and y z. We need to show that x z. However, there exist

permutations : n n and : n n such that y = x and z = y . It

follows that z = x ( ) and nally x z.

2.4.3 Iterated Quantication

The following denition allows us to replace the formalism x(n1) . . . x(0)

with a more condensed expression x. In doing so, we are overloading the

symbol by creating a new unary operator x : P(V ) P(V ) for all x V

n

and n N. This operator coincides with the standard operator x when x V .

Note that when n = 0, the only possible element x V

n

is x = 0 and the

operator 0 : P(V ) P(V ) is simply the identity. There is obviously a small

risk of notational confusion when seeing 0 especially in the context of minimal

transforms. Overall, we do not think this risk is high enough to warrant the

introduction of a dierent symbol for iterated quantication. Given n N

and x V

n

we dene x in terms of the expression x(n 1) . . . x(0) . In

case this is not clear, this is simply a notational shortcut for the more formal

denition by recursion 0 = and if x V

n+1

, x = x(n)x

|n

.

192

Denition 187 Let V be a set, n N and x V

n

. For all P(V ) we call

iterated quantication of by x the element x of P(V ) dened by:

x = x(n 1) . . . x(0)

where it is understood that if n = 0, we have 0 = .

Given any congruence relation on P(V ), we have x x whenever

and x V . Obviously this property should extend to iterated quantication:

Proposition 188 Let V be a set, n N and x V

n

. Let be an arbitrary

congruent relation on P(V ). Then for all , P(V ) we have:

x x

Proof

We shall prove this result by induction on n N. First we assume n = 0. Then

V

n

= 0 and x = 0. By convention the corresponding iterated quantications

are dened as 0 = and 0 = . So the property is clearly true. Next we

assume that the property is true for n N. We need to show that it is true

for n + 1. So we assume that and x V

n+1

. We need to show that

x x. However, we have x

|n

V

n

and from the induction hypothesis we

obtain x

|n

x

|n

. Since is a congruent relation on P(V ) we have:

x = x(n)x

|n

x(n)x

|n

= x

So we conclude that the property is true for n + 1.

We are now able to quote and prove what we set out from the beginning. If

two iterated quantication operators are equivalent modulo some permutation,

then the corresponding formulas are permutation equivalent. This all seems

pretty obvious, but it has to be proved one way or another:

Proposition 189 Let V be a set, n N and x, y V

n

. Let denote the

permutation congruence on P(V ). Then for all P(V ) we have:

x y x y

where x y refers to the permutation equivalence on V

n

.

Proof

We shall distinguish three cases. First we assume that n = 0. Then x = y = 0

and the result is clear. Next we assume that n = 1. Then x y implies that

x = y and the result is also clear. We now assume that n 2 and x y. We

need to show that x y. From x y there exists a permutation : n n

such that y = x . We shall distinguish two cases. First we assume that

is an elementary permutation, namely that there exists i n 1 such that

= [i : i + 1] (of order n). We shall prove that x y using an induction

193

argument on n 2. First we assume that n = 2. Then we must have i = 0 and

= [0: 1] (of order 2). Hence from y = x we obtain:

y = y(1)y(0) = x(0)x(1)

Comparing with x = x(1)x(0), it is clear that the ordered pair (x, y)

belongs to the generator R

0

of the permutation congruence as per denition (180).

In particular we have x y which completes our proof in the case when

is elementary and n = 2. We now assume that the property is true for

elementary and n 2. We need to show that it is also true for elementary

and n + 1. So we assume the existence of i n such that = [i : i + 1] (of

order n + 1). We need to show that x y. We shall distinguish two

cases. First we assume that i = n 1 which is the highest possible value when

i n. Then for all j n 1 we have j ,= i and j ,= i + 1 and consequently

y(j) = x (j) = x [i : i +1](j) = x(j). Hence we see that x

|n1

= y

|n1

, and:

y = y(n) y(n 1) y

|n1

= x(n 1) x(n) x

|n1

|n1

. Setting u = x(n) and v = x(n1)

with

1

= x

|n1

, it follows that x = uv

1

and y = vu

1

. Hence

we see that the ordered pair (x, y) belongs to the generator R

0

of the

permutation congruence as per denition (180). In particular x y. We

now assume that i n 1. In particular we have i + 1 ,= n and i ,= n and:

y(n) = x (n) = x [i : i + 1](n) = x(n)

It follows that y = y(n)y

|n

= x(n)y

|n

while x = x(n)x

|n

.

Hence, we see that in order to showthat x y, the permutation congruence

being a congruent relation on P(V ), it is sucient to prove that x

|n

y

|n

.

This follows immediately from our induction hypothesis and the fact that:

y

|n

= x

|n

= x [i : i + 1]

|n

= x

|n

[i : i + 1]

where it is understood that the second occurrence of [i : i +1] in this equation

refers to the elementary permutation of order n (rather than n +1) dened for

i n 1. This completes our induction argument and we have proved that

x y in the case when y = x with elementary. We now assume

that : n n is an arbitrary permutation of order n and we need to show

that x y. However since n 2 it follows from lemma (184) that can

be expressed as a composition of elementary permutations of order n. In other

words, there exist k N

1

, . . . ,

k

such that:

=

k

. . .

1

We shall prove that x y by induction on the integer k N

. If k = 1

then is an elementary permutation and we have already proved that the result

is true. We now assume that the result is true for k 1 and we need to show

it is also true for k + 1. So we assume that:

=

k+1

k

. . .

1

194

Dening

=

k+1

. . .

2

we obtain =

1

. It follows that:

y = x = x

1

= y

1

where we have put y

= x

. Now since

1

is an elementary permutation

and y = y

1

, we have already proved that y y

. Furthermore, since

y

= x

and

from our induction hypothesis that y

tation congruence, we conclude that x y.

2.4.4 Irreducible Formula

Having proved proposition (189) our next objective is to establish some char-

acterization theorem for the permutation congruence, similar to theorem (12)

of page 135 which was established for the substitution congruence. Suppose

= uvw((u v) (v w)). We know from theorem (2) of page 21 that

the representation = x

1

is unique: clearly

1

= vw((u v) (v w))

and x = u. However, if we introduce iterated quantication as we have done,

the representation = x

1

with x V

n

and n N is not unique. However,

such representation must be unique if we impose that

1

does not start as a

quantication. For lack of a better word, we shall say that

1

is irreducible

to indicate that no further quantication can be removed at the top level. Al-

though we are not very happy with the chosen terminology (irreducible is a big

word in algebra), this is simply a temporary notion soon to be forgotten. It will

allow us to prove the uniqueness we require for our characterization theorem.

Denition 190 Let V be a set and P(V ). We say that is irreducible if

and only if one of the following is the case:

(i) P

0

(V )

(ii) =

(iii) =

1

2

,

1

P(V ) ,

2

P(V )

Proposition 191 Let V be a set and P(V ). Then can be uniquely

represented as = x

1

where x V

n

, n N,

1

P(V ) and

1

is irreducible.

Proof

Given P(V ) we need to show the existence of n N, x V

n

and

1

irreducible such that = x

1

. Furthermore, we need to show that this rep-

resentation is unique, namely that if m N, y V

m

,

1

is irreducible and

= y

1

, then we have x = y and

1

=

1

. Note that x = y will automatically

imply that n = m, as identical maps have identical domains. We shall carry out

the proof by structural induction using theorem (3) of page 32. Since P

0

(V ) is

a generator of P(V ), we rst check that the property is true for P

0

(V ). So

suppose P

0

(V ). We take n = 0, x = 0 V

n

and

1

= . Then

1

is irre-

ducible and we have = x

1

which shows the existence of the representation.

195

Suppose now that = y

1

for some y V

m

, m N and

1

irreducible. Since

P

0

(V ), from theorem (2) of page 21, cannot be a quantication. It follows

that m = 0, y = 0 and

1

= = 0

1

=

1

. This proves the uniqueness of the

representation, and the property is proved for P

0

(V ). We now assume that

= or indeed that =

1

2

. Then is irreducible and taking n = 0,

x = 0 and

1

= we obtain = x

1

. Once again from theorem (2), cannot

be a quantication and it follows that this representation is unique. It remains

to show that the property is true in the case when = z for some z V , and

the property is true for . First we show the existence of the representation.

Having assumed that the property is true for , there exists n N, x V

n

and

1

irreducible such that = x

1

. Consider the map x

: (n + 1) V dened

by x

|n

= x and x

(n) = z. Taking

1

=

1

we obtain:

x

1

= x

(n)x

|n

1

= zx

1

= z =

which shows the existence of the representation. We now prove the uniqueness.

So suppose m N, y V

m

,

1

is irreducible and = y

1

. We need to show

that y = x

and

1

=

1

. From = y

1

we obtain z = y

1

. It follows

that y

1

is a quantication and from theorem (2) it cannot be irreducible.

This shows that m 1, and consequently m = p + 1 for some p N. Hence:

z = = y

1

= y(p)y

|p

1

Applying theorem (2) once more, we obtain z = y(p) and = y

|p

1

. Having

assumed the property is true for , its representation = x

1

is unique. It

follows that y

|p

= x and

1

=

1

. So we have proved that

1

=

1

. Furthermore

from y

|p

= x it follows that p = n and m = n+1. So y is a map y : (n+1) V

such that y

|n

= x and y(n) = z. We conclude that y = x

.

2.4.5 Characterization of the Permutation Congruence

We are now able to confront our next objective, that of establishing a charac-

terization theorem for the permutation congruence, similar to theorem (12) of

page 135. This type of theorem has proved very useful in the case of the substi-

tution congruence. Whenever it is important to be able to say something

about the common structure of and . For example, if =

1

2

, we

want the ability to claim that is also of the form =

1

2

. An example

of this is proposition (155) establishing the formula between substitution ranks

rnk () = max( [Fr ()[ , rnk (

1

) , rnk (

2

) ) when =

1

2

. The strategy

to prove our characterization theorem (19) below will follow very closely that of

theorem (12). We shall not try to be clever: we dene a new binary relation on

P(V ) which constitutes our best guess of what an appropriate characterization

should look like. We then painstakingly prove that this new relation has all

the desired properties: it contains the generator of the permutation congruence,

it is reexive, symmetric and transitive. It is a congruent relation, hence a

congruence on P(V ) which is in fact equivalent to the permutation congruence.

196

Denition 192 Let be the permutation congruence on P(V ) where V is a

set. Let , P(V ). We say that is almost permutation equivalent to and

we write , if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = y

1

,

1

1

, x y V

n

, n 1

where it is understood that

1

and

1

are irreducible in (iv), and x y refers

to the permutation equivalence on V

n

as per denition (185).

Proposition 193 (i), (ii), (iii), (iv) of denition (192) are mutually exclusive.

Proof

This is an immediate consequence of theorem (2) of page 21 applied to the free

universal algebra P(V ) with free generator P

0

(V ), where a formula P(V )

is either an element of P

0

(V ), or the contradiction constant = , or an impli-

cation =

1

2

, or a quantication = x

1

, but cannot be equal to any

two of those things simultaneously. Note that we are requesting that n 1 in

(iv) of denition (192), so = x

1

and = y

1

are indeed quantications

when (iv) is the case.

Proposition 194 Let be the almost permutation equivalence on P(V ) where

V is a set. Then contains the generator R

0

of denition (180).

Proof

Let x, y V and

1

P(V ). Let = xy

1

and = yx

1

. We need to

show that . From proposition (191), there exist n N, z V

n

and

1

irreducible such that

1

= z

1

. Consider the map u : (n + 2) V dened by

u

|n

= z, u(n) = y and u(n + 1) = x. Then we have:

= xy

1

= u(n + 1) u(n) u

|n

1

= u(n + 1) u

|n+1

1

= u

1

Consider the map v : (n + 2) V dened by v = u [n : n + 1]. Then v

|n

= z,

v(n) = x and v(n + 1) = y and it follows similarly that = yx

1

= v

1

.

Hence, we have found

1

irreducible, u, v V

n+2

with u v such that = u

1

and = v

1

. From (iv) of denition (192) we conclude that .

Proposition 195 Let be the almost permutation equivalence on P(V ) where

V is a set. Then is a reexive relation on P(V ).

Proof

Let P(V ). We need to show that . From theorem (2) of page 21

we know that is either an element of P

0

(V ), or = or =

1

2

197

or = x

1

for some

1

,

2

P(V ) and x V . We shall consider these

four mutually exclusive cases separately. Suppose rst that P

0

(V ): then

from = we obtain . Suppose next that = : then it is clear that

. Suppose now that =

1

2

. Since the permutation congruence is

reexive, we have

1

1

and

2

2

. It follows from (iii) of denition (192)

that . Suppose nally that = x

1

. From proposition (191), there

exist n N, z V

n

and

1

irreducible such that

1

= z

1

. Consider the map

u : (n + 1) V dened by u

|n

= z and u(n) = x. Then we have:

= x

1

= xz

1

= u(n) u

|n

1

= u

1

Since

1

is irreducible,

1

1

and u u, we conclude from (iv) of deni-

tion (192) that .

Proposition 196 Let be the almost permutation equivalence on P(V ) where

V is a set. Then is a symmetric relation on P(V ).

Proof

Let , P(V ) be such that . We need to show that . We shall

consider the four possible cases of denition (192): suppose rst that P

0

(V ),

P

0

(V ) and = . Then it is clear that . Suppose next that =

and = . Then we also have . We now assume that =

1

2

and

=

1

2

with

1

1

and

2

2

. Since the permutation congruence on

P(V ) is symmetric, we have

1

1

and

2

2

. Hence we have . We

now assume that = x

1

and = y

1

with

1

1

and

1

,

1

irreducible,

x y V

n

and n 1. Then once again by symmetry of the permutation

congruence we have

1

1

and furthermore y x. It follows that .

Proposition 197 Let be the almost permutation equivalence on P(V ) where

V is a set. Then is a transitive relation on P(V ).

Proof

Let , and P(V ) be such that and . We need to show that

. We shall consider the four possible cases of denition (192) in relation

to . Suppose rst that , P

0

(V ) and = . Then from we

obtain , P

0

(V ) and = . It follows that , P

0

(V ) and = . Hence

we see that . We now assume that = = . Then from we

obtain = = . It follows that = = and consequently . We now

assume that =

1

2

and =

1

2

with

1

1

and

2

2

. From

we obtain =

1

2

with

1

1

and

2

2

. The permutation

congruence being transitive, it follows that

1

1

and

2

2

. Hence we see

that . We now assume that = x

1

and = y

1

with

1

1

, and

1

,

1

irreducible, x y V

n

and n 1. Since n 1, from only the

case (iv) of denition (192) is possible. Furthermore from proposition (191), the

representation = y

1

with

1

irreducible is unique. It follows that = z

1

198

with

1

1

irreducible and y z V

n

. The permutation congruence being

transitive, we obtain

1

1

. Furthermore, also by transitivity we obtain x z

and we conclude that .

Proposition 198 Let be the almost permutation equivalence and be the

permutation congruence on P(V ), where V is a set. For all , P(V ):

Proof

Let , P(V ) such that . We need to show that . We shall con-

sider the four possible cases of denition (192) in relation to . Suppose

rst that = P

0

(V ). From the reexivity of the permutation congruence,

it is clear that . Suppose next that = = . Then we also have

. We now assume that =

1

2

and =

1

2

where

1

1

and

2

2

. The permutation congruence being a congruent relation on P(V ),

we obtain . Next we assume that = x

1

and = y

1

where

1

1

and

1

,

1

are irreducible, x y V

n

and n 1. The permutation congruence

being a congruent relation on P(V ), from proposition (188) and

1

1

we

obtain y

1

y

1

. Hence by transitivity of the permutation congruence, it

remains to show that x

1

y

1

which follows immediately from x y and

proposition (189).

Proposition 199 Let be the almost permutation equivalence on P(V ) where

V is a set. Then is a congruent relation on P(V ).

Proof

From proposition (195), the almost permutation equivalence is reexive and

so . We now assume that =

1

2

and =

1

2

where

1

1

and

2

2

. We need to show that . However from proposition (198) we

have

1

1

and

2

2

and it follows from denition (192) that . We

now assume that = x

1

and = x

1

where

1

1

and x V . We need

to show that . Once again from proposition (198) we have

1

1

. We

shall now distinguish two cases in relation to

1

1

. First we assume that (i)

(ii) or (iii) of denition (192) is the case. Then both

1

and

1

are irreducible.

Dening x

: 1 V by setting x

(0) = x we obtain:

= x

1

= x

(0)

1

= x

1

and similarly = x

1

. From

1

,

1

irreducible and

1

1

we conclude that

. We now assume that (iv) of denition (192) is the case. Then

1

= u

1

and

1

= v

1

where

1

and

1

,

1

are irreducible, u v V

n

and

n 1. Dening u

: (n + 1) V by setting u

|n

= u and u

(n) = x we obtain:

= x

1

= xu

1

= u

(n)u

|n

1

= u

1

199

and similarly = v

1

where v : (n + 1) V is dened by v

|n

= v and

v

(n) = x. Since

1

,

1

are irreducible and

1

, in order to show that

it is sucient to prove that u

exists a permutation : n n of order n such that v = u . Dening

: (n + 1) (n + 1) by

|n

= and

order n + 1 such that v

= u

.

Proposition 200 Let be the almost permutation equivalence on P(V ) where

V is a set. Then is a congruence on P(V ).

Proof

We need to show that is reexive, symmetric, transitive and that it is a con-

gruent relation on P(V ). From proposition (195), the relation is reexive.

From proposition (196) it is symmetric while from proposition (197) it is tran-

sitive. Finally from proposition (199) the relation is a congruent relation.

Proposition 201 Let be the almost permutation equivalence and be the

permutation congruence on P(V ), where V is a set. For all , P(V ):

Proof

From proposition (198) it is sucient to show the implication or equivalently

the inclusion . Since is the permutation congruence on P(V ), it is the

smallest congruence on P(V ) which contains the set R

0

of denition (180). In

order to show the inclusion it is therefore sucient to show that is a

congruence on P(V ) such that R

0

. The fact that it is a congruence stems

from proposition (200). The fact that R

0

follows from proposition (194).

Recall that irreducible formulas are dened in page 195. We can now forget

about the almost permutation equivalence and simply remember the following

characterization of the permutation congruence on P(V ) :

Theorem 19 Let be the permutation congruence on P(V ) where V is a set.

For all , P(V ), if and only if one of the following is the case:

(i) P

0

(V ) , P

0

(V ) , and =

(ii) = and =

(iii) =

1

2

, =

1

2

,

1

1

and

2

2

(iv) = x

1

, = y

1

,

1

1

, x y V

n

, n 1

where x y refers to the permutation equivalence on V

n

as per denition (185).

Furthermore, we may assume that

1

and

1

are irreducible in (iv).

Proof

First we show the implication . So we assume that . We need to show

200

that (i), (ii), (iii) or (iv) is the case. However from proposition (201) we have

. It follows from denition (192) that (i), (ii), (iii) or (iv) is indeed the

case with

1

and

1

irreducible in the case of (iv). We now show the reverse

implication . So we assume that (i), (ii), (iii) or (iv) is the case. We need

to show that . We shall distinguish two cases. First we assume that

(i), (ii) or (iii) is the case. Then from denition (192) we obtain and

consequently from proposition (201) we have . We now assume that (iv)

is the case. Then from proposition (188) and

1

1

we obtain x

1

x

1

.

Furthermore, from proposition (189) and x y we obtain x

1

y

1

. By

transitivity of the permutation congruence, we conclude that:

= x

1

y

1

=

2.5.1 The Absorption Congruence

After the substitution and permutation congruence, following our pursuit of the

right congruence on P(V ) which should be dened to identify mathematical

statements which have the same meaning, a third source of identity will be

studied in this section. As mathematicians, it is not uncommon for us to regard

a mathematical statement

1

as being exactly the same as x

1

whenever x is

not a free variable of

1

. We shall dene the absorption congruence on P(V ) as

being generated by the ordered pairs (

1

, x

1

) where x , Fr (

1

). Note that

whichever nal congruence we wish to adopt to dene the universal algebra of

rst order logic, it is not completely obvious that such congruence should contain

the absorption congruence: on the one hand it is appealing to say that and

x are the same mathematical statements. On the other hand, a consequence

of doing so will be that and x will also be identical statements, after we

include some propositional equivalence, and dene and x in the obvious

way. This state of aairs is somewhat unsatisfactory: The statement does

not say anything, contrary to the statement x which expresses the existence

of something. If we are to use the universal algebra of rst order logic to study

axiomatic set theory at a later stage, we would rather have the existence of at

least one set guaranteed by the axioms of ZF, rather than being embedded in

the language being used. The universe being void is a logical possibility.

Denition 202 Let V be a set. We call absorption congruence on P(V ), the

congruence on P(V ) generated by the following set R

0

P(V ) P(V ):

R

0

= (

1

, x

1

) : x , Fr (

1

) ,

1

P(V ) , x V

Just like the substitution and the permutation congruence, the absorption

congruence preserves free variables. The following proposition is similar to

201

propositions (118) and (181) and simply involves checking the property on R

0

:

Proposition 203 Let denote the absorption congruence on P(V ) where V

is a set. Then for all , P(V ) we have the implication:

Fr () = Fr ()

Proof

Let denote the relation on P(V ) dened by if and only if we have

Fr () = Fr (). Then we need to show that . However, we know from

proposition (77) that is a congruence on P(V ). Since is dened as the

smallest congruence on P(V ) which contains the set R

0

of denition (202), we

simply need to show that R

0

. So let

1

P(V ) and x V such that

x , Fr (

1

). We need to show that

1

x

1

which is Fr (

1

) = Fr (x

1

).

Since Fr (x

1

) = Fr (

1

) x, the result follows from x , Fr (

1

).

When is the substitution or permutation congruence and , P(V )

are such that , from the structural form of we are able to infer the

structural form of thanks to the characterizations of theorem (12) of page 135

and theorem (19) of page 200. For example, when =

1

2

, we are able

to tell that must be of the form =

1

2

which can be very useful

when dealing with structural induction arguments. So we would like to obtain a

similar result for the absorption congruence, and we shall do so in theorem (20)

of page 210. However, the case of the absorption congruence is more complicated

than any other in this respect, as it does not preserve the structure of formulas.

So for example if

1

1

and

2

2

then the formula =

1

2

and

=

1

2

must be equivalent simply because is a congruent relation.

But from the equivalence and the knowledge that =

1

2

, it is

impossible for us to conclude that =

1

2

with

1

1

and

2

2

. This

is because we can always add quantiers x, yx and zyx in front of the

formula with x, y, z , Fr (), while preserving the equivalence class of . So

the situation appears hopeless, and one natural instinct is to give up attempting

to provide a characterization theorem for the absorption congruence, in line with

theorem (12) and theorem (19). However, it may be that the equivalence

allows us to say something about and nonetheless, something which may

be a weaker statement than initially hoped for, but still better than nothing at

all. Consider the formula P(V ): It may have a few pointless quantiers

coming at the front. In other words, it may be of the form = zyx

with

x, y, z , Fr (

front have been removed and we are left with the formula

. In particular, we

assume that any quantier coming at the front of

that if

= x

1

then x Fr (

1

). Now consider the formula : we can also

remove the rst layer of meaningless quantication and retain the core

of

the formula . It is clear that we have

and

. So whenever the

equivalence arises, we accept the inescapable fact that nothing can be

said about the relative structures of and as these are being obfuscated by the

202

presence of pointless quantications at the front. But it may be that something

can be said about the relative structures of

and

we remove the rst layer of meaningless quantications, the remaining core

formulas may have a common structure. This is indeed the case, as will be

seen from theorem (20) of page 210. For now, we shall concentrate on giving

a precise denition of the core formula

rst layer of pointless quantications. We shall prove in proposition (206) below

that any formula can be uniquely expressed as = u

with u V

n

, n N

and additional properties formalizing the idea that the iterated quantication

u of denition (187) is pointless while any remaining quantier at the front of

Denition 204 Let V be a set and P(V ). We call = u

of proposi-

tion (206) the core decomposition of , and we call

the core of .

Before we prove proposition (206) we shall establish the following lemma:

Lemma 205 Let n N, u V

n

and

(i) u(k) , Fr (

) , for all k n

(ii) u(k) , Fr ( u

|k

) , for all k n

Proof

In order to show the equivalence between (i) and (ii), it is sucient to prove that

if (i) or (ii) is satised, then the property (k n) Fr (

) = Fr ( u

|k

) is

true. Recall that given u V

n

, u is a map u : n V and u

|k

is the restriction

of u to k n. When k = 0, from denition (187) of the iterated quantication

we have Fr ( u

|k

) = Fr ( 0

) = Fr (

of whether (i) or (ii) holds. So suppose the property is true for k N. We need

to show it is also true for k + 1. So we assume that (k + 1) n. We need to

show the equality Fr (

) = Fr ( u

|(k+1)

Fr ( u

|(k+1)

) = Fr ( u(k)u

|k

)

= Fr ( u

|k

) u(k)

Induction hypothesis = Fr (

) u(k)

(i) = Fr (

)

If we assume that (ii) is true, then the argument goes as follows:

Fr ( u

|(k+1)

) = Fr ( u(k)u

|k

)

= Fr ( u

|k

) u(k)

(ii) = Fr ( u

|k

)

Induction hypothesis = Fr (

)

203

|k

) in (i)

rather than the simpler u(k) , Fr (

proofs smoother. By virtue of lemma (205) the two are equivalent.

Proposition 206 Let V be a set and P(V ). Then can be uniquely

represented as = u

where u V

n

, n N,

(i) u(k) , Fr ( u

|k

) , for all k n

(ii)

= z z Fr ()

where it is understood that (ii) holds for all z V and P(V ).

Proof

We shall prove this property with a structural induction using theorem (3) of

page 32. First we assume that = (x y) for some x, y V . Take

= ,

n = 0 and u = 0. We claim that u

denition (187) of the iterated quantication, it is clear that = u

. Since

n = 0, property (i) of proposition (206) is vacuously satised. Furthermore since

cannot be expressed

as

satised. So we have proved the existence of the core decomposition = u

.

We now show the uniqueness: so suppose = u

for some u V

n

, n N

and

= . So suppose to

the contrary that n > 0. Then we obtain the following equality:

(x y) = = u

= u(n 1)u

|(n1)

and from u V

n

= 0 we obtain u = 0 and nally = u

. So we

now assume that = . Once again, taking

= , n = 0 and u = 0 we

obtain a core decomposition u

of . Furthermore if we assume = u

for some u V

n

, n N and

theorem (2) and consequently u = 0 and

=

1

2

for some

1

,

2

P(V ) which satisfy our property. We need to

show the same is true of . Take

decomposition u

1

and

2

are themselves uniquely decomposable is irrelevant here. So we now

assume that = x

1

for some x V and

1

P(V ) satisfying our property.

We need to show the same is true of . We shall distinguish two cases: rst we

assume that x Fr (

1

). Take

simply need to check that (ii) is true. So suppose

P(V ). We need to show that z Fr (). However the equality

= z

implies that x

1

= z and consequently from theorem (2) we have x = z and

1

= . It follows that z Fr () from the assumption x Fr (

1

). We now

204

prove the uniqueness of the core decomposition in the case when x Fr (

1

).

So suppose = u

for some u V

n

, n N and

(ii). We need to show that n = 0, u = 0 and

that n > 0. Then we obtain the following equality:

x

1

= = u

= u(n 1)u

|(n1)

1

= u

|(n1)

. Applying

property (i) to k = (n 1) n we obtain x , Fr (

1

) which contradicts

our assumption. We now assume that x , Fr (

1

). First we show that a

core decomposition exists: from our induction hypothesis there exists a core

decomposition

1

= u

1

1

of

1

, where u

1

V

n1

, n

1

N and

1

P(V )

satisfying (i) and (ii). Take

1

, n = n

1

+ 1 and u V

n

dened by

u

|(n1)

= u

1

and u(n 1) = x. We claim u

is a core decomposition of :

= x

1

= xu

1

1

= u(n 1)u

|(n1)

= u

So it remains to check that (i) and (ii) are satised. First we show (i). So

let k n. We need to show that u(k) , Fr (u

|k

). We shall distinguish

two cases. First we assume that k = n 1. Then we need to show that

x , Fr (u

1

1

) = Fr (

1

) which is true by assumption. Next we assume that

k (n 1). Then we need to show that u

1

(k) , Fr ((u

1

)

|k

1

) which is true

by virtue of property (i) applied to the core decomposition

1

= u

1

1

. We

now show property (ii). So we assume that

P(V ). We need to show that z Fr (). Since

1

, this follows from

property (ii) applied to the core decomposition

1

= u

1

1

. So we have proved

that u

1

). It

remains to show the uniqueness. So we assume that = u

for some u V

n

,

n N and

1

+1,

u(n 1) = x, u

|(n1)

= u

1

and

1

. First we show that n > 0. Indeed

if n = 0 then u = 0 and consequently we obtain

= u

= = x

1

. It

follows from property (ii) that x Fr (

1

) which contradicts our assumption.

Having established that n > 0 we obtain the equality:

u(n 1)u

|(n1)

= u

= = x

1

= xu

1

1

Using theorem (2) we see that x = u(n 1) as requested and furthermore:

u

|(n1)

=

1

= u

1

1

From our induction hypothesis and the uniqueness of the core decomposition

1

= u

1

1

, in order to show that u

|(n1)

= u

1

and

1

it is sucient

to prove that u

|(n1)

is a core decomposition of

1

. So we simply need to

check that (i) and (ii) are satised, which is clearly the case since (i) and (ii)

205

are assumed to be true for the decomposition u

equality between the maps u

|(n1)

and u

1

, these must have identical domain

and consequently n = n

1

+ 1 as requested, which completes our induction.

We shall now formally check that the core of is equivalent to modulo

the absorption congruence, which is what we expect. Removing the rst layer

of pointless quantication does not aect the equivalence class of :

Proposition 207 Let be the absorption congruence on P(V ) where V is a

set. Let P(V ) with core

Proof

We shall prove the equivalence with an induction argument over n N, where

n is the integer underlying the core decomposition = u

where u V

n

and

that n = 0. Then u = 0 and =

assume that n > 0 and the equivalence is true for n 1. We need to show that

u

. However, since u

same can be said of u

|(n1)

From our induction hypothesis we obtain u

|(n1)

. It is therefore su-

cient to prove that u(n1)u

|(n1)

u

|(n1)

from u(n 1) , Fr (u

|(n1)

Lemma 208 Let V be a set and P(V ) with core decomposition = u

where u V

n

. Let x V with x , Fr (). Then x has core decomposition:

x = v

where v V

n+1

is dened by the equalities v(n) = x and v

|n

= u.

Proof

We assume that u

n

. Let x V

with x , Fr (). Let v V

n+1

be dened by v(n) = x and v

|n

= u. We need to

show that v

v

= v(n)v

|n

= xu

= x

So it remains to show that (i) and (ii) of proposition (206) are satised. First

we show (i). So let k (n + 1). We need to show that v(k) , Fr (v

|k

). We

shall distinguish two cases: rst we assume that k = n. Then we need to show

that x , Fr (u

206

k n. Then we need to show that u(k) , Fr (u

|k

applied to the core decomposition u

This follows immediately from (ii) applied to the core decomposition u

.

2.5.2 Characterization of the Absorption Congruence

In this section, we shall provide a characterization theorem for the absorption

congruence, in similar fashion to what was done for theorem (12) of page 135

and theorem (19) of page 200 of the substitution and permutation congruence

respectively. As discussed in the previous section, if denotes the absorp-

tion congruence on P(V ) then the equivalence does not allow us to say

anything on the relative structures of and . However, we are able to infer

something about the core formulas

and

to prove theorem (20) below will mirror exactly that of theorem (12) and theo-

rem (19). We start by dening a binary relation of almost equivalence on P(V )

which is our best guess of what a proper characterization of the absorption con-

gruence should look like. We then proceed to show that the almost equivalence

is indeed an equivalence relation on P(V ) which is in fact a congruent relation,

and we conclude by showing that it coincides with the absorption congruence.

Denition 209 Let be the absorption congruence on P(V ) where V is a set.

Let , P(V ). We say that is almost equivalent to and we write ,

if and only if one of the following is the case:

(i)

P

0

(V ) ,

P

0

(V ) , and

(ii)

= and

=

(iii)

=

1

2

,

=

1

2

,

1

1

and

2

2

(iv)

= x

1

,

= x

1

, x V and

1

1

where

and

Proposition 210 (i), (ii), (iii), (iv) of def. (209) are mutually exclusive.

Proof

This follows immediately from theorem (2) of page 21 applied to P(V ).

Proposition 211 Let be the almost equivalence relation on P(V ) where V

is a set. Then contains the generator R

0

of denition (202).

Proof

Let x V and

1

P(V ) such that x , Fr (

1

). We need to show that

1

x

1

. Let

1

= u

where u V

n

be the core decomposition of

1

.

207

Since x , Fr (

1

), from lemma (208) we see that the core decomposition of

x

1

is v

for some v V

n+1

. In particular,

1

and x

1

have identical

core

P

0

(V ) or

=

or

=

1

2

for some

1

,

2

P(V ) or

P(V ). So (i), (ii), (iii) or (iv) of denition (209) must be the case.

Proposition 212 The almost equivalence relation on P(V ) is reexive.

Proof

Let P(V ). We need to show that . Let

orem (2) of page 21, one of the four following cases must occur: if

= (x y)

for some x, y V , then follows from

. If

= then

follows again from

. If

is of the form

=

1

2

then

follows from the reexivity of . If

is of the form

= x

1

, then

follows again from the reexivity of , which completes our proof.

Proposition 213 The almost equivalence relation on P(V ) is symmetric.

Proof

Follows immediately from the symmetry of the absorption congruence .

Proposition 214 The almost equivalence relation on P(V ) is transitive.

Proof

Let , , P(V ) such that and . We need to show that

. We shall consider the four possible cases (i), (ii), (iii) and (iv) of de-

nition (209) in relation to . Let

and

respectively. First we assume that

P

0

(V ),

P

0

(V ) with

.

Then from we must have

P

0

(V ) and

. It follows that

P

0

(V ),

P

0

(V ) and

that

= =

= =

and we

conclude once again that . Next we assume that

and

are of the

form

=

1

2

and

=

1

2

with

1

1

and

2

2

. Then from

we see that

=

1

2

with

1

1

and

2

2

. From the transitivity of the absorption congruence, it follows that

1

1

and

2

2

and consequently . Finally, we assume that

and

= x

1

and

= x

1

with

1

1

. Then from

we see that

= x

1

with

1

1

. Once again by

transitivity we obtain

1

1

and nally as requested.

Proposition 215 Let be the almost equivalence and be the absorption

congruence on P(V ), where V is a set. For all , P(V ):

208

Proof

Let , P(V ) such that . We need to show that . We shall

consider the four possible cases (i), (ii), (iii) and (iv) of denition (209) in

relation to . Let

and

proposition (207) we have

and

that

So we assume that

and

=

1

2

and

=

1

2

where

1

1

and

2

2

. The absorption congruence being a congruent

relation we obtain

and

= x

1

and

= x

1

with

1

1

. Once again, using the

fact that the absorption congruence is a congruent relation we obtain

Proof

By reexivity, we already know that . So we assume that =

1

2

and =

1

2

where

1

1

and

2

2

. We need to show that .

However, using proposition (206), it is clear the core decomposition of and

are = u

and = v

with u = v = 0,

= and

= . Furthermore,

from proposition (215) we have

1

1

and

2

2

. It follows that

and

=

1

2

and

=

1

2

with

1

1

and

2

2

.

Hence we see that as requested. We now assume that = x

1

and

= x

1

where x V and

1

1

. We need to show that . We shall

distinguish two cases: rst we assume that x Fr (

1

). From

1

1

and

proposition (215) we obtain

1

1

. It follows from proposition (203) that

Fr (

1

) = Fr (

1

) and consequently x Fr (

1

). Using proposition (206) it is

clear that the core decomposition of and are = u

and = v

where

u = v = 0,

= and

1

) and

x Fr (

1

) are crucially required to ensure (ii) of proposition (206) is satised.

So we have proved that

and

= x

1

and

= x

1

with

1

1

and we conclude that as requested. We now assume that

x , Fr (

1

). Then we also have x , Fr (

1

). Let

1

= u

1

and

1

= v

1

1

and

1

respectively. Then from lemma (208)

the core decompositions of and are of the form = u

and = v

. In

particular, and

1

have identical core

while and

1

have identical core

. From

1

1

and denition (209) we conclude that as requested.

Proposition 217 The almost equivalence relation on P(V ) is a congruence.

Proof

From proposition (212), the relation is reexive. From proposition (213) it is

symmetric while from proposition (214) it is transitive. It is therefore an equiv-

alence relation on P(V ). Furthermore, from proposition (216), the relation

is congruent. We conclude that it is a congruence relation on P(V ).

209

Proposition 218 Let be the almost equivalence and be the absorption

congruence on P(V ), where V is a set. For all , P(V ):

Proof

We need to show the equality =. The inclusion follows from proposi-

tion (215). So it remains to show. However, since is the smallest congruence

on P(V ) which contains the set R

0

of denition (202), it is sucient to show

that is a congruence which contains R

0

. The fact that is a congruence

follows from proposition (217). The fact that it contains R

0

follows from (211).

We can now forget about the almost equivalence and conclude with:

Theorem 20 Let be the absorption congruence on P(V ) where V is a set.

For all , P(V ), if and only if one of the following is the case:

(i)

P

0

(V ) ,

P

0

(V ) , and

(ii)

= and

=

(iii)

=

1

2

,

=

1

2

,

1

1

and

2

2

(iv)

= x

1

,

= x

1

, x V and

1

1

where

and

Proof

This follows immediately from denition (209) and proposition (218).

2.5.3 Absorption Mapping and Absorption Congruence

In denition (137) we introduced the minimal transform / : P(V ) P(

V )

which allowed us to characterize an -equivalence with a simple equality

/() = /(), as follows from theorem (14) of page 153. We would like to

achieve a similar result for the absorption congruence. As we shall see, things

are a lot simpler in this case. We shall dene a mapping / : P(V ) P(V )

which eectively removes pointless quantications from a formula. We shall then

prove that the absorption equivalence can be reduced to the equality

/() = /(). This will be done in proposition (223) below. In general given

a congruence on P(V ), we believe there is enormous benet in reducing the

equivalence to an equality f() = f() for some map f : P(V ) A

where A is an arbitrary set. This can always be done of course, as is

equivalent to an equality [] = [] between equivalence classes. However, if

we can nd a map f which is computable in some sense with a codomain A in

which the equality is decidable, this will ensure that the congruence is itself

decidable. Granted we have no idea what computable and decidable mean at this

stage, but at some point we shall want to know. This is for later.

210

Denition 219 Let V be a set. We call absorption mapping on P(V ) the map

/ : P(V ) P(V ) dened by the following recursive equation:

P(V ) , /() =

(x y) if = (x y)

if =

/(

1

) /(

2

) if =

1

2

x/(

1

) if = x

1

, x Fr (

1

)

/(

1

) if = x

1

, x , Fr (

1

)

Proposition 220 The structural recursion of denition (219) is legitimate.

Proof

We have to be slightly careful in this case. As usual, we have a choice between

theorem (4) of page 45 and theorem (5) of page 47. Given = x

1

, looking

at denition (219) it seems that /() is not simply a function of /(

1

) but

also involves a dependence in

1

. So it would seem that theorem (5) has to

be used in this case. Of course, it is not dicult to see that an equivalent

denition could be obtained by replacing Fr (

1

) by Fr (/(

1

)), allowing us to

use theorem (4) instead. However, we have no need to worry about that. So

let us use theorem (5) with X = P(V ), X

0

= P

0

(V ) and A = P(V ). We

dene g

0

: X

0

A by setting g

0

(x y) = (x y) which ensures the rst

condition of denition (219) is met. Next, we dene h() : A

0

X

0

A by

setting h()(0, 0) = which gives us the second condition. Next, we dene

h() : A

2

X

2

A be setting h(a, ) = a(0) a(1). Finally, we dene

h(x) : A

1

X

1

A be setting h(x)(a, ) = xa(0) if x Fr ((0)) and

h(x)(a, ) = a(0) otherwise. So let us check that conditions 3, 4 and 5 are

met. If =

1

2

we have the following equalities:

/() = /(

1

2

)

f =, = (

1

,

2

) = /(f())

/ : X

2

A

2

= h(f)(/(), )

= h()(/(), )

= /()(0) /()(1)

/ : X A = /((0)) /((1))

= /(

1

) /(

2

)

If = x

1

with x Fr (

1

), then we have the following equalities:

/() = /(x

1

)

f = x, (0) =

1

= /(f())

/ : X

1

A

1

= h(f)(/(), )

= h(x)(/(), )

x Fr ((0)) = x/()(0)

211

/ : X A = x/((0))

= x/(

1

)

The case x , Fr (

1

) is dealt with in a similar way.

In proposition (141) we showed that /() i() where is the substitution

congruence and i : V

V is the inclusion map. In eect, this shows that the

minimal transform preserves the equivalence class of . Of course, this is not

quite true as the minimal transform takes values in P(

equivalence class of is preserved only after we embed in P(

V ) as i(). In

the case of the absorption congruence things are simpler: since the absorption

mapping takes values in P(V ) itself, we are able to write equivalence /() .

Proposition 221 Let V be a set and / : P(V ) P(V ) be the absorption

mapping. Let be the absorption congruence on P(V ). Then given P(V ):

/()

Proof

We shall prove this equivalence with a structural induction, using theorem (3)

of page 32. The equivalence is clear in the case when = (x y) and = .

So we assume that =

1

2

where

1

,

2

P(V ) satisfy our equivalence:

/() = /(

1

2

)

= /(

1

) /(

2

)

1

2

=

Next we assume that = x

1

for some x V and

1

P(V ) satisfying our

equivalence. We shall distinguish two cases. First we assume that x Fr (

1

):

/() = /(x

1

)

x Fr (

1

) = x/(

1

)

x

1

=

Next we assume that x , Fr (

1

). Then we have:

/() = /(x

1

)

x , Fr (

1

) = /(

1

)

1

x , Fr (

1

) x

1

=

212

/() = /() we shall need to show that this equality denes a congruence:

Proposition 222 Let V be a set and be the relation on P(V ) dened by:

/() = /()

where / : P(V ) P(V ) is the absorption mapping. Then is a congruence.

Proof

The relation is clearly an equivalence relation on P(V ). So it remains to show

that it is also a congruent relation. By reexivity, we already know that .

So let =

1

2

and =

1

2

be such that

1

1

and

2

2

. We

need to show that or equivalently /() = /() which goes as follows:

/() = /(

1

2

)

= /(

1

) /(

2

)

i

i

= /(

1

) /(

2

)

= /(

1

2

)

= /()

We now assume that = x

1

and = x

1

where

1

1

. We need to

show that or equivalently /() = /(). We shall distinguish two cases:

rst we assume that x Fr (

1

). Having assumed that

1

1

, we obtain

/(

1

) = /(

1

) and consequently from proposition (221) we have

1

1

,

where is the absorption congruence on P(V ). It follows from proposition (203)

that Fr (

1

) = Fr (

1

) and thus x Fr (

1

). Hence we have:

/() = /(x

1

)

x Fr (

1

) = x/(

1

)

1

1

= x/(

1

)

x Fr (

1

) = /(x

1

)

= /()

We now assume that x , Fr (

1

). Then we also have x , Fr (

1

) and hence:

/() = /(x

1

)

x , Fr (

1

) = /(

1

)

1

1

= /(

1

)

x , Fr (

1

) = /(x

1

)

= /()

213

Proposition 223 Let be the absorption congruence on P(V ) where V is a

set. Then for all , P(V ) we have the following equivalence:

/() = /()

where / : P(V ) P(V ) is the absorption mapping as per denition (219).

Proof

First we show : Let be the relation on P(V ) dened by if and only

if /() = /(). We need to show the inclusion . However, since is

the smallest congruence on P(V ) which contains the set R

0

of denition (202),

it is sucient to show that is a congruence on P(V ) which contains R

0

. We

already know from proposition (222) that is a congruence on P(V ). So it re-

mains to show that R

0

. So let

1

P(V ) and x V such that x , Fr (

1

).

We need to show that /(

1

) = /(x

1

) which follows immediately from de-

nition (219). We now prove : so we assume that /() = /(). We need to

show that , which follows immediately from proposition (221).

2.6 The Propositional Congruence

2.6.1 The Propositional Congruence

Denition 224 Let V be a set. We call propositional valuation on P(V ) any

map v : P(V ) 2 satisfying the following properties. Given

1

,

2

P(V ):

(i) v() = 0

(ii) v(

1

2

) = v(

1

) v(

2

)

Denition 225 Let V be a set. We call propositional congruence on P(V ),

the congruence on P(V ) generated by the following set R

0

P(V ) P(V ):

R

0

= (, ) : v() = v() for all v : P(V ) 2 propositional valuation

To be continued. . .

214

Chapter 3

The Free Universal Algebra

of Proofs

3.1 The Hilbert Deductive Congruence

3.1.1 Preliminaries

In this section we introduce yet another congruence on P(V ) which we have cho-

sen to call the Hilbert deductive congruence, hoping this will make it obvious to

the familiar reader. Another possible name could have been the Lindenbaum-

Tarski congruence since it is the congruence giving rise to the Lindenbaum-

Tarski algebra, a seemingly well established term in mathematical logic. The

Hilbert deductive congruence is probably not what we are looking for to de-

ne our Universal Algebra of First Order Logic. We are looking to identify

mathematical statements which have the same meaning, and such identication

should be decidable. We are not looking for theorems. However, the study of the

Hilbert deductive congruence gives us a great opportunity to introduce funda-

mental notions of mathematical logic which we shall no doubt require at a later

stage: these are the concept of proof and provability, the deduction theorem,

the notion of semantics and model, and of course G odels completeness theorem.

These are the bread and butter of any textbook on mathematical logic and it

is about time we touch upon them. So our rst objective will be to dene the

notion of proof and provability, which is the question of axiomatization of rst

order logic. Having reviewed some of the existing textbooks and references, it is

astonishing to see how little consensus there is on the subject. It is impossible to

nd two references which will universally agree on which axioms should be used,

or which rules of inference. So we had to make our own mind and decide for

ourselves what constitutes a good axiomatization of rst order logic, and here it

is: rstly, a good axiomatization of rst order logic should be sound and ensure

Godels completeness theorem holds. This is rather uncontroversial so we shall

not say more about it. Secondly, The deduction theorem should hold without

215

any form of restriction. Most references will depart from this principle and

quote the deduction theorem imposing some form of restriction, typically that

a formula should be closed (e.g. [18], [30], [32], [39], [43], [44], [45], [62]). The

only exception known to us is [4] where the deduction theorem is restored to its

full glory. This we believe should be the case. There is also a web page [46] on

http://planetmath.org indicating the awareness by some living mathemati-

cians that the deduction theorem need not fail in rst order logic, provided the

concept of proof is carefully dened. This brings us to our third requirement

which a good axiomatization of rst order logic ought to meet: the concept of

proof should not be presented in terms of nite sequences of formulas. Instead,

proofs should be dened as formal expressions in a free universal algebra gen-

erated by the formulas of the language itself (the set of possible hypothesis)

and whose operators are the chosen rules of inference: to every formula cor-

responds a proof = arising from a constant operator, indicating that is

invoked as an axiom; to every proof corresponds another proof x arising

from a unary operator indicating a generalization with respect to the variable x;

to every pair of proof (

1

,

2

) corresponds another proof

1

2

arising from a

binary operator, that of modus ponens for example. . . On this algebra of proofs

should be dened a key semantics associating every proof to its conclusion. By

imposing this free algebraic structure on proofs, we are preserving their natural

tree structure, giving us the full power of structural induction and structural

recursion which we cannot enjoy with the linear structure of nite sequences.

These should be abandoned. Some authors still want to dene formulas as nite

sequences of characters and will go as far as introducing a concatenation op-

erator on their strings, explaining why the parenthesis ( and ) should be used.

At best, they are just creating a free universal algebra of formulas which could

have been dened in a generic way, up to isomorphism. At worse, by insisting

on the details of their string implementation, they are making everything very

awkward to prove. Finite sequences are not suited to mathematical logic.

3.1.2 Axioms of First Order Logic

We are now introducing the axioms which we intend to use as part of our deduc-

tive system. These axioms come in ve dierent groups which we shall describe

individually. The rst three groups of axioms are often referred to as proposi-

tional axioms while the other two are specic to rst order logic, dealing with

quantication. We have no axiom relating to equality of course, having dis-

missed the equality predicate from our language. As already explained prior to

denition (51) of page 69, we are hoping to dene the notion of equality in terms

of the primitive symbol , and make equality axioms simple consequences of

our specic coding. So no equality for now. In choosing these ve groups of

axioms, we have tried to keep it lean and simple, while reaching the greatest

possible consensus between the references available to us. The axioms below are

pretty much those of Donald W. Barnes and John M. Mack [4], Miklos Ferenczi

and Miklos Sz ots [18], P.T. Johnstone [32], Elliot Mendelson [43] and G. Takeuti

and W.M. Zaring [61]. They are referred to as traditional textbook axioms of

216

predicate calculus by Norman Megills Metamath web site [45] which we nd

reassuring. However, these references disagree on some minor details so we had

to choose between them. For example, contrary to [18] we do not wish to speak

of formula scheme, which we feel do not bring much mathematical value. We

have also decided against [4] and avoided as much congruence as possible when

dening axioms, to keep the material as down to earth as possible. Finally,

we have ignored a few oddities in [32] which were seemingly motivated by P.T.

Johnstones desire to allow the empty model.

Our rst group of axioms corresponds to Axiom ax-1 of Metamath [45].

We have decided to follow this reference in calling an axiom within this group

a simplication axiom. It appears the terminology originates from the link

between these axioms and the formula

1

2

1

. Some historical background

can be found on the web page http://us.metamath.org/mpegif/ax-1.html.

Denition 226 Let V be a set. We call simplication axiom on P(V ) any

formula P(V ) for which there exist

1

,

2

P(V ) such that:

=

1

(

2

1

)

The set of simplication axioms on P(V ) is denoted A

1

(V ).

Our second group of axioms corresponds to Axiom ax-2 of Metamath [45].

We have again decided to follow this reference in calling an axiom within this

group a Frege axiom. Further details and historical background can be found

on the web page http://us.metamath.org/mpegif/ax-2.html.

Denition 227 Let V be a set. We call Frege axiom on P(V ) any formula

P(V ) for which there exist

1

,

2

,

3

P(V ) such that:

= [

1

(

2

3

)] [(

1

2

) (

1

3

)]

The set of Frege axioms on P(V ) is denoted A

2

(V ).

Our third group of axioms corresponds to Axiom ax-3 of Metamath [45]

which can be found on http://us.metamath.org/mpegif/ax-3.html. How-

ever, we chose a dierent form for these axioms, namely [(

1

) ]

1

following [4] and [32] rather than (

1

2

) (

2

1

) which is also the

form encountered in [18]. It is easy to believe that both choices lead to the same

notion of provability. Our terminology is transposition axiom following [45].

Denition 228 Let V be a set. We call transposition axiom on P(V ) any

formula P(V ) for which there exists

1

P(V ) such that:

= [(

1

) ]

1

The set of transposition axioms on P(V ) is denoted A

3

(V ).

217

Our fourth group of axioms is that of Theorem stdpc5 in Metamath [45]

which can be found on http://us.metamath.org/mpegif/stdpc5.html. Nor-

man Megill has this as a theorem rather than an axiom but it is still men-

tioned on http://us.metamath.org/mpegif/mmset.html#traditional as a

traditional textbook axiom. It is indeed a chosen axiom of [4], [18] and [32].

As we were not able to nd an obvious name, we chose quantication axiom.

Denition 229 Let V be a set. We call quantication axiom on P(V ) any

formula P(V ) for which there exist

1

,

2

P(V ) and x V such that:

x , Fr (

1

) , = x(

1

2

) (

1

x

2

)

The set of quantication axioms on P(V ) is denoted A

4

(V ).

Our fth and last group of axioms is Theorem stdpc4 of Metamath [45] which

can be found on http://us.metamath.org/mpegif/stdpc4.html. Following

this reference once again, we have decided to call axioms within this group

a specialization axiom. It is a chosen group of axioms for [4], [18] and [32]

with varying wordings in relation to the highly delicate problem of making sure

variable substitutions are valid. Indeed, a specialization axiom is of the form:

x

1

1

[y/x] (3.1)

Strictly speaking, this formula will have a dierent meaning, and require dif-

ferent verbal qualications, depending on the specics of how the substitution

[y/x] : P(V ) P(V ) is dened. For example, most references in the literature

will dene [y/x] with a recursive formula in which bound occurrences of x are

not replaced by y. This is contrary to our own denition (53) of page 71 where

all variables are systematically substituted regardless of whether they are free

or bound occurrences. As it turns out, we did not rely on denition (53) to

dene specialization axioms, but dened them instead in terms of an essen-

tial substitution [y/x] : P(V ) P(V ) as per denition (165). In other words,

if [y/x] : P(V ) P(V ) denotes an essential substitution associated with the

map [y/x] : V V of denition (65), then the formula (3.1) is a legitimate

specialization axiom. In a more condensed form, x

1

1

[y/x] is an axiom

whenever [y/x] is an essential substitution of y in place of x. This is beautiful,

this is short and does not require any further qualication such as provided y is

free for x in

1

, i.e. provided [y/x] is valid for

1

as per denition (83). There

is however a huge disadvantage in using essential substitutions when dening

specialization axioms: the level of mathematical sophistication required to fol-

low the analysis is a lot higher and most people will stop reading. Surely we do

not want that. Another drawback is that essential substitutions are intertwined

with the notion of substitution congruence. If : P(V ) P(V ) is an essential

substitution and P(V ) then () is of course a well dened formula of P(V )

but the specics of () are usually unknown. We typically only know about

the class of () modulo the substitution congruence. Luckily this is often all

we care about, but it does mean we are not able to provide an axiomatization

of rst order logic without dependencies to the substitution congruence. In the

218

light of these considerations, our preferred option would have been to dene the

specialization axioms in line with the existing literature:

x

1

1

[y/x] , where [y/x] is valid for

1

(3.2)

where the substitution [y/x] : P(V ) P(V ) is now simply the substitution

associated with [y/x] : V V as per denition (53). This would have the

advantage of being simple, consistent with the usual practice and devoid of any

reference to the substitution congruence. The fact that our substitutions of

denition (53) have an impact on bound occurrences of variables is contrary to

standard practice, but of little signicance. The notion of valid substitution of

denition (83) is not commonly found in textbooks, but is a nice and simple

generalization of the idea that y is free for x in

1

. So why not simply use (3.2)

to dene specialization axioms? Why introduce the elaborate notion of essential

substitutions and seemingly make everything more complicated with no visible

benet? The answer is this: we do not have a choice. This document is devoted

to the study of the algebra P(V ) where V is a set of arbitrary cardinality. In

particular V can be a nite set. By contrast, the existing literature focusses

on rst order languages where the number of variables is typically countably

innite. This makes a big dierence. We believe our insistence on allowing

V to be nite will be rewarded. We cannot be sure at this stage, but we are

quite certain the theory of vector spaces was not solely developed in the innite

dimensional case. There must be value in the study of rst order languages

which are nite dimensional. This is of course no more than a hunch, but we

are not quite ready to give it up. So let us understand why allowing V to be

nite changes everything: consider V = x, y and = x

1

= xy(x y)

where x ,= y. We know from theorem (18) of page 178 that there exists an

essential substitution [y/x] : P(V ) P(V ) associated with [y/x] : V V . It

is not dicult to prove that the only possible value for [y/x](

1

) is x(y x).

So because we have chosen to dene specialization axioms in terms of essential

substitutions, from x

1

1

[x/x] and x

1

1

[y/x] we obtain:

(i) xy(x y) y(x y)

(ii) xy(x y) x(y x)

as the two possible specialization axioms associated with = x

1

. However,

suppose we had opted for (3.2) to dene specialization axioms. Then the formula

x

1

1

[y/x] would need to be excluded as an axiom because [y/x] is clearly

not a valid substitution for

1

= y(x y). So the formula (ii) above would

seemingly not be an axiom for us. Does it matter? Well in general no: for in

general we have a spare variable z to work with. So suppose x, y, z V with

x, y, z distinct. Then from xy(x y) we can prove (z x) by successive

specialization. By successive generalization we obtain zx(z x) and nally

by specializing once more we conclude that x(y x). It follows that the

formula (ii) above would fail to be an axiom, but it would still be a theorem

of our deductive system, keeping the resulting notion of provability unchanged.

However, in the case when V = x, y we have a problem. There doesnt seem to

219

be a way to turn the formula (ii) into a theorem. Does it matter? Yes it does. It

is clear that xy(x y) x(y x) is going to be true in any model, under

any variables assignment. Unless it is also a theorem, Godels completeness

theorem will fail, which we do not want in a successful axiomatization of rst

order logic. We are now in a position to state our chosen denition:

Denition 230 Let V be a set. We call specialization axiom on P(V ) any

formula P(V ) for which there exist

1

P(V ) and x, y V such that:

= x

1

1

[y/x]

where [y/x] : P(V ) P(V ) is an essential substitution of y in place of x. The

set of specialization axioms on P(V ) is denoted A

5

(V ).

We know from proposition (167) that an essential substitution : P(V ) P(V )

can be redened arbitrarily without changing its associated map : V V , as

long as such re-denition preserves classes modulo the substitution congruence.

It follows that if [y/x] : P(V ) P(V ) is an essential substitution of y in place

of x, it remains an essential substitution of y in place of x after re-denition

modulo substitution. It follows that any formula x

1

1

is a specialization

axiom, as long as

1

1

[y/x], where denotes the substitution congruence:

Proposition 231 Let V be a set. Let

1

P(V ) and x, y V . Let

1

P(V )

such that

1

1

[y/x] where [y/x] : P(V ) P(V ) is an essential substitution

of y in place of x. Then the formula = x

1

1

is a specialization axiom.

Proof

Suppose

1

1

[y/x] where [y/x] : P(V ) P(V ) is an essential substitution

associated with the map [y/x] : V V . Dene : P(V ) P(V ) by setting

() = [y/x]() if ,=

1

and (

1

) =

1

. Having assumed that

1

1

[y/x]

we see that () [y/x]() for all P(V ). It follows from proposition (167)

that is also an essential substitution associated with [y/x] : V V . In other

words, is also an essential substitution of y in place of x. Using denition (230)

it follows that = x

1

(

1

) is a specialization axiom. From (

1

) =

1

we conclude that = x

1

1

is a specialization axiom as requested.

Denition 232 Let V be a set. We call axiom of rst order logic on P(V ) any

formula P(V ) which belongs to the set A(V ) dened by:

A(V ) = A

1

(V ) A

2

(V ) A

3

(V ) A

4

(V ) A

5

(V )

3.1.3 Proofs as Free Universal Algebra

Most textbook references we know about dene proofs as nite sequences of for-

mulas, and inference rules as ordered pairs (, ) where is a nite sequence of

formulas and is a formula. A good illustration of this is Denition 1.6 of page

12 in [18]. As far as we can tell, this approach does not work. Having proofs as

220

nite sequences of formulas means that in order to establish any result, the only

tool available to us is induction on the length of the proof. This makes it excru-

ciatingly painful and messy to prove anything and is far inferior to the seamless

ow of a proof by structural induction. Furthermore, denying the structure of

a free algebra to the set of proofs means we cannot use structural recursion to

dene anything. There are many interesting functionals which could be dened

on the set of proofs. It is a shame to give that up. Granted, nite sequences

of formulas are easily understood. Everyone likes them for this reason. Not ev-

eryone is familiar with the machinery of universal algebras which require some

eort to acquire. But it is well worth it. Now when it comes to rules of inference,

the structure (, ) is also inadequate. Indeed, it does not allow generalization

to be expressed in a sensible way. In Denition 2.10 of page 22 in [18], the

generalization is introduced as ((

1

), x

1

). In other words, if the formula

1

has been proved, so has the formula x

1

. Surely this cannot be right. And

yet this is the accepted approach by many authors such as Marc Hoyois [30], J.

Donald Monk [44] and George Tourlakis [62]. Our favorite web site [45] also has

it, as can be seen on http://us.metamath.org/mpegif/ax-gen.html. Even

if we are willing to disregard the uncomfortable paradox of claiming x

1

is

proved whenever

1

is, we know this approach is failing because the deduction

theorem is no longer true for non-closed formulas. Granted there are other logi-

cal systems we are told, where the deduction theorem does not work. Logicians

are free to do what they want. In this document we care about classical rst

order logic, meta-mathematics, the language of ZF and we are looking for math-

ematical objects which oer a natural formalization of standard mathematical

arguments. It is clear the deduction theorem has to hold. Suppose we need to

prove a statement of the form x(p(x) q(x)). A standard mathematician will

proceed as follows: let x be arbitrary. Suppose p(x) holds. . . Then a long proof

follows. . . So we see that q(x) is true. Hence we conclude that p(x) q(x) and

since x was arbitrary we obtain x(p(x) q(x)). This is a standard mathemat-

ical argument, the essence of which is to construct a proof of q(x) from the single

hypothesis p(x). So a standard mathematician will devote most of his energy

establishing the sequent p(x) q(x). He will then implicity use the deduction

theorem to claim that (p(x) q(x)) and conclude x(p(x) q(x)) from

generalization, having rightly argued that x is arbitrary. So strictly speaking,

a standard mathematician does not write a complete proof x(p(x) q(x)).

Instead, he resorts to some form of sequent calculus to argue that his conclusion

must be true if the sequent p(x) q(x) is itself true. This whole reasoning

is what he regards as a valid proof. Now we are free to formalize the notion of

proof in anyway we want. We are personally convinced that every theorem of

Metamath [45] is correct. We are sure Don Monk is right. However, as far as

we are concerned, it is unthinkable to design a concept of proof for which the

arguments of the standard mathematician fail to be legitimate. We must be

able to infer the sequent (p(x) q(x)) from p(x) q(x). The deduction

theorem should be true, regardless of whether a formula is closed or not.

In the light of these discussions, it should be clear by now that we wish

to construct our set of proofs as a free universal algebra X of some type

221

generated by a set of formula X

0

P(V ). On this algebra should be dened

two key semantics Val : X P(V ) and Hyp : X T(P(V )) so that given a

proof X, the valuation Val () would represent the conclusion being proved

by , while Hyp () would be the set of hypothesis. With this in mind, we could

then dene a consequence relation T(P(V )) P(V ) as follows:

(Val () = ) (Hyp () ) for some X

This is the outline of the plan. We now need to provide the specics. Our rst

task is to determine the exact type of the universal algebra X. In the case

of classical rst order logic it would seem natural to have a binary operator

for the rule of inference known as modus ponens, and a unary operator x

for the generalization with respect to the variable x V . This would work as

follows: if

1

was a proof of

1

and

2

was a proof of

1

2

, then

1

2

would be a proof of

2

. This can be enforced by making sure the valuation

Val : X P(V ) satises Val(

1

2

) =

2

. Of course we need operators to be

dened everywhere, so the proof

1

2

has to be meaningful even in the case

when the conclusion Val(

2

) cannot be expressed in the form of Val (

1

)

2

for some formula

2

. But what is the conclusion of a proof

1

2

which stems

from a awed application of the modus ponens rule of inference? We clearly

havent proved anything. So the conclusion of

1

2

should be the weakest

mathematical result of all. In other words, we should simply make sure the

valuation Val : X P(V ) satises Val(

1

2

) = . In the case of

generalization, if

1

was a proof of

1

, then x

1

would be a proof of x

1

,

provided the variable x is truly arbitrary. This last condition can be formalized

by saying that x is not a free variable of any formula belonging to Hyp(

1

). We

shall write this as x , Sp (

1

). So whenever this condition holds, we simply need

to make sure the valuation Val : X P(V ) satises Val(x

1

) = xVal (

1

).

In the case when x Sp (

1

), then x

1

constitutes a awed application of the

generalization rule of inference, and we should simply set Val(x

1

) = .

So we have decided to include a binary operator and a unary operator x

for all x V , in dening the type of our free universal algebra of proofs. But

what about axioms? If A(V ) is an axiom of rst order logic and X

is a proof which relies on the axiom , how should this axiom be accounted

for? One solution is not to treat axioms in any special way and regard simply

as yet another hypothesis of the proof . In that case we have Hyp ().

However, this is not a good solution: for suppose we wish to design a proof

of the formula x((x x) (x x)). Conceivably, the only solution is to

design a proof = x

1

as the generalization in x of another proof

1

whose

conclusion is Val(

1

) = (x x) (x x). We shall soon see that nding

a proof

1

is not dicult. However such a proof relies on axioms which have

x as a free variable. Consequently, if we were to include axioms as part of

the set of hypothesis Hyp(

1

) the condition x , Sp (

1

) would not hold and

= x

1

would constitute a case of awed generalization, whose conclusion is

Val() = , and not what we set out to prove. Of course it would be

possible to have a set of axioms which have no free variables, by considering

universal closures. However, this is not the solution we adopted. We chose a set

222

of axioms which may potentially have free variables, and it is important that

we exclude those axioms from the set of hypothesis of a given proof. Hence, for

every axiom A(V ) we shall dene a constant operator : X

0

X, so

that = (0) is simply a proof with conclusion Val() = and the crucial

property Hyp() = . In fact, we shall introduce a unary operator : X

0

X

for every formula P(V ) and not simply for A(V ). If = (0) is a

proof where is not a legitimate axiom, we shall simply regard the proof as

a case of awed invocation of axiom and set Val () = .

The choice of creating an operator : X

0

X even in the case when

is not a legitimate axiom may seem odd at rst glance. What is the point

of doing this? This choice will eectively increase our free universal algebra of

proofs by allowing awed and seemingly pointless proofs of the form where

is not an axiom. Why? Well, rstly we should realize that this isnt the end

of the world. We have already accepted the idea of having many proofs of the

form

1

2

or x

1

which are awed in some sense, as they are illegitimate use

of inference rules and whose conclusion is . Allowing the possibility of

wrongly invoking an axiom makes little dierence to the existing status. More

importantly, this exibility brings considerable advantages as we shall discover

in later part of this document. One advantage is to seamlessly dene the notion

of variable substitution in proofs. Given a map : V W we shall dene

a corresponding substitution for proofs as per denition (272). Allowing

to be meaningful regardless of whether is a legitimate axiom allows us to

set () = () without having to worry whether or not the formula () is

indeed an axiom. This makes a lot of the formalism smoother and more elegant.

Another advantage is the ability to study other deductive systems based on an

alternative set of axioms without having to consider a dierent algebra of proofs.

We can keep the same free universal algebra of proofs and simply change the

semantics Val : X P(V ) giving rise to an alternative notion of provability.

Denition 233 Let V be a set. We call Hilbert Deductive Proof Type associ-

ated with V , the type of universal algebra dened by:

= : P(V ) x : x V

where = ((0, ), 0), P(V ), = ((1, 0), 2) and x = ((2, x), 1), x V .

The specics of how , and x are dened are obviously not important.

The coding is done in such a way that the Hilbert deductive proof type is

indeed a set of ordered pairs which is functional and with range in N. So the

set is a map with range in N, and is therefore a type of universal algebra as

per denition (1). We have also set up the coding to ensure each operator has

the expected arity, namely () = 0, () = 2 and (x) = 1. We are now

ready to dene our free universal algebra of proofs X of type . We shall adopt

the generator X

0

= P(V ) and denote this algebra (V ):

Denition 234 Let V be a set with associated Hilbert deductive proof type .

We call Free Universal Algebra of Proofs associated with V , the free universal

algebra (V ) of type with free generator P(V ).

223

Recall that the existence of (V ) is guaranteed by theorem (1) of page 20. It

follows that we have P(V ) (V ): any formula P(V ) is also a proof. It is

simply the proof which has itself as a premise, and itself as a conclusion. In other

words, we shall have Hyp () = and Val() = . Note that if P(V ) then

both and are proofs, where we casually use the notation as a shortcut

for (0). These proofs have the same conclusion , provided the formula

is an axiom. The dierence between them is that an axiom has no premise,

namely Hyp() = . One other important point needs to be made: both P(V )

and (V ) are free universal algebras for which is dened a natural notion of

sub-formula and sub-proof as per denition (40). So given , P(V ) and

, (V ) it is meaningful to write _ and _ expressing the idea that

is a sub-formula of and is a sub-proof of . However, since P(V ) (V )

the statement _ is ambiguous. It is not clear whether we are referring to

the sub-formula partial order on P(V ) or (V ). The distinction is crucial: the

only sub-proof of is itself, while may have many sub-formulas. So we have

a problem for which a solution is to use two dierent symbols, one referring to

sub-formulas and one referring to sub-proofs. In these notes, we have decided to

keep the same symbol _ for both notions, hoping the context will always make

clear which of the two notions is being considered. In general, we shall want

to avoid this sort of situation. Whenever extending one notion from formulas

to proofs, we shall always make sure the meaning remains the same regardless

of whether is viewed as an element of P(V ) or (V ). For example, the

variables Var(), free variables Fr () and bound variables Bnd () of a proof

will be dened with this in mind. The same will apply to the notions of valid

substitution, the image () of a proof and its minimal transform /(). So

the sub-formula partial order _ is an exception, where a confusion is possible.

Recall that another example of possibly confusing notation exists in this note

namely 0 which may refer to the standard quantication x with x = 0, or to

the iterated quantication as per denition (187). Before we formally dene the

set of hypothesis Hyp () for a given proof (V ), we would like to stress:

Proposition 235 Let V be a set and , P(V ). Then we have:

= =

Proof

We are now familiar with the free universal algebra of rst order logic P(V )

and a common abuse of notation regarding the symbol . This symbol is

inherently ambiguous as it may refer to three dierent things: rstly, it refers

to an operator symbol namely an element (V ) of the rst order logic type

of denition (51). Secondly, it refers to the actual operator : 0 P(V )

of P(V ) with arity () = 0. Thirdly, it refers to the actual formula (0)

which we commonly denote in order to keep our notations lighter. Given

a formula P(V ), the same thing can be said of the notation which is

equally ambiguous: it refers to the operator symbol of denition (233) or the

actual operator : 0 (V ) or the proof (0) which we casually denote

. So when it comes to proposition (235) which we are now attempting to

224

prove, there is potentially a problem. Luckily the statement of this proposition

is true regardless of how we wish to interpret the notations and . If

the two symbols are equal, then the two operators are equal and consequently

the two proofs are equal. So it is sucient to prove the following implication:

(0) = (0) =

which is our initial statement where the abuse of notation has been removed.

So suppose (0) = (0). Using theorem (3) of page 32 we obtain the equality

between symbols = . However, from denition (233) we have =

((0, ), 0) and = ((0, ), 0). So we conclude that = as requested.

Denition 236 Let V be a set. The map Hyp : (V ) T(P(V )) dened by

the following structural recursion is called the hypothesis mapping on (V ):

(V ) , Hyp () =

if = P(V )

if =

Hyp (

1

) Hyp (

2

) if =

1

2

Hyp (

1

) if = x

1

(3.3)

We say that is a hypothesis of the proof (V ) if and only if Hyp ().

Note that given a proof (V ), if we regard as some formal expression

involving variables of P(V ), then the set of hypothesis Hyp () is simply the set of

variables occurring in . We should also note that the recursive denition (3.3)

is easily seen to be legitimate and furthermore that Hyp () is a nite set, as a

straightforward structural induction will show. Our next step is to dene the

valuation mapping Val : (V ) P(V ) which returns the conclusion Val()

of a proof (V ). Before we can do so we need to dene the set Sp ()

representing the free variables occurring in the premises of the proof . This set

is important to formally decide whether a proof of the form x

1

constitutes a

legitimate application of the generalization rule of inference. Obviously, having

proved the formula Val (

1

) using a proof

1

, we cannot claim to have proved

xVal (

1

) unless the variable x was truly arbitrary, that is x , Sp (

1

).

Denition 237 Let V be a set. Given P(V ), we say that x V is a free

variable of , if and only if it belongs to the set Fr () dened by:

Fr () = Fr() :

Given (V ), we say that x V is a specic variable of the proof , if and

only if it belongs to the set Sp () dened by the equality:

Sp () = Fr (Hyp ()) = Fr () : Hyp ()

We also need to formally decide whether a proof of the form

1

2

consti-

tutes a legitimate application of the rule of inference known as modus ponens.

225

This is the case when the conclusion Val (

2

) of the proof

2

can be expressed

as Val (

2

) = Val(

1

) for some formula P(V ). When this is the case,

the proof

1

2

is a proof of . Otherwise, it simply becomes a proof of

which is a very weak result. This motivates the following:

Denition 238 Let V be a set. We call modus ponens mapping on P(V ) the

map M : P(V )

2

P(V ) dened by:

1

,

2

P(V ) , M(

1

,

2

) =

_

if

2

=

1

otherwise

Note that the modus ponens mapping M : P(V )

2

P(V ) is well-dened

by virtue of theorem (2) of page 21 which guarantees the uniqueness of any

P(V ) such that

2

=

1

, assuming such does exist.

Denition 239 Let V be a set. We call valuation mapping on (V ) the map

Val : (V ) P(V ) dened by the following structural recursion:

(V ) , Val () =

if = P(V )

if = , A(V )

if = , , A(V )

M(Val(

1

), Val (

2

)) if =

1

2

xVal (

1

) if = x

1

, x , Sp (

1

)

if = x

1

, x Sp (

1

)

where M : P(V )

2

P(V ) refers to the modus ponens mapping on P(V ).

Proposition 240 The structural recursion of denition (239) is legitimate.

Proof

We need to prove the existence and uniqueness of the map Val : (V ) P(V ).

We have to be slightly more careful than usual, as we cannot apply theorem (4)

of page 45 in this case. The reason for this is that we do not wish Val(x

1

)

to be simply a function of Val(

1

). Indeed, the conclusion of the proof x

1

depends on whether x Sp (

1

) or not. So we want Val(x

1

) to be a func-

tion of both Val(

1

) and

1

. So the main point is to dene the mapping

h(x) : P(V ) (V ) P(V ) by h(x)(

1

,

1

) = x

1

if x , Sp (

1

) and

h(x)(

1

,

1

) = otherwise. We can then apply theorem (5) of page 47.

Note that the mapping h() : P(V )

0

(V )

0

P(V ) should be dened

dierently, depending on whether is an axiom of rst order logic or not. If

A(V ) we set h()(0, 0) = and otherwise h()(0, 0) = .

3.1.4 Provability and Sequent Calculus

Having constructed the free universal algebra of proofs (V ), we are now ready

to dene the notion of provability and syntactic entailment. We shall introduce

a binary consequence relation T(P(V )) P(V ) as follows:

226

Denition 241 Let V be a set. Let P(V ) and P(V ). We say that

(V ) is a proof of the formula from if and only if we have:

Val() = and Hyp ()

Furthermore, we say that is provable from or that entails , and we write:

if and only if there exists a proof (V ) of the formula from . We say

that is provable and we write if and only if it is provable from = .

The relation satises a few properties which are highlighted in [50]: the

identity property is satised as we clearly have for all P(V ). Indeed,

the proof = is a proof of from the set . The monotonicity property

is also satised as we have the implication ( ) ( ) .

Indeed, if (V ) is a proof with Val () = and Hyp () then in

particular we have Hyp() and consequently is also a proof of from

. Another property satised by is the nitary property: if then there

exists a nite subset

0

such that

0

. Indeed, if is a proof of from

, then it is also a proof of from

0

= Hyp() . Other properties such

as transitivity and structurality are considered in Umberto Rivieccio [50]. We

shall prove transitivity after we have established the deduction theorem (21) of

page 231. The property of structurality is slightly more delicate in the case of

rst order logic with terms. We would like to be able to claim that () ()

whenever we have and : P(V ) P(V ) is a map of a certain type. The

existing literature on abstract algebraic logic e.g. W.J. Blok and D. Pigozzi [6]

and the already mentioned [50] seem to consider logical systems without terms,

where the algebra of formulas is similar to that of propositional logic. In our

case, things are slightly more complicated as it is not immediately obvious which

type of : P(V ) P(V ) should be used to dene the structurality property.

However, with a little bit of thought, it seems that a pretty good candidate

is to consider the class of essential substitutions : P(V ) P(V ) as per

denition (165). In fact, we hope to be able to prove a substitution theorem:

() () in the more general case when : P(V ) P(W) is an

essential substitution and W is a set of variables, which may not be equal to V .

Such theorem is already stated in [4] as Theorem 4.3 page 33 using the notion of

semi-homomorphism. For now, we shall complete this section by proving other

properties of the consequence relation . The idea behind this is to develop

a naive and heuristic form of sequent calculus allowing us to prove a sequent

as easily as possible. The claim that (i.e. entails ) is that

there exists a proof of from . It is usually a painful exercise to exhibit an

element (V ) such that Val () = and Hyp () . It is a lot easier to

prove the existence of such a without actually saying what it is. The following

propositions will allow us to do that. Of course, this will not be very helpful

if we are interested in proof searching algorithms at a later stage. However,

it would be wrong to think that proof searching requires that we nd a proof

227

(V ). Another approach consists in attempting to formally prove or falsify

the sequent , possibly along the lines of the Gentzen system described

in Jean H. Gallier [24] or Gilles Dowek [16], using another algebra of proofs

based on another language of sequents. The next proposition establishes that

the sequent is always true when is an axiom of rst order logic :

Proposition 242 Let V be a set and P(V ). Let A(V ) be an axiom of

rst order logic. Then is provable from , i.e. we have .

Proof

Given an axiom of rst order logic A(V ), consider the proof = .

Then Val () = and Hyp() = . In particular, we have Val() = and

Hyp() . It follows that (V ) is a proof of from , so .

One way to look at proposition (242) is to say that to every axiom of rst

order logic is associated a group of axioms in the language of sequents.

An axiom of the form can be viewed as an inference rule of arity 0,

that is a constant operator on a new algebra of proofs by sequents. We are not

claiming to be doing anything here, but simply indicating an avenue for future

development. In a similar fashion, the modus ponens rule of the algebra (V )

gives rise to a binary rule of inference in the language of sequents:

Proposition 243 Let V be a set and P(V ). For all , P(V ) we have:

( ) ( ( ))

Proof

Let V be a set and P(V ). Let , P(V ) be formulas such that

and ( ). From we obtain the existence of a proof

1

(V )

such that Val (

1

) = and Hyp (

1

) . From ( ) we obtain the

existence of a proof

2

(V ) such that Val(

2

) = and Hyp (

2

) .

Dene the proof =

1

2

. Then, from denition (239) we have:

Val() = Val(

1

2

)

= M(Val(

1

), Val (

2

))

= M(, )

=

where M : P(V )

2

P(V ) is the modus ponens mapping as per denition (238).

Furthermore, using denition (236) we obtain:

Hyp () = Hyp (

1

2

)

= Hyp (

1

) Hyp (

2

)

It follows that (V ) is a proof of from and we have proved that .

Similarly, the generalization rule of the algebra (V ) gives rise to a unary

rule of inference in the language of sequents.

228

Proposition 244 Let V be a set and P(V ). For all P(V ) and x V :

( ) (x , Fr ()) x

Proof

Let V be a set and P(V ). Let P(V ) and x V be such that and

x , Fr (). From we obtain the existence of a proof

1

(V ) such that

Val(

1

) = and Hyp(

1

) . From x , Fr () and Hyp (

1

) it follows in

particular that x , Sp (

1

). Dene the proof = x

1

(V ). Then:

Val () = Val (x

1

)

x , Sp (

1

) = xVal (

1

)

= x

Furthermore, we have Hyp () = Hyp(x

1

) = Hyp (

1

) . It follows that

(V ) is a proof of x from and we conclude that x.

Every axiom of rst order logic is of the form =

1

2

. Hence, given

P(V ) from proposition (242) we have

1

2

. It follows that if the

sequent

1

has been proved, we obtain

2

immediately by application of

the modus ponens property of proposition (243). So every axiom of rst order

logic also gives rise to a unary rule of inference in the language of sequents. We

shall now make these explicit by considering each of the ve possible groups

of axioms separately. Of course, these unary rules of inference can be deduced

from other existing rules. So we may wish to regard them simply as theorems

of the form

1

2

in the language of sequents.

Proposition 245 Let V be a set and P(V ). For all

1

,

2

P(V ):

1

(

2

1

)

Proof

Let V be a set and P(V ). Let

1

,

2

P(V ) such that

1

. From de-

nition (226) the formula

1

(

2

1

) is a simplication axiom and it follows

from proposition (242) that

1

(

2

1

). Hence, using

1

and the

modus ponens property of proposition (243) we conclude that (

2

1

).

Proposition 246 Let V be a set and P(V ). For all

1

,

2

,

3

P(V ):

1

(

2

3

) (

1

2

) (

1

3

)

Proof

Let V be a set and P(V ). Let

1

,

2

,

3

P(V ) with

1

(

2

3

).

From denition (227), [

1

(

2

3

)] [(

1

2

) (

1

3

)] is a Frege

axiom and it follows from proposition (242) that:

[

1

(

2

3

)] [(

1

2

) (

1

3

)]

229

Hence, using

1

(

2

3

) and the modus ponens property of proposi-

tion (243) we conclude that (

1

2

) (

1

3

).

Proposition 247 Let V be a set and P(V ). For all

1

P(V ) we have:

(

1

)

1

Proof

Let V be a set and P(V ). Let

1

P(V ) such that (

1

) .

From denition (228) the formula [(

1

) ]

1

is a transposition

axiom and it follows from proposition (242) that [(

1

) ]

1

.

Hence, using (

1

) and the modus ponens property of proposi-

tion (243) we conclude that

1

.

Proposition 248 Let V be a set and P(V ). For all

1

,

2

P(V ), x V :

(x , Fr (

1

)) ( x(

1

2

))

1

x

2

Proof

Let V be a set and P(V ). Let

1

,

2

P(V ) and x V such that

x , Fr (

1

) and x(

1

2

). From denition (229) and x , Fr (

1

) the

formula x(

1

2

) (

1

x

2

) is a quantication axiom and it follows

from proposition (242) that x(

1

2

) (

1

x

2

). Hence, using

x(

1

2

) and the modus ponens property of proposition (243) we con-

clude that

1

x

2

.

Proposition 249 Let V be a set and P(V ). For all

1

P(V ), x, y V :

x

1

1

[y/x]

where [y/x] : P(V ) P(V ) is an essential substitution of y in place of x.

Proof

Let V be a set and P(V ). Let

1

P(V ) and x, y V such that

x

1

. Let [y/x] : P(V ) P(V ) be an essential substitution associated

with [y/x] : V V as per denition (159). From denition (230) the formula

x

1

1

[y/x] is a specialization axiom and it follows from proposition (242)

that x

1

1

[y/x]. Hence, using x

1

and the modus ponens prop-

erty of proposition (243) we conclude that

1

[y/x].

The following proposition can also be viewed as an axiom in the language of

sequents. We shall need it when proving the deduction theorem.

Proposition 250 Let V be a set and P(V ). For all

1

P(V ) we have:

(

1

1

)

230

Proof

Let V be a set and P(V ). Let

1

P(V ). Since

1

(

1

1

) is a

simplication axiom, from proposition (242) we have

1

(

1

1

). So

in order to show (

1

1

), by virtue of the modus ponens property of

proposition (243) it is sucient to prove that:

[

1

(

1

1

)] (

1

1

)

From proposition (246) it is therefore sucient to prove that:

1

[(

1

1

)

1

]

which follows immediately from the fact that

1

[(

1

1

)

1

] is also a

simplication axiom.

3.1.5 The Deduction Theorem

It is now time to deliver on our promise. Our chosen axiomatization of rst

order logic allows us to state the deduction theorem in its full generality. As

already mentioned, a good number of references (e.g. [18], [30], [32], [39], [43],

[44], [45], [62]) have chosen axiomatic systems in which the deduction theorem

fails in general, and can only be stated for closed formulas. As far as we can

tell, the most common source of failure is the acceptance of (

1

, x

1

) as a

rule of inference. This is in contrast with the formalization presented in these

notes, where the conclusion x

1

is only reached when

1

is the conclusion

of a proof

1

such that x , Sp (

1

), i.e. x is not a specic variable of

1

.

This is in line with the common mathematical practice of not claiming x

1

from

1

unless the variable x is truly arbitrary. The deduction theorem also

appears in full generality as Theorem 4.9 page 34 in Donald W. Barnes, John

M. Mack [4]. Their proof relies on an induction argument based on the length

of the proof underlying the sequent . Having chosen a free algebraic

structure for our set (V ), our own proof of the deduction theorem will benet

from the clarity and power of structural induction. Interestingly, the online

course of Prof. Arindama Singh of IIT Madras [55] also oers a proof of the

deduction theorem in full generality which implicitly makes use of structural

induction, despite having proofs dened as nite sequences of formulas. This

can be seen at the end of the lecture 39 available on YouTube via the link

http://nptel.iitm.ac.in/courses/111106052/39.

Theorem 21 Let V be a set and P(V ). For all , P(V ) we have:

( )

Proof

We shall rst prove the implication : so suppose V is a set and P(V ) is

such that ( ) where , P(V ). In particular, we have:

( )

231

and it is clear that . From the modus ponens property of proposi-

tion (243) it follows that as requested. We now prove the reverse

implication : let

for all P(V ) and , P(V ) the following implication holds:

(Val () = ) (Hyp () ) ( )

First we shall prove that in order to complete the proof of this theorem it is

sucient to show that

= (V ). So we assume that

= (V ). Let

P(V ) and , P(V ) be such that . We need to show that

( ). From the assumption we obtain the existence of

a proof (V ) such that Val () = and Hyp () . However,

having assumed

. From

Val() = and Hyp() we therefore conclude that ( )

as requested. We shall now complete the proof of this theorem by showing the

equality

of page 32. Since P(V ) is a generator of the algebra (V ) we rst check that

P(V )

1

for some

1

P(V ).

We need to show that

1

that

1

= Val () = and

1

= Hyp() . We need to show that

( ), that is to say (

1

). We shall distinguish two cases:

rst we assume that

1

. In that case, Hyp () and is in fact a proof

of

1

from . So

1

and our desired conclusion (

1

) follows

immediately from the simplication property of proposition (245). We now as-

sume that

1

, . From the inclusion

1

it follows that

1

=

and we therefore need to show that (

1

1

) which follows immediately

from proposition (250). This completes our proof of P(V )

. We shall now

proceed with our induction argument by showing that every proof (V )

of the form =

1

for some

1

P(V ) is an element of

. So suppose

=

1

and let P(V ) and , P(V ) be such that Val () = and

= Hyp() (This inclusion of course does not tell us anything). We

need to show that ( ). We shall distinguish two cases: rst we assume

that

1

A(V ), i.e. that

1

is an axiom. Then we have

1

= Val() = and

we need to show that (

1

). However, having assumed

1

A(V ) is

an axiom of rst order logic, we have

1

and (

1

) follows imme-

diately from the simplication property of proposition (245). We now assume

that

1

, A(V ). Then we have ( ) = Val() = and we need to show

that ( ( )). However, we know that ( ) is true by virtue

of proposition (250) and ( ( )) therefore follows from the simpli-

cation property of proposition (245). We shall now proceed with our induction

argument by assuming (V ) is of the form =

1

2

where both

1

and

2

are elements of

. So let

P(V ) and , P(V ) be such that M(Val (

1

), Val(

2

)) = Val () =

and Hyp(

1

) Hyp (

2

) = Hyp() , where M : P(V )

2

P(V ) is the

modus ponens mapping of denition (238). We need to show that ( ).

We shall distinguish two cases: rst we assume that Val (

2

) is not of the form

232

Val(

2

) = Val(

1

)

1

for any

1

P(V ). From denition (238) it fol-

lows that M(Val(

1

), Val (

2

)) = and consequently = .

So we need to prove that ( ) which follows from the sim-

plication property of proposition (245) and the fact that ( ), it-

self an outcome of proposition (250). We now assume that Val(

2

) is of the

form Val (

2

) = Val(

1

)

1

for some

1

P(V ). In this case we obtain

M(Val(

1

), Val (

2

)) =

1

= so we need to prove that (

1

). From

the modus ponens property of proposition (243) it is therefore sucient to show

that ( Val(

1

)) and ( Val (

1

)) (

1

). In fact, from

the Frege property of proposition (246), ( Val(

1

)) (

1

) is

itself a consequence of (Val (

1

)

1

) so we can concentrate on

proving this last entailment together with ( Val(

1

)). First we show

that ( Val(

1

)). Recall our assumption that the proof

1

is an el-

ement of

1

) Hyp (

2

) we obtain in particular

Hyp(

1

) . Hence from the equality Val (

1

) = Val (

1

) we con-

clude immediately that ( Val (

1

)) as requested. We now show that

(Val (

1

)

1

). Since Val (

1

)

1

= Val (

2

) this is in fact the

same as showing ( Val (

2

)) which is also a simple consequence of the

assumption

2

and Hyp (

2

) . This completes our proof in the

case when (V ) is of the form =

1

2

. We now assume that is of

the form = x

1

where x V and

1

is an element of

. We need to show

that is also an element of

that Val (x

1

) = Val () = and Hyp(

1

) = Hyp() . We need

to show that ( ). We shall distinguish two cases: rst we assume

that x Sp (

1

). In this case we have Val(x

1

) = and therefore

= . So we need to prove that ( ) which we already

know is true as we have shown in this proof. We now assume that x , Sp (

1

).

Once again, we need to show that ( ) and we shall distinguish two

further cases: rst we assume that x Fr (). From x , Sp (

1

) = Fr (Hyp (

1

))

it follows that , Hyp (

1

). Hence, from Hyp() = Hyp(

1

) we

obtain Hyp () , which together with Val() = imply that . So

( ) follows immediately from the simplication property of propo-

sition (245). We now assume that x , Fr (). From x , Sp (

1

) it follows

that Val (x

1

) = xVal (

1

) and consequently = xVal (

1

). Hence we

need to show that ( xVal (

1

)). However, since x , Fr (), from

the quantication property of proposition (248), it is sucient to prove that

x( Val(

1

)). From Hyp (

1

) , dening

= Hyp (

1

)

we obtain

x( Val (

1

)).

From x , Sp (

1

) = Fr (Hyp (

1

)) it follows that x , Fr (

eralization property of proposition (244), it is therefore sucient to prove that

( Val(

1

)). Now recall our assumption that the proof

1

is an element

of

. From Hyp(

1

)

and Val(

1

) = Val (

1

) we obtain immediately

( Val(

1

)) as requested. This completes our induction argument.

233

3.1.6 Transitivity of Consequence Relation

We are now in a position to provide a proof of the transitivity property of the

consequence relation : if for all and , then we must have

. In essence, we shall use the deduction theorem (21) to argue that:

(

n

(

n1

. . . (

1

)

where

1

, . . . ,

n

is the set of hypothesis of a proof underlying the

sequent . From

k

and a repeated use of modus ponens, we conclude

that . Note that if is a proof of from , it would be tempting to design

a new proof of from by replacing every assumption

k

of the proof by a

proof

k

of

k

from . For those who care, this idea does not work: the proof

may contain cases of generalization with respect to a variable x which become

invalidated by the presence of x as a free variable in some Hyp(

k

). Despite our

best eorts, we have not been able to design a proof along those lines.

Proposition 251 Let V be a set. Let , P(V ) and P(V ). Then:

( for all ) ( ) (3.4)

Proof

Without loss of generality we may assume that is a nite set. Indeed, sup-

pose the implication (3.4) has been proved in this case. We shall show that it

is then true in general. So suppose for all and . We need

to show that . However, there exists

0

nite such that

0

and

0

. Hence we have for all

0

and

0

. Having assumed the

implication (3.4) is true for nite, it follows that as requested. So we

assume without loss of generality that is a nite set. We shall show that (3.4)

is true for all P(V ) and P(V ), using an induction argument on the

cardinal [[ of the set . First we assume that [[ = 0. Let P(V ) and

P(V ). From = and we obtain and in particular .

Hence the implication (3.4) is necessarily true. We now assume that (3.4) is true

for all P(V ) and P(V ) whenever [[ = n for some n N. We need

to show the same is true when [[ = n + 1. So let P(V ) and P(V ).

We assume that for all and . We need to show that

. Having assumed [[ = n + 1, in particular ,= . Let

and

dene

. Then [

[ = n. Furthermore we have =

and consequently

). However, since

.

Having assumed the implication (3.4) is true for all P(V ), P(V ) and

[[ = n, in particular it is true for , (

) and

(

we have

. Using the

modus ponens property of proposition (243) we conclude that .

There is an interesting corollary to proposition (251) which looks like the

cut rule for sequent calculus. In case this turns out to be useful we quote:

234

Proposition 252 Let V be a set. Let P(V ) and , P(V ). Then:

( ) ( )

Proof

Using the deduction theorem (21) of page 231, by assumption we have the se-

quents ( ) and (( ) ). Dening the set of formulas

= , ( ) it follows that for all . In order to

prove that , from the transitivity of proposition (251) it is therefore su-

cient to prove that . Using the transposition property of proposition (247),

we simply need to show that ( ) . From the deduction theo-

rem (21), this amounts to showing that

where

= . Let

us accept for now that

( ) and

modus ponens property of proposition (243) we obtain

as requested.

So it remains to show that

( ) and

( ) . First we

show the sequent

show that

sequent

that

3.1.7 The Hilbert Deductive Congruence

Having created a sensible consequence relation T(P(V ))P(V ) we can now

formally dene the Hilbert deductive congruence on P(V ). Given , P(V ),

we shall say that and are equivalent if and only if both formulas

and are provable. So we naturally start with a study of the relation

dened by ( ) which shall be seen to be a preorder:

Denition 253 Let V be a set. We call Hilbert deductive preorder on P(V )

the relation dened by if and only if ( ), for all , P(V ).

Recall that a preorder is a binary relation which is reexive and transitive. The

proof that is indeed a preorder follows. Note that by virtue the deduction

theorem (21) of page 231, the statement ( ) is equivalent to .

Proposition 254 Let V be a set. Then, the Hilbert deductive preorder on

P(V ) is a reexive and transitive relation on P(V ).

Proof

First we show that is reexive, namely that for all P(V ). We have

to show that ( ), which follows from proposition (250). Next we show

that is transitive. So let , , P(V ) such that and . We need

to show that , that is ( ). Using the deduction theorem (21), it is

sucient to prove that . However, from the assumption we have

( ) and consequently . From the assumption we obtain

235

( ) and in particular ( ). Using the modus ponens property

of proposition (243) we conclude that as requested.

The Hilbert deductive preorder is not a congruent relation. If

1

1

and

2

2

, we cannot argue that

1

2

1

2

. Although it would be easy

to provide a counterexample, we shall refrain from doing so at this stage, as we

are not able to prove anything: we do have some tools allowing us to establish a

given sequent ( ), but we are not yet equipped to refute such a sequent.

Proving that a formula is not provable is dicult. We shall need some model

theory to do this. For now, we shall focus on the positive result:

Proposition 255 Let V be a set and be the Hilbert deductive preorder on

P(V ). Let

1

,

2

and

1

,

2

P(V ) such that

1

1

and

2

2

. Then:

1

2

1

2

Proof

We assume that

1

1

and

2

2

, i.e. (

1

1

) and (

2

2

).

We need to show that

1

2

1

2

i.e. (

1

2

) (

1

2

).

Using the deduction theorem (21) of page 231 it is sucient to prove that

1

2

(

1

2

). In fact, using theorem (21) once more, it is su-

cient to prove that

2

where =

1

2

,

1

. From the assumption

(

1

1

) we obtain

1

1

and consequently

1

. Furthermore, it is

clear that (

1

2

). Using the modus ponens property of proposition (243)

we obtain

2

. However, from the assumption (

2

2

) we have in par-

ticular (

2

2

). Using the modus ponens property of proposition (243)

once more we obtain

2

as requested.

As we have just seen, the implication operator formally behaves like a

dierence

2

1

when it comes to the Hilbert deductive preorder. By contrast,

the quantication operator x respects the order:

Proposition 256 Let V be a set and be the Hilbert deductive preorder on

P(V ). Let

1

,

1

P(V ) such that

1

1

. Then for all x V we have:

x

1

x

1

Proof

Suppose

1

1

and let x V . we need to show that x

1

x

1

which is

(x

1

x

1

). Using the deduction theorem (21) of page 231 it is sucient

to prove that x

1

with = x

1

. It is clear that x

1

. From

proposition (169) the identity mapping i : P(V ) P(V ) is an essential substi-

tution associated with the identity i : V V . In particular, it is an essential

substitution of y in place of x in the case when y = x. Using the specialization

property of proposition (249) it follows that

1

. However, the assumption

1

1

leads to (

1

1

) and in particular (

1

1

). Using the

modus ponens property of proposition (243) we obtain

1

. Since x , Fr ()

236

we conclude x

1

from the generalization property of proposition (244).

We shall now dene the Hilbert deductive congruence in terms of the Hilbert

deductive preorder, and prove it is indeed a congruence on P(V ).

Denition 257 Let V be a set and be the Hilbert deductive preorder on P(V ).

We call Hilbert deductive congruence on P(V ) the relation dened by:

( ) ( )

Proposition 258 The Hilbert deductive congruence on P(V ) is a congruence.

Proof

Let denote the Hilbert deductive congruence on P(V ). We need to prove that

is an equivalence relation which is also a congruent relation. First we show

that it is indeed an equivalence relation. Let denote the Hilbert deductive

preorder on P(V ). From proposition (254), is reexive. So it is clear that

is also reexive. It is also obvious that is symmetric. So it remains to show

that is transitive. So suppose , , P(V ) are such that and .

In particular we have and and it follows from the transitivity of

that . We show similarly that and we conclude that . So

it remains to show that is a congruent relation on P(V ). We have already

proved that from reexivity. Suppose

1

1

and

2

2

. We need to

show that

1

2

1

2

. First we show that

1

2

1

2

. This

follows from proposition (255) and the fact that

1

1

and

2

2

. Using

1

1

and

2

2

we prove similarly that

1

2

1

2

. Suppose

now that

1

1

and x V . We need to show that x

1

x

1

. However,

from

1

1

and proposition (256) we obtain x

1

x

1

. Likewise from

1

1

we have x

1

x

1

. The equivalence x

1

x

1

follows.

The Hilbert deductive congruence expresses the idea of logical equivalence

between formulas. We are already familiar with other congruences which formal-

ize the idea of identical meaning. Obviously we should expect formulas which

have identical meaning to be logically equivalent. We shall now check this is

indeed the case, starting with the substitution congruence on P(V ) :

Proposition 259 Let V be a set. Let and denote the substitution and

Hilbert deductive congruence on P(V ) respectively. Then for all , P(V ):

The substitution congruence is stronger than the Hilbert deductive congruence.

Proof

We need to show the inclusion , for which it is sucient to show R

0

where R

0

is a generator of the substitution congruence. Using denition (115)

it is therefore sucient to prove that where = x

1

for some x V

and

1

P(V ), and = y

1

[y : x] with x ,= y and y , Fr (

1

). First we

237

show that where is the Hilbert preorder on P(V ). So we need to show

that ( ). Using the deduction theorem (21) of page 231 it is sucient to

prove that , which is y

1

[y : x] where = x

1

. However, having

assumed that y , Fr (

1

), in particular we have y , Fr (). Using the gener-

alization property of proposition (244) it is therefore sucient to prove that

1

[y : x]. Let us accept for now that the formula = x

1

1

[y : x] is a

specialization axiom. Then from proposition (242) we have and using the de-

duction theorem once more we obtain

1

[y : x] as requested. So it remains to

show that is indeed a specialization axiom. From proposition (231) it is su-

cient to show that

1

[y : x]

1

[y/x] where [y/x] : P(V ) P(V ) is an essential

substitution of y in place of x. Since the permutation [y : x] : V V is injective,

from proposition (169) its associated map [y : x] : P(V ) P(V ) is also an es-

sential substitution. Hence, in order to show the equivalence

1

[y : x]

1

[y/x],

from proposition (174) it is sucient to show that [y/x] and [y : x] coincide on

Fr (

1

). This is clearly the case since y , Fr (

1

). So we have proved that

and it remains to show that . However, dene

1

=

1

[y : x]. Then it is

clear that

1

=

1

[x: y] and we need to show that y

1

x

1

[x: y], for which

we can use an identical proof as previously, provided we show that x , Fr (

1

).

So suppose to the contrary that x Fr (

1

). Using proposition (75), since

[y : x] is injective we have Fr (

1

) = [x: y](Fr (

1

)). It follows that there exists

u Fr (

1

) such that x = [x: y](u). Hence u = y which contradicts y , Fr (

1

).

Two formulas which are permutation equivalent are also logically equivalent:

Proposition 260 Let V be a set. Let and denote the permutation and

Hilbert deductive congruence on P(V ) respectively. Then for all , P(V ):

The permutation congruence is stronger than the Hilbert deductive congruence.

Proof

We need to show the inclusion , for which it is sucient to show R

0

where R

0

is a generator of the permutation congruence. Using denition (180)

it is therefore sucient to prove that where = xy

1

and = yx

1

where

1

P(V ) and x, y V . By symmetry, it is sucient to show that

i.e. ( ). Using the deduction theorem (21) of page 231 it is therefore

sucient to prove that which is yx

1

where = xy

1

. It

is clear that xy

1

. Using the specialization property of proposition (249)

we obtain y

1

. Hence, using specialization once more we obtain

1

.

However, it is clear that x , Fr (). So we can use the generalization property

of proposition (244) to obtain x

1

. With one additional use of generaliza-

tion, since y , Fr (), we conclude that yx

1

as requested.

Two formulas which are absorption equivalent are also logically equivalent:

238

Proposition 261 Let V be a set. Let and denote the absorption and

Hilbert deductive congruence on P(V ) respectively. Then for all , P(V ):

The absorption congruence is stronger than the Hilbert deductive congruence.

Proof

We need to show the inclusion , for which it is sucient to show R

0

where R

0

is a generator of the absorption congruence. Using denition (202) it

is therefore sucient to prove that

1

x

1

where

1

P(V ) and x , Fr (

1

).

First we show that

1

x

1

. We need to show that (

1

x

1

) which

is

1

x

1

after application of the deduction theorem (21) of page 231.

However, since x , Fr (

1

), from

1

1

and the generalization property

of proposition (244) we obtain

1

x

1

as requested. So it remains to

show that x

1

1

, which is (x

1

1

), which follows immediately from

proposition (242) and the fact that x

1

1

is a specialization axiom.

Propositional equivalence is also stronger than logical equivalence:

Proposition 262 Let V be a set. Let and denote the propositional and

Hilbert deductive congruence on P(V ) respectively. Then for all , P(V ):

The propositional congruence is stronger than the Hilbert deductive congruence.

Proof

To be determined.

So the substitution, permutation, absorption and propositional congruences

are all stronger than the Hilbert deductive congruence. The following propo-

sition is an easy consequence of this, and can be added to our set of rules for

sequent calculus: if a formula is provable while having the same meaning as

a formula , then is also provable. In fact, if a formula is provable while

being logically equivalent to a formula , then is also provable.

Proposition 263 Let V be a set and be a congruence which is stronger than

the Hilbert deductive congruence. Then for all , P(V ) and P(V ):

( ) ( )

Proof

We assume that and . We need to show that . However the

congruence on P(V ) is stronger than the Hilbert deductive congruence .

Hence from we obtain . It follows in particular that , i.e.

( ) and consequently we have ( ). From and the modus

ponens property of proposition (243) we conclude that as requested.

239

3.2 The Free Universal Algebra of Proofs

3.2.1 Totally Clean Proof

The universal algebra of proofs (V ) of denition (234) is not as natural as

it looks: a universal algebra has operators which must be dened everywhere.

However, the modus ponens operator should not be dened in most cases. It

makes little sense to infer anything from two conclusions

1

and

2

using modus

ponens, unless the conclusion

2

is of the form

2

=

1

in which case we

can derive the new conclusion . In other words, the proof

1

2

is not a valid

application of the modus ponens rule, unless Val(

2

) = Val(

1

) for some

P(V ). In a similar way, the proof x

1

is not a valid application of the

generalization rule, unless the condition x , Sp (

1

) is met, i.e. the variable x is

truly general and not specic. So in some sense, it may be argued that the struc-

ture of universal algebra is not suited to represent a set of proofs. These proofs

have operators which are naturally partial functions, while universal algebras

require operators which are total functions. There is a prominent example for

which this issue arises: the algebraic structure of eld has an inverse operator

which is not dened on 0. So there is a problem: our solution to it is to regard

proofs simply as formal expressions where the operators and x are dened

everywhere, and to introduce Val : (V ) P(V ) as a semantics representing

the conclusion being proved by a given formal expression. So defying common

sense, we assign meaning to all proofs =

1

2

, = x

1

and even =

when is not an axiom of rst order logic, while attempting to redeem ourselves

by setting Val () = whenever a proof arises from a awed application

of a rule of inference or awed invocation of axiom.

In this section, we introduce the notion of totally clean proof to emphasize

the case when no such awed inference occurs. We shall use the phrase totally

clean rather than simply clean so as to reserve the latter for a weaker notion

of awlessness which we shall introduce in denition (337) when dealing with

proofs modulo. In this section, we shall also establish proposition (271) below

showing that any true sequent can always be proved in a totally clean

way. This gives us some degree of reassurance: although our universal algebra of

proofs (V ) is arguably too large and contains proofs which may be deemed to

be awed, every conclusion reached by such a awed proof is in fact provable in

the orthodox way. So it would be possible to reject (V ) and only consider its

subset of totally clean proofs, but this would not change the notion of provability

as introduced in denition (241). However, beyond our peace of mind there is

another good reason to introduce the notion of totally clean proof: given a map

: V W and a proof (V ), we shall soon want to substitute the variables

of as specied by the map , thereby dening a map : (V ) (W) which

we shall do in denition (272). This map may give us a tool to create new proofs

from old proofs, allowing us to show some provability statements which would

otherwise be out of reach. For example, suppose we want to prove ()

knowing that is true. One possible line of attack is to consider a proof

(V ) underlying the sequent and hope that () is in fact a proof with

240

conclusion (). So we need the following equation to hold:

Val () = Val () (3.5)

This equation is bound to play an important role. More generally, a transfor-

mation : (V ) (W) is interesting if we control the conclusion of () in

some way, given the conclusion of . Now consider the following proof:

= (x x)((y y) (z z))

Whenever x ,= y, this proof is not totally clean as it contains a awed application

of modus ponens. However, if (x) = (y) = u while (z) = v we obtain:

() = (u u)((u u) (v v))

This is a totally clean proof with conclusion v v. It should be clear from this

example that we cannot hope to prove properties such as (3.5) in full generality,

and must restrict our attention to the case of totally clean proofs. Too many

bizarre things may happen otherwise. It is very hard to carry out a sensible

analysis of proofs which are not totally clean. Hence the following:

Denition 264 Let V be a set. The map s : (V ) 2 = 0, 1 dened by the

following structural recursion is called the strength mapping on (V ):

(V ) , s() =

1 if = P(V )

1 if = , A(V )

0 if = , , A(V )

s(

1

) s(

2

) if =

1

2

s(

1

) if = x

1

(3.6)

where 2 = 0, 1 is dened by = 1 if and only if we have the equality:

Val (

2

) = Val (

1

) Val()

and 2 = 0, 1 is dened by = 1 if and only if x , Sp (

1

). We say that a

proof (V ) is totally clean if and only if it has full strength, i.e. s() = 1.

Proposition 265 The structural recursion of denition (264) is legitimate.

Proof

We need to show the existence and uniqueness of s : (V ) 2 satisfying the ve

conditions of equation (3.6). We shall do so using theorem (5) of page 47 with

X = (V ), X

0

= P(V ) and A = 2. Choosing the map g

0

: X

0

A dened by

g

0

() = 1 we ensure the rst condition is met. Next for every formula P(V )

we dene h() : A

0

X

0

A by setting h()(0, 0) = 1 if A(V ) and

h()(0, 0) = 0 otherwise. This ensures the second and third conditions are

met. Next we dene h() : A

2

X

2

A with the following formula:

h()(

1

,

2

,

1

,

2

) =

_

1

2

if Val(

2

) = Val (

1

) Val (

1

2

)

0 if Val(

2

) ,= Val (

1

) Val (

1

2

)

241

This takes care of the fourth condition. Finally we dene h(x) : A

1

X

1

A:

h(x)(

1

,

1

) =

_

1

if x , Sp (

1

)

0 if x Sp (

1

)

which ensures the fth condition is met and completes our proof.

A proof which relies on a awed sub-proof is itself awed. Hence a proof

cannot be totally clean unless every one of its sub-proofs is totally clean.

Proposition 266 Let V be a set and s : (V ) 2 be the strength mapping.

Then the strength of a sub-proof is higher than the strength of a proof, i.e.

_ s() s()

A proof (V ) is totally clean if and only if every _ is totally clean.

Proof

The implication is a simple application of proposition (47) to s : X A where

X = (V ) and A = 2 where the chosen preorder on A is the usual order

(reversed) on 0, 1. We simply need to check that given

1

,

2

(V )

and x V we have the inequalities s(

1

) s(

1

2

), s(

2

) s(

1

2

) and

s(

1

) s(x

1

) which follow immediately from the recursive denition (264).

It remains to check that (V ) is totally clean if and only if every one of its

sub-proofs is totally clean. Since is a sub-proof of itself, the if part is clear.

Conversely, let _ be a sub-proof of where is totally clean. Then s() = 1

and since s() s() we see that s() = 1. So the proof is also totally clean.

A proof arising from modus ponens is of the form =

1

2

. Such a proof

cannot be totally clean unless the use of modus ponens is legitimate, i.e. the

conclusion of

2

is of the form Val(

2

) = Val (

1

) Val(). Of course we also

need both

1

and

2

to be totally clean. These conditions are in turn sucient.

The following proposition is useful to carry out structural induction arguments.

Proposition 267 Let V be a set and be a proof of the form =

1

2

.

Then is totally clean if and only if both

1

,

2

are totally clean and:

Val (

2

) = Val (

1

) Val()

Proof

First we show the only if part: so we assume that =

1

2

is totally clean.

Then s() = 1 and from denition (264) we obtain s(

1

) s(

2

) = 1. It

follows that s(

1

) = s(

2

) = = 1. So

1

and

2

are totally clean and from

= 1 and denition (264) we conclude that Val (

2

) = Val (

1

) Val (). We

now prove the if part: so we assume that =

1

2

where

1

,

2

are totally

clean and Val (

2

) = Val(

1

) Val(). Then from denition (264):

s() = s(

1

) s(

2

) = 1 1 1 = 1

242

It follows that is itself a totally clean proof, as requested.

A proof arising from generalization is of the form = x

1

. Such a proof

cannot be totally clean unless the use of generalization is legitimate, that is

x , Sp (

1

). We also need

1

to be totally clean, and these conditions are in

turn sucient. The following proposition is also useful for structural induction.

Proposition 268 Let V be a set and be a proof of the form = x

1

. Then

is totally clean if and only if

1

is totally clean and x , Sp (

1

).

Proof

First we show the only if part: so we assume that = x

1

is totally clean.

Then s() = 1 and from denition (264) we obtain s(

1

) = 1. It follows

that s(

1

) = = 1. So

1

is totally clean and furthermore from = 1 and

denition (264) we conclude that x , Sp (

1

). We now prove the if part: so we

assume that = x

1

, where

1

is totally clean and x , Sp (

1

). Then from

denition (264) s() = s(

1

) = 1 1 = 1. So is itself totally clean.

We decided to dene a totally clean proof in terms of strength s : (V ) 2

as per denition (264). This was not the only way to go about it. A totally clean

proof is one which is not awed. This means that every axiom invocation or

use of modus ponens or generalization is legitimate. The following proposition

conrms that a totally clean proof can be dened as one without awed steps:

Proposition 269 Let V be a set. Then (V ) is totally clean if and only

if for all

1

,

2

(V ), P(V ) and x V , we have the following:

(i) _ A(V )

(ii)

1

2

_ Val(

2

) = Val (

1

) Val (

1

2

)

(iii) x

1

_ x , Sp (

1

)

Proof

First we show the only if part: so we assume that (V ) is totally clean.

We need to show that (i), (ii) and (iii) hold. First we show (i) : so we as-

sume that _ is a sub-proof of of the form = for some P(V ).

We need to show that A(V ), i.e. that is an axiom. Having assumed

that is totally clean, from proposition (266) the proof = is also totally

clean. So A(V ) follows immediately from denition (264). Next we show

(ii) : so we assume that _ is a sub-proof of of the form =

1

2

. We

need to show that Val (

2

) = Val (

1

) Val(). Having assumed that is

totally clean, from proposition (266) the proof is also totally clean. However,

is of the form =

1

2

and it follows from proposition (267) that we have

Val(

2

) = Val (

1

) Val() as requested. We now show (iii) : so we assume

that _ is a sub-proof of of the form = x

1

. We need to show that

x , Sp (

1

). Having assumed that is totally clean, from proposition (266)

the proof is also totally clean. However, is of the form = x

1

and it

243

follows from proposition (268) that x , Sp (

1

) as requested. We now show

this if part: we need to prove that every (V ) satises the property

(i) + (ii) + (iii) ( is totally clean). We shall do so with a structural in-

duction argument, using theorem (3) of page 32. So rst we assume that =

for some P(V ). From denition (264) we obtain s() = 1. So is always

totally clean and the property is satised. Next we assume that = where

P(V ). We need to show satises our property. So we assume that (i), (ii)

and (iii) hold. We need to show that is totally clean. However, since is a

sub-proof of itself we have _ and using (i) we obtain A(V ). It follows

from denition (264) that s() = s() = 1 and we conclude that is totally

clean as requested. Next we assume that =

1

2

where

1

,

2

(V )

satisfy our induction property. We need to show the same is true of . So we

assume that (i), (ii) and (iii) hold for . We need to show that is totally

clean. Using proposition (267), it is sucient to prove that both

1

and

2

are

totally clean and furthermore that Val (

2

) = Val (

1

) Val(). This last

equality is an immediate consequence of condition (ii) and the fact that is a

sub-proof of itself i.e. =

1

2

_ . So it remains to show that

1

and

2

are

totally clean. Having assumed that

1

and

2

satisfy our induction property,

it is therefore sucient to prove that (i), (ii) and (iii) are satised by

1

and

2

. First we show that (i) is satised by

1

: so we assume that _

1

is a

sub-proof of

1

of the form = . We need to show that A(V ). However,

having assumed that (i) holds for =

1

2

, it is sucient to prove that _

which follows immediately from _

1

and

1

_ . We prove similarly that

(i) holds for

2

. Next we show that (ii) is satised by

1

: so we assume that

_

1

is a sub-proof of

1

of the form =

1

2

. We need to show that

Val(

2

) = Val(

1

) Val (). However, having assumed that (ii) holds for

=

1

2

, it is sucient to prove that _ which follows immediately from

_

1

and

1

_ . We prove similarly that (ii) holds for

2

and we now show

that (iii) holds for

1

: so we assume that _

1

is a sub-proof of

1

of the

form = x

1

. We need to show that x , Sp (

1

). However, having assumed

that (iii) holds for =

1

2

, it is sucient to prove that _ which again

follows from _

1

and

1

_ . We prove similarly that (iii) holds for

2

which

completes our induction argument in the case when =

1

2

. So we nally

assume that = x

1

where x V and

1

(V ) satises our induction

property. We need to show the same is true of . So we assume that (i), (ii)

and (iii) hold for . We need to show that is totally clean. Using proposi-

tion (268), it is sucient to prove that

1

is totally clean and furthermore that

x , Sp (

1

). This last property is an immediate consequence of condition (iii)

and the fact that is a sub-proof of itself i.e. = x

1

_ . So it remains to

show that

1

is totally clean. Having assumed that

1

satises our induction

property, it is therefore sucient to prove that (i), (ii) and (iii) hold for

1

.

First we show that (i) is true: so we assume that _

1

is a sub-proof of

1

of

the form = . We need to show that A(V ). However, having assumed

that (i) holds for = x

1

, it is sucient to prove that _ which follows

immediately from _

1

and

1

_ . Next we show that (ii) is true: so we

assume that _

1

is a sub-proof of

1

of the form =

1

2

. We need to

244

show that Val (

2

) = Val (

1

) Val(). However, having assumed that (ii)

holds for = x

1

, it is sucient to prove that _ which follows imme-

diately from _

1

and

1

_ . We now show that (iii) is satised: so we

assume that _

1

is a sub-proof of

1

of the form = u

1

. We need to

show that u , Sp (

1

). However, having assumed that (iii) holds for = x

1

,

it is sucient to prove that _ which again follows from _

1

and

1

_ .

As we shall see in proposition (271) below, any true sequent can be

established with a totally clean proof. The key to the argument is that any

awed step _ of a proof with conclusion Val() = can be discarded

and replaced by a totally clean fragment as the following lemma shows:

Lemma 270 Let V be a set. There exists a totally clean proof (V ) with:

( Hyp () = ) ( Val() = )

Proof

Consider the formulas

1

= (( ) ) and

2

=

1

( ).

Let us accept for now that both

1

and

2

are axioms and dene =

1

2

.

It is clear that Hyp() = and furthermore we have the equality:

Val() = Val(

1

2

)

def. (239) = M( Val(

1

), Val (

2

) )

1

,

2

A(V ) = M(

1

,

2

)

= M(

1

,

1

( ) )

=

So it remains to show that is totally clean. However, from denition (264)

both

1

and

2

are totally clean and it follows from proposition (267) and:

Val(

2

) = Val (

1

) Val()

that is also totally clean. It remains to check that both

1

and

2

are indeed

axioms of rst order logic. However, we have

1

= ((

1

) )

1

where

1

= . So

1

is a transposition axiom as per denition (228). Likewise,

we have

2

= ((

2

) )

2

where

2

= and

2

is an axiom.

We can now prove the main result of this section: there is no loss of generality

in assuming that a true sequent has an underlying proof which is totally

clean. This shows that dening our syntactic entailment solely in terms of totally

clean proofs would have made no dierence to the nal notion of provability.

However, not working on the free universal algebra of proofs (V ) would have

made formal developments considerably more cumbersome.

Proposition 271 Let V be a set and P(V ). Let P(V ) be such that

the sequent is true. Then there exists a totally clean proof of from .

245

Proof

In order to establish this proposition, we shall rst prove it is sucient to show

that every proof (V ) has a totally clean counterpart, namely that:

(V ) , (

) = Val () ) ( Hyp (

) Hyp () )

In other words, for every proof (V ), there exists a totally clean proof

with the same conclusion as , and fewer hypothesis. So let us assume this is

the case for now. We need to show the proposition is true. So let P(V )

and P(V ) such that . Then there exists a proof of from ,

i.e. (V ) such that Val () = and Hyp() . Taking a totally

clean counterpart of , we obtain a totally clean proof

(V ) such that

Val(

is a totally clean

proof of from as requested. So we need to show that every proof (V )

has a totally clean counterpart. We shall do so by structural induction, using

theorem (3) of page 32. First we assume that = for some P(V ). Then

is totally clean and there is nothing else to prove. So we now assume that

= for some P(V ). We shall distinguish two cases: rst we assume

that A(V ). Then is totally clean and we are done. We now assume that

, A(V ). Then Val () = . Using lemma (270) there exists a totally

clean proof

) = and Val(

) = . It follows

that Hyp (

clean counterpart of . Next we assume that =

1

2

where

1

,

2

(V )

are proofs with totally clean counterparts. We need to show that also has a

totally clean counterpart. So let

1

and

2

be totally clean counterparts of

1

and

2

respectively. We shall distinguish two cases. First we assume that:

Val (

2

) = Val (

1

) Val (

2

) (3.7)

Then dening

2

, since

1

and

2

are totally clean it follows from

proposition (267) that

Hyp (

) = Hyp (

2

)

= Hyp (

1

) Hyp (

2

)

Hyp (

1

) Hyp (

2

)

= Hyp (

1

2

)

= Hyp ()

and:

Val (

) = Val (

2

)

def. (239) = M( Val (

1

), Val (

2

) )

Val (

i

) = Val(

i

) = M( Val (

1

), Val (

2

) )

= Val (

1

2

)

= Val ()

246

So we have found a totally clean counterpart

of as requested. Next we

assume that equation (3.7) does not hold. Then Val(

2

) = Val (

1

)

is false for all P(V ). It follows that Val (

2

) = Val (

1

) is also

false for all and consequently from denition (239) Val () = . Using

lemma (270) there exists a totally clean proof

) =

and Val(

Val(

we assume that = x

1

where x V and

1

(V ) is a proof which has

a totally clean counterpart. We need to show that also has a totally clean

counterpart. So let

1

be a totally clean counterpart of

1

. We shall distinguish

two cases: rst we assume that x , Sp (

1

). Since Hyp (

1

) Hyp (

1

) we have

Sp (

1

) Sp (

1

) and consequently x , Sp (

1

). Hence, dening

= x

1

,

since

1

is totally clean it follows from proposition (268) that

is itself totally

clean. Furthermore we have the following inclusion:

Hyp(

) = Hyp (

1

) Hyp (

1

) = Hyp()

and the equalities:

Val (

) = Val (x

1

)

x , Sp (

1

) = xVal (

1

)

= xVal (

1

)

x , Sp (

1

) = Val (x

1

)

= Val ()

So we have found a totally clean counterpart

of as requested. Next we

assume that x Sp (

1

). Then from denition (239) we have Val () = ,

and using lemma (270) we see once again that has a totally clean counterpart.

In denition (53) we introduced the substitution : P(V ) P(W) associated

with a map : V W. This substitution is crude in the sense that it is

generally not capture-avoiding. In other words, given a formula P(V ), the

substitution is generally not valid for , as per denition (83). However, the

introduction of the minimal transform of denition (137) allowed us to build on

this elementary substitution and derive a new type of variable substitution map-

ping : P(V ) P(W), the so-called essential substitutions of denition (165).

Essential substitutions are capture-avoiding and their existence is guaranteed

by theorem (18) with a mere cardinality assumption on V and W. A notable

application of essential substitutions is our ability to put forward an axiomati-

zation of rst order logic where the specialization axioms of denition (230), i.e.

x

1

1

[y/x] are stated without the usual caveat of y being free for x in

1

.

247

What was done for formulas can be done for proofs. Given a map : V W

and a proof (V ), it is meaningful to ask which proof () (W) can be

derived by systematically substituting variables in according to the map .

As in the case of formulas, we cannot expect miracles from this as the transfor-

mation will most likely be too crude in general. However, this may be a good

starting point which is certainly worth investigating. There are many reasons

for us to attempt building substitutions on proofs which are associated in some

way with a map : V W. Any : (V ) (W) can be viewed as a tool

to create new proofs. This tool may prove invaluable when attempting to show

that a proof exists. Godels completeness theorem is a case when the existence of

a proof has to be established. Many common arguments in mathematical logic

involve language extensions which can be viewed as embeddings. It is usually

implicit in the argument that what is provable (or inconsistent) in one space,

remains provable in the other. As we do not wish to take anything for granted,

this is one reason for us to look into substitution of variables in proofs. Another

reason is to establish some form of structurality condition for our consequence

relation . This condition is stated in [6] and [50] as () ().

However, at this point of the document it is not clear to us what type of substi-

tution would allow the structurality condition to hold in the context of rst

order logic with terms. Our hope is that essential substitutions will work, and

indeed they will as theorem (30) of page 396 will show. The work leading up

to this important theorem requires a new tool, namely the ability to consider

variable substitutions in proofs. With this in mind, we dene:

Denition 272 Let V , W be sets and : V W be a map. We call proof

substitution associated with , the map

(V ) ,

() =

() if = P(V )

() if =

(

1

)

(

2

) if =

1

2

(x)

(

1

) if = x

1

(3.8)

where : P(V ) P(W) also denotes the associated substitution mapping.

Given a map : V W and P(V ) the notation () is potentially

ambiguous. Since P(V ) (V ), it may refer to the proof of denition (272) or

to the formula of denition (53). Luckily, the two notions coincide.

Proposition 273 The structural recursion of denition (272) is legitimate.

Proof

We need to prove the existence and uniqueness of the map

: (V ) (W)

satisfying the four conditions of equation (3.8). We shall do so using theorem (4)

of page 45 applied to the free universal algebra X = (V ) with X

0

= P(V ) and

A = (W). First we dene g

0

: X

0

A by g

0

() = () which ensures the rst

condition is met. Next, given a formula P(V ) we dene h() : A

0

A by

setting h()(0) = () which ensures the second condition is met. Next we

dene h() : A

2

A by setting h()(

1

,

2

) =

1

2

which ensures the third

248

condition is met. Finally, given x V we dene h(x) : A

1

A by setting

h(x)(

1

) = (x)

1

. This guarantees our fourth condition is met.

Given : V W, the associated proof substitution

: (V ) (W) is

denoted

and revert to the simple notation : (V ) (W) just as we have done with

: P(V ) P(W). This proposition should be compared with proposition (55).

Once we know that ( )

Proposition 274 Let U, V , W be sets. Let : U V and : V W be

maps. Let

: (U) (V ) and

tions associated with and respectively. Then we have the equality:

( )

where ( )

Proof

We need to show that ( )

() =

with a structural induction argument, using theorem (3) of page 32. First we

assume that = for some P(U). Then we have the equalities:

( )

() = ( )

()

= ()

=

(())

=

()

Next we assume that = for some P(U). Then we have:

( )

() = ( )

()

= ( ())

=

(())

=

()

=

()

Next we assume that =

1

2

where

1

,

2

(U) satisfy our property:

( )

() = ( )

(

1

2

)

= ( )

(

1

)( )

(

2

)

=

(

1

)

(

2

)

=

(

1

)

(

2

) )

=

(

1

2

)

=

()

249

Finally, we assume that = x

1

where x U and

1

satises our property:

( )

() = ( )

(x

1

)

= (x) ( )

(

1

)

= (x)

(

1

)

=

( (x)

(

1

) )

=

(x

1

)

=

()

As in the case of proposition (56), the following spells out the obvious:

Proposition 275 Let V be a set and i : V V be the identity mapping. Then,

the associated proof substitution mapping i : (V ) (V ) is also the identity.

Proof

We need to show that i() = for all (V ). We shall do so with a struc-

tural induction argument using theorem (3) of page 32. First we assume that

= for some P(V ). Then i() = i() and using proposition (56) it

follows that i() = = . Next we assume that = for some P(V ).

Then we have i() = i() = = . Next we assume that =

1

2

in

which case we obtain i() = i(

1

)i(

2

) =

1

2

= . Finally we assume that

= x

1

which yields i() = i(x)i(

1

) = x

1

= .

The map : (V ) (W) is a structural substitution as per deni-

tion (49). This allows us to claim that Sub (()) = (Sub ()). Hence:

_ () _ ()

In other words, if is a sub-proof of then () is a sub-proof of (). We

also have the converse: any sub-proof of () is of the form () where is a

sub-proof of . The following proposition is the analogue of proposition (57).

Proposition 276 Let V, W be sets and : V W be a map. The associated

proof substitution : (V ) (W) is structural and for all (V ) :

Sub (()) = (Sub ())

Proof

By virtue of proposition (50) it is sucient to prove that : (V ) (W)

is a structural substitution as per denition (49). Let (V ) and (W) denote

the Hilbert deductive proof types associated with V and W respectively as per

denition (233). Let q : (V ) (W) be the map dened by:

f (V ) , q(f) =

() if f =

if f =

(x) if f = x

250

Then q is clearly arity preserving. In order to show that is a structural sub-

stitution, we simply need to check that properties (i) and (ii) of denition (49)

are met. First we start with property (i): so let = for some P(V ). We

need to show that () P(W) which follows immediately from () = ().

So we now show property (ii): given f (V ), given (V )

(f)

we need

to show that (f()) = q(f)(()). First we assume that f = for some

P(V ). Then (f) = 0, = 0 and consequently we have:

(f()) = ((0))

(0) denoted = ()

def. (272) = ()

()(0) denoted () = ()(0)

: 0 0 = q()((0))

= q(f)(())

Next we assume that f = . Then (f) = 2 and given = (

0

,

1

) :

(f()) = (

0

1

)

def. (272) = (

0

)(

1

)

: (V )

2

(W)

2

= q()((

0

,

1

))

= q(f)(())

Finally we assume that f = x, x V . Then (f) = 1 and given = (

0

) :

(f()) = (x

0

)

def. (272) = (x)(

0

)

: (V )

1

(W)

1

= q(x)((

0

))

= q(f)(())

Proposition 277 Let V and W be sets and : V W be a map. Let be an

arbitrary congruence on (W) and let be the relation on (V ) dened by:

() ()

for all , (V ). Then is a congruence on (V ).

Proof

Since the congruence on (W) is an equivalence relation, is clearly reexive,

symmetric and transitive on (V ). So we simply need to show that is a

congruent relation on (V ). Since is reexive, we have () () for

all P(V ), and so . Suppose

1

,

2

,

1

and

2

(V ) are such that

251

1

1

and

2

2

. Dene =

1

2

and =

1

2

. We need to show

that , or equivalently that () (). This follows from the fact that

(

1

) (

1

), (

2

) (

2

) and furthermore:

() = (

1

2

)

= (

1

)(

2

)

(

1

)(

2

)

= (

1

2

)

= ()

where the intermediate crucially depends on being a congruent relation

on (W). We now suppose that

1

,

1

(V ) are such that

1

1

. Let

x V and dene = x

1

and = x

1

. We need to show that , or

equivalently that () (). This follows from (

1

) (

1

) and:

() = (x

1

)

= (x) (

1

)

(x)(

1

)

= (x

1

)

= ()

where the intermediate crucially depends on being a congruent relation.

3.2.3 Hypothesis of a Proof

Given a proof (V ), the set of hypothesis Hyp () was dened in an earlier

section as per denition (236). At the time, a simple denition was enough

so we could dene the set of specic variables Sp () which in turn allowed us

to speak of the valuation mapping Val : (V ) P(V ) and correspondingly

establish the notion of provability and sequent , as per denition (241). It

is now time to be a little bit more thorough and state some of the elementary

properties satised by the set of hypothesis Hyp(). We start with the fact that

Hyp() is simply the set of formulas P(V ) which are sub-proofs of :

Proposition 278 Let V be a set and (V ). Then for all P(V ):

Hyp () _

In other words, is a hypothesis of if and only if is a sub-proof of .

Proof

We need to show the equality Hyp() = Sub() P(V ). We shall do so with a

structural induction argument using theorem (3) of page 32. First we assume

that = for some P(V ). Then we have Hyp() = and from deni-

tion (40) Sub () = . So the equality is clear. Next we assume that =

252

for some P(V ). Then Hyp () = while Sub() = . Using theorem (2)

of page 21 we obtain Sub () P(V ) = . So the equality is true. Next we

assume that =

1

2

where

1

,

2

(V ) satisfy the equality. Then:

Hyp() = Hyp (

1

2

)

= Hyp (

1

) Hyp(

2

)

= (Sub (

1

) P(V )) (Sub (

2

) P(V ))

= ( Sub (

1

) Sub (

2

) ) P(V )

theorem (2) of p. 21 = (

1

2

Sub (

1

) Sub (

2

) ) P(V )

= Sub (

1

2

) P(V )

= Sub () P(V )

Finally we assume that = x

1

where x V and

1

satises the equality:

Hyp() = Hyp (x

1

)

= Hyp (

1

)

= Sub (

1

) P(V )

theorem (2) of p. 21 = ( x

1

Sub(

1

) ) P(V )

= Sub (x

1

) P(V )

= Sub () P(V )

(V ) is increasing with respect to the inclusion partial order on T(P(V )).

Proposition 279 Let V be a set and , (V ). Then we have:

_ Hyp () Hyp()

Proof

This follows from an application of proposition (47) to Hyp : X A where

X = (V ) and A = T(P(V )) where the preorder on A is the usual in-

clusion . We simply need to check that given

1

,

2

(V ) and x V

we have the inclusions Hyp (

1

) Hyp (

1

2

), Hyp (

2

) Hyp (

1

2

) and

Hyp(

1

) Hyp (x

1

) which follow from the recursive denition (236).

Given a map : V W and a proof (V ), the hypothesis of the

proof () are the images by : P(V ) P(W) of the hypothesis of . Note

that the symbol is overloaded and refers to three possible maps: apart from

: V W, there is : (V ) (W) when referring to (). There is also

: P(V ) P(W) whose restriction to Hyp () has a range denoted (Hyp ()).

253

Proposition 280 Let V, W be sets and : V W be a map. Let (V ) :

Hyp (()) = (Hyp ())

where : (V ) (W) also denotes the proof substitution mapping.

Proof

We shall proof this equality with an induction argument, using theorem (3) of

page 32. First we assume that = for some P(V ). Then we have:

Hyp(()) = Hyp (())

def. (236) = ()

= ()

= (Hyp ())

So we now assume that = for some P(V ). Then Hyp() = . However

from denition (272), () = () and we have Hyp(()) = . So the equality

Hyp(()) = (Hyp ()) holds. So we now assume that =

1

2

where

1

,

2

(V ) are proofs for which the equality is true. Then:

Hyp (()) = Hyp((

1

2

))

= Hyp( (

1

)(

2

) )

= Hyp((

1

)) Hyp((

2

))

= (Hyp (

1

)) (Hyp (

2

))

= ( Hyp (

1

) Hyp (

2

) )

= (Hyp (

1

2

))

= (Hyp ())

Finally, we assume that = x

1

where x V and

1

(V ) is a proof for

which the equality is true. We need to show the same is true of :

Hyp (()) = Hyp ((x

1

))

= Hyp ( (x)(

1

) )

= Hyp ((

1

))

= (Hyp (

1

))

= (Hyp (x

1

))

= (Hyp ())

In this section, we dene and establish elementary properties of the set Ax ()

representing the set of all axioms being invoked in a proof (V ). The set

254

Ax () is casually called the set of axioms of just like Hyp() is the set of

hypothesis of . An element of Ax () is casually called an axiom of . This

terminology is slightly unfortunate since an axiom of may not be an axiom at

all. For convenience, we allowed to be meaningful for all P(V ). So the

inclusion Ax () A(V ) does not hold in general, unless is totally clean.

Denition 281 Let V be a set. The map Ax : (V ) T(P(V )) dened by

the following structural recursion is called the axiom set mapping on (V ):

(V ) , Ax () =

if = P(V )

if =

Ax (

1

) Ax (

2

) if =

1

2

Ax (

1

) if = x

1

(3.9)

We say that P(V ) is an axiom of (V ) if and only if Ax ().

The recursive denition (281) is easily seen to be legitimate and furthermore

Ax () is a nite set, as a straightforward structural induction will show.

Proposition 282 Let V be a set and (V ). Then for all P(V ) :

Ax () _

In other words, is an axiom if and only if is a sub-proof of .

Proof

Consider the map : P(V ) (V ) dened by () = . We need to show:

Ax () =

1

(Sub ()) = P(V ) : () Sub()

We shall do so with an induction argument using theorem (3) of page 32. First

we assume that = for some P(V ). Then Ax () = while Sub () = .

Using theorem (2) of page 21 we obtain

1

(Sub ()) = . So the equality is true.

Next we assume that = for some P(V ). Then we have Ax () =

and from denition (40) Sub() = . Since from proposition (235) is an

injective map, we have

1

(Sub ()) = and the equality is true. Next we

assume that =

1

2

where

1

,

2

(V ) satisfy the equality:

Ax () = Ax (

1

2

)

= Ax (

1

) Ax (

2

)

=

1

(Sub (

1

))

1

(Sub (

2

))

=

1

( Sub (

1

) Sub (

2

) )

theorem (2) of p. 21 =

1

(

1

2

Sub (

1

) Sub (

2

) )

=

1

(Sub (

1

2

))

=

1

(Sub ())

255

Finally we assume that = x

1

where x V and

1

satises the equality:

Ax () = Ax (x

1

)

= Ax (

1

)

=

1

(Sub (

1

))

theorem (2) of p. 21 =

1

( x

1

Sub (

1

) )

=

1

(Sub (x

1

))

=

1

(Sub ())

The axioms of a totally clean proof are indeed axioms of rst order logic.

Proposition 283 Let V be a set and (V ). Then we have the implication:

( totally clean) Ax () A(V )

Proof

Let (V ) be totally clean. We need to show that Ax () A(V ). So let

Ax (). We need to show that A(V ). However from proposition (282)

we obtain _ . Since is totally clean, it follows from proposition (266)

that is also totally clean. From denition (264) we see that A(V ).

The map Ax : (V ) T(P(V )) dened on the free universal algebra (V )

is increasing with respect to the inclusion partial order on T(P(V )).

Proposition 284 Let V be a set and , (V ). Then we have:

_ Ax () Ax ()

Proof

This follows from an application of proposition (47) to Ax : X A where

X = (V ) and A = T(P(V )) where the preorder on A is the usual inclusion

. We simply need to check that given

1

,

2

(V ) and x V we have the

inclusions Ax (

1

) Ax (

1

2

), Ax (

2

) Ax (

1

2

) and Ax (

1

) Ax (x

1

)

which follow from the recursive denition (281).

Given a map : V W and a proof (V ), the axioms of the proof ()

are the images by : P(V ) P(W) of the axioms of . Note that the symbol

is overloaded and refers to three possible maps: apart from : V W, there

is : (V ) (W) when referring to (). There is also : P(V ) P(W)

whose restriction to Ax () has a range denoted (Ax ()). Hence we have:

Proposition 285 Let V, W be sets and : V W be a map. Let (V ) :

Ax (()) = (Ax ())

where : (V ) (W) also denotes the proof substitution mapping.

256

Proof

We shall prove this equality with an induction argument, using theorem (3) of

page 32. First we assume that = for some P(V ). Then () = ()

and consequently Ax (()) = . So the equality is clear. Next we assume that

= for some P(V ). Then we have the equalities:

Ax (()) = Ax (())

= Ax (())

= ()

= ()

= (Ax ())

= (Ax ())

Next we assume that =

1

2

where

1

,

2

(V ) are proofs for which the

equality is true. We need to show the same is true of :

Ax (()) = Ax ((

1

2

))

= Ax ( (

1

)(

2

) )

= Ax ((

1

)) Ax ((

2

))

= (Ax (

1

)) (Ax (

2

))

= ( Ax (

1

) Ax (

2

) )

= (Ax (

1

2

))

= (Ax ())

Finally, we assume that = x

1

where x V and

1

(V ) is a proof for

which the equality is true. We need to show the same is true of :

Ax (()) = Ax ((x

1

))

= Ax ( (x)(

1

) )

= Ax ((

1

))

= (Ax (

1

))

= (Ax (x

1

))

= (Ax ())

It feels somewhat articial to dene the set of variables Var() of a proof . All

variables involved are very dierent in nature and it seems very little benet can

be derived from aggregating them in one big set. Among these, there are the free

257

or bound variables coming from the set of hypothesis Hyp (), and those coming

from the set of axioms Ax (). There are also the variables involved in the use

of generalization. These ve groups of variables are not mutually exclusive,

unless when a proof is totally clean and no specic variable of Sp () can be

used for generalization. So why dene the set Var()? Experience has shown

us that given a formula P(V ), the set Var() was very useful in allowing

us to strengthen a few results on substitutions. If : V W is an injective

map, then many things can be said about : P(V ) P(W) or the formula

(). However, we usually do not need to know that is injective to derive our

conclusion. It is usually sucient to assume the injectivity of the restriction

|Var()

. This distinction is in fact crucial: given an injective map : V W,

we often need to consider a left-inverse of , namely a map : W V such

that (x) = x for all x V . Such a left-inverse is rarely injective, but

the restriction

|(V )

is an injective map. The set Var() together with Fr ()

and Bnd () were also crucial notions when dealing with valid substitutions and

minimal transforms. As we shall soon discover, the same sort of analysis can be

carried out for proofs, leading up to essential substitutions and their existence

in theorem (29) of page 383. So Var() is a useful notion and so is Var().

Denition 286 Let V be a set. The map Var : (V ) T(V ) dened by the

following structural recursion is called variable mapping on (V ):

(V ) , Var() =

Var() if = P(V )

Var() if =

Var(

1

) Var(

2

) if =

1

2

x Var(

1

) if = x

1

(3.10)

We say that x V is a variable of (V ) if and only if x Var().

Given a formula P(V ) the notation Var() is potentially ambiguous. Since

P(V ) (V ), it may refer to the usual Var() of denition (59), or to the set

Var() where = of denition (286). Luckily, the two notions coincide.

Proposition 287 The structural recursion of denition (286) is legitimate.

Proof

We need to show the existence and uniqueness of the map Var : (V ) T(V )

satisfying the four conditions of equation (3.10). This follows from an applica-

tion of theorem (4) of page 45 with X = (V ), X

0

= P(V ) and A = T(V ) where

g

0

: X

0

A is dened as g

0

() = Var(). Furthermore, given P(V ) we take

h() : A

0

A dened h()(0) = Var(). We take h() : A

2

A dened by

h()(A

0

, A

1

) = A

0

A

1

and h(x) : A

1

A dened by h(x)(A

0

) = xA

0

.

not attempted to design the right level of abstraction to avoid what may appear

as tedious repetition. The following is the counterpart of proposition (61) :

258

Proposition 288 Let V be a set and (V ). Then Var() is nite.

Proof

This follows from a structural induction argument using theorem (3) of page 32.

If = P(V ) then Var() = Var() is nite by virtue of proposition (61).

If = then Var() = Var() is also nite. If =

1

2

then we have

Var() = Var(

1

) Var(

2

) which is nite. Finally if = x

1

then we have

Var() = x Var(

1

) which is also nite if Var(

1

) is itself nite.

The map Var : (V ) T(V ) is increasing with respect to the standard

inclusion on T(V ). In other words, the variables of a sub-proof are also variables

of the proof itself. The following is the counterpart of proposition (62) :

Proposition 289 Let V be a set and , (V ). Then we have:

_ Var() Var()

Proof

This is a simple application of proposition (47) to Var : X A where X = (V )

and A = T(V ) where the preorder on A is the usual inclusion . We sim-

ply need to check that given

1

,

2

(V ) and x V we have the inclu-

sions Var(

1

) Var(

1

2

), Var(

2

) Var(

1

2

) and Var(

1

) Var(x

1

)

which follow immediately from the recursive denition (286).

Given a map : V W and (V ), the variables of the proof () are

the images by of the variables of . This is the counterpart of proposition (63) :

Proposition 290 Let V and W be sets and : V W be a map. Then:

(V ) , Var(()) = (Var())

where : (V ) (W) also denotes the associated proof substitution mapping.

Proof

Given (V ), we need to show that Var(()) = (Var()). We shall do

so by structural induction using theorem (3) of page 32. First we assume that

= for some P(V ). Then we have the equalities:

Var(()) = Var(())

prop. (63) = (Var())

= (Var())

Next we assume that = for some P(V ). Then we have:

Var(()) = Var(())

= Var(())

259

= Var(())

prop. (63) = (Var())

= (Var())

= (Var())

Next we check that the property is true for =

1

2

if it is true for

1

,

2

:

Var(()) = Var((

1

2

))

= Var((

1

)(

2

))

= Var((

1

)) Var((

2

))

= (Var(

1

)) (Var(

2

))

= ( Var(

1

) Var(

2

) )

= (Var(

1

2

))

= (Var())

Finally we check that the property is true for = x

1

if it is true for

1

:

Var(()) = Var((x

1

))

= Var( (x)(

1

) )

= (x) Var((

1

))

= (x) (Var(

1

))

= ( x Var(

1

) )

= (Var(x

1

))

= (Var())

coincide on Var(), which is pretty natural. What is less obvious is the fact that

the converse is also true. The following is the counterpart of proposition (64) :

Proposition 291 Let V and W be sets and , : V W be two maps. Then:

|Var()

=

|Var()

() = ()

for all (V ), where , : (V ) (W) are also the proof substitutions.

Proof

First we prove : We shall do so with an induction argument, using theo-

rem (3) of page 32. First we assume that = for some P(V ). Then we

260

have Var() = Var() so we assume that and coincide on Var(). Using

proposition (64) we obtain () = () which is () = (). Next we assume

that = for some P(V ). Then again we have Var() = Var() so we

assume that and coincide on Var(). Using proposition (64) once more we

obtain () = (). It follows that () = () = () = (). So we now

assume that =

1

2

where

1

,

2

(V ) satisfy our property. We need

to show the same is true of . So we assume that and coincide on Var().

We need to show that () = (). However since Var() = Var(

1

) Var(

2

)

we see that and coincide on Var(

1

) and Var(

2

), and it follows from our

induction hypothesis that (

1

) = (

1

) and (

2

) = (

2

). Hence:

() = (

1

2

)

= (

1

)(

2

)

= (

1

)(

2

)

= (

1

2

)

= ()

Finally, we assume that = x

1

where x V and

1

(V ) satises our

property. We need to show the same is true of . So we assume that and

coincide on Var(). We need to show that () = (). However since

Var() = x Var(

1

) we see that and coincide on Var(

1

), and it follows

from our induction hypothesis that (

1

) = (

1

). Hence:

() = (x

1

)

= (x)(

1

)

= (x)(

1

)

x Var() = (x)(

1

)

= (x

1

)

= ()

We now show : we shall do so with a structural induction argument, using

theorem (3) of page 32. First we assume that = for some P(V ). Then

from () = () we obtain () = () and from proposition (64) it follows

that and coincide on Var() = Var(). Next we assume that = for some

P(V ). Suppose () = (). Then () = () and consequently from

proposition (235) we have () = (). Using proposition (64) once more it fol-

lows that and coincide on Var() = Var(). We now assume that =

1

2

where

1

,

2

are proofs which satisfy our implication. We need to show the same

is true of . So we assume that () = (). We need to show that and

coincide on Var() = Var(

1

) Var(

2

). However, from () = () we obtain

(

1

)(

2

) = (

1

)(

2

) and consequently using theorem (2) of page 21

we have (

1

) = (

1

) and (

2

) = (

2

). Having assumed that

1

and

2

satisfy our implication, it follows that and coincide on Var(

1

) and also

on Var(

2

). So they coincide on Var() as requested. So we now assume that

= x

1

where x V and

1

(V ) is a proof which satises our implication.

261

We need to show the same is true of . So we assume that () = (). We

need to show that and coincide on Var() = x Var(

1

). However, from

() = () we obtain (x)(

1

) = (x)(

1

) and consequently using the-

orem (2) of page 21 we have (

1

) = (

1

) and (x) = (x). Having assumed

that

1

satises our implication, it follows that and coincide on Var(

1

).

Since (x) = (x), they also coincide on Var() = xVar(

1

) as requested.

Given a proof (V ), any variable which belongs to the conclusion

Val() of a sub-proof _ is of course a variable of . Note that the converse

is not true in general, unless is totally clean: if = and , A(V ) then

we have Val () = and any sub-proof of is itself. Hence we have

Var(Val ()) : _ = , while Var() = Var() may not be empty. We

shall deal with the case when is totally clean later in proposition (343).

Proposition 292 Let V be a set and (V ). Then we have:

Var(Val()) : _ Var() (3.11)

i.e. the variables of conclusions of sub-proofs of are variables of .

Proof

Using proposition (289) we have Var() Var() for all _ . It is therefore

sucient prove the inclusion Var(Val ()) Var() for all (V ) which we

shall do with a structural induction argument, using theorem (3) of page 32.

First we assume that = for some P(V ). Then the inclusion follows

immediately from Val () = . Next we assume that = for some P(V ).

The inclusion is clear in the case when Val () = . So we may assume

that Val () ,= in which case must be an axiom of rst order logic,

i.e. A(V ) and Val() = . The inclusion follows from Var() = Var().

So we now assume that =

1

2

where

1

,

2

(V ) are proofs satisfying

our inclusion. We need to show the same is true of . This is clearly the case if

Val() = . So we may assume Val () ,= in which case we must

have Val (

2

) = Val(

1

) Val (). Hence we see that:

Var(Val ()) Var(Val (

1

)) Var(Val())

= Var( Val (

1

) Val () )

= Var(Val (

2

))

Var(

2

)

Var(

1

) Var(

2

)

= Var(

1

2

)

= Var()

So we now assume that = x

1

where x V and

1

(V ) satises our

inclusion. We need to show the same is true of . This is clearly the case if

262

Val() = . So we may assume that Val () ,= in which case we

must have x , Sp (

1

) and Val () = xVal (

1

). Hence we see that:

Var(Val ()) = Var( xVal (

1

) )

= x Var(Val (

1

))

x Var(

1

)

= Var(x

1

)

= Var()

The notion of specic variable of a proof should now be natural to us . To every

proof is associated a set of hypothesis Hyp() and a set of axioms Ax ().

Every formula Hyp () has a set of free variables Fr (), and so has every

formula Ax (). In denition (237) we decided to call a specic variable

of only those variables which are free variables of some Hyp(). The

specic variables are those which are not general. This allowed us to conveniently

express the idea of legitimate use of generalization in x

1

, with the simple

formalism x , Sp (

1

). In this section, we provide a few elementary properties

of the set Sp (). We start with a structural denition of Sp () :

Proposition 293 Let V be a set. The specic variable map Sp : (V ) T(V )

of denition (237) satises the following structural recursion equation:

(V ) , Sp () =

Fr () if = P(V )

if =

Sp (

1

) Sp (

2

) if =

1

2

Sp (

1

) if = x

1

Proof

Using denition (237) we have Sp () = Fr () : Hyp(). In the

case when = for P(V ), since Hyp () = we obtain immediately

Sp () = Fr (). In the case when = for P(V ), since Hyp() = we

obtain Sp () = . When =

1

2

for some

1

,

2

(V ) we have:

Sp () = Sp (

1

2

)

= Fr () : Hyp(

1

2

)

= Fr () : Hyp(

1

) Hyp(

2

)

= ( Fr () : Hyp (

1

) Fr() : Hyp(

2

) )

= (Fr () : Hyp(

1

)) (Fr () : Hyp (

2

))

= Sp (

1

) Sp (

2

)

263

Finally if = x

1

for some x V and

1

(V ) we obtain:

Sp () = Sp (x

1

)

= Fr() : Hyp(x

1

)

= Fr() : Hyp(

1

)

= Sp (

1

)

T(V ). So the specic variables of a sub-proof are specic variables of the proof.

Proposition 294 Let V be a set and , (V ). Then we have:

_ Sp () Sp ()

Proof

Suppose _ is a sub-proof of (V ). Then we have:

Sp () = Fr (Hyp ())

= Fr () : Hyp ()

prop. (279) Fr () : Hyp ()

= Fr (Hyp ())

= Sp ()

whose specic variables are always images of specic variables of by .

Proposition 295 Let V, W be sets and : V W be a map. Let (V ) :

Sp (()) (Sp ())

where : (V ) (W) also denotes the proof substitution mapping.

Proof

There is no induction required in this case. Using denition (237) we have:

Sp (()) = Fr ( Hyp(()) )

prop. (280) = Fr ( (Hyp ()) )

= Fr() : (Hyp ())

= Fr(()) : Hyp ()

prop. (74) (Fr ()) : Hyp ()

= ( Fr () : Hyp() )

= ( Fr (Hyp ()) )

= (Sp ())

264

Proposition 296 Let V be a set and (V ). Then we have:

Sp () Var()

Proof

There is no induction required in this case. The proof goes as follows:

Sp () = Fr () : Hyp ()

prop. (80) Var() : Hyp ()

Val() = = Var(Val ()) : Hyp ()

prop. (278) Var(Val ()) : _

prop. (292) Var()

In this section we dene and study the set of free variables Fr () of a proof

(V ). The notion of free variables is crucial when attempting to formalize

the idea of variable substitutions which avoid capture. Free variables also play

a key role when considering minimal transforms which are in turn a key step

in constructing essential substitutions. Essential substitutions for proofs will be

shown to exist in theorem (29) of page 383. Given a proof (V ), the free

variables of are simply the free variables of the hypothesis and axioms of ,

with the exception of generalization variables which are removed from Fr ():

Denition 297 Let V be a set. The map Fr : (V ) T(V ) dened by the

following structural recursion is called free variable mapping on (V ):

(V ) , Fr () =

Fr () if = P(V )

Fr () if =

Fr (

1

) Fr (

2

) if =

1

2

Fr (

1

) x if = x

1

(3.12)

We say that x V is a free variable of (V ) if and only if x Fr ().

Given a formula P(V ) the notation Fr () is potentially ambiguous. Since

P(V ) (V ), it may refer to the usual Fr () of denition (72), or to the set

Fr () where = of denition (297). Luckily, the two notions coincide.

Proposition 298 The structural recursion of denition (297) is legitimate.

265

Proof

We need to show the existence and uniqueness of the map Fr : (V ) T(V )

satisfying the four conditions of equation (3.12). This follows from an applica-

tion of theorem (4) of page 45 with X = (V ), X

0

= P(V ) and A = T(V ) where

g

0

: X

0

A is dened as g

0

() = Fr (). Furthermore, given P(V ) we take

h() : A

0

A dened h()(0) = Fr (). We take h() : A

2

A dened by

h()(A

0

, A

1

) = A

0

A

1

and h(x) : A

1

A dened by h(x)(A

0

) = A

0

x.

(V ) the free variables of the proof () must be images of free variables

of by . The following proposition is the counterpart of proposition (74) :

Proposition 299 Let V , W be sets and : V W be a map. Let (V ) :

Fr (()) (Fr ())

where : (V ) (W) also denotes the associated proof substitution mapping.

Proof

We shall prove the inclusion with a structural induction, using theorem (3) of

page 32. First we assume that = for some P(V ). Then we need to show

that Fr (()) (Fr ()) which follows immediately from proposition (74).

We now assume that = for some P(V ). Then we have:

Fr (()) = Fr (())

= Fr (())

= Fr (())

prop. (74) (Fr ())

= (Fr ())

= (Fr ())

We now assume that =

1

2

where

1

,

2

(V ) are proofs which satisfy

our inclusion. We need to show the same is true of which goes as follows:

Fr (()) = Fr ((

1

2

))

= Fr ((

1

)(

2

))

= Fr ((

1

)) Fr ((

2

))

(Fr (

1

)) (Fr (

2

))

= ( Fr (

1

) Fr (

2

) )

= (Fr (

1

2

))

= (Fr ())

266

Finally, we assume that = x

1

where x V and

1

(V ) is a proof

satisfying our inclusion. We need to show the same is true of :

Fr (()) = Fr ((x

1

))

= Fr ( (x)(

1

) )

= Fr ((

1

)) (x)

(Fr (

1

)) (x)

= ( Fr (

1

) x ) (x)

( Fr (

1

) x )

= (Fr (x

1

))

= (Fr ())

generalization is not permitted. So if a proof is totally clean, it contains no

awed attempt at generalization and the specic variables remain free variables:

Proposition 300 Let V be a set and (V ) be totally clean. Then we have:

Sp () Fr ()

In other words, the specic variables of are also free variables of .

Proof

For every proof (V ) we need to show the following implication:

( totally clean) Sp () Fr ()

We shall do so with a structural induction, using theorem (3) of page 32. First

we assume that = for some P(V ). Then is always totally clean

in this case and we have Sp () = Fr (Hyp ()) = Fr () = Fr (). We now

assume that = for some P(V ). Then Sp () = and the implication

is clearly true. So we now assume that =

1

2

where

1

,

2

(V ) are

proofs satisfying our implication. We need to show the same is true of . So we

assume that is totally clean. We need to show the inclusion Sp () Fr ().

However, from proposition (267) both

1

and

2

are totally clean. Hence:

Sp () = Sp (

1

2

)

prop. (293) = Sp (

1

) Sp (

2

)

1

,

2

totally clean Fr (

1

) Fr (

2

)

= Fr (

1

2

)

= Fr ()

267

Note that the equality Val (

2

) = Val (

1

) Val () which follows from

being totally clean, has not been used in the argument. We now assume that

= x

1

where x V and

1

(V ) is a proof satisfying our implication.

We need to show the same is true for . So we assume that is totally clean.

We need to show the inclusion Sp () Fr (). However, from proposition (268)

we see that

1

is totally clean and x , Sp (

1

). Hence, we have:

Sp () = Sp (x

1

)

prop. (293) = Sp (

1

)

x , Sp (

1

) = Sp (

1

) x

1

totally clean Fr (

1

) x

= Fr (x

1

)

= Fr ()

In particular, we shall introduce the substitution congruence on (V ) as per

denition (362). Whenever is a congruence on (V ) we may wish to prove

the implication Fr () = Fr (). One of the key steps in the proof is

to argue that equality between sets of free variables is itself a congruence:

Proposition 301 Let V be a set and be the relation on (V ) dened by:

Fr () = Fr ()

for all , (V ). Then is a congruence on (V ).

Proof

The relation is clearly reexive, symmetric and transitive on (V ). So we

simply need to show that is a congruent relation on (V ). By reexivity, we

already have for all P(V ). So suppose

1

,

2

,

1

and

2

(V )

are such that

1

1

and

2

2

. Dene =

1

2

and =

1

2

. We need

to show that , or equivalently that Fr () = Fr (). This follows from the

fact that Fr (

1

) = Fr (

1

), Fr (

2

) = Fr (

2

) and furthermore:

Fr () = Fr (

1

2

)

= Fr (

1

) Fr (

2

)

= Fr (

1

) Fr (

2

)

= Fr (

1

2

)

= Fr ()

We now assume that

1

,

1

(V ) are such that

1

1

. Let x V and

dene = x

1

and = x

1

. We need to show that , or equivalently

268

that Fr () = Fr (). This follows from the fact that Fr (

1

) = Fr (

1

) and:

Fr () = Fr (x

1

) = Fr (

1

) x = Fr (

1

) x = Fr (x

1

) = Fr ()

In this section we dene and study the set Bnd () of bound variables of a

proof (V ). The notion of bound variables has proved particularly useful

when dealing with the local inversion theorem (10) of page 107 for formulas.

A counterpart of this theorem for proofs will be established as theorem (25) of

page 353. The set of bound variables is also important in giving us a useful test

for valid substitutions in the form of proposition (93) for which a counterpart

shall be established for proofs as proposition (320). The bound variables of a

proof are simply the bound variables of the hypothesis and axioms of , to

which is added every variable occurring in the use of generalization.

Denition 302 Let V be a set. The map Bnd : (V ) T(V ) dened by the

following structural recursion is called bound variable mapping on (V ):

(V ) , Bnd () =

Bnd() if = P(V )

Bnd() if =

Bnd(

1

) Bnd(

2

) if =

1

2

x Bnd (

1

) if = x

1

(3.13)

We say that x V is a bound variable of (V ) if and only if x Bnd ().

Given a formula P(V ) the notation Bnd () is potentially ambiguous. Since

P(V ) (V ), it may refer to the usual Bnd () of denition (78), or to the set

Bnd() where = of denition (302). Luckily, the two notions coincide.

Proposition 303 The structural recursion of denition (302) is legitimate.

Proof

We need to show the existence and uniqueness of the map Bnd : (V ) T(V )

satisfying the four conditions of equation (3.13). This follows from an applica-

tion of theorem (4) of page 45 with X = (V ), X

0

= P(V ) and A = T(V ) where

g

0

: X

0

A is dened as g

0

() = Bnd(). Furthermore, given P(V ) we take

h() : A

0

A dened h()(0) = Bnd(). We take h() : A

2

A dened by

h()(A

0

, A

1

) = A

0

A

1

and h(x) : A

1

A dened by h(x)(A

0

) = xA

0

.

would expect. In fact, every variable of is either free or bound, or both free

and bound. The following proposition is the counterpart of proposition (80) :

269

Proposition 304 Let V be a set and (V ). Then we have:

Var() = Fr () Bnd () (3.14)

Proof

We shall prove the equality with a structural induction, using theorem (3) of

page 32. First we assume that = for some P(V ). Then the equality

follows immediately from proposition (80). We now assume that = for

some P(V ). Then using proposition (80) once more, we have:

Var() = Var()

= Var()

prop. (80) = Fr () Bnd ()

= Fr () Bnd()

= Fr () Bnd()

So we now assume that =

1

2

where

1

,

2

(V ) are proofs satisfying

the equality. We need to show that same is true of which goes as follows:

Var() = Var(

1

2

)

= Var(

1

) Var(

2

)

= Fr (

1

) Bnd (

1

) Fr (

2

) Bnd(

2

)

= Fr (

1

2

) Bnd (

1

2

)

= Fr () Bnd()

We now assume that = x

1

where x V and

1

(V ) is a proof satisfying

our equality. We need to show the same is true of which goes as follows:

Var() = Var(x

1

)

= x Var(

1

)

= x Fr (

1

) Bnd (

1

)

= (Fr (

1

) x) x Bnd (

1

)

= Fr (x

1

) Bnd(x

1

)

= Fr () Bnd ()

inclusion on T(V ). In other words, the bound variables of a sub-proof are also

bound variables of the proof itself, a property which does not hold for free

variables. The following is the counterpart of proposition (81) :

270

Proposition 305 Let V be a set and , (V ). Then we have:

_ Bnd () Bnd()

Proof

This follows from an application of proposition (47) to Bnd : X A where

X = (V ) and A = T(V ) where the preorder on A is the usual inclu-

sion . We simply need to check that given

1

,

2

(V ) and x V

we have the inclusions Bnd (

1

) Bnd (

1

2

), Bnd (

2

) Bnd (

1

2

) and

Bnd(

1

) Bnd (x

1

) which follow from the recursive denition (302).

Given a map : V W and (V ), the bound variables of the proof

() are the images by of the bound variables of . A similar result for free

variables cannot be stated, unless the substitution is valid for , as will be

seen from proposition (315). In general, only the inclusion Fr (()) (Fr ())

is true. The following is the counterpart of proposition (82) :

Proposition 306 Let V , W be sets and : V W be a map. Let (V ) :

Bnd (()) = (Bnd ())

where : (V ) (W) also denotes the associated proof substitution mapping.

Proof

We shall prove this equality with a structural induction, using theorem (3) of

page 32. First we assume that = for some P(V ). Then we need to

show that Bnd (()) = (Bnd ()) which follows from proposition (82). Next

we assume that = for some P(V ). Then we have:

Bnd (()) = Bnd (())

= Bnd (())

= Bnd (())

prop. (82) = (Bnd ())

= (Bnd ())

= (Bnd ())

We now assume that =

1

2

where

1

,

2

(V ) are proofs satisfying our

equality. We need to show the same is true of which goes as follows:

Bnd (()) = Bnd((

1

2

))

= Bnd((

1

)(

2

))

= Bnd((

1

)) Bnd((

2

))

= (Bnd (

1

)) (Bnd (

2

))

= ( Bnd (

1

) Bnd (

2

) )

= (Bnd (

1

2

))

= (Bnd ())

271

Finally, we assume that = x

1

where x V and

1

(V ) is a proof

satisfying our equality. We need to show the same is true of :

Bnd (()) = Bnd ((x

1

))

= Bnd ( (x)(

1

) )

= (x) Bnd((

1

))

= (x) (Bnd (

1

))

= ( x Bnd (

1

) )

= (Bnd (x

1

))

= (Bnd ())

In denition (83) we dened what it meant for a substitution : V W to be

valid for a formula P(V ). We needed to introduce the notion that would

not randomly distort the logical structure of , a property which is commonly

known as avoiding capture. The purpose was obvious: we wanted to carry

over properties of P(V ) into corresponding properties of () P(W).

For example, theorem (15) of page 155 tells us that a substitution equivalence

is preserved by provided it is valid for both and . Another example

will be seen as the substitution lemma in the context of model theory, where

proposition (480) will show that if is valid for , then the truth of () in a

model M under an assignment a : W M is equivalent to the truth of under

the assignment a . The notion of being valid for is crucially important.

One of the most interesting properties of formulas which we may wish to

carry over is that of provability. If a sequent is true, we all want to know

under what conditions the corresponding sequent () () is also true. It is

very tempting to conjecture that provided is valid for and is also valid for

every hypothesis , then the result will hold. Of course, an obvious issue is

the fact that a sequent does not tell us anything about the axioms being

used in a proof underlying the sequent. So we cannot hope to simply carry

over every step of the proof with , as our assumption does not guarantee is

## Much more than documents.

Discover everything Scribd has to offer, including books and audiobooks from major publishers.

Cancel anytime.