TNT spricht über sich selbst
Aussagen in TNT sind (endliche) Symbolfolgen. Aus Symbolfolgen Zahlenfolgen zu machen, ist noch recht einfach, indem man jedem Symbol auf feste Weise eine Zahl zuordnet. Dies geschieht auf der Meta-Ebene, da Symbole und Folgen ja nicht unmittelbar zu den Objekten der TNT gehören.
Der Kunstgriff besteht darin, (endliche) Zahlenfolgen in einer einzigen natürlichen Zahl zu kodieren, und zwar auf eine solche Weise, die es erlaubt, alle wesentlichen Informationen der kodierten Zahlenfolge mit den Mitteln von TNT auszudrücken.
Indirekt kann TNT auf diesem Weg über die einzelnen Symbole einer TNT-Symbolfolge Aussagen treffen.
Tatsächlich erlauben wir uns hier, endliche Zahlenfolgen nicht durch eine Zahl zu kodieren, sondern durch ein Zahlentripel (a,b,c).
Dies stellt allerdings insofern keine Einschränkung dar, als (a,b,c)↦(a+b+c)*(a+b+c)*(a+b+c)+(a+b)*(a+b)+a solchen Tripeln auf injektive Weise eine natürliche Zahl in Form eines TNT-Ausdrucks zuordnet.
Die Zahl n steht für das Zahlentripel (a,b,c).
Bezeichnet T die Menge aller (nicht notwendig wohlgeformten) TNT-Symbolfolgen, ℕ(ℕ) die Menge aller endlichen Folgen, so betrachten wir also eine in TNT repräsentierte injektive Abbildung f:ℕ³→ℕ, eine in TNT repräsentierte surjektive Abbildung g:ℕ³→ℕ(ℕ) (d.h. die Abbildung ℕ³⨯ℕ→ℕ, (a,b,c,k)↦g(a,b,c)k ist repräsentiert) sowie schließlich auf Meta-Ebene eine Bijektion ℕ(ℕ)↔T.
Einige allgemeine Prädikate
Wir werden zunächst einige Prädikate zunehmender Komplexität definieren, die es uns erlauben, entsprechend immer komplexere Sachverhalte über eine oder mehrere Variable auszudrücken.
Den noch recht trivialen Anfang macht die „kleiner-als“-Relation, die wir daran festmachen können, dass man etwas positives zur kleineren Zahl addieren muss,
um die größere zu erhalten. Für die „kleiner-oder-gleich“-Relation müssen wir noch nicht einmal sicher sein, dass das was addiert ist, tatsächlich positiv ist.
a ist kleiner oder gleich b
a ist kleiner als b
Jetzt kommen wir schon an die zentrale Idee der Gödelisierung.
Zu natürlichen Zahlen a und b können wir die Folge der Zahlen a mod (1+b*(k+1)) betrachten, k=0, 1, 2, ....
Das folgende Prädikat SEQUENZ drückt aus, dass x das k-te Glied dieser unendlichen Folge ist.
Das k-te Glied der durch (a,b) definierten Folge ist x, sofern(!) schon bekannt ist, dass x ≤ b*(k+1) ist.
Das k-te Glied der durch (a,b) definierten Folge ist x.
Die vereinfachte Form PRESEQUENZ kann anstelle von SEQUENZ benutzt werden, falls aus dem Kontext die zusätzlich benötigte Ungleichung bereits folgt. Siehe hierzu etwa unten ISTAXIOM.
Allerdings wollen wir nicht unendliche, sondern nur endliche Folgen betrachten (nämlich solche, bei denen jedes Folgenglied einen Bestandteil einer TNT-Formel codiert). Zu diesem Zweck wird die Folge nicht nur durch zwei Zahlen a und b beschrieben, sondern noch zusätzlich durch die Länge c der Folge.
Zu jeder endlichen Folge von natürlichen Zahlen (der Länge c) können wir aber umgekehrt auch
a und b finden, so dass die gegebene Folge durch das Tripel (a,b,c) bestimmt wird. Dies garantiert der Chinesische Restesatz, da für hinreichend großes b jeder gemeinsame Teiler von zwei Zahlen der Form 1+b*(k+1) mit k<c kleiner als c und teilerfremd zu b sein muss.
Wählt man also für b ein Vielfaches von c!, das größer ist als alle Folgenglieder, so lässt sich also in der Tat der Chinesische Restesatz anwenden.
Es haftet insofern nichts magisches an dem benutzten Ausdruck 1+b*(k+1).
Die Idee ist lediglich, eine einfach zu beschreibende Folge von hinreichend vielen paarweise teilerfremden Zahlen zu finden. Hier bietet sich eine arithmetische Folge a+b*k an und das zur Schrittweite teilerfremde Anfangsglied a wird der Einfachheit halber auf 1 normiert. Dann ersetzt man noch k durch k+1, damit auch das erste Folgenglied „nutzbar“ ist.
Wir argumentieren oben mit der Fakultätsfunktion, die wir aber erst weiter unten in TNT beschreiben können, nachdem wir wissen,
wie Rekursion zu repräsentieren ist.
Wir unterliegen hier dennoch keinem Zirkelschluss, da wir gar nicht explizit c!, sondern lediglich die Existenz eines geeigneten b benötigen.
Möchte man mehrere (endlich viele) gleich lange endliche Folgen erzeugen, so kann man offenbar für alle Folgen sogar ein gemeinsames b finden.
Zwischenspiel: b ist eine Zehnerpotenz
Mit dem „SEQUENZ-Mechanismus“ ist es ein leichtes, einfache Rekursion auszudrücken:
b ist die n-te Potenz von a.
Das 0. Folgenglied ist 1, das n-te ist b und wenigstens bis zu diesem Index unterscheiden sich auf einander folgende Glieder um den Faktor a.
Die Lösung zur berühmten Übungsaufgabe von Douglas Hofstadter, „b ist eine Zehnerpotenz“ in TNT auszudrücken, schreibt sich dann als
Ähnlich einfach ginge etwa „b ist eine Fibonacci-Zahl“ in der Form
Die Folge beginnt mit F(0)=0, F(1)=1 und später gilt F(k+2)=F(k)+F(k+1) – zumindest für hinreichend viele k.
Auch das WUNDERSAM-Prädikat, über das Achilles und die Schildkröte im Dialog über Gold-Bach-Variationen reden, ist leicht formuliert:
Der Vollständigkeit halber folgt hier eine Version von „b is eine Zehnerpotenz“,
die komplett expandiert (und geringfügig vereinfacht) wurde:
Weiter mit TNT
Wir benötigen noch Prädikate für Vergleiche von (Teil-)folgen mit einander.
Das folgende überprüft, ob die e Folgenglieder bei Position c, c+1, ..., c+e-1 der durch (a,b) bestimmten Folge mit den Folgengliedern bei Position d, d+1, ..., d+e-1 übereinstimmen.
Die ersten e Glieder ab Glied c bzw. ab Glied d der durch (a,b) definierten Folge stimmen überein
Eine geringfügig ökonomischere Variante kann eingesetzt werden, wenn c>d vorausgesetzt werden darf:
Die ersten e Glieder ab Glied c bzw. ab Glied d der durch (a,b) definierten Folge stimmen überein (uner der Voraussetzung c>d)
Gödelisierung
Wir codieren einen TNT-Ausdruck wie folgt:
Zunächst stellen wir um auf „polnische Notation“, indem wir stets erst den Operator und erst danach die (bzw. den) Operanden kodieren.
Die einzelnen Operatoren übersetzen wir wie folgt in natürliche Zahlen:
Implikation, Konjunktion, Gleichheit, Summe, Produkt, Allquantor, Negation, Nachfolger, Null werden durch die Zahlen 1,2,3,4,5,6,7,8,9 dargestellt (also insb. nicht durch 0, sondern durch 9). Die Zahlen ab 10 stehen für verschiedene Variablennamen, so dass wir einen abzählbar unendlichen Vorrat an Variablen kodieren können. Den Wert 0 reservieren wir für ein Interpunktionszeichen, um Beweisschritte von einander zu trennen.
Schließlich packen wir diese endliche Zahlenfolge nach der oben beschriebenen Methode in ein Zahlentripel.
Beispielsweise wird aus dem 5. Axiom
zunächst die Folge „Allquantor, a, Allquantor, b, Gleichheit, Produkt, a, Nachfolger, b, Summe, Produkt, a, b, a“, dann die Zahlenfolge „6,10,6,11,3,5,10,8,11,4,5,10,11,10“ und schließlich ein Tripel (a,b,c), das diese Folge erzeugt.
Hiervon können wir nur c=14 mit Sicherheit sagen, und wenigstens zu b=13! lässt sich garantiert ein geeignetes a finden.
Wie die folgenden Übungen zeigen, kann b oftmals erheblich kleiner als (c-1)! gewählt werden. Was dennoch einzig zählt, ist die Existenz eines solchen b, wie groß auch immer es sei. Selbst für Axiome werden unten im Prädikat ISTAXIOM keine expliziten a, b, c angegeben, sondern die einzelnen Folgenglieder mit dem SEQUENZ-Mechanismus geprüft.
Welche TNT-Kette wird durch a=1249310, b=6, c=5 dargestellt?
Die Folge der a mod ((k+1)b) für k=0, …, c-1 ist: 6, 10, 3, 10, 10. Rückübersetzt ergibt das die TNT-Kette .
Welche TNT-Ketten werden durch a=1757214703, b=6, c=7 bzw.
a=344604504, b=6, c=7 bzw.
a=1736784930, b=6, c=7 bzw.
a=465483113793845547131, b=18, c=12 bzw.
a=3777257210837737807485, b=12, c=13 bzw.
a=73408041575000042569773064730180, b=42, c=14
dargestellt?Es handelt sich um die fünf Axiome
,
,
,
und
.
Um die Überprüfung auf Wohlgeformtheit zu vereinfachen, definieren wir
ein paar Prädikate. Die ersten erkennen die Anzahl der Operanden, die zu einem Operator gehören
a ist eine Variable
a ist atomar (0 oder Variable)
a ist unärer Operator (Negation, Nachfolger oder Interpunktion)
a ist binärer Operator
Ferner brauchen wir noch Prädikate, die Zahlausdrücke und Aussagen unterscheiden können:
Summen, Produkte, Nachfolger, Null, Variable ergeben Zahlausdrücke.
Implikation, Konjunktion, Gleichheit, Allquantor, Negation ergeben Aussagen.
Bleibt noch das Interpunktionszeichen.
Weiters unterscheiden wir noch nach den Typen (Ausdruck oder Aussage) vom ersten und eventuell zweiten Operanden
Der erste Operand von Gleichheit, Summe, Produkt, Nachfolger ist ein Zahlausdruck.
Der erste Operand von Interpunktion, Implikation, Konjunktion, Negation ist eine Aussage.
Der zweite Operand von Gleichheit, Summe, Produkt ist ein Zahlausdruck.
Der zweite Operand von Implikation, Konjunktion, Allquantor ist eine Aussage.
Der Allquantor spielt eine Sonderrolle, da der erste Operand nicht einfach ein Zahlausdruck ist, sondern genauer eine Variable, die obendrein im zweiten Operanden frei vorkommt. Dies muss daher gesondert geprüft werden.
Schon in der Definition der Wohlgeformtheit benötigen wir daher erstens einen Test, ob eine Variable v in einem Teilausdruck vorkommt:
Variable v kommt in der durch (a,b) gegebenen Folge in den n Positionen ab p vor.
und zweitens, ob sie frei ist:
Die Variable v wird in der durch (a,b) gegebenen Folge in den n Positionen ab p nicht quantisiert.
Eine Variable kann in einem Ausdruck FREI sein, ohne in dem Ausdruck vorzukommen. Es wird nur gesagt, dass sie, falls sie vorkommt, nicht quantisiert ist. Ist v gar keine Variable (erfüllt nicht ISTVAR), so ist FREI trivialerweise erfüllt.
Um ein Tripel (bzw. die dadurch bestimmte Zahlen- oder Symbolfolge) auf Wohlgeformtheit zu überprüfen, nehmen wir eine Abbildung als gegeben an, die jeder Position in der Folge die Länge der dort beginnenden wohlgeformten Teilfolge zuordnet. Eine solche Funktion muss einigen Anforderungen genügen und beweist ihrerseits die Wohlgeformtheit, falls sie all diesen Anforderungen tatsächlich genügt.
Wir sehen es nicht als schadhaft an, dass in diesem Sinne die leere Folge wohlgeformt ist.
Wir verbiegen die obige Definition für endliche Folgen ein wenig insofern, als wir voraussetzen, dass das eigentlich irrelevante Glied an der Stelle c „zufällig“ ein Interpunktionszeichen sein soll. Dies stellt jedoch keine wirkliche Einschränkung dar, sondern es vereinfacht ein wenig die Formulierung.
(a,b,c) ist eine wohlgeformte (aber nicht notwendig korrekte) TNT-Beweiskette und (d,b,c) gibt jeweils die Länge der an einer Position beginnenden wohlgeformten Teilkette an.
Hier ist k ein zulässiger Index, t der Operator an der Stelle k,
u der Operator des ersten Operanden und v ggf. der des zweiten.
p, q, r sind die Längen der jeweiligen Teilketten, die zusammen passen müssen.
Schließlich steht w für eine Variable: Falls w in beiden Operanden eines binären Operators auftaucht,
so entweder in beiden frei oder in beiden quantisiert (die Formulierung ist auch für t=Allquantor geeignet, da die allein stehende Variable des ersten Operanden dort frei vorkommt).
Ist die durch a=1249310, b=6, c=5 dargestellte TNT-Kette wohlgeformt im Sinne dieses Prädikats (d.h. gibt es ein d mit WOHLGEFORMT(a,b,c,d)? Was ist mit a=13309085, b=6, c=5? Worin besteht der Unterschied?
Ist es einfach, diese Frage ohne Nutzung der „Meta-Ebene“ beantworten?
Warum verleitet die Meta-Ebene möglicherweise zu einer falschen Antwort, wenn man nicht genau aufpaßt?
Man überprüft rasch, dass in beiden Fällen die TNT-Kette dargestellt wird (vgl. auch Übung oben). Es wäre insofern wünschenswert, dass in beiden Fällen wahr ist.
Allerdings stellt man fest, dass die mit a=1249310 gebildete Folge an der Stelle c den Wert 5 annimt, während sich bei a=13309085 der Wert 0, also das Interpunktionszeichen ergibt. Ohne dieses Interpretationszeichen erkennt obiges Prädikat die Wohlgeformtheit nocht an. Eine weitere Schwierigkeit besteht darin, dass der Einfachheit halber die mit (d,b,c) kodierte Längenfolge dasselbe b verwendet wie die mit (a,b,c) kodierte Symbolfolge. Es wäre durchaus denkbar, dass nicht jedes für die Symbolfolge taugliche b auch für die Längenfolge geeignet ist.
Erste Folgerungsregeln
Wir wollen Folgerungsregeln grundsätzlich in der Form angeben,
dass das Paar (a,b) die Beweiskette definiert,
das Paar (d,b) die Längenfunktion,
das Paar (l,b) die Levelfunktion (hierzu siehe unten).
Die nächsten Parameter f und g geben Beginn und Länge der zu beweisenden Teilkette an, die nächsten Paare, d.h. (h,i) und ggf. (j,k) die zu benutzenden Prämissen. In den Interpretationen bezeichnen wir die entsprechenden Aussagen jeweils durch P, Q, R.
Der Beginn (also z.B. f) verweist jeweils auf das einleitende Interpunktionszeichen,
während die Länge (g) die Länge nach dem Interpunktionszeichen angibt
und als die von der Längenfunktion bestimmte Länge vorausgesetzt wird.
Grundsätzlich sei vorausgesetzt, dass h<f und ggf. j<f, so dass an vielen Stellen ISTFWDKOPIE statt ISTKOPIE verwendet werden kann.
P ist gleich Q
Wir werden später festlegen, wann eine solche Übernahme zulässig ist. Dies geschieht mit Hilfe der Levelfunktion.
Q ist „P und irgendetwas“
Q ist „irgendetwas und P“
Man beachte den Rückgriff auf die Längenfunktion, um den zweiten Operanden zu bestimmen.
Ein Schluss beispielsweise von
auf die (in polnischer Notation) am Ende stehende Kette wird so unterbunden.
P ist „Q und R“
Hier wie in anderen Fällen beachte man, dass ein Test auf g=i+k+1 entfallen kann, wenn alle beteiligten Teilfolgen als wohlgeformt vorausgesetzt werden.
Q ist „Wenn R, dann P“
Man könnte das zweite ISTKOPIE durch ISTFWDKOPIE ersetzen, aber dann müsste man die Definition für FLGKONKLUSION im Wesentlichen kopieren. Wir verzichten auf diese Ersparnis zugunsten der Übersichtlichkeit
P folgt aus Q per Symmetrie der Gleicheit.
Es wird nur geprüft, ob der Operator bei f „=“ ist.
Aus Gründen der Wohlgeformtheit muss der Operator bei h ebenfalls „=“ sein, wenn die anderen Bedingungen zutreffen,
da ja die beiden Operanden Zahlausdrücke sind.
Sonst würde dieses Prädikat die Ausdrücke „= +ab+b a“ und „= a +ab+b“ in polnischer Notation durchaus als symmetrich zueinander ansehen. Bei solchen „Fehlschlüssen“ ergibt sich jedoch immer ein nicht wohlgeformter Ausdruck
Man beweise die letzte Aussage der vorstehenden Bemwerkung über Fehlschlüsse und nicht wohlgeformte Ausdrücke.
P folgt aus Q und R per Transitivität der Gleichheit.
Auch hier gilt: Wir testen, dass P eine Gleichheitsaussage ist.
Folglich wissen wir, dass der zweite Operand von R ein Zahlausdruck ist, folglich ist R eine Gleichheitsaussage,
womit auch Q zwei Zahlausdrücke als Operanden hat und folglich eine Gleichheitsaussage ist.
Man zeige wiederum als Übung, dass s, t, u tatsächlich die Längen der jeweiligen Operanden sein müssen.
P ist „nicht nicht Q“
Man beachte, dass aus der Beziehung der Längen darauf geschlossen werden kann, dass bei f+2 der Negationsoperator stehen muss.
Wiederum verzichten wir auf die Verwendung von ISTFWDKOPIE zugunsten einer übersichtlicheren Form der folgenden Definition.
Q ist „nicht nicht P“
In diesem Fall müssen wir auf die Längenfunktion zurückgreifen, da wir sonst einem Fehlschluss von ("= *ab* ab" in polnischer Notation) auf
("= S*ab* Sab") aufsäßen.
Auch verzichten wir auf die Verwendung von ISTFWDKOPIE.
Q ist „Wenn dies, dann das“ und P ist „Wenn nicht das, dann nicht dies“
Man mache sich klar, weshalb wir wiederum nicht prüfen müssen, dass an den entsprechenden Stellen bei P wirklich Negationssymbole stehen.
Weitere Hilfsprädikate
Für die weiteren Folgerungsregeln benötigen wir die Möglichkeit, Variablen durch Ausdrücke zu ersetzen.
Bevor wir den allgemeinsten Fall diskutieren, kommt der einfachste Fall, dass die (als frei vorausgesetzte) Variable
v durch 0 ersetzt wird. Dies ist insofern besonders einfach, da die Länge der Formel nicht verändert wird.
„P“ ist „Q“ mit v ersetzt durch 0
Wir vergleichen jeweils entsprechende Folgenglieder x und y.
Es muss immer x=y gelten, außer im Fall y=v -- dann muss x="0" sein. Wenn Wohlgeformtheit vorausgesetzt werden kann, folgt automatisch, dass v eine freie Variable ist (oder ein sonstiges Symbol, das jedoch in Q ohnehin nicht vorkommt), denn sonst würde das Ersetzen durch 0 nichts wohlgeformtes ergeben.
Ein weiterer einfacher Spezialfall besteht darin, v durchweg durch v+1 zu ersetzen.
Hier bilden wir eine Hilfsfolge, die Positionen der ersten Folge auf solche der zweiten Folge abbildet.
„P“ ist „Q“ mit v ersetzt durch v+1
Wenn ..., s, ... und ..., t, u, ... einander entsprechen, muss entweder t=s sein oder (im Falle s=v) t="S" und u=v.
Im allgemeinsten Fall ist der für v einzusetzende Ausdruck seinerseits durch eine Symbolfolge gegeben, codiert durch ein Tripel natürlicher Zahlen.
Erneut konstruieren wir eine Hilfsfolge, die entsprechende Positionen der Folgen aufeinander abbildet.
Es ist darauf zu achten, dass jede im Ersatzausdruck auftretende Variable frei ist.
Sonst würde aus durch Spezialisieren (s.u.) folgen!
„P“ ist „Q“ mit v ersetzt durch „E“
Sofern v wirklich eine Variable ist, folgt automatisch, dass E ein wohlgeformter Zahlausdruck ist. Sonst ergäbe sich beim Ersetzen von v keine wohlgeformte Formel. Ist dagegen v keine Variable, so kann ERSETZE durchaus ziemlichen Unsinn mit einander in Beziehung setzen (zum Beispiel „und“ durch „nicht wenn-dann“ ersetzen).
Weitere Folgerungsregeln
P hat die Form „Für alle v gilt A[v]“, Q die Form „A[0]“, R die Form „Für alle v gilt: Wenn A[v], dann A[v+1]“
P ist ein Spezialfall der allgemeinen Aussage Q
Sofern v eine Variable ist, die in keiner Hypothese zur Herleitung von Q ungebunden auftaucht, dürfen wir folgendes Prädikat benutzen:
P ist „Für alle v gilt Q“
Die genannte Voraussetzung, dass v in keiner zur Herleitung benutzten Hypothese ungebunden auftaucht, lässt sich mit folgendem Prädikat prüfen
v kommt in der Beweiskette (a,b) mit Längenfunktion (d,e) und Level-Funktion (l,m) in keiner Hypothese, die für die Kette ab Position f benutzt wird, ungebunden vor.
h durchläuft alle Interpunktions-Positionen vor f. Falls der Level zwischen h (ausschließlich) und f (einschließlich) stets größer ist als der Level bei h, so beginnt bei h eine für f benutzte Hypothese.
In einer solchen darf v entweder gar nicht auftauchen oder quantisiert.
Sofern Q die Hypothese einer Fantasie ist, R die letzte Aussage derselben Fantasie und P die auf die Fantasie folgende Aussage, so kann es sich um die Konklusion handeln:
Allerdings muss man hierzu die genannte Beziehung zwischen den Ketten erst prüfen.
Der Level macht bei h einen Sprung von x auf x+1, bei f umgekehrt und bleibt
zwischendurch oberhalb x
Für andere Schlussregeln ist die Verwendbarkeit wie folgt zu prüfen
h kommt vor f, beginnt eine Aussage, die Länge ist stimmig und
von h+1 bis f+1 fällt der Level nie unter den bei h+1.
Zusammenführung
Der Level ändert sich nur unmittelbar nach einem Interpunktionszeichen, wobei wir bei Level 0 beginnen und enden.
Man beachte, dass aus 10 kleiner-gleich b*(f+3)
die erforderlichen weiteren Ungleichungen folgen, so dass wir PRESEQUENZ nutzen können.
Ist THEOREM(1249310,6,5) ein Theorem von TNT (wobei hier
der Einfachheit halber 5 statt SSSSS0 usw. geschrieben wurde)?
Was ist mit THEOREM(13309085,6,5)? Worin besteht der Unterschied?
Wie weit können Sie bei der Beantwortung auf die „Meta-Ebene“ verzichten?
Quine
Zur Vollendungg des Diagonalargumentes benötigen wir noch die "Quinierung", das Einsetzen eirner Zahl in das von ihr codierte Prädikat.
Die (a,b,c) entsprechende Kette entsteht aus (d,e,f), indem die Variable v durch die Zahl n ersetzt wird. (Es ist vorauszusetzen, dass v nirgends gebunden ist)
Die Zahl n ist Gödelnummer einer Prädikatsform, die, wenn man die Zahl n für die Variable a einsetzt, ein Satz wird.
Sei n eine Gödelnummer für .
Dann stell sich die Frage, ob wahr ist.
Das wäre äquivalent dazu, dass das Einsetzen von n für in einen Satz von TNT ergibt, also zu der Aussage, dass beweisbar ist.
Wenn eine Aussage wahr ist, kann aber ihre Negation nicht beweisbar sein (es sei denn, TNT ist widersprüchlich).
Es bleibt also noch die Möglichkeit, dass falsch ist, also wahr, aber eben, wie es selber sagt, nicht beweisbar.
Expansion der Prädikate
Expandiert man das Prädikat, das die Crux des ganzen Beweises ist, nämlich
,
so ergibt sich rein technisch