Determinist. Zeitkomplexitaet < Wettbewerbe < Informatik < Vorhilfe
|
Status: |
(Übungsaufgabe) Übungsaufgabe | Datum: | 08:10 Fr 13.01.2006 | Autor: | mathiash |
Aufgabe | Es bezeichne DTIME(t(n)) die Klasse aller Sprachen [mm] L\subseteq\{0,1\}^*,
[/mm]
fuer die eine deterministische O(t(n))-zeitbeschraenkte TM M existiert mit
L(M)=L.
Zeige:
[mm] \left (\bigcap_{\epsilon >0} DTIME(n^{2+\epsilon})\right )\:\setminus\: DTIME(n^2)\:\:\neq\emptyset [/mm] |
Hallo zusammen,
ich kann einfach nicht widerstehen, diese Aufgabe hier zu formulieren.
Ich finde, auf den ersten Blick sieht die Aussage ziemlich skuril aus, oder ?
Ideen ?
Viele Gruesse,
Mathias
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 05:11 Fr 27.01.2006 | Autor: | mathiash |
Hallo zusammen,
na, bisher schien die Frage ja nicht gerade Begeisterungsstürme loszubrechen,
deswegen will ich ein paar Hinweise und Erläuterungen geben.
(1) Bei DTIME(t(n)) für eine Funktion t(n) handelt es sich um eine deterministische
Zeitkomplexitätsklasse, nämlich die Klasse all derer Entscheidungsprobleme,
für die es eine O(t(n))-zeitbeschränkte Turing-Maschine M gibt, die das Entscheidungsproblem löst.
(2) Dabei ist ein Entscheidungsproblem formal nichts anderes als eine Menge von Strings, nämlich (für ein zweielementiges Alphabet [mm] \{0,1\}) [/mm] eine Teilmenge
[mm] L\subseteq\{0,1\}^* [/mm] der Menge aller Strings (=endliche Zeichenketten) über [mm] \{0,1\}.
[/mm]
Algorithmisch gesehen: Ein Algorithmus A löst das Entscheidungsproblem L, falls
der Algorithmus zu jeder Eingabe [mm] x\in\{0,1\}^* [/mm] die Information (ja/nein) ausgibt, ob [mm] x\in [/mm] L ist oder nicht.
(3) Die Aufgabe fragt nun also nach der Existenz von Entscheidungsproblemen L, die
sozusagen in jeder Laufzeit [mm] n^{2+\epsilon} [/mm] (nen kleinen Tick mehr als quadratische laufzeit, der Tick [mm] \epsilon [/mm] darf bel. klein sein, sofern nur [mm] \epsilon [/mm] > 0) lösbar sind,
aber NICHT in quadratischer Laufzeit.
D.h. also obwohl man dann für solche Entscheidungsprobleme eine Folge von Algorithmen hat, die das Problem lösen und deren Laufzeit von oben gegen [mm] n^2 [/mm] konvergiert, wird dieses [mm] n^2 [/mm] selbst ''algorithmisch nie erreicht''.
Soviel zur Erläuterung der Aufgabenstellung.
Als Lösungshinweis ein erstes Stichwort: Speedup Theorem.
In der Hoffnung, den Appetit etwas mehr anzuregen,
verbleibe ich mit den herzlichsten Grüßen an alle Freunde
klassischer Resultate der Komplexitätstheorie !
Mathias
|
|
|
|
|
Hallo mathiash,
es ist ja schon ein wenig her, dass diese Frage gestellt wurde. Trotzdem finde ich sie eigentlich ganz interessant.
Um ehrlich zu sein hat mir das Speed-Up Theorem fuer DTMs dabei allerdings nicht weitergeholfen, denn es ermoeglicht ja lediglich die Beschleunigung einer TM um einen konstanten Faktor $0 < [mm] \varepsilon [/mm] < 1$ (natuerlich nur falls die DTM S-Platzbeschraenkt mit $S [mm] \in \omega(Lin)$, [/mm] denn wir benoetigen ohnehin lineare Zeit um die Eingabe zu komprimieren).
Mein Ansatz lautet nun wie folgt:
Ich denke, es ist klar, dass [m]DTime(n^2) \subset Dtime(n^{2 + \varepsilon})[/m], denn [m]\varepsilon > 0 \wedge n \geq 1[/m].
Jede DTM, die das Wortproblem einer Sprache in quadratischer Laufzeit entscheiden kann, kann es auch in asymptotisch groesserer Laufzeit entscheiden. Im Klartext,
[mm] $O(n^2)) \in O(n^\varepsilon\cdot n^2)$
[/mm]
Sei nun [mm] $\varepsilon [/mm] = [mm] \frac{1}{k}, k\in \mathbb{N}$
[/mm]
Ich versuche nun zu zeigen:
[m]\forall k\in \mathbb{N}: DTime(n^{2+\frac{1}{k}}) \cap DTime(n^{2+\frac{1}{k+1}}) = DTime(n^{2+\frac{1}{k+1}}) \gdw DTime(n^{2+\frac{1}{k+1}}) \subset DTime(n^{2+\frac{1}{k}})[/m]
D.h. der Schnitt aller Probleme fuer $k$ und $k+1$ sind gerade die Probleme fuer $k+1$, entsprechend folgt.
[m]\bigcap_{k \in \mathbb{N}}{DTime(\varepsilon(k)) = \limes_{m\rightarrow\infty} \bigcap_{k = 1}^{m} DTime(\varepsilon(k)) =
\limes_{m\rightarrow\infty} DTime(\varepsilon(m)) =
\limes_{m\rightarrow\infty} DTime(n^{2+1/m}) = DTime(n^2)[/m]
und damit die Behauptung.
|
|
|
|
|
Hallo!
Die Aufgabe kann mit dem time hierarchy theorem gelöst werden.
Es gilt nämlich:
[mm] n^2=o(\bruch{n^{2+\varepsilon}}{log(n^{2+\varepsilon})}) [/mm]
So jetzt muss ich mich wieder mit Spieltheorie beschäftigen! Da verstehe ich nämlich gar nix...
Grüsse
Karpinskuss
|
|
|
|