Was genau bedeutet es für eine unendliche Zeit-Turingmaschine, das Stadium ωω\omega zu erreichen (und das ordinale Stadium zu begrenzen)?

Das Papier „Infinite Time Turing Machines“ enthält die folgenden Informationen:

Bei jedem Berechnungsschritt liest der Kopf die Zellwerte, die er überdeckt, reflektiert seinen Zustand, konsultiert das Programm, was in einer solchen Situation zu tun ist, und führt dann die Anweisungen aus: Er schreibt a 0 oder 1 auf (beliebigen) Bändern, bewegt sich nach links oder rechts und wechselt entsprechend in einen neuen Zustand. Dieses Verfahren bestimmt die Konfiguration der Maschine in der Phase a + 1 , angesichts der Konfiguration in der Phase a , für alle a . Es bleibt, diese Berechnungen irgendwie zu begrenzen, um die Konfiguration der Maschine in der Phase zu identifizieren ω und allgemeiner an Grenzordinalstufen in der Supertask-Berechnung.
[...]
Die Ordnungszahl ω ist auch taktbar, da eine Maschine beispielsweise so programmiert werden kann, dass sie den Kopf immer nach rechts bewegt, bis ein Grenzzustand erreicht ist, und dann anhält.

Wenn eine Maschine M codiert dann eine Ordnungszahl M kann wie folgt arbeiten: gegeben eine Eingabe N , konvertiert diese Maschine N zu einem Paar natürlicher Zahlen, ermittelt die Beziehung zwischen diesen beiden Zahlen, schreibt das entsprechende Bit auf das Ausgabeband und erzeugt dann die nächste Zahl ( N + 1 ) und wiederholt den Vorgang. Aber was ich nicht verstehe, ist, wie genau wir feststellen können, ob M erreicht eine Grenzstufe? Es gibt keine Obergrenze für N . Und wenn ω eine abstrakte Ordnungszahl ist, die nicht von oben durch eine endliche Zahl begrenzt ist, wie können wir dann technisch wissen, dass eine bestimmte Maschine zu einem bestimmten Zeitpunkt hat ω Schritte erledigt und sollen in einen Grenzzustand versetzt werden?

Diesen Artikel habe ich auch gelesen . Es enthält einige Beschreibungen, aber zum Beispiel in der folgenden Beschreibung:

Hier ist ein kurzer Blick auf die Funktionsweise der Maschine:
1. Wir wissen es 0 = 0 , 0 gehört nicht dazu ω , also "hartkodieren" wir es in die Maschine.
[...]
8. Nachher ω Schritte halt.

Ich verstehe nicht warum 0 = 0 , 0 gehört nicht dazu ω und wie genau kann eine Maschine danach anhalten ω Schritte.

BEARBEITEN

Mein Fehler war, dass ich versuchte, mir eine ITTM-Berechnung als einen physikalisch möglichen Prozess vorzustellen, anstatt als eine rein mathematische Konstruktion. Aber alles, was ich wissen musste, war, dass zu jedem Zeitpunkt, für jede Zelle C ich , gibt es nur einen mathematisch vorgegebenen Wert für ein Symbol, der auf erscheinen darf C ich bevor die Maschine es liest! Es gibt keine besonderen Berechnungsmomente, wenn der LIMIT-Übergang auftreten muss, weil Begrenzungsstufen bloße Abstraktionen sind, die implizieren, dass eine nicht anhaltende Berechnung ihre Grenze erreicht hat und alle Zellen bereit sind. Ist mein Verständnis richtig?

Lassen Sie zum Beispiel R bezeichnen eine bestimmte Darstellung einer reellen Zahl, die die folgende Ordnung codiert:

0 2 4 1 3 5

Lassen M 1 bezeichnen eine standardmäßige (nicht anhaltende) Turing-Maschine, die generiert R auf dem Ausgabeband.

