Time

Im Computerkomplexitätstheorie, Time (oder ZEIT) ist der Rechenressource von Berechnungszeit Für ein deterministische Turing -Maschine. Es repräsentiert die Zeit (oder die Anzahl der Berechnungsschritte), die ein "normaler" physischer Computer benötigen würde, um eine bestimmte zu lösen Rechenproblem mit einem bestimmten Algorithmus. Es ist eine der am besten untersuchten Komplexitätsressourcen, da es so eng einer wichtigen Ressource realer Welt entspricht (die Zeit, die ein Computer benötigt, um ein Problem zu lösen).

Die Ressource Time wird verwendet, um zu definieren Komplexitätsklassen, Sets aller Entscheidungsprobleme Dies kann unter Verwendung einer bestimmten Berechnungszeit gelöst werden. Wenn ein Problem der Eingangsgröße n kann gelöst werden Wir haben eine Komplexitätsklasse (oder ). Es gibt keine Einschränkung auf die Höhe von Speicherraum verwendet, aber es kann einschränkende Einschränkungen für andere Komplexitätsressourcen geben (wie wie Wechsel).

Komplexitätsklassen im Time

Viele wichtige Komplexitätsklassen sind in Bezug auf Timemit allen Problemen, die in einer bestimmten Menge an deterministischer Zeit gelöst werden können. Irgendein richtige Komplexitätsfunktion Kann verwendet werden, um eine Komplexitätsklasse zu definieren, aber nur bestimmte Klassen sind nützlich zu studieren. Im Allgemeinen möchten wir, dass unsere Komplexitätsklassen gegen Veränderungen im Rechenmodell robust sind und unter Zusammensetzung von Unterroutinen geschlossen werden.

Time erfüllt die Zeithierarchie Theorem, bedeutet, dass asymptotisch größere Zeitmengen erzeugen immer streng größere Probleme.

Die bekannte Komplexitätsklasse P umfasst alle Probleme, die in einer Polynommenge gelöst werden können Time. Es kann formell definiert werden wie:

P ist die kleinste robuste Klasse, die Linear-Zeit-Probleme beinhaltet (AMS 2004, Vortrag 2.2, S. 20). P ist eine der größten Komplexitätsklassen, die als "rechnerisch machbar" gilt.

Eine viel größere Klasse, die deterministische Zeit verwendet, ist Nachfolger, was alle Probleme enthält, die unter Verwendung einer deterministischen Maschine löslich sind Exponentialzeit. Formal haben wir

Größere Komplexitätsklassen können ähnlich definiert werden. Aufgrund der Zeithierarchie -Theoremie bilden diese Klassen eine strenge Hierarchie; Wir wissen das und weiter.

Maschinen-Modell

Das genaue Maschinenmodell, das zum Definieren von Time verwendet wird, kann variieren, ohne die Leistung der Ressource zu beeinflussen. Führt in der Literatur häufig Multitape -Turing -Maschinenbesonders bei der Diskussion über sehr kleine Zeitklassen. Insbesondere kann eine multitape deterministische Turing -Maschine niemals mehr als eine quadratische Zeit beschleunigt über eine Singletape -Maschine.[1]

Multiplikative Konstanten in der verwendeten Zeit ändern nicht die Leistung von Time -Klassen. Eine konstante multiplikative Beschleunigung kann immer erhalten werden, indem die Anzahl der Zustände in der Finite -Status -Kontrolle erhöht wird. In der Erklärung von Papadimitriou,[2] für eine Sprache LAnwesend

Lassen . Dann für jeden , , wo .

Verallgemeinerungen

Unter Verwendung eines anderen Modells als einer deterministischen Turing -Maschine gibt es verschiedene Verallgemeinerungen und Einschränkungen der Time. Zum Beispiel, wenn wir a verwenden Nichtdeterministische Turing -MaschineWir haben die Ressource Ntzeit. Die Beziehung zwischen den ausdrucksstarken Kräften der Time und anderen Rechenressourcen ist sehr schlecht bekannt. Eines der wenigen bekannten Ergebnisse[3] ist

Für Multitape -Maschinen. Dies wurde auf erweitert auf

von Santhanam.[4]

Wenn wir eine verwenden Wechsel Turing MachineWir haben die Ressourcenatime.

Verweise

  1. ^ Papadimitriou 1994, Thrm. 2.1
  2. ^ 1994, Thrm. 2.2
  3. ^ Paul Wolfgang, Nick Penpfger, Endre Szemerédi, William Trotter. Über Determinismus versus Nichtdeterminismus und verwandte Probleme. 24. jährliches Symposium für Stiftungen der Informatik, 1983. doi:10.1109/sfcs.1983.39
  4. ^ Rahul Santhanam, Auf Separatoren, Segregatoren und Zeit gegen Raum, 16. jährliche IEEE -Konferenz über Computerkomplexität, 2001.
  • American Mathematical Society (2004). Rudich, Steven und Avi Wigderson (ed.). Computerkomplexitätstheorie. American Mathematical Society und Institut für fortgeschrittenes Studium. ISBN 0-8218-2872-x.
  • Papadimitriou, Christos H. (1994). Rechenkomplexität. Lesen, Massachusetts: Addison-Wesley. ISBN 0-201-53082-1.