. PER MARTIN-LOF
STUDIES IN PROOF THEORY
Managing Editors C.
CELLUCCI
J..Y .
GIRARD
D.
PRAWITZ
H.
SCHWICHTENBERG
INTUITIONISTIC TYPE THEORY Notes 'by Giovanni Sambin of- a series given in Padua, June i980
Advisory Editors P. AczEL C. BOHM
W. BUCHHOLZ E. ENGELER S . FEFERMAN CH. GoAD
W.
HOWARD G.HUET
D.
LEIVANT
P. MARTIN-LOF . G .E. MINC
W.
POHLERS
D. SCOTT W. SIEG C. SMORYNSKI R. STATMAN S . TAKASU G . TAKEUTI
BIBLIOPOLIS
0/ lectures
STUDIES IN PROOF THEOR Y LECTURE NOTES
u.
CONTENTS
I .
Introductory remarks
.
Proposi tions and judgements
"
3
I
Explanations of the form s of judgement
\
Hypothetical judgements and s u b s t i t u t i o n rul e s
'
7
Pr op ositions
11
Rule s o f e q ua l i ty
, . . . . . . . . . . . . . • . .. . . . . . . . . . .. . . .. . . .. .. . . . . 14 16
Judgements wi t h more than one as sumption and contexts
19
Sets and c a tego r i e s
21
_
General remarks on the rule s
24
Carte sian product of a family of s e t s
26
Definitional equality
:
31
App Lf ca t Lcns of the cartesian product ;
' ,'
32
Disj oint uni on of a family of sets ... . . •.... ..... . . .. . . .. . . . . .. . 39 Appli cations o f the ' disjoint uni on
42
The axiom of' choice ...•... • •.. ..... .. •.•.. .. . ..... ... . . . . .. . ... . 50 The notion of such that ... . . . . . . ... . ••. . . .. . . . .... .. ....... . .. .. 53 1
)
l
Di sjoint union of" two sets .. .... . .... . . .. ..... . . .. .. . • . . . . . .. '. .. 55 Pr-opo s Ltional equali ty .•.. ... ... . ...... . . : . •.. . . .... . . . .. .. . .. . . 59
ISBN
©
88-7088-105-9
1984 by « Bibliopolis, edizioni di fil~sol1ii\ scienze » Napoli, via Arangio Ruiz 83 , ';.. :,', " " , ,
All rights reserved, No part of'ihis>-,1;;qp!i:,:ti,ay ' be reproduced , in any form or by any means without permission' -inwriting from. the publisher Printed in I taly by « Grafitalia » Via Censi dell'Arco, 25 • Cercola (Napoli)
Ii I
t I
I
I
65
Finite se ts Consistency .
,
~
"
,
'
. 69
Natural numbers •. •.• .. ...• .. ... .. . .. . ..... .. .. . . . ... .. . . ... . .. . . 71 Lists
; •.• • . . • • . . . . . . . . • . . . . . . • . . . . . . 77
Wellorderings ........ . ••..... . .. .. . .. • • • . . ......... ... . . .. .... . . 79 Uni verses .... • ... •. • . •' . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . 8 7
Preface These lectures were given in Padova at tha Laboratorio per Ricerche 'di Dinamica dei Sistemi e di Elettronica Biomedica
o~
the
, Cons i g l i o Nazionale delle Ricerche during the month of June 1980. I am indebted to Dr'. , Enrico Pagello of that laboratory for the opportunity of so doing . The audience was made up by philosophers, mathematicians and computer scientists. Accordingly, I tried to say
I
something which might be of
t
egories. Essentially the same lectures, albeit in a somewhat im-
1 , I
interes~
to each of these three cat-
proved and more advanced form, were given later in the same year as part of the meeting on Konstruktive Mengenlehre und Typentheorie which was organized in Munich by Prof. Dr. Helmut Schwichtenberg, te whom I am indebted for the invitation, during the week 29 Sep~emb~~
- 3 October 1980.
The main improvement of the Munich .l e c t u r e s , as compared wi t h those given in Padova, was toe adoption of ·a systematic higher level (Ger. Stufe) notation which allows me to write simply
Fl (A,B), L(A,B), W(A,B) , ),(b),
I
•~.
E(c,d), D(c,d,e), R(c ,d,e), T(c;d) instead of (Tl x
EO
A)B(x), (L x e A)B(x) , (Wx e iI)B(x) , (AX)b(x),
E(c,(x,y)d(x,y», D(c,(x)d(x),(y)e(y»; R(c,d,(x,y)e(x,y» , T(c,(x,y,z)d(x,y,z», respectively. Moreover, the use, of higher level variables arid constants makes it possible to formulate the elimination and equality rules for the cartesian product in such a way that they follOw the
,.
'.
r~les.
Moreover, the second of these, that is, the rule
same ,pa t t e r n as the elimination and equality rules for all the other
C E
n (A,B)
type forming operations. In their new formulation, these rules read c
IT -elimination
(Ax)Ap(c,x) E n(A,BJ
can be derived by means of the B(x) (x
oS
d(yl ' 6 cO.(y»
,
(y Lx ) E.
in the same way as the rule
A» cEI:(A,B)
n (A ,B)
C E.
~-rules
F ( c " d)
6
c = (p(c) ,q(c») E E (A,B)
C( c )
is.derived byway of example on p . 62 of the main text . Conversely , the new elimination and equality rules can be derived from the old
(y(x)
. (x E A) b
Cx )
6
B(x)
E.
dey)
B(x) (x 6
E.
l ·1
C(A(y»
(eliminatory) operator by means of which the binary ap-
plication operation can be defined, putting
and y(x)
E.
B(x) (x
E.
==
I
A) is an assumption, itself hypothetical, which
charged. A program of the new form F(c,d) has
A (b)
d( (x)Ap(c ,x».
So, actually, they are equivalent. It only remains for me to thank Giovanni Sambin for having and typing these notes, therebf making the lectures accessible to a wider aUdience. stockholm, January 1984, Pel' Martin-Lof
F(c, (y)y(a»,
has been put within parentheses to indicate that it is being disvalue
-=
undertaken, at his own suggestion, the considerable work of writing
r-espe ct.t vely. Here y is a bound function variable, F is a new non-
Ap(c,a)
F(c ,d)
!
A»
F(A,(b) ,d)
cano~ical
ones by making the definition
value~
provided c has
and deb) has value e. This rule for evaluating F(c,d)
reduces to the lazy evaluation rule for Ap(c,a) when the above definition is being made. Choosing C(z) to be B(a), thus independent of z, and d(y) to be y(a), the new eiimination rule reduces tp the old one and the new equality rule to the first of the two old equality
1 j I
1
-
1 -
Introductory remarks ,Ma t hema t i c a l logic and have been interpreted in at
th~
relation between logic and mathematics
l~ast
three different ways:
(1) mathematical logic, as symbolic logic, or logic using mathe matical .ymbolism; (2) mathematical logic 'as foundations tor philosophy) of mathematics;
(3) mathematical logic as logic studied by mathematical methods, as a branch of mathematics. ' We shall here mainly be interested in mathematical logic in the second sense. What
~e
shall do is also mathematical logic in the first sense,
but certainly not in the third . 'The principal problem that remained afterP'rincipia Mathematica was completed was, according to its authors, that of justifying the axiom of reducibility (or, as we would now say, the impredicative comprehension axiom)'. The, ramified theory of types was predicative, but it was not sufficient for deriving even elementary parts of analysis . So
th~
axiom of reducibility was
~dded
on the pragmatic ground that it
was needed, although no .atisfactory justification (explanation) of it could be provided. The whole point of the ramification wa s , then lost , so that it might just as well be abolished. What then remained was the simple theory of types. Its official justification (Wittgenstein , R~~sey)
rests on the interpretation of propositions as truth values
and propositional functions (of one or several variables; as truth functions. The laws of the classical propositional logic are then clearly valid, and so are the quantifier laws , as long as quantifica I'
,I I:
:1
!I
I
tion is restricted to finite domains. However, it does not seem possible to make sense of quantification over infinite domains , like the
- 2 -
- 3 -
domain of natural numbers, on this interpretation of the notions of proposition and propositional
f~nction.
Propositions and Judgements
For this reason, afuong others,
what we develop here is an intuitionistic theory of types ; which is also predicative (or 'ramified). It is free from the deficiency of Russell's ramified theory of types, as regards the possibility of developing elementary parts of mathematics, like the theory of ' r e a l numbers, because of the presence of the operation which allows us to form
Here the ,
dis~i~ctionbetween proposition (Ger. Satz) and asser-
tion or judgement '( Ge r . Urteil) is essential.
What we combine by means of' the logical operations (.l::> & v V 3 ') , , , , " and hold to be true are propositions. When we hold a proposition to be true , we make a j~dgement: '
the cartesian product of ,a ny given family of sets, in particular, the set of all functions from one set to another. proposition
In two areas, at leasti our language ~eems to have advantages -
~JUdgement,
over traditional foundational languages. First, Zermelo-Fraenkel set theory cannot adequately deal with the foundational problems of cat· egory theory, where the category of all sets, the category of all groups, the , category of functors from one such category to another
In particular, ' t h e premisses and conclusion of judgements.
a logical inference are
The distinction between propositions and jUdgements was clear
etc. are considered. These problems a~e coped with by means of the
from Frege to Principia. These notions have later be
distinction between sets and categories (in the logical or philosophi-
formalistic notions of formula and theorem (in
cal sense, not in the sense of category theory) which is made in intuitionistic type theory. Second, present logical symbolisms are inadequate as programming languages, which explains why computer scientists have developed their own languages (FORTRAN, ALGOL, LISP, 1 2, PASCAL, ... ) and systems of proof rules (Hoare , Dijkstra • • . ). We 3 have shown elsewhere how the additional richness of ' t y p e theory, as compared with first order predicate logic, makes it usable as a programming language. l ' C. A. Hoare, An axiomatic basis of computer programming, Communications of the ACM, Vol. 12,196'9, pp. 576-580 and 583.
2 E. W. Dijkstra, A discipline of Programming, Prentice Hall, Englewood Cliffs, N.J ., 1976.
3
" Constructive mathematics and computer programP. Martin-Lof, ming, Logic, Methodology and Philosophy of Science VI; Edited ,by L. J. Cohen, J. Los, H. Pfeiffer and K.-P. Podewski, North-Holland, Amsterdam, 1982, pp. 153-175. '
1 en rep aced by the
a formal system) , respectively. Contrary to formUlas, propositions are not def'ined inductively . So to speak, they f'orm an open concept, In standard textbook presentations of first order logic, we d' can ~stinguish three quite separ-a te steps: (1) inductive definition of terms and
(2) specif'ication of aXioms and rules
formulas , of inference ,
(3) semantical interpretation. Formulas and d d t ' e uc ~ons are given meaning only through semantics which is usually done follOWing Tarski and ' , assuming set theory . What we do here is t t , mean 0 be closer to ordinary mathematical
pract~ce.
We will avoid keeping form and meaning (content) apart
stead we will at the same time display certain forms of
jUdgemen~
Inand
inference that are used in mathematical d ' proofs an explain, them seman, " tically. Thus we make explicit h t w a is usually implicitly taken f'or
- 5 -
4 -
. We us e f our · f orms of
granted. When one treats log i c as arty othe r br a nc h of mathematics, as ·i n the metamathematical traditi on originated by Hilbert , such judge -
jUdg~ment:
(1) A is a set (abbr . A
ments and inferences ·are onl y partially and f ormal l y re pr ese nted in the s o-called obj e c t language, while they are implicitly used; as in
( 2 ) A and B
.~e
equal
s ~t ) ,
~ets
(A
~
B),
any other br a nc h of mathematics, in the s o-cal led metalanguage.
( 3) a is .an element of the set A (a
Our main aim is to build up a system of f orma l rules representing in the bes t possible way informal (mathematical) reasoning. In the
~
A) ,
(4) a and b are equal elements of the set
usual natu ral deduction style , the rules given are not quite . f ormal . For i ns t a nce , the rule.
(If we read
£
A
(a = b
A) .
E
lit.rally a s ~a~~ , then we ~ight ~rite A
E
Set ,
A = BESet , a e El (!) , a = b E El(A ) , respectively .) Of cou rse , any A
syntactic variable s co u ld be us ed ·, the use
A v B
a r e j udgements here. A jUdgement of the f orm A = B has no mean ing
that · we can i n f e r A v B to be true when A is true . .If we are t o give a
A v
un ~
less ·we already kn ow A and B t o b~ sets . Likewise , a jUdgement of t he
f ormai rule, we have to make this expllcit, writing B prop .
f sma 11 l e t t e r s f or el -
in o r d i na r y set ·t heo r y , a E b and a = b are propos it i ons , whi l e they
takes f or granted that A and B are f ormulas, and onl y then does it say
A prop.
0
ements and ca pi t a l letters f or ae't s i s onl y t o» conve nience . No t e t hat
f orm a E A presupposes that A is a set , and a judgement of t he f orm a ·= b E A presupp ose.s, first, that A is a se t , an d , second, t ha t a and
A tr-ue
b are elements of A• .
B true
Each f orm of judgement admits o f severa 1 differe nt read ings , as i n the ta.ble:
or A, B prop .
.1- A
l-AyB
where we use, like Frege, the symbol l- to the left of A to signify
A set
a
A is a set
a is an 'e Lemen t of the set . A
A is nonempt y
A is a prop osition
a is a proof ( con structi on) of
A is true
E
A
the prop ositi on A
that A is true . In our system of rules , . t hi s wi l l always be explicit . A r ule of inference is · j ustified by explaining the conclusion on the assumption that the premisses are kno wn. H.ence, before a rule of
A is an i ntention
a is a method of f~lfliling
(expectation)
(realizing) the intention
inference can be justified, it must be explained wha t it is that we
A is f u lfi l l a bl e . ( realizable)
( expectati on ) A
must know "in o r de r to have the right to make a judgement of any one
A is a problem
of the various f orms that the premisses and cOnclusion can have.
(task)
I
ric '
a i s a method of solving the prob l em ( doing the task) A
A i s solvable
\
- 6 -
The se cond, logical interpretation is discussed toghether with rules 4 below . The third was suggested by Heyting a nd t he fourth by Ko l mogOrov 5 . The last i s very close to programming. "a is a method . . . " can '
- 7
Explanations of the forms o f judgement For each one of the. four forms of judgement, we. now explain wha t
be read as "a is a program . .. ". Since programming languages have a
a judgement of that form means .
formal notation for the program a, but not for A, we c omplete the sen-
of the first form, means by answering one of the following three ques -
tence with " ... which meets the s pe c i f i c a ti on A". In .Kolmogorov 's in-
tions:
We can explain what a judgement , s a y
· t e r p r e t a t i on , the word problem refers to something to be done and the wor d program to how to do it . The analogy between t he first and the
Wha t is a set?
second interpretation is . implicit in the Brouwer-Heyting interpret-
What is it that we must know in order to have the right to judge
ation o f ,~he logical constant~. It was made more explicit bY ,Curry ,and
something to be a set?
Feys6 , but only for the impl icational fragment , and i t wa s extended t o
,
.
7
intuitionistic first order arithmetic by Howard _ It is the only known
What does a judgement of the form " A is a set·" mean?
way of int.rpretin~ i~tuitionistic logic so that th~ axiom o f 6hoic e
The first ,is the ontological (ancient Greek) , t he second the epis-
becomes , valid . To distin gui sh between proofs. of judgements (usually in tree-like
ern) way of posing essentially the same question . At first sight , we
temol~gical
(Descartes, Kant, •• . ) and the third the seman t ical (mod-
form) and proofs of proposit ions (here identified with elements , thus
could assume that a set is defined by prescribing how i t s elements
to the left of E . ) we reser ve the word construction for the latter and
are formed. This we do when we say that the set of na tura l numbers
use it whe n confusion might occur.
N is defined by giving the rules :
o
a E
~
N
N
a'E N 4 A. Heyting, Die intuitionistische Grundlegung der Ma t hema t ik , Erkenntnis, Vol. 2, 1931 , pp. 106 -115 . . 5 A. N. Kolmogorov , Zur· Deutung der intuitionistischen Logik,
by which its elements are constructed. However" the we a kn e s s of thi s 10 definition is clear: 10 , for instance, though not obtainable wi th thegi ven rules, is clearly an element of N, sinc,e we kno w t hat we '
M~ t h ema t i s c h e Zeitschrift , Vol. 35 . 1932, pp . ~8-65.
can bring it to the form a' for some a e ' N. We thus ha ve . to distin -
6 H. B. Curry and R. Feys, Combinatory Logic, Vol. 1, North-Holland ; Amsterdam , 1958 , pp , 312-315.
~uish
7 w'., A. Howard , The formulae-as-types not ion of construction, To H. B. Curry : Essays on Combinatory Logic, Lambda Calculus arid Formalism , Academic Press, London , 1980 , pp. 419-490.
the elements which have a form by which we can di rect ly see
that they are the result of one of the rules , and 'ca ll the m c anon i cal , from all othe r e lements, wh i ch we wi l l call no ncano nica l .
- 9 -
- 8 -
(2)
But then, to be able t o. define when two noncanonical elements are
two sets A and Bare equal if
equal, we must also prescribe how two equal canonical elements are a € A
formed. So:
--a
€
a
E
A
(that is,
a and
B
a
€
B
€.
B
--)
a
6.
A
(1) a set A is defined by prescribing how a canonical element and
of A is formed as well as how two equal canonical elements of A are formed.
abE A This is the explanatipn of the meaning of a judgement of the form
a
b Eo B
A ·i s a set. For example, to the rUI'es for N above, we must add for arbitrary canonical elements a, b.
a
b «A & B)
when, in addition, B Is independent of x.
axiom correspond ing to this rule. So, assume A set, B(x) set (x E A), C(z) set (z
E
(Lx
E.
A)B(x» and let f
E:
(TIx
E
A)(Dy
E:
B(x»Cqx,y».
We want to find an element of (TIx
E
A)(TIy
E.
We define Ap(f ,x,y)
B(x»C«x,y» -
=
( Oz
(Lx e A)B(lC»C(Z).
E
Ap(Ap(f,x),y) for convenience. Then Ap(f,x,y)
is a ternary functiori , and Ap(f,x,y) E C«x,y» assuming z
E
'::>
A)B(x) as single argument. What we now prove is an
(Lx
E(z,(x,y)Ap(i,x,y»
EO
(x E A, y
€
B(x» . So,
'A) B( x ) , by L:-elimination, we obtain €
C(z) (discharging x
€
A and y e. B(x», and, by
A-abstraction on z , we obtain the function
....
C) true
- 50-
- 51 -
have
The axiom of· choi ce
(Ax) p (Ap (z .x )
We now show that, with the rules introduced so far, we can give a proof of the axiom of choice , which in our symboli sm read s:
and, by
(\Ix E A)(3 y E B(x»C(x,y)
E
(Il x
E
A) B(x ) ,
TI-equality, Ap«Ax)p·(Ap(z,x» . x ) - p(Ap(z,x»
=:>(3f e ·( n x e A)B(x»)('Ix
E
A)C(x ,Ap(f ,x»
E
Bf x ) ,
true . By sUbstitution, we g e t
The usual argument in
i n t u i t i o n~ s t i c
ma t h e ma t i c s , based on the i n -
tu itionistic interpretation of the logical constants , is roughly as follows : to prove
('II x ) (3 y)C(X,y)
::>
(3
f)
(v x)C(x,f(x», (3
= C( x ,p(Ap(z ,x»)
assume that
we have a .p r oo f of the antecedent. This means that we have a method which, applied to an arbitrary x, yields a proof of
C(x,Ap«Ax)p(Ap(z,x» .x )
y)C(x ,y), that
and hence , by equality of sets, q(Ap(z ,x}) e C(x,Ap«~x)p(Ap(z ,x) ,x»
is, a pair consisting of an element y and a proof of C(x,y). Let f be the method wh i c h , to an arbitrar ily g iven x, assigns the fir st component of t h i s pair. Then C(x,f(x»
getting a for mal proof in intuitionistic type theory . Let A set ,
ze
(Tl x
E,
(Ax)q(Ap(z ,x»
€:
(TIx EA)C(x,Ap«Ax)p(Ap(z,x»,x» .
We now .use the rule of pairing (that i~, E~introduction) to get «Ax)p(Ap(z,x»,(Ax)q(Ap(z,x»)€ (L.f
n-elimination , we obtain
Ap(z,x)
E
(x E A, Y E B(x» , and assume
A)(Ly e B(xPC(x,y) . If x is an arbitrary elemen t of
A, Le. x e A,then , by
is independent of x .. By abstraction on x ,
holds for an arbitrary x, and
hence so does the consequent . The s a me idea can be put into symbols,
B(x) set (x e A) , C(x ;y) s e t
where (Ax) ·P( Ap(z , x )
(E
y e B(x))C(x,y).
E.
(TIx E A)B(x»)(TIx e A)C(x,Ap(f,x»
(note that, in the last step, the new variable f is introduced and sUbstituted for (Ax)p(Ap(z,x»
We now apply left
proj~ction
to obtain
p(Ap(z ,x»
E B(x)
and right p r oj e c ti o n to obtain q(Ap(z,x»
e C(x,p(Ap(z,x»).
abstraction on z, we
in the right member) . Finally , by
~btain
(Az)«Ax)p(Ap (z,x»,(AX)q(Ap(Z ,X»)E
(TI x
E
A)(E y
E.
B(x»C( x , y )
=:> (Ef E (TIx E A)B(x»(nx e A) C(x , Ap ( f ,x ». In Zermelo-Fraenkel set theory , there is no proof of the axiom of choice, so it must be taken as an ax iom, for which , however, it
By A-abstraction on x (or n .-introduction), discharging x E A, we
seems to be difficult to ·c l a i m self-evidence . Here a de tailed
II Ii
I ;·1
ii' I,
,I. ' \
~
\
II 'I \ \
- 53 -
- 52 -
the axiom of choice has been provided in the form justification of f In mani sorted languages, the axiom of ,choice is of the ,above pr o o • " . . t there is no mechanism to prove 1t. For instance, 1n express ible bU f finite type , it must be taken as .a n axiom . The Heyting arithmet ic 0 is clear when developing intuitionistic '" i om of choice need for the a for i ns t a nce, i n finding the limit of a sequence ' mathematiCs 'atdepth, ti 1 inverse of a surjective function. of reals or ~ par a
The notion of such that In addition to disjoint union ; existential quan t.Lf'Lca t.Lon , cartesian product A X B and. conjunction A & B, the operation a fi.fth Lnt.er-pr-e t a t.Lon : the set of all a
EO
Let A be a set and B{x) a proposition for x ihe set of all a& i [x
E
~uch
EO
has
EO
A. We wa nt to define
that B(a) holds (which is usuall y . wr i t t e n
A: B(x.ll> • .· T~ 'ha ve an ' element a
to have an element a
L
A such that B(a ) holds.
EO
A such that B(a) holds means
A together with a proof of B(a), namely an
element b E B(a). So the elements of the set of all elements of A satisfying B(x) are. pairs (a,b) .wi t h b
E
B(a) , Le ·. elemen ts of
(Ex E A)B(x) . Then the L-rules play the role of the comprehension axiom (or the separation principle in ZF). The information given by 11 b ~ B(a) is called the witnessing information by Feferman • A typical application is the following. ,Bxa mpl e (the reals as Cauchy sequences). R =: (LxEN-Q)Cauchy(x) is the definition of
th~
reals as the set of sequences of r a t i ona l
numbers satisfying the Cauchy condition , Cauchyf a )
_
(Ve E Q)(e > 0
:=> (3in E
N)(Vn
E
N)(\am+n-aml ~ e) ,
where a is the sequence a
a , . ~ . In this way, a real nu mber i s a O' 1 sequence of rational numbers toghe~her with a proof that it satisfies
the Cauch1 condition. So, assuming c E R, e
E
Q and d 'E (e > 0) (in
11 S . Feferman, Constructive theories of functions and classes , Logic Colloquium .78 , Edited by M. Boffa, D. van Dalen and K. McAloon , North-Holland, Amsterdam , 1919, pp. 159-224 .
= - 55 -
- 54 -
Disjoint union of two seta
. d d' proof of the pr·op·osi tion e > 0), then, by means other wor s' . 1S a of the projections, we obtain p Cc ) € N~Q and q(c) E Cauchy(p(c».
We now give the rules for the sum (disjoint union or coproduct) Then
of two sets. +-formation
and
A set Ap(Ap(q(c),e),d)
E
(3m
E
N)(Vn
E
N)(lam+n-aml ~ e).
Applying left projection, we obtain the m we need , i.e. p(Ap(~P(q(c),e),d»
€
N,
A+
. +-introduction
a E
Q.
Only by means of the proof·q(c) do we know how far to go · fo~ the
I
.\
approximation desired.
B set
The canonical elements of A + B are formed using:
and we now obtain am by applying p(c) to it, Ap(p(c) ,p(Ap(Ap(q(c) ,e) ,d»)
B set
i(a)
~
A
E
A + B
b
j(b)
E
E
B
A
+
B
where i and. j are two new primi ti ve constants; their use is to give the information that an element of A + B comes from A or ·B, and which of the two is the case. It goes without saying that we also have the rules of +-introduction for equal elements:
I
I I
b
i(a)
= i(c)
E A + B
j(b)
= dEB
= j(d)
E
A + B
Since an arbitrary element c of A + B yields a canonical element of the form i(a) or j(b), knowing c e A + B means .t h a t we also can de· t e r mi n e from which of the two sets A and B ·the element c comes.
f.
I
- 56 -
- 51 -
+-elimination
, ,be c ome ' e vi de n t . (x
I',
C E A + B
(y
e
B)
e(y)
E
C(j(y»
E A)
d(x)
€
C(i(x»
D(c,(x)d(x),(y)e(y»
E
Th~disjunction of two propositions is now interpreted as ' the sum ,o f two sets. We therefore put: AV B
C(c)
where the premisses A 's e t , B set and C(z) set (z E A + B) are presupposed, although not explicitly written out. We must now explain
==
A + B.
From the formation and introduction rules for +, corresponding rules ' f o r V :
how to exeaute a program of the new form D(c,(x)d(x),(y)e(y». 'As -
we
then obtain the
V -formation
sume we know c E A + B. Then c will yield a canonical element ita) A prop.
with a E A or j(b) with b E B. In the first case, substitute a for x in d(x), obtaining d(a), and execute it. By the second premiss,
B, prop.
A V B prop.
d(a) e C(i(a», so d(~) yields a canonical element of C(i(a». SimiV -introduction
larly, in the second case, e(y) instead of d(x) must be used to obtain e(b), which produces a canonical element ofC(j(b». In either
,I
A true
B true
A V B true
A V B true
case , we obtain a canonical element of C(C), since, if c has value i(a) , then c
= ita)
value j(b), then c
E A + B and hence C(c) = C(i(a», and, if c has
= j(b)
E
A + Band hence C(C)
= C(j(b».
this explanation of the meaning of D, the equality rules:
From Note that, if a is a proof of A, then i(a) is a (canonical) proof of A v B, and similarly for B.
+-equality
v -elimina tion (x E A)
a E A
d(x) E C(i(x»
D(i(a) ,(x)d(x), (y)e(y»
(y E B)
e(y)
E
' C(j ( y »
A v B true
(A true)
(B true)
C true
C true
d f a ) E C(i(a» C true
(x E A)
(y E B)
follows from the rule of +-elimination by choosing a family b E B
d Ix )
E
C(i(x»
D(j(b), (x)d(x) ,(y)e(y»
eIy) eIb)
E
E
C(j (y»
C(j(b»
C
==
C(Z) (z E A + B) which does not depend on z and suppressing proofs (constructions) both in the premisses, including the assumptions, and the conclusion.
L
- 59 -
- 58 -
Propositional equality
Example (introductory axioms of disjunction). Assume A set, B set and let x € A. Then i(x) € A + B by +-introduction, and hence
We now turn to the axioms for equality. It is a tradition
O.x)iex) e A -A + B by A-abstraction on x . l f A and B are propositions, we have A and hence B
~
::>
(deri ving its origin from Principia' Mathematica) to call equality
A V B true. In the same way, (Ay) j (y) e B -- A + B,
in predicate logic identity. However, the word identity is more
A V B true.
=
properly used for definitional equality, or =d f ' discussed e. 2 above. In fact, an . equality statement, for instance, 2 = 2+2 in
Example (eliminatory axiom of disjunction). Assume' A set, B set, C(z) set (z Eo A + B) and let f € and z e A + B. Then, by
(Tl x e A)C(iex», g
€
(DyE B)C(j(y»
arithmetic, does not mean that the two members are the same, but
n-elimination, from x e A, we have
Ap(f,x) EC(iex», and, . from y e B, we have Ap(g,y) e C(j(y». So,
merely that they have the same value. Equality in predicate logic,
using z E A + B, we can apply +-elimination to obtain
however, is also different
D(z,(x)Ap(f,x),(y)Ap(g.y»
former is a proposition, while the latter is a judgement . A form of
Eo C(z), thereby discharging .x e A and
fr~m
our equality a = b E A, because the
propositional equality is nevertheless indispensable: we want an
y e B. By A-abstraction on z, g, f in that order, we get
equality I(A,a,b), which asserts that a and b are equal elements of (Ar) (Ag) (Az)D(z, (x)Ap(f,x), (y)Ap(g,y»
E(
nx
E A) C(i (x ) ) -
((
ny
€
B) C(j (y) ) -
(
nz
t E
A + B) C(z» .
he set A, .bu t on which we can operate with the logical operations
(recall that e.g. the negation or quantification of a judgement does not make sense). In a certain sense, I(A,a,bf is an internal form
This, when C(z) is thought ~f as a proposition, gives
of =. We then have four kinds of equality: ("Ix E A)C(iex»::>
«"Iy
€
B)C(j(y»::> ('Vz € A + B)C(z»
true.
.i (1)
If, moreover, C(z) does not depend on z and A, B are propositions as well, we have (A ?
C) ~ «B :::> C) :::> (A Y B
::>
C»
true.
== or =def. '
(2) A
B,
(3) a
b e A,
(4) I(A,a,b).
Equality between objects is expressed in a judgement and must be defined separately for each category, like the category sets, as in (2), or the category of elements of a set, as in (3); (4) is a proposition, whereas (1) is a mere stipulation, a relation between linguistic expressions. Note however that I(A,a,b) true is a judgement, which . wi l l
turn out to be equivalent to a = b € A (which is not to say
- 60 - 61 _
that it has the same sense). (1) is
intension~l
(sameness . of mean-
We would then d
ing), while (2), (3) and (4) are extensional (equality between ob-
i er ve the fOllowing ·r ul e s
as primitive :
'
whi h c we here take instead
jects). As for Frege, elements a, b may have different meanings, or be different methods, but have the same value. For instance, we certainly have 22 = 2+2
~ N, but not 22 _
I-elimination
2+2. C
I-formation A set
a
E.
A
b e: A
I(A,a,b)
€
I-equality
I(A,a,b) set C
We now have to explain how to form canonical elements of I(A,a,b). The standard way to ~now that I(A,a,b) is true is to have a Thus the introduction rule is simply: if a
=b
=b
E.
c
A.
€
I(A ,a,b)
note that I-formation is the only rUle formation of families up to now wh i c h per+, NNW of sets. If only th n' , were allowed e operations L: , we would only . get constant sets. Example (introductor x € Y aXiom of identity) A. Then x = x € A • Assume A set and let abstraction on x (A)' and, by I-introduction, r E l(A,x ,x) . By xr€(\{XE.A)I(A , canonical proof of th 1 . ,x,x). Therefore (Ax)r is a e aw of identity on A. .mi t's the
canonical proof r of I(A,a,b). Here r does not depend on a, b or A; E.
=r
I(A,a,b)
Finally,
e: A, then there is a
it does not matter what canonical element I(A,a,b} has when a = b
E
n,
A,
as long as it has one. I-introduction a=be:A .v'
r e: I(A,a,b) (x € A)
Also, note that the rule for introducing equal elements of I(A,a,b) is the trivial one: r E I(A,x,x)
a = b
E A
r = r E. I(A,a,b)
. (Ax) r E
Example (eliminator
style as for Tl ,
I.
L. .,
+,
namely introducing a new eliminatory operator.
E A)I (A, x, x)
y aXiom of identity) (x E A) • Given a set A and a over A we cl . . correspOnding to L . 'a~m that the law of equality elbniz's principle that equ 1 I . of indiscernibility a e ements satisfy th hOlds, namely e same properties, property Sex) prop
We could now adopt elimination and equality rules for I in the same
(V x
- 63 -
- 62 -
is derivable. I t is
( V x E A)( v s e A)( I (A, x , y) .::> (B (x)::> B(y») true.
~n
analogue of the second n-equalit y r ul e, wh i c h
could also be derived, provided the TI-rules were formulated -f o l l owi ng To prove i t, assume x E A, Y e. A and z 6 .I(A ,x,y) . Then x
Y EO
A and
the same pattern as the other rules . Assume ~
=x
E:
A, Y e B(x). By the
=y
hence B(x) = B(y) by substitution. So, assuming w E B(x), by ·equalit y
prOjection laws , p«x ,y»
of s e ts , we obtain w
E-introduction (equal elements form equal pairs),
EO
B(y) . Now, by abstraction on w, z , y , x in that
6 A and q«x,y»
e B(i) . Then , by
order, we obtain a proof of the ·c l a i m: (x,y)
(p( (x ,y» ,q«x ,y») (z e. I(A,x,y»
(x
E
(Ex e. A)B(x) .
e. A)
By I-introduction, B(x) set
x = Y 6 A
B(x)
(w 6 B(x»
r- e I«LX e A)B(x) ,(p«x ,y»,q«x,y»),(x ,y» .
B(y)
Fow take the family C(~) in the rule of I:-ellmination t o be
w 6 'B(y) {~w)w EO
(AZ)(AW)w
E
1(0:' x
B(x) ? B(y)
I(A,x,y)
?
(B(x)
?
E
A)B(x), (p(z) ,q(\z» ,z) . Then we obtain
B(y»
(AX)(Ay)(Az)(AW)We. ("Ix E A)(Vy 6 A)(I(A,x ,y) ::> (B(x)
I( ( L x E A)B( x) , ( p ( c ) , q ( c ) ) , c )
E (c , (x , y ) r) e ?
B(y»)
and hence, by I-elimination , (p(c),q(c» = c ·e. (Lx
The same problem (of justifying Leibniz's principle) was solved
e:
(x
(y e B(x»
A)
E
A)B(x) . ( y e B(x»
(x e A)
in Principia by the use of impredicative second order quantification .
=
p«x,y»
There one defines
X"
A
(p«x ,y»,q«x ,y») (a = b)
== (V X)(X(a)
?
q«x,y» (x ,y)
= y
~ (1:
x
E
E
B(x) A)B(x)
X(b» C E
from whi c h Leibniz 's principle is obvious, since it is taken to define
(L x. e
A) B ( x )
r
E
I«L: x e. A)B(x),(p«x,y» ,q« x , y») ,(x,y»
E(c,(x,y)r) e I«L: x
E
A)B(x) ,(p(c) , q ( c » . c )
t he meaning of identity . In the present language , quantification over .
"
..
(p(c) , q (c» = c e (1: x e A)B(x)
propert ies is not possible , and hence the meaning of identi:ty . has: t.o be de fined in anothe r wa y , wi t hout invalidating Leibniz's p~inCl~le, · Example (proof of the converse of the projection ·l aws ) ". We can now prove that the inference rule C E:
(Lx e A)B(x)
c = (p(c) ,q(c» e (Ex e A)B(x) .
This example is typical. The I-rules are used systematically to show the uniqueness of a function , whos e existence is given by a n elimination rule , and whose properties are expressed by the assoc iated equali ty rules.
- 65 - 611 -
,
1 Example (properties and indexed fam~ 1es 0 of looking at subsets of a set B: are two 'wa ys
(1) a subset of B is a P C(y)
(y
f elements).
Finite sets
~here
Note tha.t, up to 'now, we have no operations to build up sets
ropositional fu~ction (property) .
from nothing, but only operations to obtain new sets from given ones (and from families ' of sets). We now introduce finite sets, whi c h are
EO B);
given outright; hence their set formation rules will ~ave no premisses.
(2) a subset of
B ~is
an indexed family of elements
Actually, we have infinitely'many rules, one group of rules for each n = O. 1,
b Lx ) E B (x e A).
the equivalence of these two Using the identity rules. we can prove (2) , the corresponding propconcepts. Given an indexed familY as in
N -formation n
N
erty is
(3 x
E
A)I(B,b(X) ,y) (y
and, conversely, given a proper
E
ty as in (1)
B), •
n
set
. N -introduction n
the corresponding
indexed family is
(m
= 0,1 • •. .•
n-i.t )
So we "ha ve the sets' NO with no elements, N,. with the single canonical p Lx) e B (x
E
(Ey
E.
B)C(y»,
element 0
1,
N~
with canonical elements O '1 , etc . 2, 2
N -elimination n
c
m
E C(m
n)
,
(m =0, ' 1 • •..• n-1)
Here, as usual, the famfly of sets C(z) set (z eN) may be interpreted n
as a property over N : Assuming we know the premisses , R is explained . n . n· . as follows: firSt execute c, whose result is mn for' some m between 0 and n-1. Select the cor-r-espond t ng element c of c(m and continue by n) . ' .. m executing it. The result is a .ca no n Lce L element d e C(C) . since c bas been . seen to be equal to m and c e C(mni 'is a premiss ~ R is recurn m n sion over the finite set N it is a kind of definition'~i cases . n;
- 67 - 66 -
by the above explanation, From the meaning of Rn , given N _introduction): n rules (note that mn 6 Nn by n
we have the
When C(z) does not depend on z , i t is possible to suppress the proof (construction) not only in the conclusion but also in the premiss. We then arrive at the logical inference rule
.1. -el1mina t .Lon N _equality n
(m: 0,
.1.
' , .. . , n-1)
true
C true R (m ,co , ·· ·,c n _ , ) n n
° " ...,
, in the conclunfor each , cho i ce of ' m -, (one such rule Id b to postulate the rules for n sion) . An alternative approach wou ' e == N + N etc., and , equal to and' oniy, ',d e f i n e N2 :: 'N, + N" N3 , 2
' t r a d i t i o na l l y called ex falso quodlibet. This rule is often used in ordinary mathematics, but in the form
°
(B true)
then detive all other rules.
no introduction rule a~d hence no Example (about NO)· NO has natural to put elements; it is thus
.1. true '
A V B true A true
which is easily seen to be equivaient to the form above . Example (about N,). We define The ~limination rule becomes simply : N _elimination
°
Then 0 , is a (canonical) proof of ,lr , since 0, E N, by N, - i n t r od uc tion. So T' is true. We now want to prove that 0, is .in fact the only R (c ) E: ct c)
°
we 'u n d e r s t a n d that we shall never f the rule is that ' t R (c) Th e we shall never have to execu eO , • a~ element C6 NO' so that get executing ~ program of the form Thus the set of instructions for b t i ' imilar to the programmi'ng statement ~ R (c) is vacuous . It s s exp'lanation
°
element of N"
that is, that the rule ,
0
,
introduced by Dijkstra
'2
is derivable . In fact" , from 0,
6
N"
we get 0, : 0, 6 N"
r ~ I(N"O"O;>. Now applt 'N,-elimination with I(N"z ,O ,) (z E N,) for the family of sets C(z) (z E N, >.
~sing
the assumption c e N"
we get R,(c,r) E I(N"c,O,), and hence c : 0, EN, . '2 See note 2 .
and henc e
- 69 - 68 -
h definition R,(C,c O) _ Conversely, by making t e
,
Consistency
Co ,.' the rule of
N _elimination 'is derivable from the rule
What can .we say about the consistency of our system of rules?
.
We can understand consistency i n two different ways : (,) Metamat~~matical consistency. Then , to prove mathematically
c = 0, e N,
the consistency of ~ theory T, we consider another th~ory T', wh i c h
Thus the operation R, can and the rule of N,-equality trivializes. be dispensed with . We make the definition Example (about N2 ) . Boolean
==
contains codes for propositions of the original theory T and a predicate Der such that Der('A') expresses the fact that the propos ition A with code ' A' is derivable in T. Then we define Cons -'Der( 'l.')
=. Der( '.L ')::>.l.
==
and (try to) prove that 'Cons is true in
T' . This method is the only one applicable when, like Hilbert, we
N2 ·
which consists ' of the two e used in programming Boolean is the typ f I -, false . So we could put true == O2 and a se 2' truth values true, R2 ( c ' c 0' c , ) because, if Then we can define if· c ~ Co ~ O then R has the means that c yields 2, 2(C,C O'c,) c is true , which . d R (c c c) has the same 2 '0" . otherwise c yields '2 an same value as C0'
=
c,
value as c,. prove that any elemen t 0 f N2 is either As for N, above, we can in the propositional form O or '2' but obviously only 2 true
give up thehope 'of a seman tical
justificatio~
of the axioms and rules
of inference; it could be followed , with success , also f or intuitionistic type theory, but, since we have been as meticuious about its semantics as about its syntax , we have no need of it. Instead, we convince ourselves .di r e c t l y of its consistency in the following simple minded way. (2) Simple minded consistency . This means simply that JL cannot be proved, or that we aha Ll, never have the right to judge .L true (which, unlike the proposition Cons above , is not a mathematical proposition). To convince ourselves of th is, we argue as follo ws : if
1- would hold for some element (construction) c , then c woul d
c e
yi.eld a canonical element d e JL ; but this is impossible s ince JL has no canonical element by definiton (recall that we defined JL
Example (negation) . If we put '" A:: -, A
==
-A
Thus
==
A-
NO
JL
==
NO) '
true cannot be proved by means of a system of correct rules.
So, in case we hit upon a proof of 1-. true, we would kno w that the re must be an error somewhere in the proof; and, if a f or ma l proof of
we can easily derive
all the usual rules of negation.
JL
true is found, then at least one of the formal rules used i n it
is not correct. Reflecting on the meaning of each of th e rules of
- 10 - 11 -
intuitionistic type theory, we eventually convince ourselves that Natural numbers
they are correct; therefore we will never find a proof of JL true using them. Finally , note that , in
~ny
case , we must rely on the simple
minded consistency of at least the theory T' in which Cons is proved
.so far , we have no means of constructing an infinite set. We ~ntroduce the simplest one, namely the set of natural numbers , by the rules : now
in order to obtain the simple minded consistency (which is the form of consistency we really ciare about) from themetamathematical con-
N-formation
sistency of the original theory T.In fact ; once c • Cons for some c N set
is proved, one must argue as follows: if T were not consistent, we would have a proof in T ·of 1.. true, 91' a € NO for some a. By coding, this wou l d give 'a'
G
N-introduction
Der( '.l') ; then we would obtain Ap(c,'a')€ JL ,
i.e . that JL true is derivable in T'. At this point, to conclude that
o
JL true is not provabie in T, we must be convinced that JL true is
€
a '" N
N'
a'
not provable in T'.
E
N
Note that, as is the
case with any other introduction rule a ' € N is always canonical, whatever element a is Th ' • us a E N means that a has value either 0 or a' wh . 1' . . ere a 1 has value eithe r 0 or a ' 2 ' etc . , until , eventually, we reach an element a which h 1 n as va ue o. N-elimina tion
(x
c c: N
d
e C(O)
R(c,d , (x,y)e(x,y»
e: N, y E C(x»
e(x,y) € C(x') € C(c)
where C(z) set (z eN) . R(c,d,(x,y)e(x ,y»
i s explained as f ol l ows: first execute c, getting a canonical element of N, whi ch i s eithe r o or a ' for some a ~ N. In the first case , continue by ex e c ut i ng d , which yields a canonical element f EC(O);but, since c = 0 E N i n this case , f is 1 a so a canonical element of C(C) = C(O) . In t he second case, ' sUbstitute a fOr x and R(a d ( ) ( '. ' . . " x,¥ e x, y» ( na me ly , the
- 72 -
- 73 -
preceding value) for y in e(x,y) so ~s to g~t e(a,R(a,d,(x ,y)e(x,y»). Executing it , we get a canonical f which, by the right premiss, is in C(a ') (and hence i n C(c) since c R(a ,d,(x ,y)e(x,y»
out to be the same concept when propositions are interpreted as sets . Example (the predecessor function). We put
a' EN) under the assumption pdf a )
e C(a) . If a has value 0, then R(a,d,(x,y)e(x,y»
== R(a,O, (x,y)x) .
is in C(a) by the first case . Otherwise , continue as in the second case , until we eventually reach the value 0. This exp Lana tLon of the
This definition is justified by computing R(a,O,(x ,y) x) : if a yields 0, then pd(a) also yields 0, and, if a yields b ', then pd(a) yields
elimination rule also makes the equality rules
the same value as R(b',O,(x,y)x), which , in turn, yields th e same
=0
' va l ue as b. So we have pd(O)
N- e qua l i t y (x
d
a, whi ch is the usual definition , but here these equalities .re not definit ional . Mo re precisely , we have
EA, y EC(X»
e(x,y) E C(x')
e C(O)
and pd(a')
a E N
= d E C(O)
R(O ,d ,(x,y)e(x,y»
pd I a ) e
( x E N, Y E C(x» d eC(O)
a e N
R(a ' , d, ( x , y ) e ( x , y »
which is an instance of .N- e l i mi na t i on , and
e(x,y) E C(x')
= e(a,R(a,d,(x ,y)e(x ,y»)
evident. Thinking of C(z) (z e N) as
~
E
- t-~onal propos~
~onclusion
~ pd (0)
CIa')
~ pd (a' )
of the rule of N- e l i mi na t i on ,
Using pd, we can derive the third Peano axiom
Mathematical induction
a
(x EN, . C(x) true) C(O) true
= a E N,
which we obtain by N- equa l i t y .
a'
N
€ N,
A
we arrive at
C E
o
function (prop-.'
erty) and suppressing the proofs (constructions) in the second and third premisses and in the
N
C(x') true
C(c) true If we explicitly write out the proof (construction) of C( ~), ' we s e e that it is obtained by recurs ion. S~ recursion and induction turn
Indeed, from a' = b' gether with pd(a')
€
=a
b' E N
beN
N, we obtain pd(a') = pd(b ') E N ~ h i c h, to e Nand pd(b')
= beN,
yields a
= bE
N by
symmetry and transitivity. We can also obtain it in the usual form (Vx,y)(x' =
s'
=> x = y) , that is , in the present symbo.lism ;
.(V X € N) ( V yEN) (I (N ,x' ,y')
::> I (N ,x, y»
true .
- 75 -
.:. 74 -
t h e least b ~ a such that Ap(f,b) = 02 e N 2,
In fact , assume x E. N, YE N and z EI(N,x· ,y·) . By I-elim ination, x'
=y'
E N; hence x
= yEN,
if such b exists ,
from which r e I(N,x,y) by I-intro-
r(a ,f) =
duction . Then , by A-abstraction , we obtain that (AX)(Ay)(Az)r is a proo f
{
(construction) of the claim . Example (addition) . We define
==
a + b
a, o therwise.
Su c h a function will be obtained by. solving the recur sio n equat ions :
° E N,
R(b,a ,(x,y)y '). (}dO,f)
The meaning of a + b is to perform b times l h e successor operation
lj1(a ' , f)
on a . Then one easily der ives the rules: where
a E N
bEN
f :;
C\ x)Ap(f,x') is f shifted one step to the le ft, L e .
.Ap (f , x) =.Ap(f ,x') E N (x EN) . In fact , in case the bound is ier o , 2 r (O ,f) = E N, irrespective o f wh a t function f i s . Wh en the boun d has
°
a + bEN
suc:es sor form , r(a ',f) = f(a ,f) ' EN , provided that f ( O) = f a l s e == a e N
a E N a
+
°
a + b'
a E N
°
bE N (a + b)'
e
'2 E N ; otherwise , f(a ' ,f) = eN. Therefore to compute r(a ,f ) , we 2 c a n shift f until the bound is 0 , but checking each t ime if th e v alue
N
at
° is
true
==
02 or false
==
'2' Even if it admits o f a pr im itive
from ·which we can also · derive the corresponding axioms of first
recursi ve solution , the problem is most
order arithmetic , l i k e in the preceding example . Note again that the
t y p e s, as we shall n6 w see in detail . We wa n t to fi n d a f u n c t i o n
equality here is not definitional.
r ex) E ( N-. N -+ N (xE N) such that 2)
~asily
sol ved t hrough h igh e r
Example (multiplication). We define
(r(O) = (AOO E ( N -' N~) -+ N, a • b
==
R(b ,O ,( x ,y)(y + a» .
ljL(a ')
Usua l properties of the product a . b can then easily be derived . Examp l~
(the bounded
~-operator).
2(Ap(f,O)
,0 ,AP(r(a), f)') e (N -+ N 2)
N,
so that we can define the function f(a ,.f) we ar e ·l oo k i ng f or by
We want to solve the problem:
given a boolean function f on natural numbers, Le . fEN -.N
find 2, the least argument , unde r the bound a EN , for which the value of f is
tru.e . Th e solution wil l be a function f-( x,f) E N (x E N, f E N-N
(),.f)R
putting r(a,f)
=
Ap(r(a) ,f). The requirements on rea) may be sat-
i sfied t h r o ug h an ordinary p rimitive r e c u r sio n , but on a h i gh e r t yp e ; th is task is fulfilled by the rul e of N- e li mi n a ti on. We obtain
2)
sat is f ying : under the premis ses a
E
N a n d feN -
N and ·h e n c e 2,
- 76 -
- 77 -
·,
Lists Written out in tree form the above proof of r(a,,c)
N looks as
E
We can follow ,t he
follows: (fE N-N (y e (N -+ N2) - N)
2)
, ,'i>
fEN - N 2
sa~e
o a
€
N
€
N
2
oeN
List-formation A set
Ap(y,r)'eN
List(A) set
R EN 2(AP(f,0),0,AP(y,f)')
(AnO e (N-N2)-aoN
(AnR
2(AP(f,0),0,AP(y,f)')
/4(a) = R(a,O.no,(X,y)(AnR/AP(f,O),O,AP(y,f)'»
E
(N-N
natural ,numbers
•
Ap(y,f) EN Ap(f,0)EN
~odefine
pattern used
to introduce oiher inductivel~ defined sets. We see here the example " o f lists'.
where the intuitive explanation is: List(A) is the set of lists of 2)-+N
e (N-N
2)-N
'e l eme n t s of the set A (finite sequences of elements of A) . f E N-N
2
List-introduction
,..(a,n == Ap(p.(a),n e N Observe how the evaluation of ,..(a,f) ==
a Ap(~(a),f)
€
b e List(A)
A
nil "'List(A)
,0),0 ,Ap(y,f)'»,n proceeds. First, a 2(Ap(f is evaluated. If the value of a is 0, the value of ~(a,f) equals the
(a.b) E List(A)
Ap(R(a, (Ano, (x,y) (AnR
where we may also use the notation () :: nil.
value of Ap«Af)O,f), which is 0. If, on the other hand, the value of a is b !, the value ofr(a,f) equals the value of
List-elimination (x C E
which, in turn, equals the value of
List(A)
d E: C(nil)
EA, Y eList(A) , z e C(y» e(x,y,z)
listrec(c,d,(x,y,z)e(x,y,z»
Next, Ap(f,O) is evaluated . If the value of Ap(f,O) is true
=
O 2, then the value of f(a,f) is O. If, on the other hand, the value of Ap(f,O) is false
of f(b,!)"
5 '2' then the value of r(a,f) equals
th~
value
where C(z) (z E List(A»
E:
C«x.y»
E C(c)
is a family of sets. The instructions to exe-
cute listrec are: first execute c, which yields ' either nil, in which case continue by executing d and obtainf e C(nil) = C(c), or (a .b) with a E A and b E List(A); in this case, execute e(a,b,listrec(b,d,(x,y,z)e(x,y,z») which yields a canonical element
~
[-
\
- 78 -
f & C«a .b)) =,C(c) . if we put g(c) _
listreb(c,d,(x ,y ,z)e(x,y , z)) ,
1 ,
l
- 79 -
....
We l l or de r i ng s
then f is the value of e(a ,b ,g(b ) . The concept, of wello'rdering a nd the principle of tra ns f i ni te Lis t-equali t y
induction were first introduced by Cantor . Once the y had been f o r( x e A, y & List (A), z E C(y»
mulated in ZF , however , they lost their original compu ta tional c ontent . We can construct ordinals intuitionistically a s wel lfounde d
d E C(nil) ,
e( x, y ,z) E C«x . y»
tistrec(nil,d ,(x ,y,z)e(x , i , z»
trees, which means that they are no longer totally orde red.
= d & C(nil) : W- f or ma t i on
, ( x E A, Y E Li st(A), z E C(y» (x
, a E. A
b ' E List{A)
d E C(nil)
," A)
e(x,y,z) 'E C«x .y » (Wx
= e(a ,b ,listrec(b ,d,( x , y ,z )e(x,r ,z») E ~«a.b» Simila r rule s could be gi ve n for f i ni te trees and other induc-
B(x) set
A set
lis t ~ ~c«a.b) ,d,( x ,y ,z)e(x,y,z»
A)B( x) set
E
Wha t does i t mean for c to be an element of ( Wx e A)B( x) ? It mea ns that, whe n calculated , c yields a value of the form sup( a ,b) f or
tively define d concepts .
some 'a and b , where a E A and b is a function such that , f or an y choice of an element v
~
sup(a
A and b
l,b l
) , whe r e a
l
E
B(a) , b applied to v yie l ds a val ue l
i s a function such t ha t , f or an y
in B(a ) , b appl ied to v has a value sup( a ,b , et c ., l l l l 2 2) until in any case (i .e . ho wever the success ive choices a re made) we
choice of v
eventually r ea c h a bottom element of t he form sup(an ,b
, where B( a n) n) i s empty , so t hat no choice of an e lem e nt in B(a ) i s poss ib le . The n
'
following picture, in whi c h we loosely wr it e b( v) f or Ap(b ,v ) ; ca n help (look at it from bottom to top) :
- 80 -
- 81 -
then it holds for sup(a,b) itself), then C(c) holds for an arbitrary ele~ent
c E (Wx e
~)B(x) .
(V x
E.
A bit more formally , A)(Yy e B(x) -- (Wx
«'Iv
c E (Wx E A)B(x)
E
€
A)B(x» ~
B(x»G(Ap(y ,v»
G(sup(x ,y») true
G(c) true Now we resolve ·t hi s , ~biaining the W-elimination rule . One of the c
sup(a,b)
premisses is that G(sup(x,y»
By the preceding explanation, the following rule for introducing ca-
is true , provided that x E A,
Y E B(x)-(Wx E A)B(x) and (Yv EB(x»G(Ap(y,v»
is t rue . Letting
d(x,y,z) be the function which gives the proof of G(sup(x,y»
nonical elements is justified:
terms of x E A, Y E B(x) _
(Wx
E
in
A·)B(x) and the proof z of
(Vv eB(x»C(Ap(y ,v», we arrive at the rule
W-introduction b
a E A
€
B(a) -
(Wx e A)B(x)
.W- e l i mi na t i on
sup(a ,b) e (Wx E A)B(x)
. (x e A, y e B(x) -+ (Wx e A)B(x), z
Think of sup(a,b) as the supremum (least ordinal greate r than ail) of the ordinals b(v), where v ranges
ov~r
B(a).
C
E.
(WXE A)B(x)
E.
(TTv E B(x»C(Ap(y ,v»)
d(x,y,z) e G(sup(x,y»
T(c,(x,y,z)d(x ,y ,z» E G(c)
We migh t also have a bottom clause, 0 E (Wx E A)B( x) for instance, but we obtain 0 by taking one set in B(x) set (x EA) to be
where T("c,(x,y,z)d(x,y,z» is executed as follows . First execute c ,
the empty set: i f a
which yields aup Ia j .b )
(y e: B(a
the components a and b and substitute them for x and y in d , obtaining
O»
E A and B(a : . No ' then RO(y) E (Wx E A)B(x) o) O so that sup(aO ,(Ay)RO(y» E. (Wx e A)B(x) is a . bo t t om el-
,
where a e A and b e B(a) _
(Wx E A)B(x) . Select
. d(a,b,z). We must now substitute for z the whole sequence of previous
ement . From the explanation of what an element of (Wx E A)B(x) is ,. we
function values . This sequence is (AV)T{Ap(b,v),(x,y,z)d(x,y,z» , be-
see the correctness of the elimination rule, ·which is at the same ·
cause Ap(b ,v) E (Wx E A)B(x) (VE B(a»
time transfinite induction and transfinite recursion . The appropriate
ates the subtrees (predecessors) of sup(a,b). Then
principle of transfinite induction is: if the property
d(a,b,(Av)T(Ap(b,v),(x ,y,z)d(x,y,z)}) yields a canonical element
G(w) (w
E
(Wx
E
A)B(x»
decessors Ap(b,v) e (Wx
is inductive (Le . i f i t holds f'or- ail preE
A)B(x) (v
€
B(a»
of' an element sup La b ) , j
is the function which enumer-
e E G(c) as value under the assumption that T(Ap(b,v),(x,y,z)d(x,y,z»
E
G(Ap(b,v»
(v e B(a» .
- 82 -
If we wri t e
f(c)
- 83 _-
== T(c , (x,y,z)d(x,y,z» , then, when c yields
We can giv e pictures :
sup(a,b), f(c) yields the same value as d(a,b,(Av) f(Ap(b,v») . This · (') i f
explanation also shows that the rule W- e qua l i ty (x
a e
A
E
A, y -" B(x) - (Wx "A)B(x) , z e (Ilv
b e B(a) --.. (Wx
E:
A)B( x )
E:
B(x»C(Ap(y ,v»)
d(x ,y ,z) " C(sup(x,y»
is
in C' ,
then we can buil d th e succ essor
oc ' :
T(sup(a,b)~(x,y,~)d(x,y ,z»)
= d(a,b ,(Av)T(Ap(b ,v),(x ,y ,z)d(x ,y ,z»)
E
C(sup(a,b»
i s co rrect . Example (the first number c lass) . Havt"ng access to the W- ope r a tion and a family of sets B(x) (x e N such that B(02) = NO and 2) B('2) = N" we may define the first number class as ( Wx E N ) B( X) 2 instead of taking i t as primitive .
,( 2 ) i f
Example (the second number class) . We give here the rules for a simple set of ordinals , namel y the s e t
() of all ordinals of the sec-
ond numbe r class , an d show how they a re obtained as i ns t a nce s of the
is a sequence of ordinals in- 0
general r ul es for we l l or de r i ngs.
sgp(~) :
,
the-n we can build the sup rem um
" - format ion " set Cantor gene rated the second number class from the initial ordinal 0 by applying t he f oll owi ng t wo principles : ( 1) given
01 E
Cl , fo rm the successor
So 0( '
e:
CJ ;
( 2) g i ven a sequence of ordinals 0(0' 0(, ,0(2 ' ... i n
o
wil l be inductively defined by the three rules : ~-introduct ion
0 , form the
l east o rd inal i n Cl greater than each element of the sequence . a'
E
C;
'· I
- 84 -
q
- 85 -
, -=•.
1. - ..
Transfinite induction over (x E C E
C
C(O) true
0
is evident, and it is given by
C , C(x) true)
(z
E N-O, (Vn C(sup(z»
C(x ') true
E
N)C(Ap(z,n»
true)
true
C(c) true
.
.
:whe r e B(x) (x E N3) is a family of sets such that B(03) = No , B(l;) = Nl ·a nd B(2 3) = N. Such a f~ily can be construc ted by means . of' ·t he universe rules. Example (initial elements of wellorderings). We want to show
where C(z) (z EO) is a property over 0 . Writing it with proofs,
that, if at ·l eas t one index set is empty, then the wellordering
we obtain
(Wx E A)B(x) is nonempty. Recall that we want to do it i nt ui t i onistically, and recall that A true is equivalent to A nonempty , so
o -elimination
that -.A true is equivalent to A empty . So our claim ..is : (x E 0, Y E C(x»
C E
0
d E C( 0)
(z E N--Cl, WE (Tln
e(x,y) E C(x')
E
N)C(Ap(z,n»
(3 x
E
A) "'B(x)~ (Wx e A)B(x) true.
f(z,w) E C(sup(z» To see this, assume x e A, y
T(c,d,(x,y)e(x,y),(z,w)f(z ,w»
E C(c)
Ap(y,v)
whe r e the transfinite recursion operator T is executed as follows .
if we get 0 EO , the value of T(c,d,(x,y)e(x,y),(z,w)f(z,w» E
=JL
-'B(x) and
and hence RO(Ap(y,v»
v
E B(x). Then
E (Wx E A)B(x), appiying
the rule of NO-elimination. We now abstract on v to get (AV)RO(AP(y ,v»
First , execute c. We distinguish the three possible cases:
is the value of d
NO
€
E
E B(x) ~ (Wx
sup(X,O,V)RO(Ap(y,v») E (Wx by · t -elimination, we have
C(O);
€
A)B(x) and, by W-introduct~?n ,
E
A)B(x). Assuming z
E(z,(X ,Y)SUP(X,(AV)RO(AP(Y,~ '»»
E
(Ex
E
A) ...... B(x) ,
e (Wx EA)B(x) ,
if we get a', then the va l ue is the value of from which , by A-abstraction on z,
e(a,T(a,d,(x ,y)e(x ,y) ,(z,w)f(z ,w») ;
(AZ)E(z, (x,y)sup(x, ()W)RO(AP(y,v»»
if we get sup(b), we continue by executing f(b,(AX)T(Ap(b,x) ,d,(x,y)e(x,y),(z,w)f(z,w»).
(including
E
A) ..... B(ic) __ (Wx
E
A)B(x) .
We now want to show a converse . However, note that we cannot
In any case, we obtain a canon ;• c a l · e l eme nt of C(c) as result. It is now immediate to check that we can obtain all
e 0:: x
Cl-rules
have (Wx
E
A)B(x) -
(3 x
E
A) oBex) true, because of the intuition -
·i s t i c meaning of the existential quantifier. But we do have :
Cl-equality, which has not been spelled out) as instances
(Wx E A)B(x)_ ..... ( Vx
E
A)B(x) true.
of the W-rules if we put Assume x e A,
y
e B(x) -
(Wx
€
A)B(x) and z E. B(x) -- NO' Note that
-_. ..
(Tl v e B(x»C(Ap(y,v»
- _ -. ....
.... - .
-.~
..
- 87 ...
- 86 -
B(x) _ NO _
-
-~ .
for C(w)
==
apply the rule of W-~limination. Assuming f E (nx Ap(f,x) E B(x), and hence also Ap(z,Ap(f,x»
Universes
NO' so that we can 'E
A)B(x), we have So far, we only have a structure of finite types, because we
E NO' Ap(z,Ap(f,x)
takes the role of d(x,y ,z) in the rule of W-elimination. So, if we
'c a n only iterate the given set forming operations starting from
assume w E (Wx E A)B(x), we obtain T(w,(x,y,z)Ap(z,Ap(f,x») E NO'
I(A,a,b), NO' N, i ... and N a finite number of th~
Abstracting on f, we hage (\f)T(w,(x,y,z)Ap(z;Ap(f,x»)
times~
'To strengthen
language, we can add transfinite types , which in our language
are obtained by introducing univers~s. Recall that there can be no E
~(vx
E
A)B(x),
set of all sets, because we are not able to exhibit once and for all all possible set forming operations. (The set of all sets would have
and, abstracting on w, we have
to be defined by prescribing how to form its canonical elements, i.e .
(\W){Af)T(w,(x,y,z)Ap(z,AP(f,x») e (Wx e A)B(x)- -.(Vx
sets . But this is impossible, since we can always perfectly well de -
E
A)B(x).
scribe new sets, for instance, the set of all ,s e t s itself.) However , we need sets of sets , for instance, in category theory. The idea 'is to define
~
universe as the least set closed under certain specified
set".f' o r-mf.n g operations . The operations we have been using so f'ar- are : (x
A'set (Tl x
(x E A)
e.A)
B(x) set E
A set
A)B(x) set
(L
x
E
B(x) set
A set
A)B(x) set
A
+
B set B set
(x e A)
A 'set
b,
c E A
A set
Bf x ) set
N,set • . • N set I(A,b,c) set
(Wx E A)B(x) set
There are two possible ways of building a universe, i .e . to obtain closure under possibly transfinite iterations of such operations . Formulation
a
la Russell. Consider n, I: , .. . both as, set
forming operations and as operations to form canonical e lements of
l' - 88 -
t he set U, the un i vers e . Thi s is
a
Formulation
l~ k e
- 89 -
i n r amifie d t yp e t he ory . a e U
la Tarski . So c a l l e d because of th e s i mi l a r i t y
between the family T(x)(x e U) below and Tarski's ~ruth definition . We use new symb ols, mirroring (reflecting ) T1 , c a non i c a l ' e l e ~ e n ts
L , .. . ,
b e T(a)
. c e T(a)
a
Ha,·b,c) e U
E U
b e T(a)
T(i(a, b,c»
t o buil d the
C
E
T(a)
= I(T(a),b,c)
o f U. Then U.consists of indices o f sets (like in
recursion theory) . So we will have the rules:
T(n, )
U-formation n
a
E:
U
T(o)
E U
=N
U set T(a) s et (xET( a » U an d T(x)(x
E
d~fined
U) a r e
by a simult an eous t r an sfini te i nduQtion,
a
E
U
b( x )
E
U
E
U
whi c h, as usual , .c a n be read off the f ollowing introduction ruies: w(a,(x)b(x» U- i n t r oduc t io n
a e U
(x E
T(a»
b(x)
E
U
(x
a
E
U
E
T(a»
e U
(a ,(x )b(x»
T( rr ( a, (x )b(x »)
a 0"
E
U
T(a»
E
b(x)
(a , (x Ib Ix )
a e U
a
E
U
E
U
b E U
+ ·b E U
a e U T( a(a,bdb(x»)
a E U
U
(nx
E
T( a) ) T( b( x»
(x
E
T(a»
b ( x)
E
U
T(w( a ,(x)b(x ») = (Wx
E
T(a»T(b(x»
EO
b Cx )
EO
t ( a) e U '
U
(Lx e T(a»T(b(x»
b E U
T' (u ) = U
E U
a
T' (t (a »
. U-formati on '
T(a + b ) = T(a ) + T(b )
A e 'U A set ·
-
r--
E
U
~ T(a )
then a th ird uriivers~ U'; , .a n d so on . In ~he formulatio~ a la Rus sell , T disappears an d we· on I y use capital l e tt e r s . So the above ru les are turned into:
U s et
1-
T(a »
.b (x ) e. U
a (x
a
EO
We co uld at .t hi S poi nt itera t e the process, ob t a i ni ng . a second univer.se U'wi th the two new intro.d:uction rules: u.e U'
n
(x
9
D .
'1\.
'
- 9' -
- 90 -
but it is not small. Using U, we c a n form t ransfini te t ypes (using a
U-introduction
recursion with value in U, for instance) . (x Eo A)
(x e A)
B(x) Eo U
A e U
(nx
E
A)B(x)
(L x
U
E
B(x)
A e U E
A)B(x)
E
€
The set V U
=
(Wx € U)T(x) (or , in the formulation
a
la Russell ,
simply (WX E U)X) has been used by Aczel'4 to give meaning to a con structive version of Zermelo-Fraenkel set theory via intuitionistic
U
type theory . Example (fourth Peano axiom). We now want to . prove ·t he fourth A e U A + B
B E U E
I(A ,b ,c)
U
c eA .
b,
A E U
E
Peano axiom, which is the only one not trivially derivable from our rules. So the claim i s:
U
(\Ix e N) N
e
U
~I(N,O, x')
tru e.
We use U-rules in the proof ; it is probably not possible to prove it otherwise . From N set, Now assume y
(x e A)
€
°e
N, x EN we have x ' e Nand I( N,O ,x ') set .
° : x'
I(N,O,x') . Then, by I-elimination,
troduction , nO e U and n, eU. Then we define f(a) A
E
U
B(x) e U
=
e N. By U-in -
R(a ,no ,(x ,y)n ,) ,
so that f(O) : nO e U and f(a') : n, e U provided that a e N. From
° : x'
(Wx e A)B(x) e U
e N, we get, by the equality part of the N-elimination rule ,
R(O,nO,(x,y)n,) : R(x',no,(x,y)n,)
€
U. But R(O ,nO ,(x ,y)n,) : nO e U
However, U i tself is not an elemnt of U. In'3 fact, the axiom U E U leads to a contradiction (Girard's paradox ) . We say that a set A is
and R(x ',no,(x,y)n,) : n, e U by the rule of N-equality . So , by symme-
small , or a U-set , if it has a code a E U,that is, 'if there is an
part of the U-formation rule , T(n
A. M~re generally, a family A(x" . " , x ) (x, E A" .• . , x n e An( x" .. . • ,x n_, » is said 'to b~ small n provided A(X, , '" , x ) : T(a(x, , " •.,x n (x, E A" ...• , . n x e A (x,,·••• ,x ,» for some indexing function a(x" .•.. ,x n) .. n n n. / E A x e A (x .. . x So the category of small sets ( x, -: , " .. , n n' , , n-' ' . i s closed under the oper.ations E ., n , etc. U is a perfectly good . set,
element a E U such that T(a)
»
».
e:y
'3 J . Y. Gir.a·rd, Interpretation fonctionnelle et elim.inat~on .de s coupures de l 'arithmetique d'o rdre superieur, These, Universite .Pa r i s VII, ' 972.
try and transitivity, nO : n,
E
U. · By the (implicitly given) equality
: NO : T(n,) ' Hence ; from T(n o) O) and T(n,) : N,,' NO: N,. Since 0, eN" we also have O, .E .N ' So O (AY)O, e I(N,O,x') -NO and (AX)(AY)O, E (Yx EN) -'I(N ,O , x ') . We remark that, while it is obvious (by reflect ing on its meaning) that 0: a' EN is not provable , a proof of
~I(N ,O ,a ')
true
seems to involve treating sets as elements ift order :to def ine a proposi tional function which is
1.
on
° and
T on a ' .
'4 . P. Aczel, The type theoretic interpretation of constructive ' s e t theory, Logic Colloquium 77, Edited by A. Macintyre , L. Pacholski and J . Paris, North-Holland, Amsterdam , '978, pp . 55-66 . '