Ziehen Sie ein ITTM in Betracht M 2 das ist identisch mit M 1 , jedoch mit folgendem Zusatz: Sobald die Maschine in die Grenzstufe eintritt, bleibt sie stehen.

Frage: Können wir davon ausgehen, dass es sich um eine reelle Zahl handelt? R Kodierung der Ordnungszahl ω + ω ist die endgültige Ausgabe von M 2 (also die Ordnungszahl ω + ω ist beschreibbar _ M 2 ), Aber M 2 wird irgendwann anhalten ω (und takte die Ordinalzahl ω )?

Zu Ihrer ersten Frage: Die Autoren haben diese Fähigkeit in ihre Maschine eingebaut. Das heißt, ihre Maschine wird in Grenzphasen automatisch in einen speziellen „Grenzzustand“ versetzt. Es ist leicht zu sagen, wann Sie auf der Bühne sind ω Weil ω ist die erste Stufe, in der die Maschine in diesen Grenzzustand eintritt. Zu deiner zweiten Frage: sieht nach einem Fehler aus, den würde ich ignorieren.
@realdonaldtrump: Ich weiß, dass diese Maschinen automatisch in die Grenzphase gehen. Aber was ich frage, ist: Wann genau passiert das? Welche Bedingungen sind erforderlich, damit die Grenzstufe eintritt? Die Maschine erzeugt nur die Ausgabe auf unbestimmte Zeit, aber was sind diese besonderen Bedingungen im Berechnungsprozess, die es dem Programm ermöglichen, plötzlich in die Grenzstufe einzutreten?
Was ist die besondere Eigenschaft der Addition, mit der Sie eins plus eins plus addieren können? und plötzlich unendlich erreichen? Wann genau passiert das?
@lyricallywicked Du hast die richtige Idee in deinem Edit. Diese Definitionen scheinen richtig zu sein. Insbesondere für den Link, den Sie in der Frage angegeben haben, verlasse ich mich auf die Definitionen am Anfang von Seite 10 bzw. 15. Aber nur eine Sache. Sie müssen davon ausgehen, dass die Maschine M 2 beginnt mit einem leeren Band. (Dies soll sicherstellen, dass Orakel nicht verwendet werden können)
@SSequence: Wenn ein ITTM die Berechnung beginnt, enthält das Eingabeband nur leere Symbole. Aber wenn sich ein ITTM in der ersten Begrenzungsphase (und danach) befindet, kann das Eingabeband eine reelle Zahl mit unendlich vielen nicht leeren Symbolen enthalten, richtig? In Bezug auf Orakelmaschinen - soweit ich verstehe, benötigen sie ein zusätzliches (viertes) Band, damit ein ITTM Abfragen für das entsprechende Orakel auf dieses Band drucken kann?
@lyricallywicked Ja, ich nehme an, mit "leer", wenn Sie zum Beispiel "0" meinen. Tatsächlich ist das Eingabeband (nach oder direkt bei ω ) kann eine unendliche Anzahl von Einsen enthalten (selbst wenn es mit Nullen begonnen hat). Sie können das auch in dem in der Antwort angegebenen Beispiel sehen.
In Bezug auf Orakel könnten Sie wahrscheinlich auch so etwas tun (wenn es richtig gemacht wird) ... aber das ist nicht der einzige Weg. Mein Punkt in Bezug auf "Orakel" war, dass Sie zunächst nicht zulassen können, dass die Eingabe eine beliebige Realität enthält. Die Definitionen bleiben dann nicht interessant. Wenn wir eine beliebige Realzahl auf dem Eingabeband (zu Beginn der Berechnung) zulassen würden, wäre das Supremum der beschreibbaren Werte trivialerweise ω 1 . Die Königsklasse der taktbaren Werte wäre es auch ω 1 (basierend auf dem, was im verlinkten Papier geschrieben steht .... ich kenne die spezifische Konstruktion für dieses Modell nicht aus erster Hand)

Antworten (1)

