APPLIKATIVE THEORIEN UND EXPLIZITE MATHEMATIK Sommersemester 1996 Gerhard Jager Leitung und Durchfuhrung des U bungsbetriebs: Thomas Strahm Ausarbeitung des Skripts: Marc Wirz Literaturverzeichnis [1] Barendregt, H. P. The Lambda Calculus, revised ed. North Holland, Amsterdam, 1984. [2] Beeson, M. J. Foundations of Constructive Mathematics: Metamathematical Studies. Springer, Berlin, 1985. [3] Cantini, A., and Minari, P. Uniform inseparability in explicit mathemathics. Preprint, Firenze, 1996. [4] Feferman, S. Denedness. Erkenntnis . To appear. [5] Feferman, S. A language and axioms for explicit mathematics. In Algebra and Logic, J. Crossley, Ed., vol. 450 of Lecture Notes in Mathematics. Springer, Berlin, 1975, pp. 87{139. [6] Feferman, S. Constructive theories of functions and classes. In Logic Colloquium '78, M. Boa, D. van Dalen, and K. McAloon, Eds. North Holland, Amsterdam, 1979, pp. 159{224. [7] Feferman, S., and Jager, G. Systems of explicit mathematics with non-constructive -operator. Part I. Annals of Pure and Applied Logic 65, 3 (1993), 243{263. [8] Feferman, S., and Jager, G. Systems of explicit mathematics with non-constructive -operator. Part II. Annals of Pure and Applied Logic 79, 1 (1996). i [9] Girard, J.-Y. Une extension de l'interpretation fonctionelle de Godel a l'analyse et son application a l'elimination des coupures dans l'analyse et la theorie des types. In Proceedings Second Scandinavian Logic Symposium. North Holland, Amsterdam, 1971, pp. 63{92. [10] Girard, J.-Y. The system F of variables types, fteen years later. Theoretical Computer Science 45 (1986), 159{192. [11] Girard, J.-Y., Taylor, P., and Lafont, Y. Proofs and Types. Cambridge University Press, 1989. [12] Gla, T. Standardstrukturen fur Systeme Expliziter Mathematik. PhD thesis, Westfalische Wilhelms-Universitat Munster, 1993. [13] Jager, G. Power types in explicit mathematics. Journal of Symbolic Logic . To appear. [14] Jager, G. Induction in the elementary theory of types and names. In Computer Science Logic '87, E. Borger et al., Ed., vol. 329 of Lecture Notes in Computer Science. Springer, Berlin, 1988, pp. 118{128. [15] Jansen, D. Zu den Potenztypen in expliziter Mathematik. Master's thesis, Mathematisches Institut, Universitat Bern, 1996. [16] Reynolds, J. Towards a theory of type structure. In Paris Colloquium on Programming, vol. 19 of Lecture Notes in Computer Science. Springer, 1974, pp. 408{425. [17] Strahm, T. Theories with self-application of strength PRA. Master's thesis, Institut fur Informatik und angewandte Mathematik, Universitat Bern, 1992. [18] Strahm, T. On the Proof Theory of Applicative Theories. PhD thesis, Institut fur Informatik und angewandte Mathematik, Universitat Bern, 1996. ii [19] Troelstra, A. Notes on intuitionistic second order arithmetic. In Cambridge Summer School in Mathematical Logic, vol. 337 of Lecture Notes in Mathematics. Springer, 1973, pp. 171{203. [20] Troelstra, A., and van Dalen, D. Constructivism in Mathematics, vol. I. North-Holland, Amsterdam, New York, 1988. [21] Troelstra, A., and van Dalen, D. Constructivism in Mathematics, vol. II. North Holland, Amsterdam, New York, 1988. iii Inhaltsverzeichnis 1 Logik der partiellen Terme 1 1.1 Die Syntax der Logik der partiellen Terme : : : : : : : : : : 1 1.2 Die Semantik der Logik der partiellen Terme : : : : : : : : : 8 2 Applikative Theorien 12 2.1 Die Theorie BON : : : : : : : : : : : : : : : : : : : : : : : : 12 2.2 Kombinatorische Eigenschaften von BON : : : : : : : : : : : 15 2.3 Denition by Cases auf dem Universum : : : : : : : : : : : : 20 2.4 Induktionsprinzipien : : : : : : : : : : : : : : : : : : : : : : 21 2.5 Das rekursionstheoretische Modell PRF : : : : : : : : : : : 24 2.6 Das Graphmodell G : : : : : : : : : : : : : : : : : : : : : : : 25 2.7 Die Termmodelle CNT und CT T : : : : : : : : : : : : : : : 28 2.8 Eine allgemeine Modellkonstruktion : : : : : : : : : : : : : : 34 2.9 Mengentheoretische Modelle : : : : : : : : : : : : : : : : : : 38 iv 3 Explizite Mathematik 40 3.1 Die Theorie EET : : : : : : : : : : : : : : : : : : : : : : : : 41 3.2 Ontologische U berlegungen : : : : : : : : : : : : : : : : : : : 45 3.3 Formen der Induktion in der expliziten Mathematik : : : : : 47 3.4 L p -Strukturen : : : : : : : : : : : : : : : : : : : : : : : : : : 49 3.5 Standardmodelle von EET : : : : : : : : : : : : : : : : : : : 51 3.6 Die Hierarchie endlicher Typen : : : : : : : : : : : : : : : : 53 3.7 Die Theorie SET : : : : : : : : : : : : : : : : : : : : : : : : 56 3.8 Standardmodelle von SET : : : : : : : : : : : : : : : : : : : 57 3.9 Polymorphismus in expliziter Mathematik : : : : : : : : : : 60 v Kapitel 1 Logik der partiellen Terme Die Logik der partiellen Terme in der hier eingefuhrten Form geht auf Beeson und Feferman zuruck. Sie ist verwandt zur Logik mit Existenzpradikat im Sinne von Scott. Fur weitere Details und Hintergrundinformationen sei auf folgende Arbeiten und Lehrbucher verwiesen: [2, 4, 17, 20, 21]. 1.1 Die Syntax der Logik der partiellen Terme 1.1.1 Denition Eine Sprache L der Logik der partiellen Terme umfasst folgende Grundzeichen: 1. Abzahlbar unendlich viele Variablen v0; v1; : : :; vi; : : : (i 2 IIN): 2. Die logischen Symbole : (nicht), _ (oder) und 9 (es gibt). 3. Das 1-stellige Symbol # fur Deniertheit und das 2-stellige Symbol = fur Gleichheit. 4. Fur jede naturliche Zahl n eine (eventuell leere) Menge von n-stelligen Funktionssymbolen. 1 5. Fur jede naturliche Zahl n eine (eventuell leere) Menge von n-stelligen Relationssymbolen. 6. Hilfszeichen. Die 0-stelligen Funktionssymbole von L nennen wir die Konstanten von L. Ausserdem setzen wir im folgenden voraus, dass die Grundzeichen verschiedener Art voneinander verschieden sind. 1.1.2 Denition Die L-Terme werden induktiv deniert durch: 1. Jede Variable und jede Konstante von L ist ein L-Term. 2. Sind a1 ; : : : ; an L-Terme und ist f ein n-stelliges Funktionssymbol von L mit n 1, so ist f (a1; : : : ; an) ein L-Term. Sind a; b sowie a1; : : : ; an L-Terme und ist R ein n-stelliges Relationssymbol von L, so bezeichnen wir die Ausdrucke a#, (a = b) sowie R(a1 ; : : : ; an) als Atomformeln von L. 1.1.3 Denition Die L-Formeln werden induktiv deniert durch: 1. Jede Atomformel von L ist eine L-Formel. 2. Ist A eine L-Formel, so ist :A eine L-Formel. 3. Sind A und B L-Formeln, so ist (A _ B ) eine L-Formel. 4. Ist A eine L-Formel und x eine Variable von L, so ist 9xA eine L-Formel. Anstelle von L-Termen und L-Formeln sprechen wir haug nur von Termen und Formeln, sofern der Bezug auf die Sprache L klar oder unwichtig ist. Bei Formeln lassen wir oft Klammern fort, wenn dadurch keine Unklarheiten 2 entstehen. Wir verwenden die Vektor-Notation zur Bezeichnung endlicher Folgen von Termen und schreiben z.B. ~a oder ~b fur a1; : : : ; am oder b1 ; : : : ; bn. Die Lange einer solchen Folge ergibt sich aus dem Kontext. Mitteilungszeichen (auch mit Indizes) u; v; w; x; y; z; f; g; h a; b; c; r; s; t A; B; C; D; E; F fur Variablen; fur Terme; fur Formeln. 1.1.4 Denition 1. (A ^ B ) := :(:A _ :B ): 2. (A ! B ) := (:A _ B ): 3. (A $ B ) := (A ! B ) ^ (B ! A): 4. 8xA := :9x:A: 5. (a ' b) := (a# _ b# ! a = b): 6. (a = 6 b) := a# ^ b# ^ :(a = b): 1.1.5 Denition Fur jeden L-Term a wird die Menge FV (a) der Variablen von a induktiv deniert durch: 1. Ist a eine Variable von L, so ist FV (a) := fag. 2. Ist a eine Konstante von L, so ist FV (a) := ;. 3. Sind a1 ; : : : ; an L-Terme, ist f ein n-stelliges Funktionssymbol mit n 1 und ist a von der Form f (a1; : : : ; an), so ist FV (a) := FV (a1 ) [ : : : [ FV (an): 3 Ein Term a heisst geschlossen, falls FV (a) = ; ist. 1.1.6 Denition Fur jede L-Formel A wird die Menge FV (A) der freien Variablen von A induktiv deniert durch: 1. Ist A von der Form a#, so ist FV (A) := FV (a). 2. Ist A von der Form (a = b), so ist FV (A) := FV (a) [ FV (b). 3. Ist R ein n-stelliges Relationssymbol von L und ist A von der Form R(a1 ; : : : ; an ), so ist FV (A) := FV (a1 ) [ : : : [ FV (an ). 4. Ist A von der Form :B , so ist FV (A) := FV (B ). 5. Ist A von der Form (B _ C ), so ist FV (A) := FV (B ) [ FV (C ). 6. Ist A von der Form 9xB , so ist FV (A) := FV (B ) n fxg. Eine Formel A heisst geschlossen (oder Satz), falls FV (A) = ; ist. 1.1.7 Denition Fur jeden L-Term t sowie alle Variablen ~x = x1 ; : : : ; xn von L und alle L-Terme ~a = a1 ; : : : ; an wird der L-Term t[~a=~x] induktiv deniert durch: 1. Ist t eine Variable xi mit 1 i n, so ist t[~a=~x] := ai. 2. Ist t eine von x1 ; : : : ; xn verschiedene Variable oder eine Konstante von L, so ist t[~a=~x] := t. 3. Ist f ein ein m-stelliges Funktionssymbol von L mit m 1 und ist t von der Form f (s1; : : : ; sm), so ist t[~a=~x] := f (s1[~a=~x]; : : : ; sm[~a=~x]): 4 1.1.8 Denition Fur jede L-Formel A sowie alle Variablen ~x = x1 ; : : : ; xn von L und alle L-Terme ~a = a1 ; : : : ; an wird die L-Formel A[~a=~x] induktiv deniert durch: 1. Ist A von der Form t#, so ist A[~a=~x] := t[~a=~x]#. 2. Ist A von der Form (s = t), so ist A[~a=~x] := (s[~a=~x] = t[~a=~x]). 3. Ist R ein m-stelliges Relationssymbol von L und ist A von der Form R(t1 ; : : : ; tm ), so ist A[~a=~x] := R(t1 [~a=~x]; : : : ; tm [~a=~x]). 4. Ist A von der Form :B , so ist A[~a=~x] := :B [~a=~x]. 5. Ist A von der Form (B _ C ), so ist A[~a=~x] := (B [~a=~x] _ C [~a=~x]). 6. Ist A von der Form 9xB und ist xi1 ; : : : ; xik die Folge der Variablen aus fx1 ; : : : ; xn g \ FV (A), dann ist A[~a=~x] := 9yB [ai1 ; : : : ; aik ; y=xi1 ; : : : ; xik ; x]: Dabei sei y die Variable x, falls x in ai1 ; : : : ; aik nicht auftritt; andernfalls sei y die in der Aufzahlung v0; v1; v2; : : : erste Variable, die nicht in B; ai1 ; : : : ; aik vorkommt. 1.1.9 Bemerkung A[a1 ; : : : ; an=x1; : : : ; xn] ist diejenige Formel, die da- durch aus A entsteht, dass die freien Vorkommnisse der Variablen x1 ; : : : ; xn simultan durch a1; : : : ; an ersetzt werden. Dabei mussen zur Vermeidung von Variablenkollisionen manchmal Umbenennungen von (gebundenen) Variablen durchgefuhrt werden. Wird die Formel A durch B (~x) bezeichnet, so schreiben wir im folgenden haug (etwas unprazise) B (~a) anstelle von A[~a=~x]. 5 Im folgenden stellen wir nun die Axiome und Schlussregeln der Logik der partiellen Terme zusammen und wahlen dafur die Form eines Hilbert-Kalkuls. Ausserdem beschranken wir uns auf den klassischen Fall; es ist oensichtlich, wie diese Axiome und Schlussregeln modiziert werden mussen, um die intuitionistische Logik der partiellen Terme zu erhalten. I. Aussagenlogische Axiome und Regeln. Wie ublich. II. Quantorenaxiome und Quantorenregeln. Fur alle L-Formeln A und B , alle L-Terme a und alle Variablen x von L: A!B A[a=x] ^ a# ! 9xA und 9xA ! B Dabei wird im Fall der Regel gefordert, dass die Variable x kein Element von FV (B ) ist. III. Deninertheitsaxiome. Fur alle n-stelligen Funktionssymbole f und Relationssymbole R von L sowie alle L-Terme a; b und t1; : : : ; tn: (D1) a#, falls a eine Variable oder Konstante von L ist. (D2) f (t1; : : : ; tn)# ! t1 # ^ : : : ^ tn#: (D3) (a = b) ! a# ^ b#: (D4) R(t1; : : : ; tn) ! t1# ^ : : : ^ tn#: IV. Gleichheitsaxiome. Fur alle n-stelligen Funktionssymbole f und Relationssymbole R von L sowie alle L-Terme a; b; c; s1; : : : ; sn und t1; : : : ; tn: (E1) (a = a), falls a eine Variable oder eine Konstante von L ist. (E2) (a = b) ! (b = a). (E3) (a = b) ^ (b = c) ! (a = c). 6 (E4) R(s1; : : : ; sn) ^ (s1 = t1 ) ^ : : : ^ (sn = tn) ! R(t1; : : : ; tn). (E5) (s1 = t1 ) ^ : : : ^ (sn = tn) ! f (s1; : : : ; sn) ' f (t1; : : : ; tn). Mit der Bezeichnung LPT ` A drucken wir aus, dass die Formel A im Hilbertkalkul, der durch die Axiome und Schlussregeln I IV gegeben ist, hergeleitet werden kann. Daher bedeutet LPT ` A, dass die Formel A in der Logik der partiellen Terme bewiesen werden kann. Die Axiome (D2), (D3) und (D4) werden manchmal als Striktheitsaxiome bezeichnet. In einem gewissen Sinne entspricht (D2) einer Call-by-ValueBerechnungsstrategie. Ausserdem ist leicht zu sehen, dass sich aus den aussagenlogischen Axiomen und Regeln sowie den Quantorenaxiomen und Quantorenregeln folgende beiden Eigenschaften der Logik der partiellen Terme zeigen lassen. (1) LPT ` 8xA ^ a# ! A[a=x]. (2) Ist x 62 FV (A), so gilt: LPT ` A ! B =) LPT ` A ! 8xB . 1.1.10 Bemerkung Fur alle L-Terme a und b sowie alle Variablen x von L gilt: LPT ` a# und LPT ` b# =) LPT ` a[b=x]#: Beweis Aus LPT ` a# erhalten wir durch einige Umformungen in der Logik der partiellen Terme auch LPT ` 8x(a#): Ausserdem gilt ganz allgemein LPT ` 8x(a#) ^ b# ! a[b=x]#: Daraus folgt die Behauptung durch zweifache Anwendung des Modus Ponens. 7 1.2 Die Semantik der Logik der partiellen Terme In diesem Abschnitt sei L weiterhin eine Logik der partiellen Terme. Wir fuhren nun eine 2-wertige Semantik fur L ein, die auf den Wahrheitswerten t (wahr) und f (falsch) basiert. Im Gegensatz zur ublichen Semantik der klassischen Pradikatenlogik arbeiten wir mit Strukturen, bei denen die Funktionssymbole als partielle Funktionen interpretiert werden konnen. 1.2.1 Denition Eine partielle L-Struktur ist ein 5-Tupel M = (M; I0 ; I1; I2; `); das folgende Bedingungen erfullt: 1. M ist eine nichtleere Menge und ` ein Objekt, das nicht zu M gehort. 2. I0 ist eine Abbildung, die jedem n-stelligen Relationssymbol R von L eine n-stellige Funktion I0(R) von M nach ff; tg zuordnet. 3. I1 ist eine Abbildung, die jeder Konstanten c von L ein Element I1(c) aus M zuordnet. 4. I2 ist eine Abbildung, die jedem n-stelligen Funktionssymbol f von L mit n 1 eine n-stellige partielle Funktion I2(f ) von M nach M zuordnet. Ist M = (M; I0; I1; I2; `) eine partielle L-Struktur, so schreiben wir haug jMj fur das Universum M von M, ./M fur das ausgezeichnete Objekt `, das nicht zu jMj gehort sowie RM; cM und f M fur die Interpretationen I0 (R); I1(c) und I2(f ) der Relationssymbole R, Konstanten c und (mindestens 1-stelligen) Funktionssymbole f . 8 1.2.2 Denition 1. Eine Variablenbelegung in der nichtleeren Menge M ist eine Abbildung, die jeder Variablen vi mit i 2 IIN einen Wert (vi) 2 M zuordnet. 2. Gegeben seien eine Variablenbelegung in der nichtleeren Menge M , ein Element m aus M und eine Variable u. Dann bezeichnen wir mit [u=m] die Variablenbelegung in M , die u auf m abbildet und sonst mit ubereinstimmt, d.h. 8 < [u=m](v) := : m; falls v = u; (v); sonst: 1.2.3 Denition Fur jede partielle L-Struktur M und jede Variablenbelegung in jMj wird der Wert M(t) 2 jMj[f./Mg eines L-Terms induktiv deniert durch: 1. Ist t eine Variable von L, so ist M (t) := (t). 2. Ist t eine Konstante von L, so ist M(t) := tM. 3. Nun sei t von der Form f (t1; : : : ; tn) fur ein n-stelliges Funktionssymbol von L mit n 1. Sind M(t1); : : : ; M(tn) Elemente von jMj und ist f M fur (M (t1 ); : : : ; M (tn )) deniert, so ist M(t) := f M(M(t1); : : : ; M(tn)); sind andererseits M (t1); : : : ; M(tn) Elemente von jMj und ist f M fur (M(t1 ); : : : ; M(tn)) nicht deniert oder ist M(ti) = ./M fur eine naturliche Zahl i mit 1 i n, so ist M(t) := ./M . 1.2.4 Denition Fur jede partielle L-Struktur M und jede Variablenbelegung in jMj wird der Wert M(A) 2 ff; tg einer L-Formel A induktiv deniert durch: 9 1. Ist A von der Form a#, so ist 8 < M(A) := : t; falls M (a) 2 jMj; f; sonst: 2. Ist A von der Form (a = b), so ist 8 >> t; falls M(a) 2 jMj; M(b) 2 jMj < M(A) := > und M(a) = M(b); >: f; sonst: 3. Ist A von der Form R(a1; : : : ; an) fur ein n-stelliges Relationssymbol R von L, so ist 8 >> t; falls M(a1 ) 2 jMj; : : :; M(an) 2 jMj < M(A) := > und RM(M(a1 ); : : : ; M(an )) = t; >: f; sonst: 4. Ist A von der Form :B , so ist 8 < M(A) := : t; falls M(B ) = f; f; sonst: 5. Ist A von der Form (B _ C ), so ist 8 < M(A) := : t; falls M(B ) = t oder M(C ) = t; f; sonst: 6. Ist A von der Form 9xB , so ist 8 < M(A) := : t; falls M[x=m](B ) = t fur ein m 2 jMj; f; sonst: 10 Ist M eine partielle L-Struktur und A eine L-Formel, so nennen wir A gultig in M und schreiben dafur M j= A, falls M (A) = t fur alle Variablenbelegungen in jMj gilt. M heisst Modell einer Menge Th von L-Formeln, in Zeichen M j= Th, falls alle Formeln aus Th in M gultig sind. Ist schliesslich A in allen L-Strukturen gultig, so bezeichnen wir A als gultig in der Logik der partiellen Terme; als Notation dafur verwenden wir LPT j= A. Das folgende Theorem besagt, dass der Hilbert-Kalkul des vorhergehenden Abschnittes eine korrekte und vollstandige Axiomatisierung der Logik der partiellen Terme im Sinne der eben eingefuhrten Semantik ist. Auf einen Beweis dieses Satzes wird verzichtet. 1.2.5 Theorem Fur jede L-Formel A gilt: LPT ` A () LPT j= A: 11 Kapitel 2 Applikative Theorien Applikative Theorien bilden den erststugen Teil von Systemen expliziter Mathematik, die im nachsten Kapitel eingefuhrt werden. Bei den hier dargestellten Resultaten handelt es sich im wesentlichen um Standardergebnisse, und wie fruher wird darauf verzichtet, jeweils die genauen Literaturangaben anzufuhren. Zentrale Texte sind etwa [2, 5, 7, 8, 18, 20, 21]. 2.1 Die Theorie BON Als erste applikative Theorie betrachten wir die Basic Theory of Operations and Numbers BON. Sie umfasst eine Axiomatisierung von partiellen kombinatorischen Algebren, Paarbildung und Projektionen sowie einige Grundeigenschaften naturlicher Zahlen. BON ist formalisiert in der Sprache Lp der Logik der partiellen Terme, die die Konstanten k; s (Kombinatoren), p; p0; p1 (pairing, unpairing), 0 (Zero), sN (Numerical Successor), pN (Numerical Predecessor), dN (Denition by Numerical Cases) und rN (Recursion) umfasst. Dazu kommen ein 2-stelliges 12 Funktionssymbol , das inx geschrieben wird, fur die Applikation von Objekten sowie ein 1-stelliges Relationssymbol N fur die Menge der naturlichen Zahlen. Folglich werden die Lp -Terme generiert durch: 1. Jede Variable und jede Konstante von Lp ist ein Lp-Term. 2. Sind a und b Lp-Terme, so ist auch (a b) ein Lp-Term. Wir schreiben (a b) oft nur als (ab) oder ab und vereinbaren Klammerung nach links, so dass ab1 : : : bn fur (: : : (ab1 ) : : : bn) steht. Ausserdem sei a0 der Term sNa, 1 der Term 00 und (a; b) der Term pab. Die n-Tupel (a1 ; : : : ; an) werden induktiv deniert durch (a1 ) := a1 und (a1 ; : : : ; an+1) := ((a1 ; : : : ; an); an+1). Im Zusammenhang mit dem Relationssymbol N verwenden wir folgende Abkurzungen: a2N (9x 2 N)A (8x 2 N)A (a : N ! N) (a : Nn+1 ! N) := := := := := N(a); 9x(x 2 N ^ A); 8x(x 2 N ! A); (8x 2 N)(ax 2 N); (8x 2 N)(ax : Nn ! N): Die Theorie BON umfasst die Axiome und Schlussregeln der Logik der partiellen Terme LPT formuliert fur die Sprache Lp. Die nichtlogischen Axiome von BON lassen sich in die folgenden funf Gruppen unterteilen. I. Partial Combinatory Algebra (1) kxy = x. (2) sxy# ^ sxyz ' (xz)(yz). 13 II. Pairing and Projections (3) p0 x# ^ p1x#. (4) p0 (x; y) = x ^ p1 (x; y) = y. III. Natural Numbers (5) 0 2 N ^ (8x 2 N)(x0 2 N): (6) (8x 2 N)(x0 = 6 0 ^ pN(x0 ) = x): (7) (8x 2 N)(x = 6 0 ! pNx 2 N ^ (pNx)0 = x): IV. Denition by Numerical Cases (8) u 2 N ^ v 2 N ^ u = v ! dNxyuv = x: (9) u 2 N ^ v 2 N ^ u = 6 v ! dNxyuv = y: V. Primitive Recursion on N (10) (f : N ! N) ^ (g : N3 ! N) ! (rNfg : N2 ! N): (11) (f : N ! N) ^ (g : N3 ! N) ^ x 2 N ^ y 2 N ^ h = rNfg ! hx0 = fx ^ hx(y0) = gxy(hxy): Durch BON ` A drucken wir von nun an aus, dass sich die Lp-Formel A mit Hilfe der Logik der partiellen Terme LPT aus den nichtlogischen Axiomen von BON ableiten lasst. Ist K eine Klasse von Lp-Formeln, so wird BON + K ` A analog deniert. Manchmal betrachten wir auch applikative Theorien, bei denen die Applikationsoperation total ist. Das entsprechende Totalitatsaxiom lautet: (Tot) 8x8y(xy#) 14 2.1.1 Bemerkung Fur alle Lp-Terme t gilt: BON + (Tot) ` t#: 2.2 Kombinatorische Eigenschaften von BON In diesem Abschnitt stellen wir einige kombinatorische Eigenschaften von BON zusammen. Dabei sind vor allem der Satz uber -Abstraktion und das Rekursionstheorem hervorzuheben, die beide bereits aus den Axiomen (1) und (2) folgen. 2.2.1 Denition Fur jeden Lp-Term t und jede Variable x von Lp denie- ren wir einen Lp-Term (x:t) induktiv durch: 1. Ist t die Variable x, so ist (x:t) := skk: 2. Ist t eine von x verschiedene Variable oder eine Konstante von Lp, so ist (x:t) := kt: 3. Ist t von der Form (ab); so ist (x:t) := s(x:a)(x:b): Das folgende Theorem, das durch Induktion nach dem Aufbau von t bewiesen wird, macht deutlich, dass in BON durch die Denition von (x:t) die -Abstraktion des ublichen -Kalkuls weitgehend simuliert werden kann. Bei dieser Denition tragen wir der Partialitat Rechnung und stellen sicher, dass (x:t) immer einen Wert besitzt. 2.2.2 Theorem (-Abstraktion) Fur alle Lp-Terme a und t und alle Variablen x von Lp gilt: 15 1. FV (x:t) = FV (t) n fxg: 2. BON ` (x:t)#: 3. BON ` (x:t)x ' t: 4. BON ` a# ! (x:t)a ' t[a=x]: 2.2.3 Bemerkung Falls x und y verschiedene Variablen sind und x kein Element von FV (a) ist, gilt im ublichen -Kalkul, dass die Terme (x:t)[a=y] und (x:t[a=y]) gleich sind. Eine entsprechende Gleichung kann jedoch in BON nicht bewiesen werden. Betrachte den Fall t := y und a := zz: Dann beweist BON (x:t)[a=y] = k(zz) und (x:t[a=y]) = s(kz)(kz): Es gibt aber auch ein Modell von BON, in dem k(zz) und s(kz)(kz) nicht gleich sind. Es folgt nun eine Abschwachung des oben beschriebenen Substitutionsprinzips, die in BON bewiesen werden kann und in der Regel fur alle Anwendungen ausreicht. 2.2.4 Lemma Fur alle Lp-Terme a und t sowie von einander verschiede- nen Variablen x und y von Lp gilt: BON ` (x:t)[a=y ]x ' t[a=y ]: Beweis: Wir zeigen die Behauptung durch Induktion nach dem Aufbau von t und arbeiten informell in BON. Wir unterscheiden mehrere Falle. 16 1. t ist die Variable x. Dann gilt in BON: (x:t)[a=y]x ' (skk)[a=y]x ' (kx)(kx) ' x ' t[a=y]: 2. t ist die Variable y. Dann gilt in BON: (x:t)[a=y]x ' (kt)[a=y]x ' (ka)x ' a ' t[a=y]: 3. t ist eine von x und y verschiedene Variable oder eine Konstante. Dann gilt in BON: (x:t)[a=y]x ' (kt)[a=y]x ' (kt)x ' t ' t[a=y]: 4. t ist von der Form (t1 t2). Dann erhalten wir mit Hilfe der Induktionsvoraussetzung in BON: (x:t)[a=y]x ' (s(x:t1 )(x:t2 ))[a=y]x ' ((x:t1 )[a=y]x)((x:t2)[a=y]x) ' t1 [a=y] t2[a=y] ' t[a=y]: Aufgrund von Theorem 2.2.2 folgt aus diesem Lemma, dass fur alle LpTerme a und t und von einander verschiedenen Variablen x und y in BON gezeigt werden kann: (x:t)[a=y]x ' (x:t[a=y])x: Die Bildung von -Termen kann kanonisch auf mehrere Argumente erweitert werden. Ausserdem lasst sich das vorhergehende Lemma entsprechend verallgemeinern. 2.2.5 Denition Fur alle Lp-Terme und alle Variablen x1; : : : ; xn von Lp setzen wir (x1 : : : xn:t) := (x1 :(: : : (xn:t) : : :)): 17 2.2.6 Lemma Fur alle Lp-Terme a und t sowie alle Variablen x1 ; : : : ; xn und y von Lp , so dass alle x1 ; : : : ; xn von y verschieden sind, gilt: BON ` (x1 : : : xn :t)[a=y ]x1 : : : xn ' t[a=y]: 2.2.7 Theorem (Rekursionstheorem) Es gibt einen geschlossenen LpTerm rec, so dass gilt: BON ` rec f # ^ rec fx ' f (rec f )x: Beweis: Wir denieren t := (yx:f (yy)x) und rec := (f:tt) und arbeiten nun informell in BON. Da t durch -Abstraktion eingefuhrt wird, hat t einen Wert. Ausserdem ergibt Theorem 2.2.2, dass rec f ' tt ' (yx:f (yy)x)t ' (x:f (yy)x)[t=y]: Da (x:f (yy)x) als -Term einen Wert besitzt, folgt aufgrund von Bemerkung 1.1.10 dass rec f # gilt. Schliesslich erhalten wir mit Hilfe von Lemma 2.2.4 auch rec fx ' (x:f (yy)x)[t=y]x ' f (tt)x ' f (rec f )x: 2.2.8 Lemma Es gibt einen geschlossenen Lp-Term nn, so dass gilt: BON ` nn 62 N: Beweis Wir denieren t := (xy:dN10(xy)0) und nn := rec t0 18 und arbeiten nun informell in BON. Mit Hilfe von Theorem 2.2.2, Theorem 2.2.7 und Lemma 2.2.4 erhalten wir nn ' rec t0 ' t(rec t)0 ' (y:dN10(xy)0)[rec t=x]0 ' dN10(rec t0)0 ' dN10nn0: Nun nehmen wir nn 2 N an. Dann gelten die beiden Implikationen nn = 0 ! nn ' dN10nn0 ' 1 und nn 6= 0 ! nn ' dN10nn0 ' 0; so dass nn = 0 aquivalent zu nn 6= 0 ist. Dies ist ein Widerspruch und daher muss nn 62 N gelten. 2.2.9 Bemerkung Wir konnen in BON weder nn# ^ nn 62 N noch :nn# beweisen. Es gibt Modelle von BON, in denen nn keinen Wert besitzt, und Modelle, in denen nn einen Wert besitzt, aber nicht zur Interpretation der naturlichen Zahlen gehort. Wie bereits fruher bemerkt, werden die Terme in der Logik der partiellen Terme | und damit auch in BON | aufgrund der Striktheitsaxiome im Sinne von Call-by-Value evaluiert. Die folgende Behandlung des if-then-else-Konstrukts deutet an, wie auch Call-by-Name in diesem Rahmen simuliert werden kann. Es seien u und v beliebige naturliche Zahlen sowie a und b beliebige Terme. Dann kann der Ausdruck if u=v then a else b auf zwei verschiedene Arten interpretiert werden: 1. Strikte Interpretation. Dann besitzt er nur einen Wert, falls sowohl a als auch b einen Wert besitzen. Der Term dNabuv ist eine geeignete Reprasentation in BON. 19 2. Liberale Interpretation. Falls u = v ist, so evaluiert er zu a, unabhangig davon, ob b deniert ist; ist andererseits u 6= v, so evaluiert er zu b, unabhangig davon, ob a deniert ist. Nun wahlen wir eine Variable x, die weder in a noch in b auftritt, und erhalten durch dN(x:a)(x:b)uvx eine geeignete Reprasentation in BON. 2.3 Denition by Cases auf dem Universum Manchmal ist es vorteilhaft, nicht nur Denition by Numerical Cases, sondern Denition by Cases auf dem ganzen Universum zur Verfugung zu haben. Um dies zu erreichen, kann man etwa zu Lp eine neue Konstante dV hinzunehmen und BON um folgendes Axiom (dV ) (u = v ! dV xyuv = x) ^ (u 6= v ! dV xyuv = y) erweitern. Spater werden wir sehen, dass BON + (dV ) konsistent ist. Allerdings ist Denition by Cases auf dem Universum nicht unproblematisch, da Inkonsistenzen im Zusammenhang mit der Extensionalitat von Operationen und dem Totalitatsaxiom auftreten. Unter der Extensionalitat von Operationen verstehen wir die Aussage (Ext) 8f 8g[8x(fx ' gx) ! f = g]: Wir werden spater auch Modelle von BON betrachten, in denen (Ext) gultig ist; daher ist BON + (Ext) konsistent. Aus dem folgenden Theorem folgt aber auch, dass die Modelle von BON + (Ext) Denition by Cases auf dem Universum verletzen. 2.3.1 Theorem Die Theorie BON + (dV ) + (Ext) ist inkonsistent, d.h. BON + (dV ) ` :(Ext): 20 Beweis Wir arbeiten informell in BON +(dV ) und betrachten die folgenden beiden Terme a := (f:k(dV 10f (y:0))) und b := rec a: Aufgrund des Theorems uber -Abstraktion und des Rekursionstheorems sind a und b deniert, und es gilt bx ' abx ' k(dV 10b(y:0))x ' dV 10b(y:0): In anderer Form geschrieben bedeutet dies 8 < bx ' : 1; falls b = (y:0); 0; falls b 6= (y:0): Aus der ersten Klausel folgt b = 6 (y:0): Daraus erhalten wir 8x(bx = 0) und somit auch 8x(bx = (y:0)x): Damit ist :(Ext) bewiesen. Denition by Cases auf dem Universum ist auch nicht vertraglich mit dem Totalitatsaxiom. Fur den Beweis dieses Theorems sei auf den U bungsteil verwiesen. 2.3.2 Theorem BON + (dV ) + (Tot) ist inkonsistent, d.h. BON + (dV ) ` :(Tot): 2.4 Induktionsprinzipien Die Theorie BON umfasst zwar einige elementare Aussagen uber naturliche Zahlen, ist jedoch mathematisch sehr schwach, da vollstandige Induktion uber die naturlichen Zahlen nicht zur Verfugung steht. Dieses Dezit soll nun beseitigt werden. 21 Teilmengen der naturlichen Zahlen wollen wir in unserem Kontext mit ihren charakteristischen Funktionen identizieren. Entsprechend verstehen wir unter einer Teilmenge von N eine Operation a, so dass fur jede naturliche Zahl b entweder ab = 0 oder ab = 1 gilt. Im ersten Fall nennen wir b ein Element von a. In U bereinstimmung damit fuhren wir folgende Denitionen ein: SetN(a) := (8x 2 N)(ax = 0 _ ax = 1); a 2 SetN := SetN(a); b " a := ab = 0: Nun betrachten wir zwei Formen von vollstandiger Induktion, namlich Mengeninduktion und Formelinduktion. Auf interessante Zwischenformen konnen wir nicht eingehen. Mengeninduktion auf N (S-IN). Fur alle Lp-Terme a: a 2 SetN ^ 0 " a ^ (8x 2 N)(x " a ! x0 " a) ! (8x 2 N)(x " a): Formelinduktion auf N (F-IN ). Fur alle Lp -Formeln A(x): A(0) ^ (8x 2 N)(A(x) ! A(x0 )) ! (8x 2 N)A(x): Mengeninduktion auf N ist selbstverstandlich ein Spezialfall von Formelinduktion auf N. Die Axiome (10) und (11) von BON sind uberussig, falls (F-IN) beziehungsweise eine hinreichend starke Form von vollstandiger Induktion zur Verfugung steht. Mengeninduktion (S-IN) ist allerdings fur den Beweis von Theorem 2.4.1 nicht ausreichend. 22 Es sei BON die Untertheorie von BON, die auf die Axiome (10) und (11) verzichtet. Dann lasst sich folgendes Theorem zeigen. 2.4.1 Theorem Es gibt einen geschlossenen Lp-Term prim, in dem die Konstante rN nicht auftritt, so dass man in BON + (F-IN) beweisen kann: 1. (f : N ! N) ^ (g : N3 ! N) ! (prim fg : N2 ! N): 2. (f : N ! N) ^ (g : N3 ! N) ^ x 2 N ^ y 2 N ^ h = prim fg ! hx0 ' fx ^ hx(y0) ' gxy(hxy): Beweis Wir denieren t := (hxy:dNf (z:gz(pN y)(hz(pNy)))0yx und prim := (fg:rec t) und arbeiten informell in BON + ((F-IN)). Ist dann h ' prim fg, so folgt hxy ' rec txy ' t(rec t)xy ' thxy ' dNf (z:gz(pNy)(hz(pNy)))0yx: Daraus erhalten wir fur alle y 2 N, dass hx0 ' fx und hx(y0) ' (z:gzy(hzy))x ' gxy(hxy): Nun setzen wir zusatzlich (f : N ! N); (g : N3 ! N) und x 2 N voraus. Dann folgt mit (F-IN) sofort, dass (8y 2 N)(hxy 2 N): Dies ergibt (h : N2 ! N), und unsere Behauptungen sind bewiesen. Beachte dabei aber, dass (S-IN) nicht ausreicht, um hxy 2 N fur alle x 2 N und y 2 N zu zeigen. Aus diesem Theorem ergibt sich sofort, dass jede partielle Lp-Struktur M, die ein Modell von BON +(F-IN) ist, auch als ein Modell von BON aufgefasst 23 werden kann. Man muss lediglich die Konstante rN durch den Wert von prim in M interpretieren. Ohne im Moment naher darauf einzugehen, soll hier nur erwahnt werden, dass BON + (S-IN) von derselben beweistheoretischen Starke ist wie die primitiv-rekursive Arithmetik PRA. Dagegen ist die Theorie BON + (F-IN) beweistheoretisch aquivalent zur Peano-Arithmetik PA. Diese Beziehungen machen deutlich, dass es sich bei BON + (S-IN) und BON + (F-IN) um recht zentrale applikative Theorien handelt. 2.5 Das rekursionstheoretische Modell PRF Im folgenden nehmen wir an, dass feg fur e = 0; 1; 2; : : : eine Indizierung der partiell-rekursiven Funktionen auf den naturlichen Zahlen ist, und schreiben PRF fur die partielle Funktion von IIN IIN nach IIN, die fur alle naturlichen Zahlen e und n durch e PRF n :' feg(n) deniert ist. Ausserdem sei h; i eine der ublichen primitiv-rekursiven Funktionen zur Bildung von Paaren hm; ni naturlicher Zahlen. Dann existieren naturliche Zahlen ^k; ^s; p^; p^0; p^1 ; ^dN; ^sN und p^N, so dass fur alle naturlichen Zahlen e; m; n; p und q folgende Bedingungen erfullt sind: (1) ff^kg(m)g(n) = m: (2) ff^sg(m)g(n) 2 IIN und fff^sg(m)g(n)g(p) ' ffmg(p)g(fng(p)): (3) ffp^g(m)g(n) = hm; ni und fp^0 g(m) 2 IIN und fp^1g(m) 2 IIN und fp^0 g(hm; ni) = m und fp^1g(hm; ni) = n: (4) ffffd^Ng(m)g(n)g(p)g(p) = m und ffffd^Ng(m)g(n)g(p)g(q) = n; falls p 6= q: 24 (5) f^sNg(m) = m + 1 und fp^Ng(m) = m . 1: Mit PRF bezeichnen wir die partielle Lp-Struktur, deren Universum jPRFj durch die Menge IIN der naturlichen Zahlen gegeben ist und bei der das Relationssymbol N durch die Menge IIN sowie die 2-stellige Applikation durch PRF interpretiert werden; die Lp -Konstanten k; s; p; : : : werden durch die oben eingefuhrten naturlichen Zahlen ^k; ^s; p^; : : : interpretiert. Mit Hilfe der Eigenschaften (1) (5) kann man sehr leicht nachrechnen, dass PRF ein Modell von BON ist. Ausserdem ist in diesem Modell offensichtlich jede Instanz von (F-IN) erfullt. 2.5.1 Theorem PRF ist ein Modell von BON + (F-IN) und damit auch ein Modell von BON + (F-IN). In PRF gilt auch die Aussage 8xN(x). Daher ist PRF auch ein Modell von Denition by Cases auf dem Universum, falls die Konstante dV wie die Konstante dN interpretiert wird. 2.6 Das Graphmodell G Plotkin und Scott haben ursprunglich das sogenannte Graphenmodell P (!) fur den ungetypten -Kalkul entdeckt; eine ahnliche Konstruktion geht auch auf Engeler zuruck. Das Modell P (!) wird nun zu einem Modell G von BON + (F-IN) beziehungsweise BON + (F-IN ) erweitert. Wir geben hier nur die zentralen Denitionsschritte an und verweisen auf die Lehrbucher von Barendregt [1], Beeson [2] und Troelstra und van Dalen [20, 21] fur zusatzliche Informationen. 25 Um G einzufuhren, betrachten wir zuerst eine Codierung der endlichen Teilmengen von IIN als naturliche Zahlen. Ist n eine naturliche Zahl grosser als 0, so sei Bin(n) die Menge fk0; : : : ; kmg der eindeutig bestimmten naturlichen Zahlen mit n = 2k0 + : : : + 2km und k0 < : : : < km. Schliesslich sei die Funktion von IIN in die Menge der endlichen Teilmengen von IIN mit (0) := ; und (n) := Bin(n) fur n > 0. Dann ist oensichtlich eine Bijektion zwischen IIN und der Menge der endlichen Teilmengen von IIN, so dass n als Code von (n) verstanden werden kann. Ausserdem ist (2n) = fng. Nun zur Denition von G : Als Universum von G wahlen wir die Potenzmenge P (IIN) der Menge der naturlichen Zahlen. Die Applikation in G ist die Funktion von P (IIN) P (IIN) nach IIN, die fur alle Teilmengen P und Q von IIN durch P Q := fn : 9m( (m) Q ^ hm; ni 2 P )g gegeben ist. Als Interpretation des Relationssymbols N wahlen wir in G die Menge ffng : n 2 IINg. G ist also vollstandig bestimmt, wenn wir noch die Interpretationen der Konstanten angeben. Fur die Konbinatoren k und s setzen wir kG := sG := fhm; hn; pii : p 2 (m)g; fhm; hn; hp; qiii : 9e[9p0 ( (p0) (p) ^ hp0 ; he; qii 2 (m)) ^ 8e0 2 (e)9p0( (p0) (p) ^ hp0; e0 i 2 (n))]g: Dann kann man (mit einigem Aufwand) nachrechnen, dass fur alle Teilmengen M; P und Q von IIN gilt: (1) (kG M ) P = M: (2) ((sG M ) P ) Q = (M Q) (P Q): 26 Um Pairing zu behandeln, interpretieren wir p als Teilmenge pG von IIN, so dass (pG P ) Q = f2n : n 2 P g [ f2n + 1 : n 2 Qg fur alle Teilmengen P und Q von IIN gilt. Dies wird erreicht durch pG := fh2n; h0; 2nii : n 2 IINg [ fh0; h2n; 2n + 1ii : n 2 IINg: Ausserdem sei pG0 := fh22n; ni : n 2 IINg und pG1 := fh22n+1; ni : n 2 IINg: Damit gilt fur alle Teilmengen P und Q von IIN (3) pG0 ((pG P ) Q) = P und pG1 ((pG P ) Q) = Q. Entsprechend der Interpretation von N setzen wir 0G := f0g sowie sGN := fh2n; n + 1i : n 2 IINg und pGN := fh2n; n . 1i : n 2 IINg: Daraus folgt fur alle naturlichen Zahlen n, dass (4) sGN fng = fn + 1g und pGN fn + 1g = fng. Schliesslich bleibt noch die Konstante dGN fur Denition by Numerical Cases, dGN := fhp; hq; h2m; h2n; eiiii : (m = n ^ e 2 (p)) _ (m 6= n ^ e 2 (q))g Durch Nachrechnen erhalten wir dann fur alle Teilmengen P und Q von IIN und alle naturlichen Zahlen m und n: (5) m = n ! (((dGN P ) Q) fmg) fng = P . (6) m 6= n ! (((dGN P ) Q) fmg) fng = Q. 27 Aus den Eigenschaften (1) (6) folgt, dass G ein Modell von BON ist. Trivialerweise erfullt G ausserdem (F-IN) und (Tot). Aufgrund fruherer U berlegungen kann G daher durch eine geeignete Interpretation der Konstanten rN zu einem Modell von BON erweitert werden, und wir haben folgendes Theorem gezeigt. 2.6.1 Theorem G ist ein Modell von BON + (Tot) + (F-IN). 2.7 Die Termmodelle CN T und CT T Bei der Denition von Termmodellen spielen Termreduktionen eine zentrale Rolle. Daher fuhren wir die in diesem Zusammenhang wichtigen Begrie kurz ein. 2.7.1 Denition Fur jede naturliche Zahl n denieren wir das Numeral n induktiv durch 0 := 0 und n+1 := n 0 : Oensichtlich ist jedes Numeral ein Lp-Term. Die Numerale werden selbstverstandlich spater dafur verwendet werden, um die naturlichen Zahlen zu codieren. 2.7.2 Denition 1. conv ist eine 2-stellige Relation zwischen Lp-Termen. Es gilt s conv t genau dann, wenn es Lp-Terme a; b und c sowie voneinander verschiedene naturliche Zahlen m und n gibt, so dass einer der folgenden Falle eintritt: 28 s kab; t a; s sabc; t (ac)(bc); s p0 (a; b); t a; s p1 (a; b); t b; s pN0; t 0; 0 s pN(a ); t a; t a; s dNabm m; s dNabm n; t b; s rNabc0; t a0; s rNabcn+1; t bcn(rNabcn): Dann bezeichnen wir s als einen Redex und t als das Kontraktum von s. (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 2. B ist die 2-stellige Relation zwischen Lp-Termen, die fur alle Lp-Terme a; b und c induktiv erzeugt wird durch: (1) a B a; (2) a conv b =) a B b; (3) a B b =) ac B bc; (4) a B b =) ca B cb; (5) a B b und b B c =) a B c. Gilt a B b, so sagen wir, dass der Term a auf den Term b reduziert. 3. Wir schreiben a B1 b, wenn b aus a durch Kontraktion eines einzelnen Redex entsteht. Das bedeutet, dass B der reexive und transitive Abschluss von B1 ist. 4. Wir scheiben a b, wenn es eine endliche Folge von Lp-Termen c0 ; : : : ; cn gibt, so dass c0 a und cn b ist und ausserdem fur alle i mit 0 i < n entweder ti B1 ti+1 oder ti+1 B1 ti gilt. 5. Eine Reduktionsfolge ist eine endliche oder unendliche Folge von LpTermen t0 ; t1; t2; : : :, so dass t0 B1 t1 B1 t2 B1 : : : gilt. 29 6. Ein Lp-Term heisst normal, falls er keinen Redex enthalt. 7. t heisst Normalform von s, falls t normal ist und s B t gilt. 2.7.3 Theorem (Church-Rosser-Theorem) Sind a; b und c Lp-Terme mit a B b und a B c, so existiert ein Lp-Term t mit b B t und c B t. Wir verzichten hier auf einen Beweis dieses Theorems und verweisen auf die einschlagige Literatur. Im folgenden Theorem sind einige wichtige Folgerungen des Church-Rosser-Theorems zusammengefasst, deren Beweis wir ebenfalls ubergehen. 2.7.4 Theorem 1. Jeder Lp-Term hat hochstens eine Normalform. 2. Sind a und b Lp-Terme mit a b, so gibt es einen Lp-Term c mit a B c und b B c. 3. Sind a und b Lp -Terme mit a b und ist b normal, so gilt a B b. 4. Sind a und b Lp -Terme mit a b, so besitzen a und b keine Normalform oder dieselbe Normalform. 2.7.5 Beispiel 1. Jedes Numeral n ist ein normaler Lp-Term. 2. Der Lp-Term ! := (x:xx) ist normal. Dagegen besitzt der Lp-Term !! keine Normalform. 3. k!(!!) hat die Normalform !. Es gibt aber auch unendliche Reduktionsfolgen, die mit k!(!!) beginnen. 30 Eine erste Idee zum Aufbau eines Termmodells von BON besteht darin, nur mit den normalen Lp-Termen zu arbeiten und darauf eine 2-stellige partielle Applikation zu denieren, indem wir a b := Normalform von ab fur alle normalen Terme a und b setzen. Dies ergibt jedoch Probleme im Zusammenhang mit Striktheit. Es gilt ((s k) !) ! = !, so dass wir aufgrund des Axioms (2) von BON auch (k !) (! !) = ! erhalten sollten. Mit Striktheit wurde daraus folgen, dass ! ! einen Wert besitzt. Da ! ! keine Normalform hat, ist dies ein Widerspruch. Um diese Schwierigkeit zu umgehen, behandeln wir die Applikation etwas restriktiver. Wir begnugen uns nicht damit, dass eine Reduktionsfolge zu einem normalen Term fuhrt, sondern betrachten samtliche Reduktionsfolgen. 2.7.6 Denition 1. Eine Reduktionsfolge heisst maximal, falls sie unendlich ist oder mit einem normalen Term endet. 2. Ein Lp-Term t heisst starke Normalform eines Lp-Terms s, falls jede maximale Reduktionsfolge, die mit s beginnt, mit t endet. Hat ein Lp-Term eine starke Normalform t, so ist t die Normalform von s. Es gibt aber Lp-Terme, die zwar eine Normalform, aber keine starke Normalform besitzen. Ein Beispiel dafur ist der Term k!(!!). Mit snf bezeichnen wir nun die partielle Funktion von den Lp-Termen in die Lp-Terme, die jedem a seine starke Normalform zuordnet, falls a eine starke Normalform besitzt, und andernfalls undeniert ist; snf (a) :' starke Normalform von a: 31 Nun fuhren wir zwei Termmodelle ein: Das Modell CNT , das auf den geschlossenen Termen in Normalform basiert, und das Modell CT T , das auf allen geschlossenen Termen aufbaut. 2.7.7 Denition Die partielle Lp-Struktur CNT ist durch folgende Bedingungen bestimmt: (CNT .1) Das Universum jCNT j von CNT umfasst genau die geschlossenen Lp-Terme in Normalform. (CNT .2) Das Relationssymbol N wird in CNT durch die Menge der Numerale interpretiert, d.h. NCNT := fn : n 2 IINg: (CNT .3) Jede Konstante von Lp wird in CNT durch sich selbst interpretiert. (CNT .4) Das 2-stellige Funktionssymbol fur Termanwendung wird in CNT durch die partielle Funktion CNT von jCNT j jCNT j nach jCNT j interpretiert, die fur alle a und b aus jCNT j deniert ist durch a CNT b :' snf (ab): Nun lasst sich ohne grosse Muhe nachrechnen, dass CNT ein Modell von BON ist. Aufgrund der Interpretation des Relationssymbols N durch die Menge der Numerale ist auch klar, dass Formelinduktion (F-IN) in CNT gultig ist. 2.7.8 Theorem CNT ist ein Modell von BON + (F-IN). 32 Es ist aber auch leicht zu sehen, dass Totalitat (Tot) in CNT verletzt ist. Im folgenden betrachten wir nun A quivalenzklassen von geschlossenen LpTermen, um ein Modell von BON + (Tot) zu denieren. Der Beweis des folgenden Lemmas ist trivial. 2.7.9 Lemma 1. Die Relation zwischen Lp -Termen ist eine Aquivalenzrelation. 2. Sind a; b; s und t Lp-Terme mit a b und s t, so gilt auch as bt. Wir schreiben [a] fur die A quivalenzklasse des Lp-Terms a bezuglich der A quivalenzrelation und benutzen diese A quivalenzklassen als Grundobjekte des Modells CT T . 2.7.10 Denition Die (partielle) Lp-Struktur CT T ist durch folgende Bedingungen bestimmt: (CT T .1) Das Universum jCT T j von CT T umfasst genau die A quivalenzklassen [a] der geschlossenen Lp-Terme a. (CT T .2) Das Relationssymbol N wird in CT T durch die Menge der A quivalenzklassen der Numerale interpretiert, d.h. NCT T := f[n] : n 2 IINg: (CT T .3) Jede Konstante von Lp wird in CT T durch ihre A quivalenzklasse bezuglich interpretiert. (CT T .4) Das 2-stellige Funktionssymbol fur Termanwendung wird in CT T durch die Funktion CT T von jCT T j jCT T j nach jCT T j interpretiert, die fur alle [a] und [b] aus jCT T j deniert ist durch [a] CT T [b] := [ab] : 33 Aufgrund des vorhergehenden Lemmas ist die Funktion CT T wohldeniert. Ausserdem folgt sofort, dass jeder geschlossene Term a in CT T den Wert [a] besitzt. Die Axiome von BON sowie Formelinduktion (F-IN) lassen sich in CT T leicht verizieren. Dazu kommt, dass CT T trivialerweise ein Modell von (Tot) ist. 2.7.11 Theorem CT T ist ein Modell von BON + (Tot) + (F-IN). 2.8 Eine allgemeine Modellkonstruktion In diesem Abschnitt beschreiben wir eine recht allgemeine Methode, um Modelle von BON + (dV ) + (F-IN) zu erzeugen. Zur moglichst durchsichtigen Beschreibung dieser Konstruktion arbeiten wir mit monotonen Operatoren. 2.8.1 Denition Gegeben seien eine nichtleere Menge M und eine naturli- che Zahl n > 0. 1. Die Abbildungen von P (M n) nach P (M n) bezeichnen wir als n-stellige Operatoren auf M . 2. Einen n-stelligen Operator auf M bezeichnen wir als monoton, falls fur alle Teilmengen X und Y von M n gilt: XY =) (X ) (Y ) : 3. Ist ein n-stelliger Operator auf M , so heisst eine Teilmenge X von M n abgeschlossen unter , falls (X ) X gilt. 34 4. Ist ein n-stelliger Operator auf M , so heisst eine Teilmenge X von M n Fixpunkt von , falls (X ) = X gilt. 5. Ist ein n-stelliger Operator auf M , so heisst eine Teilmenge X von M n kleinster Fixpunkt von , falls X ein Fixpunkt von ist und X Y fur jeden Fixpunkt Y von gilt. Monotone Operatoren besitzen die folgende wichtige Fixpunkteigenschaft. Wir ubergehen aber den Beweis dieses bekannten Theorems und verweisen auf die einschlagige Literatur. 2.8.2 Theorem Gegeben seien eine nichtleere Menge M und eine naturli- che Zahl n > 0. Dann besitzt jeder n-stellige monotone Operator einen kleinsten Fixpunkt. auf M Im folgenden bezeichnen wir den kleinsten Fixpunkt eines monotonen Operators mit lfp( ). Diesen kleinsten Fixpunkt kann man auch durch Rekursion uber die Ordinalzahlen denieren. Ist ein n-stelliger monotoner Operator auf der Menge M und eine Ordinalzahl, so setzen wir := ( [ < ): Aufgrund der Monotonie von erhalten wir sofort nalzahlen und mit . Ausserdem gilt lfp( ) = [ 2On \ fur alle Ordi- \ = fX M n : (X ) X g = fX M n : (X ) = X g: Ausgangspunkt fur eine sehr allgemeine Konstruktion von Modellen der Theorie BON + (dV ) + (F-IN) bilden 5-Tupel K = (M; ; 0; 1 ; F ) mit folgenden Eigenschaften: 35 (1) M ist eine unendliche Menge. (2) ist eine Abbildung von M 2 nach M und 0 sowie 1 sind Abbildungen von M nach M , so dass 0 ((m; n)) = m und 1 ((m; n)) = n fur alle m; n 2 M gilt. (3) F ist eine Menge partieller Funktionen von M nach M mit card(F ) card(M ). Nun wahlen wir zuerst fur jedes 2 IIN [ F ein Element aus M , so dass dadurch die Menge IIN [ F injektiv in M abgebildet wird. Dann setzen wir ^k := (0; 0); p^0 := (0 ; 3 ); ^sN := (0; 5); ^dV := (0; 8); ^s := (0; 1); p^ := (0 ; 2); ^0 := 0 ; p^1 := (0 ; 4 ); ^pN := (0; 6); d^N := (0 ; 7); und ^f := (0; f ) fur jedes f 2 F : Im nachsten Schritt fuhren wir den 3-stelligen Operator auf M ein, der dadurch deniert ist, dass (X ) fur jede Teilmenge X von M 3 aus allen (e; m; n) 2 M 3 besteht, die eine der folgenden Bedingungen erfullen: e = ^k ^ n = (1; m); e = (1; n); e = ^s ^ n = (2; m); (9x 2 M )[e = (2 ; x) ^ n = (3; (x; m))]; (9x0 ; x1; y0; y1 2 M )[e = (3; (x0 ; y0)) ^ (x0 ; m; x1) 2 X ^ (y0; m; y1) 2 X ^ (x1 ; y1; n) 2 X ]; (6) e = p^ ^ n = (4 ; m); (7) (9x 2 M )[e = (4 ; x) ^ n = (x; m)]; (8a) e = p^0 ^ (9x; y 2 M )[m = (x; y)] ^ n = 0 m; (1) (2) (3) (4) (5) 36 (8b) (9a) (9b) (10) (11) (12) (13) (14) (15a) (15b) (16) (17) (18) (19a) (19b) (20) e = p^0 ^ (8x; y 2 M )[m 6= (x; y)] ^ n = 0 ; e = p^1 ^ (9x; y 2 M )[m = (x; y)] ^ n = 1 m; e = p^1 ^ (8x; y 2 M )[m 6= (x; y)] ^ n = 0 ; e = ^sN ^ (9i 2 IIN)[m = i ^ n = i+1]; e = p^N ^ (9i 2 IIN)[m = i+1 ^ n = i]; e = d^N ^ n = (5 ; m); (9x 2 M )[e = (5 ; x) ^ n = (6; (x; m))]; (9x; y 2 M )[e = (6 ; (x; y)) ^ n = (7 ; ((x; y); m))]; (9x; y 2 M )(9i; j 2 IIN)[e = (7; ((x; y); i)) ^ m = j ^ i = j ^ n = x]; (9x; y 2 M )(9i; j 2 IIN)[e = (7; ((x; y); i)) ^ m = j ^ i 6= j ^ n = y]; e = d^V ^ n = (8 ; m); (9x 2 M )[e = (8 ; x) ^ n = (9; (x; m))]; (9x; y 2 M )[e = (9 ; (x; y)) ^ n = (10 ; ((x; y); m))]; (9x; y; z0; z1 2 M )[e = (10 ; ((x; y); z0)) ^ m = z1 ^ z0 = z1 ^ n = x]; (9x; y; z0; z1 2 M )[e = (10 ; ((x; y); z0)) ^ m = z1 ^ z0 6= z1 ^ n = y]; (9f 2 F )[e = ^f ^ n ' f (m)]: Oensichtlich ist ein monotoner Operator auf M und besitzt also einen kleinsten Fixpunkt lfp( ). Beispielsweise durch Induktion nach kann man ausserdem leicht zeigen, dass fur alle e; m; n0 und n1 aus M gilt: (e; m; n0) 2 und (e; m; n1 ) 2 37 =) n0 = n1 : Daher ist lfp( ) = S2On funktional im dritten Argument. Das bedeutet, dass wir durch die Denition e K m ' n :() (e; m; n) 2 lfp( ) fur alle e; m und n aus M eine partielle Funktion K von M M nach M erhalten. In der Regel ist K keine totale Funktion von M M nach M . Die von unserem 5-Tupel K = (M; ; 0 ; 1; F ) erzeugte partielle Lp-Struktur Gen(K) hat als Universum jGen(K)j die Menge M . Die Interpretation des Relationssymbols N ist die Menge fi : i 2 IINg, und die Konstanten k; s; p; : : : werden durch die oben eingefuhrten Codes ^k; ^s; p^; : : : interpretiert. Die Termanwendung wird in Gen(K) im Sinne der partiellen Funktion K behandelt. Aufgrund der Bedingungen (1) (20) in der Denition des Operators kann man zeigen, dass Gen(K) ein Modell von BON + (dV ) + (F-IN) ist. Durch geeignete Interpretation der Konstanten rN (vgl. Theorem 2.4.1) wird also Gen(K) auch zu einem Modell von BON. 2.8.3 Theorem Gen(K) ist ein Modell von BON + (dV ) + (F-IN). Dazu kommt, dass in Gen(K) jede partielle Funktion f aus F durch das Element ^f aus M reprasentiert wird. Fur alle m und n aus M gilt namlich f (m) ' n genau dann, wenn ^f K m ' n. 2.9 Mengentheoretische Modelle In diesem Abschnitt machen wir von den vorhergehenden U berlegungen Gebrauch, um zu zeigen, dass jeder Abschnitt V der kumulativen Hierarchie 38 mit einer Limeszahl zu einem Modell von BON + (dV ) + (F-IN) gemacht werden kann. Zur Wiederholung, die kumulative Hierarchie (V : 2 On) wird durch transnite Induktion uber die Ordinalzahlen deniert: V0 := ; und V := [ < P (V ) fur > 0: Nun wahlen wir eine beliebige Limeszahl und betrachten die Menge V. Ausserdem sei Fun(V) die Menge aller Funktionen im mengentheoretischen Sinn, die Elemente von V sind. Schliesslich sei die ubliche Paarfunktion von V V nach V mit (m; n) = ffmg; fm; ngg, und 0 sowie 1 seien Funktionen von V nach V mit 0 ((m; n)) = m und 1 ((m; n)) = n fur alle m und n aus V. Dann kann das 5-Tupel K = (V ; ; 0; 1; Fun(V)) aufgrund der U berlegungen des vorhergehenden Abschnittes zu einem Modell Gen(K) von BON +(dV )+(F-IN) erweitert werden. Dabei kann man die Einbettung von IIN [ Fun(V) in V so wahlen, dass i fur jede naturliche Zahl i die Ordinalzahl i ist. 39 Kapitel 3 Explizite Mathematik In diesem Kapitel fugen wir zu unseren applikativen Theorien eine sehr exible Typenstruktur hinzu und erhohen dadurch ihre Ausdrucksstarke und ihren Anwendungsbereich betrachtlich. Die so erhaltenen Systeme werden haug als Systeme expliziter Mathematik bezeichnet. Explizite Mathematik wurde von Feferman vor allem in den beiden zentralen Arbeiten [5, 6] eingefuhrt, in denen er auch wesentliche syntaktische und semantische Eigenschaften expliziter Mathematik behandelte. Hier verfolgen wir einen geringfugig anderen Ansatz und entwickeln explizite Mathematik basierend auf Typen und Namen; vgl. dazu [8, 14]. Unser Formalismus unterscheidet zwischen Individuen (Operationen) und Kollektionen von Individuen, die wir als Typen bezeichnen. Dazu kommt, dass jeder Typ Individuen als Namen besitzt und Typen mittels ihrer Namen angesprochen werden konnen. 40 3.1 Die Theorie EET Wir beginnen mit der Theorie EET der elementaren expliziten Typen. Sie wird in der Sprache L p zweiter Stufe formuliert, die die Sprache Lp um folgende Grundzeichen erweitert: 1. Abzahlbar unendlich viele Typenvariablen V 0; V 1; : : : ; V i; : : : (i 2 IIN). 2. Die zweistelligen Relationssymbole 2 fur die Elementbeziehung und < fur die Namensbeziehung. 3. Fur jede naturliche Zahl e eine Individuenkonstante ce . Die Variablen von Lp bezeichnen wir von nun an als Individuenvariablen. Die L p -Individuenterme werden analog zu den Lp-Termen deniert, selbstverstandlich unter Einbeziehung der Konstanten ce fur alle naturlichen Zahlen e. Die Typenterme von L p sind die Typenvariablen. Die Atomformeln von L p sind alle Ausdrucke der Form a#; (a = b); N(a); (a 2 X ); (X = Y ) und <(a; X ), wobei a sowie b Individuenterme und X sowie Y Typenvariablen von L p sind. Davon ausgehend werden die L p Formeln wie folgt generiert: 1. Jede Atomformel von L p ist eine L p -Formel. 2. Ist A eine L p -Formel, so ist :A eine L p -Formel. 3. Sind A und B L p -Formeln, so ist (A _ B ) eine L p -Formel. 4. Ist A eine L p -Formel und sind x beziehungsweise X Individuen- beziehungsweise Typenvariablen von L p , so sind 9xA und 9XA L p -Formeln. Wie fruher lassen wir haug Klammern fort, wenn dadurch keine Unklarheiten entstehen. (A ^ B ); (A ! B ); (A $ B ) und 8xA werden deniert 41 wie vorher; ausserdem sei 8XA := :9X :A; (9x2V )A := 9x(x2V ^ A) und (8x2V )A := 8x(x2V ! A). Ist schliesslich ~a = a0; : : : ; an und X~ = X0 ; : : : ; Xn, so setzen wir <(~a; X~ ) := <(a0; X0) ^ : : : ^ <(an; Xn). Mitteilungszeichen (auch mit Indizes) u; v; w; x; y; z; f; g; h a; b; c; r; s; t U; V; W; X; Y; Z A; B; C; D; E; F fur Individuenvariablen von L p ; fur Individuenterme von L p ; fur Typenvariablen von L p ; fur Formeln von L p . Eine L p -Formel heisst stratiziert, falls in ihr das Relationssymbol < nicht auftritt. Die stratizierten L p -Formeln, in denen keine gebundenen Typenvariablen vorkommen, bezeichnen wir als elementare L p -Formeln. Die Formel <(a; X ) besagt, dass der Individuenterm a den Typ X reprasentiert. Haug sprechen wir in diesem Falle auch davon, dass a ein Name von X ist. Die folgenden Axiome uber explizite Reprasentation und Extensionalitat formalisieren, dass jeder Typ einen Namen besitzt und Typen extensional sind. Die Reprasentation von Typen durch ihre Namen ist dagegen intensional. Explizite Reprasentation und Extensionalitat (E.1) 9x<(x; X ). (E.2) <(a; X ) ^ <(a; Y ) ! X = Y . (E.3) 8z(z 2 X $ z 2 Y ) ! X = Y . In den folgenden Axiomen uber elementare Komprehension spielen die Konstanten ce eine ausgezeichnete Rolle. Sie dienen dazu, um die durch elementare Komprehension gebildeten Typen uniform in ihren Parametern zu reprasentieren. 42 Im Zusammenhang mit dem Namensgebungsprozess bei elementarer Komprehension ist es bequem, von folgenden Konventionen auszugehen: 1. Es ist eine beliebige aber feste Godelisierung der L p -Formeln gegeben. 2. Ausserdem seien beliebige aber feste Aufzahlungen v0; v1; v2; : : : und V 0; V 1; V 2; : : : der Individuen- und Typenvariablen von L p gegeben. Ist A eine L p -Formel, in der keine anderen Individuenvariablen als v0; : : : ; vm und keine anderen Typenvariablen als V 0; : : : ; Vn frei auftreten und ist ~a = a0 ; : : : ; am sowie X~ = X0; : : : ; Xn, so schreiben wir A[~a; X~ ] fur die L p -Formel, die wir aus A erhalten, indem wir simultan vi durch ai und Vj durch Xj ersetzen (0 i m; 0 j n). Die folgenden Axiome uber elementare Komprehension hangen von der gegebenen Godelisierung und der Aufzahlungen der Variablen ab. Dies bedeutet jedoch keine echte Einschrankung. Elementare Komprehension Es sei A[x; ~y; Z~ ] eine elementare L p -For- mel mit Godelnummer e. Dann haben wir als Axiome: (ECA.1) 9X 8x(x 2 X $ A[x; ~u; V~ ]). (ECA.2) <(~v; V~ ) ^ 8x(x 2 X $ A[x; ~u; V~ ]) ! <(ce(~u;~v); X ). Daher werden Namen fur Typen, die durch elementare Komprehension gebildet werden, mit Hilfe der Konstanten ce konstruiert. Diese Namensgebung ist uniform in den Individuen- und Typenparametern der denierenden Formel. Die Theorie EET der expliziten elementaren Typen ist formuliert in der Sprache L p . Die logischen Axiome von EET umfassen die Axiome der Logik der partiellen Terme fur Individuen, wobei die Striktheitsaxiome erganzt werden durch 43 (i) a 2 X ! a#, (ii) <(a; X ) ! a# fur alle L p -Terme a und alle Typenvariablen X. Fur die Typen hat man die Axiome der klassischen Logik. Ausserdem stehen die Gleichheitsaxiome fur Individuen und Typen zur Verfugung. Die nichtlogischen Axiome von EET umfassen alle Axiome von BON formuliert fur die Sprache L p , die Axiome (E.1) (E.3) uber explizite Reprasentation und Extensionalitat sowie die Axiome (ECA.1) und (ECA.2) uber elementare Komprehension. Ist A[x; ~y; Z~ ] eine elementare L p -Formel, so schreiben wir haug etwas informell fx : A[x; ~u; V~ ]g fur den durch elementare Komprehension gebildeten Typ X , der genau die Individuen x mit der Eigenschaft A[x; ~u; V~ ] enthalt. In diesem Sinne lassen wir auch Ausdrucke der Form fx : A[x; ~u; V~ ]g als Typenterme zu; b 2 fx : A[x; ~u; V~ ]g steht dann fur A[b; ~u; V~ ]. 3.1.1 Bemerkung Auf Grundlage dieser liberalisierten Schreibweise lassen sich in EET folgende Typen durch elementare Komprehension einfuhren: ; := fx : x 6= xg; V := fx : x = xg; fa1 ; : : : ; ang := fx : x = a1 _ : : : _ x = ang: Uniform in den Typentermen S und T konnen in EET ebenfalls folgende Typenterme durch elementare Komprehension eingefuhrt werden: SnT S[T S\T ST := := := := fx : x 2 S ^ x 2= T g; fx : x 2 S _ x 2 T g; fx : x 2 S ^ x 2 T g; fx : x = (p0x; p1 x) ^ p0 x 2 S ^ p1 x 2 T g; 44 S + T := fx : (x = (0; p1x) ^ p1x 2 S ) _ (x = (1; p1x) ^ p1 x 2 T )g; (S ! T ) := ff : (8x 2 S )(fx 2 T )g: 3.2 Ontologische U berlegungen In diesem Abschnitt wollen wir einige ontologische Eigenschaften von EET im Zusammenhang mit Komprehension, Namensgebung und Extensionalitat zusammenstellen. Dadurch soll auf einige Besonderheiten des Namenspradikates hingewiesen werden. Fur neuere Ergebnisse in diesem Zusammenhang sei auf [3, 13, 15] verwiesen. 3.2.1 Theorem EET + volle Komprehension, d.h. 9X 8x(x 2 X $ A(x)) fur beliebige L p -Formeln A(x), ist inkonsistent. Beweis Wir zeigen, dass mit voller Komprehension das ubliche Russel- Argument ubernommen werden kann. Steht volle Komprehension zur Verfugung, so gibt es einen Typ S mit a 2 S $ 9X (<(a; X ) ^ a 2= X ) fur alle Individuenterme a. Aufgrund der Axiome uber explizite Reprasentation besitzt dieser Typ einen Namen s. Dann gilt <(s; S ), und wir erhalten s 2 S $ 9X (<(s; X ) ^ s 2= X ) $ s 2= S: Dies ist ein Widerspruch, so dass damit die Inkonsistenz von EET mit voller Komprehension gezeigt ist. 45 3.2.2 Theorem Die Namen eines Typs bilden in EET beweisbar keinen Typ, d.h. EET ` :9Y 8x(x 2 Y $ <(x; X )): Beweis Wir arbeiten informell in EET und wahlen zuerst zum gegebenen Typ X einen Namen a. Ausserdem sieht man sofort, dass in Abhangigkeit von einem Individuum u und Typen V und W mit elementarer Komprehension der Typ fx : (x 2= V ^ u 2= W ) _ (x 2 V ^ u 2 W )g gebildet werden kann. Aufgrund der Uniformitat der elementaren Komprehension gibt es sogar einen Individuenterm s mit <(v; V ) ^<(w; W ) ! <(s(v; w); fx : (x 2= V ^ w 2= W ) _ (x 2 V ^ w 2 W )g): Fur t := y:s(a; y) folgt daraus <(w; W ) ! <(tw; fx : (x 2= X ^ w 2= W ) _ (x 2 X ^ w 2 W )g): (1) Nun nehmen wir an, dass die Namen von X einen Typ bilden. Dann gibt es einen Typ Y mit x 2 Y $ <(x; X ) fur alle x. Mit elementarer Komprehension konnen wir dann einen Typ R := fx : tx 2= Y g einfuhren. Folglich gilt x 2= R $ <(tx; X ) (2) fur alle x. Ausserdem sei r ein Name von R. Aus (1) folgt dann sofort <(tr; fx : (x 2= X ^ r 2= R) _ (x 2 X ^ r 2 R)g): (3) Nun verwenden wir (2) spezialisiert auf x = r und (3), um die A quivalenz r 2= R $ X = fx : (x 2= X ^ r 2= R) _ (x 2 X ^ r 2 R)g abzuleiten. Daraus folgt, dass r 2= R zu r 2 R aquivalent ist. Dies ist ein Widerspruch, und daher muss unsere Annahme falsch sein. 46 3.2.3 Folgerung Jeder Typ besitzt in EET unendlich viele Namen. Beweis Wenn es einen Typ X mit nur endlich vielen Namen gabe, so ware dies ein Widerspruch zum vorhergehenden Theorem, da die Zusammenfassung von endlich vielen Individuen in EET einen Typ bildet. 3.2.4 Denition Fur alle L p -Individuenterme a und b setzen wir : a 2 b := 9X (<(b; X ) ^ a 2 X ); a =: b := 9X (<(a; X ) ^ <(b; X )): 3.2.5 Bemerkung In EET gilt fur alle L p -Individuenterme a und b a =: b () 9X <(a; X ) ^ 9Y <(b; Y ) ^ 8x(x 2: a $ x 2: b): 3.2.6 Theorem Extensionalitat fur Namen von Typen, d.h. die Aussage 8x8y(x =: y ! x = y); ist inkonsistent mit EET. Beweis Wir arbeiten informell in EET und wahlen einen beliebigen Typ X. Aufgrund der vorherigen Folgerung gibt es dann zwei verschiedene Namen a und b von X . Daher gilt a =: b und a 6= b. 3.3 Formen der Induktion in der expliziten Mathematik In der expliziten Mathematik unterscheidet man zwischen drei Hauptformen von vollstandiger Induktion: Mengeninduktion, Typeninduktion und 47 Formelinduktion. Daneben gibt es noch weitere Zwischenformen, die wir hier aber nicht betrachten. Mengeninduktion (S-IN). a 2 SetN ^ 0 " a ^ (8x 2 N)(x " a ! x0 " a) ! (8x 2 N)(x " a): Typeninduktion (T-IN). 0 2 X ^ (8x 2 N)(x 2 X ! x0 2 X ) ! (8x 2 N)(x 2 X ): Formelinduktion (F-IN). Fur alle L p -Formeln A(x): A(0) ^ (8x 2 N)(A(x) ! A(x0 )) ! (8x 2 N)(A(x)): Ohne auf die naheren Einzelheiten einzugehen, soll hier nur festgehalten werden, dass die Theorien EET + (S-IN); EET + (T-IN) und EET + (F-IN) in engem Zusammenhang zur primitiv-rekursiven Arithmetik PRA, zur PeanoArithmetik PA und zum System (01-CA) der Arithmetik zweiter Stufe mit arithmetischer Komprehension stehen. 3.3.1 Theorem 1. Die Theorien EET +(S-IN); BON +(S-IN ) und PRA sind beweistheoretisch aquivalent. 2. Die Theorien EET + (T-IN); BON + (F-IN) und PA sind beweistheoretisch aquivalent. 3. Die Theorien EET + (F-IN) und (01 -CA) sind beweistheoretisch aquivalent. Die beweistheoretische A quivalenz von EET +(S-IN) und BON +(S-IN) sowie von EET +(T-IN) und BON +(F-IN) ergibt sich unmittelbar aus Ergebnissen von Abschnitt 3.5. 48 3.4 L p -Strukturen 3.4.1 Denition Eine L p -Struktur ist ein 5-Tupel N = (M; T ; E ; R; (me : e 2 IIN)); das folgende Bedingungen erfullt: 1. M ist eine partielle Lp-Struktur. 2. T ist eine nichtleere Teilmenge von P (jMj). 3. E und R sind Teilmengen von jMj T . 4. (me : e 2 IIN) ist eine Familie von Elementen aus jMj. Eine L p -Struktur N = (M; T ; E ; R; (me : e 2 IIN)) wird als Standardstruktur bezeichnet, falls E die ubliche 2-Relation auf jMj T ist. Wir schreiben dann etwas einfacher (M; T ; R; (me : e 2 IIN)) fur eine solche Standardstruktur. Ist N = (M; T ; E ; R; (me : e 2 IIN)) eine L p -Struktur, so werden die Mengen T ; E sowie R zur Interpretation der Typen, der Elementrelation sowie der Namensrelation verwendet. Fur alle naturlichen Zahlen e werden die Konstanten ce in N durch me interpretiert. 3.4.2 Denition Ist N = (M; T ; E ; R; (me : e 2 IIN)) eine L p -Struktur, so nennen wir eine Abbildung , die jeder Individuenvariablen v von L p ein Element (v) aus jMj und jeder Typenvariablen V ein Element (V ) aus T zuordnet, eine L p -Variablenbelegung in N . Ist N = (M; T ; E ; R; (me : e 2 IIN)) eine L p -Struktur und eine L p -Variablenbelegung in N , so wird der Wert N(a) eines L p -Individuenterms a wie 49 fruher deniert; dabei ist nur zu beachten, dass fur alle naturlichen Zahlen e die Konstanten ce durch me interpretiert werden. 3.4.3 Denition Fur jede L p -Struktur N = (M; T ; E ; R; (me : e 2 IIN)) und jede L p -Variablenbelegung in N wird der Wert N(A) 2 ff; tg einer L p -Formel A induktiv deniert durch: 1. Ist A eine atomare L p -Formel erster Stufe, so wird N (A) analog zu Denition 1.2.4 bestimmt. 2. Ist A von der Form (a 2 X ), so ist 8 < N (A) := : t; falls (N(a); (X )) 2 E ; f; sonst: 3. Ist A von der Form (X = Y ), so ist 8 < N(A) := : t; falls (X ) = (Y ); f; sonst: 4. Ist A von der Form <(a; X ), so ist 8 < N(A) := : t; falls (N(a); (X )) 2 R; f; sonst: 5. Ist A von der Form :B; (B _ C ) oder 9xB , so wird N (A) analog zu Denition 1.2.4 bestimmt. 6. Ist A von der Form 9XB , so ist 8 < N (A) := : t; falls N[X =S](B ) = t fur ein S 2 T ; f; sonst: Ist N eine L p -Struktur und A eine L p -Formel, so nennen wir A gultig in N und schreiben dafur N j= A, falls N(A) = t fur alle L p -Variablenbelegungen in N gilt. N heisst Modell einer Menge Th von L p -Formeln, in Zeichen N j= Th, falls alle Formeln aus Th in N gultig sind. 50 3.5 Standardmodelle von EET Wir beschreiben nun ein allgemeines Verfahren, das es uns ermoglicht, Modelle von BON zu Standardmodellen von EET zu erweitern. Sei also M eine partielle Lp-Struktur, die ein Modell von BON ist. Zuerst ordnen wir jeder Konstanten ce einen Wert cM ur e aus jMj zu, indem wir f alle naturlichen Zahlen e cM e := Wert des Terms (x:(0; e; x)) in M setzen; dabei sei e das Numeral fur die naturliche Zahl e. In Ausdrucken der Form cM ~ ) sind fur m ~ 2 jMj die (iterierte) Paarbildung und die e (m Anwendungsoperation im Sinne von M zu verstehen. Damit gilt cM ~ ) = (0; e; (m ~ )) e (m fur alle naturlichen Zahlen e und alle m ~ 2 jMj in M. In einem nachsten Schritt denieren wir durch Induktion uber die naturliche Zahl k Teilmengen RkM von jMj. Simultan dazu fuhren wir fur jedes m aus RkM eine Teilmenge extM (m) von jMj ein und setzen TkM := fextM (m) : m 2 RkMg und Mk := (M; TkM; ;; (cM e : e 2 IIN)) k = 0. Fur jede Lp-Formel A[x; ~y] mit Godelnummer e und fur alle ~n 2 jMj M sei cM e (~n) aus R0 , ausserdem gelte extM (cM e (~n)) := fm 2 jMj : M j= A[m;~n]g: k > 0. RkM enthalte RkM 1. Ist A[x; ~y; Z~ ] eine elementare L p -Formel mit Godelnummer e und sind ~n 2 jMj sowie ~q 2 RkM 1 , so sei cM e (~n; ~q) ebenfalls ein Element aus RkM; ausserdem gelte M extM (cM e (~n; ~q)) := fm 2 jMj : Mk 1 j= A[m;~n; ext (~q)]g: 51 Dabei sei extM (~q) eine abkurzende Schreibweise fur extM (q1 ); : : : ; extM (ql ), falls ~q = q1 ; : : : ; ql ist. Ausgehend von diesen Denitionen fuhren wir nun die Mengen T M und RM ein, die zur Interpretation der Typen und der Namensrelation verwendet werden: T M := [ k2IIN TkM und RM := [ k2IIN f(m; extM(m)) : m 2 RkMg: Die gewunschte L p -Standardstruktur ist schliesslich gegeben durch M := (M; T M; RM ; (cM e : e 2 IIN)): 3.5.1 Theorem Ist M ein Modell von BON, so ist M ein Modell von EET, das folgende Eigenschaften besitzt: 1. M ist eine konservative Erweiterung von M in dem Sinne, dass fur alle geschlossenen Lp -Formeln A gilt: M j= A () M j= A: 2. Ist M ein Modell von (F-IN) bezuglich Lp , dann ist M ein Modell von (T-IN) bezuglich L p . Beweis Durch genaues Betrachten der eben beschriebenen Konstruktion von M kann man sehr leicht nachprufen, dass M ein Modell von EET mit den angegebenen Eigenschaften ist. 3.5.2 Folgerung 1. EET+(S-IN) ist eine konservative Erweiterung von BON+(S-IN) bezuglich aller geschlossenen Lp-Formeln. 52 2. EET+(T-IN) ist eine konservative Erweiterung von BON+(F-IN) bezuglich aller geschlossenen Lp-Formeln. Beweis Beide Behauptungen folgen unmittelbar aus dem vorhergehenden Theorem. Zum Beweis der ersten Behauptung muss man ausserdem beachten, dass M genau dann ein Modell von (S-IN) ist, wenn M ein Modell von (S-IN) ist. 3.5.3 Theorem PRF und G sind Modelle von EET + (F-IN). Beweis Aufgrund von Theorem 2.5.1, Theorem 2.6.1 und Theorem 3.5.1 sind PRF und G Modelle von EET. Betrachtet man die Interpretation der naturlichen Zahlen in diesen Modellen, so sieht man sofort, dass auch (F-IN) erfullt ist. 3.6 Die Hierarchie endlicher Typen In EET + (F-IN) kann ohne grossen Aufwand die ubliche Hierarchie der endlichen Typen deniert werden. Ebenso kann man auch die extensionale Version dieser Typenhierarchie einfuhren. Zuerst fuhren wir dazu Codes fur die Symbole endlicher Typen (Finite Type Symbols) ein, und zwar so, dass (0; 0) das Symbol 0 codiert und (1; (a; b)) beziehungsweise (2; (a; b)) fur (a b) beziehungsweise (a ! b) stehen. Wir betrachten nun einige Denitionen, in denen das Symbol < fur die ubliche Kleinerrelation auf den naturlichen Zahlen verwendet wird, entsprechend steht x y fur (x < y _ x = y). Nun setzen wir 53 AFTS (z; z0 ; z1; f ) := z0 < z ^ z1 < z ^ [f (z) = (1; (f (z0); f (z1))) _ f (z) = (2; (f (z0); f (z1 )))]; BFTS (y; f ) := (8z 2 N)[z y ! f (z) = (0; 0) _ 9z0 9z1 AFTS (z; z0 ; z1; f )]; CFTS(x; y; f ) := y 2 N ^ x = f (y) ^ BFTS (y; f ): Damit ist CFTS(x; y; f ) eine elementare L p -Formel. Daher kann man in EET mittels elementarer Komprehension den folgenden Typ FTS einfuhren, der genau die Codes fur die Finite Type Symbols enthalt; FTS := fx : 9y9fCFTS(x; y; f )g: Ehe wir als nachstes die Hierarchie der endlichen Typen einfuhren, bemerken wir, dass es wegen der Uniformitat der elementaren Komprehension geschlossene L p -Individuenterme nat; prod und imp gibt, so dass in EET die folgenden drei Eigenschaften gelten: (i) (ii) (iii) <(nat; fx : N(x)g): <(x; X ) ^ <(y; Y ) ! <(prod(x; y); X Y ): <(x; X ) ^ <(y; Y ) ! <(imp(x; y); (X ! Y )): Um die folgende Denition von fth etwas ubersichtlicher zu gestalten, fuhren wir die geschlossenen L p -Individuenterme tprod und timp als Abkurzungen ein. Wir schreiben tprod := (fu:prod(f (p0(p1 u)); f (p1(p1u)))); timp := (fu:imp(f (p0(p1 u)); f (p1(p1u)))) und erhalten in EET fur alle x; y und z: (iv) u = (x; (y; z)) ! tprod fu ' prod(fy; fz): (v) u = (x; (y; z)) ! timpfu ' imp(fy; fz): 54 Mit Hilfe des Rekursionstheorems lasst sich nun ein geschlossener L p -Term fth einfuhren, der fur alle u die Rekursionsgleichung fth u ' dNnat( dN(tprodfth u)(timpfth u)(p0u)1; )(p0u)0 erfullt. Dann gilt in EET: (vi) u = (0; 0) ! fth u = nat: (vii) u = (1; (x; y)) ! fth u = prod(fth x; fth y): (viii) u = (2; (x; y)) ! fth u = imp(fth x; fth y): In EET + (F-IN) wird im nachsten Schritt mit Hilfe von Formelinduktion gezeigt, dass fth u fur jedes Finite Type Symbol u Name eines Typs ist; EET + (F-IN ) beweist also (8u 2 FTS)9X <(fth u; X ): Typeninduktion (T-IN) reicht zum Beweis dieser Behauptung nicht aus. Ist u ein Element von FTS, so bezeichnen wir von nun an den durch fth u eindeutig bestimmten Typ mit Nu . Folglich gilt fur alle u und v aus FTS: N0 = N; N(1;(u;v)) = Nu Nv und N(2;(u;v)) = (Nu ! Nv ): Das bedeutet, dass die Familie (Nu : u 2 FTS) der ublichen Hierarchie der endlichen Typen entspricht. Um die extensionale Version der Hierarchie der endlichen Typen aufzubauen, gehen wir ahnlich vor. Allerdings denieren wir nun fur jedes u aus FTS einen Typ Mu und eine Gleichheitsrelation =u auf Mu, die ein Teiltyp von Mu Mu ist. Dabei mussen fur alle u und v aus FTS die folgenden Bedingungen (1) (3) erfullt sein. 55 (1) M0 = N und fur alle x; y 2 M0 gilt x =0 y $ x = y: (2) M(1;(u;v)) = Mu Mv und fur alle x; y 2 M(1;(u;v)) gilt x =(1;(u;v)) y $ p0x =u p0y ^ p1 x =v p1 y: (3) M(2;(u;v)) = ff : f 2 (Mu ! Mv ) ^ (8x; y 2 Mu)(x =u y ! fx =v fy)g und fur alle f; g 2 M(2;(u;v)) gilt f =(2;(u;v)) g $ (8x 2 Mu)(fx =v gx): 3.7 Die Theorie SET Ersetzen wir in EET das Schema der elementaren Komprehension durch das folgende Schema der stratizierten Komprehension, so erhalten wir die Theorie SET der stratizierten expliziten Typen. SET ist bedeutend starker als EET und lasst unter anderem die Bildung (stark) impradikativer Typen zu. Stratizierte Komprehension Es sei A[x; ~y; Z~ ] eine stratizierte L p - Formel mit Godelnummer e. Dann haben wir als Axiome: (SCA.1) (SCA.2) 9X 8x(x 2 X $ A[x; ~u; V~ ]): <(~v; V~ ) ^ 8x(x 2 X $ A[x; ~u; V~ ]) ! <(ce (~u;~v); X ): Die Konstanten ce werden in SET also zur Konstruktion von Namen fur Typen, die durch stratizierte Komprehension gebildet werden, verwendet. Wie bei EET ist die Namensgebung uniform in den Individuen- und Typenparametern der denierenden Formel. 56 Es lasst sich leicht zeigen, dass das System PA2 der Arithmetik zweiter Stufe mit voller Komprehension in SET + (T-IN) eingebettet werden kann. Aus einem Ergebnis von Glass [12] folgt ausserdem, dass SET + (F-IN) zu PA2 beweistheoretisch aquivalent ist. Die U berlegungen des nachsten Abschnittes zeigen schliesslich, dass SET + (S-IN) und BON + (S-IN) dieselbe beweistheoretische Starke besitzen. 3.7.1 Theorem 1. Die Theorien SET + (S-IN ); EET + (S-IN ); BON + (S-IN) und PRA sind beweistheoretisch aquivalent. 2. Die Theorien SET + (F-IN); SET + (T-IN ) und PA2 sind beweistheoretisch aquivalent. 3.8 Standardmodelle von SET Durch eine geeignete Modikation kann das Verfahren von Abschnitt 3.5 so erweitert werden, dass wir aus Modellen von BON Modelle von SET erhalten. Gegeben sei wiederum eine partielle Lp-Struktur M, die ein Modell von BON ist. Als Hilfsausdrucke fuhren wir zuerst fur alle naturlichen Zahlen e Elemente dM e aus jMj ein, die deniert sind durch dM e := Wert des Terms (x:(1; e; x)) in M. Ferner konnen wir annehmen, dass es eine totale Funktion ' gibt, die der Godelnummer e einer L p -Formel A[x; ~y; Z~ ] die Godelnummer '(e) der L p Formel 8x(x 2 Vj $ A[x; ~y; Z~ ]) 57 zuordnet, wobei j der Eindeutigkeit halber der kleinste Index sei, so dass Vj in A[x; ~y; Z~ ] nicht vorkommt. Mit Hilfe von (dM e : e 2 IIN) und ' denieren wir die Familie (cM ur alle naturlichen Zahlen e : e 2 IIN), indem wir f M cM e := d'(e) setzen. In Ausdrucken der Form cM ~ ) und dM ~ ) sind fur m ~ 2 jMj die e (m e (m (iterierte) Paarbildung und die Anwendungsoperation im Sinne von M zu verstehen. Ehe wir unser Modell von SET einfuhren, betrachten wir die L p -Struktur M(2) := (M; P (jMj); ;; (cM e : e 2 IIN)): Dann wahlen wir fur jede stratizierte L p -Formel A[~y; Z~ ; X ] mit Godelnummer e eine Skolemfunktion Fe, so dass M(2) j= 9XA[m~ ; Q~ ; X ] ! A[m~ ; Q~ ; Fe(m~ ; Q~ )] () fur alle m ~ 2 jMj und Q~ 2 P (jMj) gilt. Analog zu fruher fuhren wir jetzt durch Induktion uber die naturliche Zahl k Teilmengen RkM von jMj und simultan dazu fur jedes m 2 RkM eine Teilmenge extM (m) von jMj ein. k = 0. Fur jede stratizierte L p -Formel A[~y; X ] mit Godelnummer e und fur alle m ~ 2 jMj sei dM ~ ) aus R0M ; aussserdem gelte e (m extM (dM ~ )) := Fe(m ~ ): e (m k > 0. RkM enthalte RkM 1. Ist A[~y; Z~ ; X ] eine stratizierte L p -Formel mit ~ ; ~q) ebenfalls Godelnummer e und sind m ~ 2 jMj und ~q 2 RkM 1, so sei dM e (m M ein Element von Rk ; ausserdem gelte extM (dM ~ ; ~q)) := Fe(m ~ ; extM (~q)): e (m 58 Dabei sei extM (~q) eine abkurzende Schreibweise fur extM (p1 ); : : : ; extM (ql ), falls ~q = q1 ; : : : ; ql ist. Ausgehend von diesen Denitionen fuhren wir nun die Interpretationen T M und RM der Typen und Namensrelation ein: T M := RM := [ k2IIN [ k2IIN fextM (m) : m 2 RkMg; f(m; extM (m)) : m 2 RkMg: Damit lasst sich unsere gewunschte L p -Struktur M] denieren als M] := (M; T M; RM ; (cM e : e 2 IIN)): 3.8.1 Lemma Ist M ein Modell von BON, so gilt fur alle stratizierten L p -Formeln A[~x; Y~ ] sowie alle m ~ 2 jMj und Q~ 2 T M: M(2) j= A[m~ ; Q~ ] () M] j= A[m~ ; Q~ ]: Beweis Dieses Lemma wird durch Induktion nach dem Aufbau der Formel A[~x; Y~ ] gezeigt. Dabei ist der interessante Fall der, dass A[~x; Y~ ] von der Form 9ZB [~x; Y~ ; Z ] ist und M(2) j= A[m ~ ; Q~ ] gilt. Wegen Q~ 2 T M gibt es dann eine naturliche Zahl k und ~q 2 RkM, so dass extM (~q) = Q~ ist. Ist e die Godelnummer von B [~x; Y~ ; Z ], so gilt nach () M(2) j= B [m~ ; Q~ ; Fe(m~ ; Q~ )]: Ferner ist dM ~ ; ~q) 2 RkM+1 und Fe(m ~ ; Q~ ) = extM (dM ~ ; ~q)). Daraus folgt e (m e (m M ~ Fe(m~ ; Q) 2 T , so dass wir mit der Induktionsvoraussetzung auch ~ F e (m M] j= B [m~ ; Q; ~ ; Q~ )] erhalten. Dies ergibt aber sofort M] j= A[m ~ ; Q~ ]. 59 3.8.2 Theorem Ist M ein Modell von BON, so ist M] ein Modell von SET. Ausserdem gilt fur alle geschlossenen Lp -Formeln A: M] j= A () M j= A: Beweis Aufgrund der fruheren U berlegungen mussen wir nur noch das Schema der stratizierten Komprehension betrachten. Sei also A[x; ~y; Z~ ] eine stratizierte L p -Formel mit Godelnummer e und B [~y; Z~ ; X ] := 8x(x 2 X $ A[x; ~y; Z~ ]) die dazu passende stratizierte L p -Formel mit Godelnummer '(e). Seien ausserdem m ~ 2 jMj; k 2 IIN und ~q 2 RkM. Dann gilt M(2) j= 9XB [m~ ; extM (~q); X ]: Aufgrund von () und den Denitionen im Zusammenhang mit dem Aufbau von M] erhalten wir M(2) j= B [m~ ; extM(~q); F'(e)(m~ ; extM (~q))] sowie dM ~ ; ~q) 2 FkM+1 und F'(e)(m ~ ; extM(~q)) = extM (dM ~ ; ~q)). Wegen '(e) (m '(e) (m M ~ ; X ] ergibt sich also cM e = d'(e) und der Denition von B [~y; Z M(2) j= 8x(x 2 extM (cM ~ ; ~q)) $ A[x; m ~ ; extM (~q)]): e (m Nun wenden wir das vorhergehende Lemma an und erhalten daraus, dass in M] fur A[x; ~y; Z~ ] die Axiome (SCA.1) und (SCA.2) erfullt sind. 3.9 Polymorphismus in expliziter Mathematik In diesem Abschnitt mochten wir andeuten, wie polymorphe Typenstrukturen, die sich heute in der Informatik grosser Beliebtheit erfreuen, im Rahmen der expliziten Mathematik behandelt werden konnen. Der polymorphe 60 Lambdakalkul geht auf Girard [9] und Reynolds [16] zuruck und lasst im Gegensatz zum ublichen getypten Lambdakalkul auch die Abstraktion uber Typenvariablen zu. Gegeben seien Basistypen 1; 2 ; : : : ; k und abzahlbar unendlich viele Typenvariablen V 0; V 1; : : : ; V i; : : : (i 2 IIN). Die Kollektion der polymorphen Typen wird induktiv erzeugt durch: 1. Jeder Basistyp und jede Typenvariable ist ein polymorpher Typ. 2. Sind S und T polymorphe Typen, so ist (S ! T ) ein polymorpher Typ. 3. Ist T ein polymorpher Typ und ist X eine Typenvariable, so ist (X:T ) ein polymorpher Typ. Diese machtige Typenstruktur wird auch bei der Termbildung reektiert. Der polymorphe Lambdakalkul PC umfasst eine gewisse Menge von Konstanten verschiedener Typen sowie abzahlbar unendlich viele Variablen zu jedem polymorphen Typ T . Dabei nehmen wir zur Vereinfachung der Notation an, dass fur jede Variable xS vom Typ S auch x eine Individuenvariable von L p ist. Ausserdem sollen xS und yT nur dann zur selben L p Individuenvariablen korrespondieren, falls x und y sowie S und T identisch sind. Die Kollektion der Terme von PC wird induktiv erzeugt durch: 1. Jede Konstante und jede Variable vom Typ T ist ein Term vom Typ T . 2. Ist t ein Term vom Typ (S ! T ) und s ein Term vom Typ S , so ist (t s) ein Term vom Typ T . 3. Ist t ein Term vom Typ T und xS eine Variable vom Typ S , so ist (xS :t) ein Term vom Typ (S ! T ). 4. Ist t ein Term vom Typ (X:T ) und S ein Typ, so ist (t S ) ein Term vom Typ T [S=X ]. 61 5. Ist t ein Term vom Typ T und X eine Typenvariable, so ist (X:t) ein Term vom Typ (X:T ), falls X nicht im Typ einer freien Variablen von t frei vorkommt. Ist s ein Term vom Typ S und t ein Term vom Typ T , so hat PC wie der ubliche getypte Lambdakalkul die Reduktionsregel ((xS :t) s) B t[s=xS ]: Dazu kommt aber in PC noch ein Reduktionsschema, das ((X:t) S ) B t[S=X ] fur beliebige (getypte) Terme t und Typen S fordert. Reduktionen, Normalformen und ahnliches lassen sich wie ublich denieren. Aufgrund von Ergebnissen von Girard wissen wir, dass die Terme des polymorphen Lambdakalkuls PC (stark) normalisiert werden konnen. Ausserdem hat er gezeigt, dass die zahlentheoretischen Funktionen, die in PC reprasentiert werden konnen, genau den in PA2 beweisbar totalen rekursiven Funktionen entsprechen. Es ist auch moglich, basierend auf PC sogenannte Type Assignment Calculi einzufuhren. Wir verzichten jedoch darauf, dies hier naher auszufuhren. Fur weitere Einzelheiten uber polymorphe Typensysteme sei auf die Fachliteratur verwiesen, z.B. [10, 11]. 3.9.1 Beispiel 1. Es sei Id := (Y:(xY :xY )). Dann ist Id vom Typ (Y:(Y ! Y )) und reprasentiert die uniforme Identitatsfunktion. Ist S ein beliebiger polymorpher Typ, so gilt namlich (Id S ) B (xS :xS ); und (xS :xS ) ist die Identitat auf S . 62 2. Es sei Ap := (X:(Y:(y(X !Y ):(xX :(y(X !Y ) xX ))))). Dann ist Ap vom Typ (X:(Y:((X ! Y ) ! (X ! Y )))) und reprasentiert die allgemeine Anwendungsoperation. Sind S und T beliebige polymorphe Typen, so gilt: (i) ((Ap S ) T ) ist vom Typ ((S ! T ) ! (S ! T )). (ii) ((Ap S ) T ) B (y(S!T ):(xS :(y(S!T ) xS ))). Wenden wir nun ((Ap S ) T ) auf einen Term t vom Typ (S ! T ) und das Ergebnis auf einen Term s vom Typ S an, so erhalten wir (((Ap S ) T ) t) B (xS (t xS )) und ((((Ap S ) T ) t) s) B (t s): Um PC in SET einzubetten, machen wir von einer Forgetful Interpretation in der Art von Girard und Troelstra (vgl. z.B. [19]) Gebrauch. Um dies moglichst einfach darstellen zu konnen, nehmen wir an, dass wir in PC nur einen Basistyp fur die naturlichen Zahlen haben. Ausserdem sollen in PC keine Termkonstanten vorkommen. Zuerst ordnen wir jedem Typ T (X~ ), in dem hochstens die Variablen X~ frei vorkommen, eine stratizierte L p -Formel FT (x; X~ ) mit denselben freien Typenvariablen und einer zusatzlichen freien L p -Individuenvariablen x zu. Diese Zuweisung wird durch folgende Induktion nach Typenaufbau durchgefuhrt: 1. Ist T (X~ ) der Typ , so ist FT (x) := N(x). 2. Ist T (X~ ) eine Typenvariable X , so ist FT (x; X ) := (x 2 X ). 3. Ist T (X~ ) von der Form (S0 (X~ ) ! S1 (X~ )), so ist FT (x; X~ ) := 8y(FS0 (y; X~ ) ! FS1 (xy; X~ )): ~ Y )), so ist FT (x) := 8Y FS (x; X; ~ Y ). 4. Ist T (X~ ) von der Form (Y:S (X; 63 3.9.2 Bemerkung Ist T (X~ ) ein polymorpher Typ von PC, so ist FT (x; X~ ) eine stratizierte L p -Formel. Folglich wird dadurch in SET ein Typ deniert. Im nachsten Schritt ubersetzen wir jeden Term t von PC in einen L p Individuenterm t , indem wir bei t samtliche Typeninformationen streichen. Diese U bersetzung wird durch folgende Induktion nach Termaufbau durchgefuhrt: 1. Ist t die getypte Variable xT , so ist t := x. 2. Ist t von der Form (s0 s1), so ist t := (s0 s1). 3. Ist t von der Form (xT :s), so ist t := (x:s ). 4. Ist t von der Form (s T ), so ist t := s . 5. Ist t von der Form (X:s), so ist t := s . 3.9.3 Bemerkung Die U bersetzung t eines Terms t von PC enthalt keine Typenvariablen. 3.9.4 Beispiel 1. Wir betrachten zuerst den Term Id aus Beispiel 3.9.1, der vom Typ (Y:(Y ! Y )) ist. Diesem Typ wird die Formel FId (x) = 8Y 8y(y 2 Y ! xy 2 Y ) zugeordnet. FId bedeutet also, dass x fur jeden Typ Y eine totale Funktion von Y nach Y ist. Da ausserdem Id = (x:x) gilt, erhalten wir FId (Id ). 64 2. Nun betrachten wir den Term Ap aus Beispiel 3.9.1, der vom Typ TAp = (X:(Y:((X ! Y ) ! (X ! Y )))) ist. Diesem Typ wird die Formel FAp(x) = 8X 8Y 8y[(y : X ! Y ) ! (xy : X ! Y )] zugeordnet. Aus FAp (x) folgt also, dass x eine Operation ist, die fur beliebige Typen X und Y jeder totalen Funktion y von X nach Y eine totale Funktion xy von X nach Y zuordnet. Ausserdem gilt Ap = (yx:(yx)). Oensichtlich gilt (y : X ! Y ) ! (Apy : X ! Y ) fur beliebige Typen X und Y . Daher erhalten wir FAp (Ap). Das folgende Theorem besagt, dass PC in SET eingebettet werden kann. Die Typenzuordnung von Typen zu Termen in PC lasst sich in SET relativ zu den beschriebenen U bersetzungen von Typen und Termen beweisen. 3.9.5 Theorem Es sei t ein PC-Term vom Typ T mit den freien getypten Variablen xS1 1 ; : : : ; xSnn und unter Umstanden freien Typenvariablen. Dann gilt SET ` FS1 (x1 ) ^ : : : ^ FSn (xn ) ! FT (t ): Der Beweis dieses Theorems soll als U bungsaufgabe durchgefuhrt werden. Dabei ist es interessant zu sehen, an welcher Stelle von impradikativer Komprehension Gebrauch gemacht wird. 65 Applikative Theorien und explizite Mathematik Sommersemester 1996 Prof. Dr. G. Jager Th. Strahm Serie 1 Gegeben seien die folgenden Prinzipien: (Tot) (8x; y)(xy#); (Ext) (8x)(fx ' gx) ! (f = g). (dV ) (u = v ! dV xyuv = x) ^ (u 6= v ! dV xyuv = y). (iN) (8x)(iN x 2 N) ^ (8x; y)(x 6= y ! iNx 6= iNy). (cN ) (8x)(cNx = 0 _ cNx = 1) ^ (8x)(cN x = 0 $ x 2 N). Aufgabe 1 Finden Sie einen Lp-Term rect , so dass gilt: BON + (Tot) ` rect f = f (rect f ): Hinweis: Modizieren Sie den Term rec aus dem Rekursionssatz fur BON. Aufgabe 2 Beweisen Sie die folgenden Aussagen: 1. BON + (Tot) + (dV ) ist inkonsistent. 2. BON + (Tot) + (8x)N(x) ist inkonsistent. 66 3. BON + (Tot) + (iN) ist inkonsistent. 4. BON + (Tot) + (cN) ist inkonsistent. Aufgabe 3 Zeigen Sie: BON ` k 6= s. Hinweis: Beweisen Sie in BON: k = s ! (8x)(x = skk). Aufgabe 4 Es seien s; t Lp-Terme, x; y verschiedene Variablen und x 62 FV(s). Zeigen Sie: BON + (Ext) ` s# ! (x:t)[s=y ] = (x:t[s=y ]): Hinweis: Lemma 2.2.4 aus der Vorlesung. Aufgabe 5 Finden Sie eine Sprache L der Logik der partiellen Terme sowie L-Terme a und b, so dass LPT 6` a# ^ b# ! a[b=x]#: Hinweis: Theorem 1.2.5 aus der Vorlesung. Abgabe: 6. Mai 1996 67 Applikative Theorien und explizite Mathematik Sommersemester 1996 Prof. Dr. G. Jager Th. Strahm Serie 2 Aufgabe 1 Zeigen Sie, dass es naturliche Zahlen ^k und ^s gibt, so dass fur alle naturlichen Zahlen m; n und p folgende Bedingungen erfullt sind: (1) ff^kg(m)g(n) = m: (2) ff^sg(m)g(n) 2 N und fff^sg(m)g(n)g(p) ' ffmg(p)g(fng(p)): Aufgabe 2 Erweitern Sie das normale Termmodell CNT so, dass darin full denition by cases (dV ) erfullt ist. Aufgabe 3 Im folgenden betrachten wir das Join-Axiom (J) in expliziter Mathematik. Dazu schreiben wir Z = (U; f ) fur die Aussage 8x(x 2 Z $ x = (p0 x; p1 x) ^ p0x 2 U ^ 9Y (<(f (p0x); Y ) ^ p1x 2 Y )); d.h. Z ist die disjunkte Vereinigung uber alle x 2 U derjenigen Typen, die durch fx benannt werden. Nun hat das Join-Axiom die Form (J) <(u; U ) ^ (8x 2 U )9Y <(fx; Y ) ! 9Z (<(j(u; f ); Z ) ^ Z = (U; f )): 68 Hier ist j eine neue Konstante unserer Sprache. Erweitern Sie die Standardmodell-Konstruktion fur EET, so dass das Join-Axiom (J) mitbehandelt wird. Aufgabe 4 Ein Typ X heisst berechenbar, falls er eine charakteristische Funktion auf V besitzt: f 2 P (V) := 8x(fx = 0 _ fx = 1); Comp(X ) := (9f 2 P (V))8x(x 2 X $ fx = 0): Zeigen Sie: EET ` 9X :Comp(X ). Abgabe: 17. Juni oder 24. Juni (mit Adresse). 69