Berechenbarkeit, Beweisbarkeit Arithmetik Inhalt 1. 2. 3. Die Arithmetik n n n Sprache Axiome Induktionsschema Definierbarkeit n n n n Komposition Gödelsche β-Funktion Chinesischer Restsatz Definierbarkeit der rek. Funktionen Die Gödelschen Sätze n n n n Fixpunktsatz Erster Unvollständigkeitssatz Zweiter Unvollständigkeitssatz Goodstein-Folgen © H. Peter Gumm, Philipps-Universität Marburg Inhalt 1. 2. 3. Die Arithmetik n n n Sprache Axiome Induktionsschema Definierbarkeit n n n n Komposition Gödelsche β-Funktion Chinesischer Restsatz Definierbarkeit der rek. Funktionen Die Gödelschen Sätze n n n n Fixpunktsatz Erster Unvollständigkeitssatz Zweiter Unvollständigkeitssatz Goodstein-Folgen © H. Peter Gumm, Philipps-Universität Marburg Arithmetik Die Zahlentheorie beschäftigt sich mit der Datenstruktur N = ( N ; 0N, +1N , +N, ¤N ; =N ) Dabei ist N die Menge der natürlichen Zahlen, +1N(n) := n+1 +N und ¤N sind Addition und Multiplikation, =N die Gleichheit auf N. Die Signatur von N ist ΣN = ( 0, s, +, * ; = ) mit 0 nullstellig s einstellig +, *, = zweistellig Eine alternative Struktur mit dieser Signatur wäre z.B. B = ({ 0, 1 }, 0B, sB, +B, ¤B ; =B) wobei 0B := 0 sB(x) := :B(x) +B(x,y) := x ©B y ¤B(x,y) := x ÆB y 1 0 © H. Peter Gumm, Philipps-Universität Marburg Die logische Sprache der Arithmetik n Die Sprache L(ΣN) ist Terme : PL1-Formeln : Term : | | | | | x, 0 s ( Term ) Term + Term Term * Term ( Term ) Expr : Term = Term | ¬ Expr | ? | > | Expr ∧ Expr | Expr ∨ Expr | Expr ! Expr | Expr $ Expr | ∃ x. Expr | ∀ x. Expr für jedes x 2 Var Atomare Audrücke für jedes x 2 Var Eine arithmetische Formel ist eine PL1-Formel aus L(ΣN) © H. Peter Gumm, Philipps-Universität Marburg Interessante Formeln in L(ΣN) n Abkürzungen ¨ n Interessante Formeln ¨ ¨ ¨ n := 9n. x + n = y := 9n. x ¤ n = y := 8n. n|x ) n· 1 Goldbach := 8n. 9x 9y. Prim(x) Æ Prim(y) Æ 2¤n=x+y Keine Aussage, keine Formel ¨ n x·y x|y Prim(x) Interessante Aussage ¨ n 1 := s(0), 2 := s(s(0)), … Fermat := 8n. ( 9x. 9y. 9z. xn+yn=zn ) ! n · 2. Aber kann man eine „äquivalente“ Formel formulieren ? © H. Peter Gumm, Philipps-Universität Marburg Semantik n Sei v : Var → N eine beliebige Belegung in N. Wert ² eines Terms t unter v heiße v(t) Wann ist eine Formel wahr ²N f v(0) = 0N v(s(x)) = v(x)+1 , falls x Variable v( t1 + t2 ) = v( t1 ) + v( t2 ) v( t1 * t2 ) = v( t1 ) ¤ v( t2 ) v( ( t ) ) = v(t) ²N ²N ²N ²N ²N ²N t1=t2 :f f1 Æ f2 f1 Ç f2 8x . f 9x . f :, für alle Belegungen v gilt v(t1 ) = v(t2 ). :, nicht ² f :, ² f1 und ² f2 :, ² f1 oder ² f2 :, es gibt ein n 2 N mit ² f(x/n) :, für alle n 2 N gilt ² f(x/n). © H. Peter Gumm, Philipps-Universität Marburg Axiome der Arithmetik n Um wahre Aussagen von N beweisen zu können, brauchen wir Axiome und Schlussregeln Was wäre zum Beispiel mit folgenden Axiome der Logik erster Stufe. n ∀x. ∀x.∀y. ¬s(x) = 0 s(x) = s(y) ⇒ x = y ∀x. ∀x. ∀y. x+0=x x + s(y) = s(x + y) ∀x. ∀x. ∀y. x*0=0 x * s(y) = (x * y) + x Freiheitsaxiome: Jede Zahl außer 0 hat eindeutigen Vorgänger Definition der Addition © H. Peter Gumm, Philipps-Universität Marburg Axiome reichen nicht aus n In N gilt z.B. N£N s(2,3)=(3,4) (linOrd) 8 x. 8 y. (9 z. x+z=y Ç y+z=x) n aber das ist aus den Axiomen nicht herleitbar, denn es gibt Strukturen, die die Axiome erfüllen, nicht aber (linOrd). ¨ s(s(0)) s(0) 0 Beispiel: N£N mit komponentenweisen Operationen: n n n n 0N£N = (0 N,0 N) sN£N(n1,n2) = (sN(n1),sN(n2)) (n1 ,n2) +N£N (m1 ,m2) = (n1 +N m1,n2 +N m2) (n1 ,n2) ¤N£N (m1 ,m2) = (n1 ¤N m1,n2 ¤N m2) erfüllt die Axiome ¨ n Aber x=(2,3), y=(3,2) und erfüllt nicht (linOrd) Also ist (linOrd) nicht aus den Axiomen herleitbar © H. Peter Gumm, Philipps-Universität Marburg Probleme mit Addition n Lässt sich aus den Axiomen herleuiten: 8x. 0+x = x ? ¨ ¨ ¨ n Metatheorem : ¨ ¨ n 0+0 = 0 p 0+s(0) = s(0+0) = s(0) p 0+s(s(0)) = s(0+s(0))=s(s(0)) p Für jedes n=s(s(…s(0)…)) können wir zeigen 0+n=n Wir können aber nicht zeigen: 8n. 0+n=n Analog ¨ ¨ 8x. x+n=n+x für jedes n der Form s(s(…s(0)…)) aber nicht 8x. 8y. x+y=y+x © H. Peter Gumm, Philipps-Universität Marburg Induktionsschema n Jede nat. Zahl soll Nachfolger der 0 sein ¨ n Wie soll man das ausdrücken ? 8 n. ( n=0 Ç n= s(0) Ç n=s(s(0)) Ç … ) unendlich lange Formel, nicht möglich in L(ΣN) Stattdessen Induktionsschema Schema, weil mit jeder beliebigen Formel φ(x) instanziierbar ¨ φ(x) heißt Induktionshypothese ¨ Für jede Formel φ(x) mit einer freien Variablen x : φ(0) , 8k. ( φ(k) ! φ(k+1) ) Induktionsschema 8x.φ(x) © H. Peter Gumm, Philipps-Universität Marburg Beweiskalkül für nat. Zahlen n Wir setzen ¨ Die Sprache L(ΣN) ¨ Ein Beweiskalkül für die Prädikatenlogik n n ¨ Die 6 Axiome für die natürlichen Zahlen n n ¨ n z.B. Nat. Herleitung (klassisch) oder Hilbert Kalkül (klassisch) Freiheit Definition von Addition und Multiplikation Das Induktionsschema als zusätzliche Beweisregel Wir schreiben `N ψ falls man damit eine Aussage ψ 2 L(ΣN) herleiten kann Wir werden aber die Herleitung aber nicht explizit durchführen ! © H. Peter Gumm, Philipps-Universität Marburg Inhalt 1. 2. 3. Die Arithmetik n n n Sprache Axiome Induktionsschema Definierbarkeit n n n n Komposition Gödelsche β-Funktion Chinesischer Restsatz Definierbarkeit der rek. Funktionen Die Gödelschen Sätze n n n n Fixpunktsatz Erster Unvollständigkeitssatz Zweiter Unvollständigkeitssatz Goodstein-Folgen © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit Eine Relation R µ Nk ist (arithmetisch) definierbar, falls es eine arithmetische Formel F(x1 ,...,xk) gibt, so daß für alle a1 ,...,ak ∈ N gilt: R(a1 ,...,an ) , `N F(a1 ,..., an ). Die folgenden Relationen sind definierbar (x1 · x2) := 9 n.(x1 + n = x2 ) (x1 < x2 ) := 9 n. x1 + s(n) = x2 (x1 | x2 ) := 9 n. (x1 ¤ n = x2 ) Prim(x) := 8 n. ( n|x ! x=n Ç x · 1) ) © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit von Funktionen n Eine partielle Funktion f:: Nk → N ist definierbar, falls es eine Formel F(x1 ,...,xk , y) gibt, so daß für alle a1 ,...,ak, b ∈ N gilt: f(a1 ,...,an ) = b , `N F(a1 ,..., an ,b). Die grundlegenden arithmetischen Funktionen sind definierbar Add(x1 ,x2 ,y) := ( y = x1+x2 ) Sub(x1,x2 ,y) := Add(x2,y,x1) ∨ (∀ r . ¬Add(x2 ,r,x1 ) ∧ y=0 ) Mit der Abkürzung a<b für ∃ r . ¬(r=0) ∧ (b = a +r) Div(x1 ,x2 ,y) := ∃ r. ( r < x2 ) ∧ (x1 = y ¤ x2 + r) Mod(x1 ,x2 ,y) := ∃ k. ( y < x2 ) ∧ (x1 = k ¤ x2 + y) © H. Peter Gumm, Philipps-Universität Marburg Komposition von Funktionen Seien fi :: Nk→ N, für i=1,…,k sowie g :: Nm →Nat definierbar durch die Formeln Fi(x1,…,xk,y) bzw. G(x1,…,xm,y) dann definiert ∃z1,…,9 zm. (F1(x1,…,xk, z1) Æ … Æ Fm(x1,…,xk,zm) Æ G(z1,…,zm,y) ) die Komposition g(f1….,fm) © H. Peter Gumm, Philipps-Universität Marburg Paare und Komponentenzugriffe definierbar n Die Paarbildung mit ihren Zugriffsfunktionen ist definierbar. Paarbildung pair(a,b) = (a+b)¤(a+b+1)/2 + a ist definierbar. maxGauss(n) = max{k | k¤(k+1)/2 ≤ n } wird definiert durch MaxGauss(n,k) ⇔ ( k¤(k+1)/2 ≤ n ) ∧ ¬∃ z. (k < z) ∧ z¤(z+1)/2 ≤ n ). Analog sind definierbar snd(n) := n - σ(n)¤(σ(n) +1)/2 fst(n) := σ(n) - snd(n) durch Relation Snd(n,z) durch Relation First(n,z) © H. Peter Gumm, Philipps-Universität Marburg Schwierigkeiten Bei dem Versuch, die Exponentiation zu definieren, treten Schwierigkeiten auf: exp(x,y,z) :⇔ (y=0 ∧ 1=z) ∨ ∃u.(y=s(u) ∧ exp (x,u,v) ∧ v¤x=z ) Nicht erlaubt, da die noch zu definierende Relation bereits benutzt wird. exp(x,y,z) :⇔ ∃u1. ... ∃uy. (u1=x ∧ ∀i. 0 ≤ i ∧ i ≤ n ⇒ ui+1 = x*ui ∧ uy = z.) Nicht erlaubt, da die Anzahl der Quantoren nicht fest ist, sondern von y abhängt. Ist exp(x,y,z) definierbar ? © H. Peter Gumm, Philipps-Universität Marburg Der Gödelsche Trick n Codiere Folge n1,…,nk 2 N* in eine Zahl n = <n1,…,nk> 2 N Codiere Zugriffsfunktionen n[i] n Aus n 9 k. 9n1. … .9 nk. P(n1,…) Æ … Æ P(nk,…) wird n 9 k. 9n. 8 i. i · k ) P(n[i],…) exp(x,y,z) :⇔ ∃u1. ... ∃uy. (u1=x ∧ ∀i. 0 ≤ i ∧ i ≤ n ⇒ ui+1 = x¤ui ∧ uy = z.) :⇔ ∃u. ( u[1]=x ∧ u[y] = z. Æ 8 i. ( i ·y ) u[i+1] = x¤u[i] )) n Aber: Ist n[i] definierbar ? © H. Peter Gumm, Philipps-Universität Marburg Der chinesische Restsatz Liefert Methode, beliebige Folgen natürlicher Zahlen in einer einzigen natürliche Zahl zu kodieren. Satz: Seien b1,b2, ..., bn∈N-{0} paarweise teilerfremd. Zu jeder Folge (k1, k2, ... , kn )∈ Nn mit ki < bi gibt es genau ein a < b1⋅b2⋅ ... ⋅bn, das simultan alle folgenden Kongruenzen löst: a mod b1 = k1 a mod b2 = k2 ... a mod bn = kn Beweis: Sei m = b1¢b2¢... ¢bn , Betrachte A = { 0, ... , m-1 }, Bi = {0 , . . . , bi-1 }, f : A → B1×B2× ... ×Bn mit f(x) = ( x mod b1, x mod b2, ... , x mod bn ) 1. f ist injektiv: 2. f ist bijektiv: f(a) = f(b) impliziert bi | a-b für alle i, also m | a-b. Wegen -m < a-b < m folgt a-b=0, also a=b. Klar, weil f injektiv und |A| = |B1×B2× ... ×Bn | © H. Peter Gumm, Philipps-Universität Marburg Die Gödelsche β-Funktion Satz : Für jede Zahlenfolge <n1,...,nk> gibt es Zahlen a, b ∈ N mit a mod 1+1¢b = n1 a mod 1+2¢b = n2 ... a mod 1+k¢b = nk Beweis: Sei b := (max{k,n1,...,nk }) ! . Die Zahlen bi = 1 + i¢b für i = 1, ..., k sind paarweise teilerfremd. (Ein Primteiler p von bi und bj müsste auch bi - bj = (i - j)¤b teilen. Wegen der Wahl von b müsste p dann auch b teilen. Weil p auch bi = 1+ i¤b teilt, folgt p=1. ) Nun gilt auch ni < bi für jedes i, somit liefert die vorige Formulierung des chinesischen Restsatzes ein a mit ni = a mod bi = a mod (1+i¤b). © H. Peter Gumm, Philipps-Universität Marburg Kodierung und Dekodierung von Folgen n Nach dem vorigen Satz läßt sich jede Folge <n1,...,nk> durch zwei Zahlen a,b kodieren. Die Dekodierung erfolgt mit der Gödelschen β-Funktion β : Nat3 → Nat mit β(a,b,i) := a mod (1+i*b). β ist definierbar. Schaltet man noch eine Kodierung pair nach, so läßt sich jede Folge <n1,...,nk> durch eine einzige Zahl n = pair(a,b) kodieren. Die Dekodierung erfolgt als n[ i ] := β( fst(n), snd(n), i ). Folgerung: f(n,i) = n[i] ist definierbar. © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit der p.r. Funktionen n Satz: Jede primitiv rekursive Funktion ist definierbar. Basisfunktionen: Klar. Komposition : Bereits gezeigt Primitive Rekursion (Beispielhaft für bel. f : Nat2 → Nat). Sei f(x,y) mittels g und h durch primitive Rekursion definiert. Für g und h gebe es bereits arithmetisch definierte Prädikate G(x,z) bzw. H(x1,x2,x3 ,z), so dass g(x) = z , G(x,z) und h(x1,x2,x3) = z , H(x1, x2, x3, z). Wir müssen nun ein Prädikat F(x,y,z) definieren mit f(x,y) = z ⇔ F(x,y,z). © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit primitiver Rekursion Aus den Definitionsgleichungen f(0,y) f(n+1,y) = g(y) = h(f(n,y),n,y) gewinnt man f(k,y) in k Schritten: f(k,y) = h(f(k-1,y),k-1,y) = h(h(f(k-2,y),k-2,y),k-1,y) = ... = h(h( ... (h(f(0,y),0,y), ... , k-2,y) k-1,y) = h(h( ... (h(g(y),0,y), ..., k-2,y), k-1,y) Evaluiert wird von innen nach aussen, es entstehen Zwischenergebnisse z0, ..., zk mit z0 = g(y)=f(0,y), z1 = h(z0,0,y)=f(1,y), . . . , zk = h(zk-1,k-1,y)=f(k,y) © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit primitiver Rekursion z0 = g(y)=f(0,y), z1 = h(z0,0,y)=f(1,y), . . . , zk = h(zk-1,k-1,y)=f(k,y) Der erste Versuch, dies arithmetisch zu definieren ist noch nicht korrekt: F(k,y,z) : ⇔ ∃ z0, ... ,zk-1. G(y,z0), H(z0,0,y, z1), ..., H(zk-1,k-1,y,z). Gödel’s Trick: Kodiere <z0,...,zk-1> in einer Zahl n: F(k,y,z) : ⇔ ∃n. G(y, n[0]), H(n[0],0,y, n[1]), ..., H(n[k-1],k-1,y,z). © H. Peter Gumm, Philipps-Universität Marburg Definierbarkeit primitiver Rekursion Bisher: F(k,y,z) : ⇔ ∃n. G(y, n[0]), H(n[0],0,y, n[1]), ..., H(n[k-1],k-1,y,z). Jetzt noch die “ . . . “ eliminieren : F(k,y,z) : ⇔ ∃ n . G(y, n[0]) ∧ n[k] = z ∧ ∀ i. 0 ≤ i < k ⇒ H( n[i], i, y, n[i +1]). © H. Peter Gumm, Philipps-Universität Marburg µ−Rekursion µ(f)(x1,…,xk) := n min{ n | f(n,x1,…,xk) = 0 } falls ∀ k ≤ n. f(k,x1,…,xk) ≠⊥ ⊥ sonst. f :: Nk+1! N sei definierbar durch F(x0,…,xk,y). Dann ist µ(f)(x1,…,xk) definierbar durch ¨ Mf(x1,…,xn,y) , F(y,x1,…,xk,0) Æ 8y‘·y. 9z≠0. F(y,x1,…,xk,z) © H. Peter Gumm, Philipps-Universität Marburg Inhalt 1. 2. 3. Die Arithmetik n n n Sprache Axiome Induktionsschema Definierbarkeit n n n n Komposition Gödelsche β-Funktion Chinesischer Restsatz Definierbarkeit der rek. Funktionen Die Gödelschen Sätze n n n n Fixpunktsatz Erster Unvollständigkeitssatz Zweiter Unvollständigkeitssatz Goodstein-Folgen © H. Peter Gumm, Philipps-Universität Marburg Truth is elusive In diesem Kapitel zeigen wir u.A. n n Sei Truth die Menge aller wahren Aussagen der Arithmetik ¨ egal ob Truth µ ASCII∗ , als Menge von Strings ¨ oder Truth µ N via einer (Binär)codierung ¨ Falsity = { φ 2 L(N) j φ Aussage, ²N :φ} = { :φ 2 L(N) j φ Aussage, 2N φ} Es gibt keine Methode ¨ Truth aufzuzählen ¨ ein rekursives (Beweis)System zu konstruieren, das genau Truth beweist © H. Peter Gumm, Philipps-Universität Marburg Gödelisierung von Formeln n Repräsentiere arithmetische Formel φ durch eine Zahl pφq 2 N n Computer machen das täglich: ¨ Jede Formel φ kann man als String “ φ“ hinschreiben und anschließend den String als als Binärzahl pφq codieren n n Für φ = Goldbachsche Vermutung, z.B. pφq = ASCII(„forall x in nat. exist p1,p2. Prim(p1)andPrim(p2).p1+p2=x+x“) = = 100101000101110110101010101101000100101111… ∈ N n ¨ pφq ! φ erledigt ein Parser ¨ Egal, ob wir mit φ oder mit pφq arbeiten Jede Formel φ 2 L(ΣN) können wir als Element pφq 2 N codieren © H. Peter Gumm, Philipps-Universität Marburg Wahrheit ist unentscheidbar n Satz: (Church, Gödel): Die Menge Truth µ ASCII* aller wahren arithmetischen Ausagen ist nicht entscheidbar. Beweis : Sei A µ N irgendeine Menge, die aufzählbar ist, aber nicht entscheidbar. Die folgende Funktion ist auf jeden Fall berechenbar : χA(x) = if (x 2 A) then 1 else ?. χA ist daher arithmetisch definierbar durch eine Formel FA(x,y) und n∈A ⇔ χA(n) = 1 ⇔ ²N FA(n,1) ⇔ FA(n,1) ∈ Truth Wäre also Truth entscheidbar, dann wäre auch A entscheidbar. © H. Peter Gumm, Philipps-Universität Marburg Wahrheit ist nicht aufzählbar Für jede Aussage φ gilt : ASCII* L(N) ss th Au ru T Wäre also Truth aufzählbar, dann wäre auch Falsity aufzählbar und somit Truth entscheidbar ag e n ²N φ gdw. 2 :φ ity als F Hilbert‘s Traum geplatzt Ein Beweissystem für eine Menge von Aussagen A ⊆ G* besteht aus - einer aufzählbaren Teilmenge B ⊆ Γ* - einer surjektiven totalen berechenbaren Funktion F : B → A Ein Beweissystem für A heißt vollständig, falls für jedes a ∈ A ein b ∈ B existiert mit F(b)=a. Gödelscher Unvollständigkeitssatz: Es Esgibt gibtkein keinvollständiges vollständigesBeweissystem Beweissystemfür fürdie dieArithmetik. Arithmetik. Beweis: Da B aufzählbar und F total und berechenbar, folgt, daß A aufzählbar ist. Die Menge aller wahren Aussagen der Arithmetik kann aber nicht aufzählbar sein, sie wäre nämlich automatisch entscheidbar. © H. Peter Gumm, Philipps-Universität Marburg Diagonalisierung n Jetzt kommt wieder Cantor‘s Trick: ¨ ¨ n n Angenommen θ(x) ist Formel mit genau einer freien Variablen Betrachte die Aussage θ(pθ(x)q) und codiere wieder … Die Diagonalfunktion d(n) = if ( n = pθ(x)q ) then pθ(pθ(x)q)q ! else 0 ist total und berechenbar, sogar p.r. Begründung Gegeben n, stellt der Parser fest, ob n eine Formel θ(x) codiert. Wenn ja, setze pθ(x)q für x ein und codiere wieder. ¨ Das lässt sich sogar mit einer p.r. Funktion ausführen ¨ n Also ist d definierbar, d.h. es gibt eine Formel D(x,z) so dass für alle n, k 2 N gilt: d(n) = k , `N D(n,k) © H. Peter Gumm, Philipps-Universität Marburg Fixpunktsatz n Gödelscher Fixpunktsatz: Für jede Formel ψ(x) mit einer freien Variablen gibt es eine Aussage θ, so dass gilt: `N θ $ ψ(pθq) ¨ Beweis: Sei die Diagonalfunktion n d(n) = if(n=pφq) then pφ(pφq)q else 0 durch D(x,y) definiert ¨ ¨ Wähle β(x) := 8 z.(D(x,z)! ψ(z)), dann gilt `N β(pβq) $ $ $ $ 8z.(D(pβq,z) ! ψ(z)) 8z.(d(pβq)=z ! ψ(z)) 8z.(pβ(pβq)q=z ! ψ(z)) ψ(pβ(pβq)q). © H. Peter Gumm, Philipps-Universität Marburg Wahrheit ≠ Beweisbarkeit 1. Gödelscher Unvollständigkeitsatz: Jeder konsistente Beweiskalkül für die Arithmetik erlaubt eine arithmetische Aussage θ, die wahr ist, aber nicht beweisbar. Beweis: (Genauso wie Formeln können wir auch Beweise codieren). Sei ¨ ¨ Proof(p,q) :, p = p∆q und q = pφq und ∆ ist ein Beweis von φ. Provable(q) :, q = pφq und 9p. Proof(p,pφq) Proof(x,y) ist entscheidbar ¨ ¨ ¨ Einen Beweis muss man überprüfen können Also ist Proof(x,y) definierbar Also ist Provable(x) definierbar Wegen Fixpunktsatz: ¨ ¨ Die Formel ψ(x) = :Provable(x) hat einen Fixpunkt θ ` :Provable(pθq) $ θ Wäre θ falsch in N, dann wäre Provable(pθq), wahr, also 9p. Proof(p,pθq), also gäbe es einen Beweis von θ und der Beweiskalkül wäre inkonsistent. © H. Peter Gumm, Philipps-Universität Marburg Konsistenz n Ein Beweiskalkül ist inkonsistent , wenn man z.B. 0=1 darin beweisen kann. ¨ n Äquivalent: Wenn man eine Aussage und ihre Negation zeigen kann Dass ein Kalkül konsistent ist, kann man als Formel ausdrücken: Con := :9p. Proof(p,p0=1q) n Con ist also eine arithmetische Aussage. n Kann man sie beweisen ? © H. Peter Gumm, Philipps-Universität Marburg 2. Unvollständigkeitssatz n 2. Gödelscher Unvollständigkeitsatz: Ein konsistenter Kalkül (der stark genug ist, die Arithmetik zu formalisieren) kann seine eigene Konsistenz nicht beweisen. n Beweis: Gödel‘s erstes Theorem liefert ein wahres θ mit n Wenn der Beweiskalkül konsistent ist, folgt, dass ` θ $ :Provable(pθq) Con ! :Provable(pθq) Man kann – mit etwas Aufwand – sogar zeigen, dass ` Con ! :Provable(pθq) Wäre Con beweisbar, also `N Con so hätte man durch Abtrennung ` N : Provable(pθq) Wegen obigem würde folgen `Nθ was dem ersten Unvollständigkeitssatz widerspräche. © H. Peter Gumm, Philipps-Universität Marburg Speed-up theorem n n Der Fixpunktsatz hat viele Konsequenzen , z.B.: Speed-up Theorem: Sei f eine beliebige totale berechenbare Funktion. Dann gibt es eine wahre Aussage θ so dass der kürzeste Beweis von θ länger ist, als f(pθq). Beweis: B := { pφq 2 N | kein Beweis von φ ist kürzer als f( pφq ) } ist entscheidbar. (Gegeben n2N, stelle fest ob n = pφq für ein φ. Wenn ja, decodiere n zu φ. Prüfe alle Strings der Länge · f(n) nach, ob sie einen Beweis für φ darstellen.) Es gibt also eine Formel ψ(x) mit n2 B , `N ψ(n). ψ hat einen Fixpunkt, also eine Aussage θ mit `N θ $ ψ(pθq) Wäre θ falsch, so gäbe es keinen Beweis, erst recht keinen kürzer f(pθq), also wäre pθq 2 B also wäre ψ(pθq) wahr, also wäre θ wahr. © H. Peter Gumm, Philipps-Universität Marburg Geht es konkreter ? n Die Gödelsche Aussage θ mit `N θ $ :Provable(pθq) ist sehr komplex n Gibt es verständlichere Beispiele? n Ja: ¨ ¨ Paris-Harrington Satz Terminierung der Goodstein-Folge © H. Peter Gumm, Philipps-Universität Marburg Goodstein-Folgen Jede Zahl n lässt sich in Basis k ausdrücken z.B. für n=42 und k=2: 42 = 25 + 23 + 2 Erbliche k-Repräsentation von n verlangt, dass auch die Exponenten und der deren Exponenten, etc., in Basis k geschrieben werden Goodstein-Algorithmus Starte mit n. ¨ ¨ k = 2; While (n ≠ 0){ n n n ¨ } n r = erbliche Repräsentation von n in Basis k r = r[k/k+1] // Ersetze k durch (k+1) n = Wert(r)-1 n’ = 7625597484987 + 81 + 3 - 1 = 7625597485066 k = k+1 // Erhöhe die Basis © H. Peter Gumm, Philipps-Universität Marburg Zwei Goodstein-Folgen n = 3: 3 =2+1, 3 =3+1-1, 3 =4-1=3, 2 =3-1, 1 =2-1, 0 =1-1. n = 4: 4 =22, 26 =33-1 = 2*32 + 2*3 + 2 41 =2*42 + 2*4+1 60 =2*52 + 2*5 83 = 2*62 +6+5 109 = 2*72 +7+4 … 3 · 2402653210 1, 402653209 3 · 2 … Schritte konstant 3 · 2402653210 1, … 0 © H. Peter Gumm, Philipps-Universität Marburg Satz von Goodstein 1. Für alle n konvergiert die Goodsteinfolge zu n=0, ¨ 2. M.a.W.: Für jedes n stoppt der Algorithmus mit n=0 Der Satz von Goodstein lässt sich nicht in PA (Peano-Arithmetik) beweisen ¨ siehe: http://www.u.arizona.edu/~miller/thesis/thesis.html © H. Peter Gumm, Philipps-Universität Marburg Wahr ohne Beweis ? n Wie kann man wissen, dass etwas wahr ist, wenn man es nicht beweisen kann ? n Nicht in der Logik erster Stufe, sondern in der Logik zweiter Stufe n Induktionsschema reicht nicht aus, um N zu charakterisieren n Induktionsaxiom – zweiter Stufe benötigt n Zweite Stufe: Man darf auch über Teilmengen quantifizieren 8 Sµ N. 02S Æ 8 k2 N. ( k2S ! k+12S) S=N n Induktionsschema der PL1 ist Spezialfall. Setze S = { n2 N j φ(n) } n In der Logik 2. Stufe ist N bis auf Isomorphie eindeutig beschreibbar © H. Peter Gumm, Philipps-Universität Marburg