Welche Bedingungen sind erforderlich, damit die Grenzstufe eintritt?

Nun, es tritt genau dann auf, wenn ... wir an einer Grenze sind.


Erinnern wir uns zunächst daran, wie klassische Turing-Maschinen für den Moment funktionieren.

Zeit für eine gewöhnliche Turing-Maschine ist ω . Die Definition der Turing-Maschine sagt uns, wie man eine Maschine nimmt Φ (Ich ignoriere Orakel vorerst, aber sie ändern das Bild nicht wesentlich), eine Eingabe N , und eine endliche Ordinalzahl S , und erhalten Sie eine Beschreibung (ich habe auch gehört, dass dies die (vollständige) Konfiguration genannt wird ) D ( N , S ) von dem, was zur Zeit los ist S bei der Berechnung von Φ ( N ) . Diese besteht aus:

  • Was steht auf dem Band

  • Wo der Kopf der Maschine ist

  • In welchem ​​Zustand sich die Maschine befindet

zum Zeitpunkt S .

Beachten Sie das in der Tat, wenn wir die Karte verstehen N , S D ( N , S ) , verstehen wir tatsächlich die ganze Maschinerie. Wir können uns also eine Turing-Maschine als genau die oben beschriebene Art von Karte vorstellen , mit der Voraussetzung, dass sie eine bestimmte Form hat.


Bei einem ITTM machen wir dasselbe, aber jetzt S darf eine beliebige Ordinalzahl sein. Dies sollte angesichts des Namens „ Infinite Time Turing Machine“ nicht überraschen.

Wenn Sie Details für einen Moment ignorieren, können Sie sich ein ITTM als eine Karte vorstellen, die eine Eingabe aufnimmt A und eine Ordnungszahl σ zu einer Beschreibung D ( A , σ ) ... einige Regeln befolgen . Die Regel für Folgeschritte - also die Regelbestimmung D ( A , a + 1 ) gegeben D ( A , a ) - ist dasselbe wie für klassische Turing-Maschinen, aber jetzt brauchen wir eine neue Regel, um herauszufinden, was D ( A , ω ) sollte sein (bzw D ( A , λ ) für jede Grenzordnungszahl λ , allgemeiner). Beachten Sie, dass hier alles ein Problem zu sein scheint:

  • Wo soll der Kopf der Maschine auf dem Band sein?

  • In welchem ​​Zustand soll die Maschine sein?

  • Welches Symbol sollte sich bei einer gegebenen Zelle auf dem Band in dieser Zelle befinden (beachten Sie, dass es sich bis zur Grenzstufe unendlich oft hin und her geändert haben könnte)?

Lassen Sie uns jetzt etwas konkreter werden. Bei einer Eingabe A , erzeugt ein ITTM einen Run auf die Eingabe A : diese besteht aus einer ordinal-indizierten Folge von Beschreibungen, nämlich

( D ( A , σ ) ) σ Ö R D .
Lassen Sie uns beispielsweise den Haltezustand für den Moment ignorieren und eine Maschine mit einem einzigen Zustand betrachten, der gleichzeitig der Startzustand und der Grenzzustand ist, und die das betrachtete Bit umdreht und sich dann nach rechts bewegt.

Wenn wir es auf einem Band mit nur Nullen starten, erhalten wir hier den Lauf (mit Rot, um das Symbol zu kennzeichnen, das gerade betrachtet wird; beachten Sie, dass wir es der Einfachheit halber getrost ignorieren können, da es nur einen Zustand gibt, da es nur einen Zustand gibt).

  • Zeit 0 : ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 1 : ( 1 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 2 : ( 1 , 1 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 3 : ( 1 , 1 , 1 , 0 , 0 , 0 , 0 , . . . )

  • ...

  • Zeit ω : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , . . . )

  • Zeit ω + 1 : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , . . . )

  • Zeit ω + 2 : ( 0 , 0 , 1 , 1 , 1 , 1 , 1 , . . . )

  • ...

  • Zeit ω 2 : ( 1 , 1 , 1 , 1 , 1 , 1 , 1 , . . . )

  • Zeit ω 2 + 1 : ( 0 , 1 , 1 , 1 , 1 , 1 , 1 , . . . )

  • ...

