Zeitkomplexität universeller Turingmaschinensimulationen und des Zeithierarchiesatzes


8

Ich habe ein kleines Problem damit, den Beweis des Zeithierarchiesatzes (Hennie und Stearns, 1966) zu verstehen, der die Existenz einer Sprache sicherstellt, die in akzeptabel ist, in T ( n ) jedoch für keine Funktionen T ( n ) akzeptabel ist. U ( n ) , so dass U ( n ) zeitkonstruierbar ist undU.(n)T.(n)T.(n),U.(n)U.(n)

nT.(n)=Ö(U.(n)LogT.(n)).

Dieser Beweis basiert auf der Existenz der Universal Turing-Maschine, die jede Turing-Maschine mit der Zeitkomplexität in der Zeit simuliert .T.(n)T.(n)LogT.(n)

Ich verstehe (und glaube) den Beweis, dass jede -Band-Turing-Maschine von einer Zwei-Band-Turing-Maschine mit logarithmischem Overhead simuliert werden kann. Ich verstehe diese Konstruktion jedoch nur, wenn die simulierte Turing-Maschine fest ist, nicht im Fall der Universal TM -Simulation.k

Ich sehe ein "Problem" in der Argumentation, die in dem zitierten Artikel (und auch in mehreren Standardbüchern zur Komplexität von Berechnungen) im Zusammenhang mit der Konstruktion der Universalmaschine gegeben wurde. Dieses "Problem" besteht darin, dass in der Universalmaschinensimulation ein Rechenschritt einer simulierten Maschine von der Universalmaschine in konstanter Zeit ausgeführt werden soll. Mit anderen Worten soll die Länge der Beschreibung der simulierten Maschine konstant sein.

Aber ist das in Ordnung? Da im Beweis des Zeithierarchiesatzes die Eingabe für die simulierte Turing-Maschine genau diese Beschreibung ist und somit die Beschreibung irgendwie von abhängig ist . Mir ist bewusst, dass die Beschreibung durch eine Folge von führenden Bits verlängert werden kann, aber dies scheint dieses Problem nicht zu lösen.n

Das heißt, ich kann nicht herausfinden, warum der Berechnungsschritt einer simulierten Maschine von der Universalmaschine in einer konstanten Zeit ausgeführt werden kann. Das Papier von Hennie und Stearns widmet dem nicht viel Aufmerksamkeit, es besagt lediglich, dass diese Zeit etwas ist, das implizit als Konstante angenommen wird. Ähnlich habe ich in den Lehrbüchern zum Thema gelesen.

Ich kann einfach nicht herausfinden, warum die zeitliche Komplexität der Simulation und nicht .T.(n)LogT.(n)nT.(n)LogT.(n)

Ich bin mir fast sicher, dass mir etwas fehlt. Ich versuche dies jedoch relativ lange zu verstehen und irgendwie kann ich das nicht herausfinden.

Antworten:


7

Ich beziehe mich hier auf den mir bekannten Beweis des Hierarchiesatzes, in dem ich das von Ihnen erwähnte Problem nicht sehe.

L.={(M.,w)::M.(M.,w)t(n)|M.|3+|M.|Logt(n),n=|(M.,w)|}}t

L.Ö(t(n))|M.|3

T.L.T.wT.


1
Ich denke, dass ich verstehe - endlich ... Das ist großartig. ;) Vielen Dank!
042

1
Das ist übrigens überhaupt keine blöde Frage. Dies ist ein schwieriger Satz, auch ohne all diese kleinen Details!
Shaull
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.