Ich habe explizit zwei unterschiedliche Limitstufen aufgeführt: ω Und ω 2 . Bühne ω war einfach, da jede Zelle auf dem Band einen "letzten Wert" hatte (nämlich 1 ); Bühne ω 2 war ein bisschen interessanter, da jede Zelle zwischendurch wechselte 0 Und 1 schließlich oft, und so mussten wir die Begrenzungsregel auch für Symbole auf dem Band verwenden (nämlich verwenden wir das Limsup der Symbole). Beachten Sie, dass sich der Kopf bei jeder Begrenzungsstufe auf die Anfangszelle im Band "zurückzieht".

Der relevante Text im Artikel von Hamkins/Lewis lautet (hervorgehoben von mir) :

Um eine solche Grenz-Ordnungskonfiguration einzurichten, wird der Kopf von dort entfernt, wo er hingelaufen sein könnte, und auf die erste Zelle gelegt . Und es wird in einen besonders ausgezeichneten Grenzzustand versetzt . Jetzt müssen wir eine Grenze der Zellenwerte auf dem Band nehmen. Und das machen wir Zelle für Zelle nach folgender Regel: Wenn die in einer Zelle auftretenden Werte konvergiert sind, also vor der Grenzstufe entweder irgendwann 0 oder irgendwann 1 sind, dann behält die Zelle den Grenzwert bei der Stufe begrenzen. Andernfalls, für den Fall, dass die Zellenwerte unbegrenzt oft von 0 auf 1 und wieder zurück gewechselt haben, machen wir den Grenzzellenwert zu 1. Dies ist gleichbedeutend damit, den Grenzzellenwert zum Grenzwert der Zellenwerte vor dem Grenzwert zu machen .


Lassen Sie uns jetzt etwas komplizierter vorgehen und sehen, wie man taktet ω . Hier brauche ich einen "Halt"-Zustand.

Unsere Maschine wird zwei Zustände haben, S 0 Und S 1 :

  • S 0 ist der Startzustand ; es geht nur zu sich selbst über, bewegt sich nach rechts und ändert nicht, was auf dem Band ist.

  • S 1 ist sowohl der Grenzzustand als auch der Haltezustand .

Hier ist der Lauf, den wir bekommen (beginnend mit all- 0 s auf dem Band) - beachten Sie, dass wir dieses Mal nachverfolgen müssen, in welchem ​​​​Zustand sich die Maschine befindet :

  • Zeit 0 : Zustand = S 0 , Band = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 1 : Zustand = S 0 , Band = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 2 : Zustand = S 0 , Band = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • Zeit 3 : Zustand = S 0 , Band = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . )

  • ...

  • Zeit ω : Zustand = S 1 , Band = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , . . . ) .

Beachten Sie, dass wir wie von Zauberhand zu gesprungen sind S 1 - einfach weil S 1 war der designierte Grenzzustand! Und jetzt, zur Zeit ω , wir befinden uns im Haltezustand, also halten wir an .

Aus Neugier, warum die Ablehnung?
OK, ich glaube, ich habe endlich eine Vorstellung von "lim sup" (es scheint das Gegenteil von dem zu sein, was ich dachte), zumindest für endlich bewertete Variablen. Denn jedes Mal, wenn ich denke, dass ich einen Artikel zu diesem Thema lesen werde (bis zu dem Punkt, an dem ich es verstehen kann), gebe ich einfach auf, weil ich kein Beispiel zu lim, sup, inf usw. finden konnte. Ich habe eine einfachere Zeit, diese Definitionen durch Quantifizierung (über eine angemessen große Ordnungszahl) zu verstehen, und es gibt drei oder vier verschiedene Arten von Verhaltensweisen, die ich mir als ziemlich intrinsisch vorstellen kann. Ich denke, ich werde eine separate Frage stellen.
Außerdem scheint die abstrakte Beschreibung, die Sie gegeben haben, interessant zu sein. Ich frage mich, ob diese Art der Beschreibung verwendet werden kann, um ausreichend interessante Modelle zu geben, die dem endlichen Fall ähneln, aber andere als Maschinen oder Programme. Ich denke an so etwas wie Lambda-Berechnung, Warteschlangenmaschinen, GoL usw. Wie auch immer, das ist für diese Frage irgendwie nicht relevant, also werde ich aufhören.
Eine kleine Frage hätte ich noch.... wenn man sowas schreibt σ Ö R D , ist es eine vollständig formale Terminologie ...... oder kann sie zumindest in der Standardmengentheorie formalisiert werden? Wenn wir zum Beispiel die Funktion zum Beschreiben des Werts einer Zelle auf dem Band definieren würden, könnten wir ihre Domäne schreiben als Ö R D ?? [während Sie sicher sind, dass alle potenziellen Probleme damit formal gelöst werden können]
Ich glaube, ich habe das lim,sup,inf-Ding verstanden (nachdem ich natürlich ein bisschen nach oben gesucht habe). Und ich glaube, ich verstehe, welcher Teil daran mich die letzten Male zuvor verwirrt hat. Also habe ich die Frage (bezogen auf diesen Punkt) gelöscht, die ich gepostet habe ....
@SSequence Ja, ich habe diese Details ignoriert, um die Dinge intuitiv zu halten. Eine „Funktion“ mit ordinaler Domäne ist wirklich eine Klassenfunktion (dto. eine Sequenz mit ordinaler Länge), und wir müssen vorsichtig sein, wie wir diese behandeln (zumindest in ZFC). Grundsätzlich schreiben wir in der Mengenlehre eine einzige Formel auf φ ( e , A , σ , D ) was ungefähr bedeutet " σ ist eine Ordnungszahl, und D ist die Beschreibung von ITTM e auf Eingabe A auf der Bühne σ ." (Und " σ Ö R D " ist völlig formell - es ist nur eine Abkürzung für " σ ist eine hereditär transitive Menge.")
Zu Ihrer ersten Frage: Ja, jedes Berechnungsmodell mit einem Begriff von "Zeit" kann zu einem solchen Bild führen. Und manchmal erscheint die Zeit in einem seltsamen Gewand, wie zum Beispiel Stufen in einem Vereinfachungsprozess - in diese Richtung, z λ -Kalkül Ich erinnere mich vage, dass das richtige Objekt zum Anschauen der Bohm-Baum ist (aber ich weiß nicht wirklich, wovon ich da spreche).
OK danke. Also, basierend auf dem, was ich verstehen konnte, interpretiere ich das, was Sie gesagt haben, in etwa so. Wir könnten so etwas sagen wie: „Betrachte eine Funktion F : Ö R D Ö R D " solange das Verhalten passend spezifiziert ist (zum Beispiel wie im Inhalt einer Bandzelle in ITTM). Denn obwohl F ist keine Funktion im wirklich formalen Sinne, aber wir wissen, dass die Grundidee gut genug formalisiert werden kann, also müssen wir uns keine Sorgen machen. Oder, wenn wir wirklich müssten, könnten wir in diesem Satz „Funktion“ durch „Klassenfunktion“ ersetzen? [Außerdem hast du Recht .... Ich habe in Bezug auf ZFC gefragt]
@SSequence Yup, das ist genau das gleiche, wie wir normalerweise über Klassen in ZF (usw.) nachdenken - wir tun es nicht direkt, aber spezifische Beispiele (über feste Formeln) sind leicht zu handhaben.
Bitte sehen Sie sich die bearbeitete Frage an. Ist mein Verständnis richtig?