• Keine Ergebnisse gefunden

Folgerungen für Schaltkreisklassen

17.2 P-Vollständigkeit 126

17.2.4 Folgerungen für Schaltkreisklassen

132 17 Untere Schranken I Übungen zu diesem Kapitel

18 Untere Schranken II 133

18-1 18-1

Kapitel 18

Untere Schranken II

Comparison-PRAMS und Adversary-Argumente

18-2 18-2

Lernziele dieses Kapitels

1. Konzepte des Vergleichsbaums und des Adversary-Arguments kennen

2. Untere-Schranken-Beweise für Comparison-PRAMS kennen

Inhalte dieses Kapitels

18.1 Wiederholung: Laufzeitschranken 134

18.2 Untere Laufzeitschranken 134

18.2.1 Das Modell: Comparison-prams . . . . 134 18.2.2 Die Methoden: Decision-Trees . . . 135 18.2.3 Die Methoden: Adversary-Argumente . 136 18.2.4 Die Resultate: Suchen . . . 136 18.2.5 Die Resultate: Maxima finden . . . 137

Worum es heute geht

Worum es heute geht

Wenn Sie einen kommerziell erfolgreichen Film drehen wollen, brauchen sie (a) eine Love- Story (heteronormativ und -stereotyp mit heroischem maskulinen Part und erotischem femininen Part), (b) einen möglichst fiesen Bösewicht und natürlich (c) eine Special- Effects-Studio samt Renderfarm. Uns soll in diesem Kapitel lediglich Teil b interessieren:

Der böse Widersacher, der dem Helden gerne die Schau stiehlt (der Bösewicht ist fast immer männlich, es sei denn er ist weiblich oder – wie »das Böse« im Fünften Element – einfach so böse, dass keine Geschlecht mehr zugeordnet werden kann). Das Techtelmechtel von Neo und Trinity wäre ohne Mr. Smith nicht der Rede wert. Luke würde ohne seinen Vater wahrscheinlich Saufkumpane von Herrn Hutt sein. Mr. Data wüsste ohne die Borg- Königin heute noch nicht wie sich Wind anfühlt, der zart über die Haut streicht. James würde ohne Goldfinger die Hotelbar nicht mehr verlassen, Hänsel und Grete würden ohne Frau Diplom-Arkanologin B. Hexe als schwererziehbare Problemkinder durch die Talkshows geistern. Und Shrek würde ohne Prinz Charming friedlich in seinem Sumpf leben anstatt sich durch eine dritte Fortsetzung quälen zu müssen.

In der Theoretischen Informatik heißt der böse Widersacher schlicht »der Adversary«. Wie es sich für einen Bösewicht gehört sollte man ihn eigentlich nicht mögen, ohne ihn geht es aber nicht. Zur Erinnerung: In einem Unteren-Schranken-Beweis geht es darum zu zeigen, dass kein Algorithmus ein bestimmtes Problem in einer bestimmten Zeit lösen kann. Der Adversary sieht seine Aufgabe gerade darin, es »jedem Algorithmus« möglichst schwer zu machen. Er wird immer gerade die Eingabe auswählen, die besonders viele Probleme bereitet. Er lässt den Algorithmus sogar anfänglich im Unklaren darüber, wie die Eingabe überhaupt genau lautet; er liefert immer »in letzter Minute« Informationen, die dann auch noch für den Algorithmus möglichst ungünstig ausfallen. Deshalb ist es der Adversary, der uns hilft, untere Schranke zu zeigen: Aufgrund seiner unermüdlichen Suche nach

»fiesen Eingaben« werden wir beispielsweise zeigen können, dass sich das Maximum von n Zahlen (unter einigen Zusatzvoraussetzungen) nicht schneller als in Zeit Θ(log log n) berechnen lässt – was übrigens auch unsere obere Schranke für dieses Problem war.

134 18 Untere Schranken II 18.2 Untere Laufzeitschranken

18.1 Wiederholung: Laufzeitschranken

18-4 Laufzeitschranken für PRAMs. 18-4

Für bestimmte Arten von prams und bestimmte Problem lassen sichuntere Schranken für die Laufzeitbeweisen.

Wir werden zeigen, dass Comparison-prams mit p Prozessoren zum Finden eines Elementes in einer sortierten Liste der Länge n mindestens Ω(log n/log p)Schritte benötigt.

Wir werden zeigen, dassComparison-pramsMaxima bestenfalls in ZeitΩ(log log n) berechnen können.

18-5 »Starke« untere Schranken für die Laufzeit von PRAMs. 18-5

Die Resultate für Comparison-prams sindstarke Resultate – sie gelten absolut und ohne Annahmen.

Wir beweisen sie durchAdversary-Argumente.

Wir »erkaufen« die starken Resultate dadurch, dass unser Modell (die Comparison- pram) nicht sonderlich mächtig ist.

18.2 Untere Laufzeitschranken

18-6 Laufzeitschranken für PRAMs. 18-6

Für bestimmte Arten von prams und bestimmte Probleme lassen sichuntere Schran- ken für die Laufzeitbeweisen.

Die Resultate für Comparison-prams sindstarke Resultate – sie gelten absolut und ohne Annahmen.

Wir beweisen sie durchAdversary-Argumente.

Wir »erkaufen« die starken Resultate dadurch, dass wir sie nur fürComparison-prams beweisen.

18.2.1 Das Modell: Comparison-

PRAM

s

18-7 Das Modell: Die Comparison-PRAM. 18-7

Es hatnoch niemand geschafft, (nicht triviale) untere Schranke für prams zu beweisen.

Wir betrachten deshalb einschwächeresModell von prams: DieComparison-pram.

Die Comparison-pram funktioniertähnlich einem Vergleichsnetzwerk. Definition (Comparison-PRAM)

Eine Comparison-pram greift auf die Eingabespeicherzellen nur auf folgende Weise zu:

Sie kann ein zwei Eingabezellen vergleichen.

Sie kann eine Eingabezelle mit einem gegebenen Wert vergleichen.

Sie erfährt, wie der Vergleich ausgegangen ist.

Anderweitig darf sienicht in die Zellen »hineinschauen«.

Skript Für an Formalisierungen Interessierte sei hier im Skript noch eine genauere formale De- Skript

finition der Comparison-pram angegeben:

Definition (Syntax der Comparison-PRAM)

Syntaktisch ist eine Comparison-pram eine normale pram mit einem zusätzlichen Befehl:

18. ifgrri<grrjgotok

18 Untere Schranken II

18.2 Untere Laufzeitschranken 135

Definition (Semantik der Comparison-PRAM)

Die Semantik einer Comparison-pram ist genauso definiert wie die Semantik einer pram mit folgenden Erweiterungen:

1. Die Semantik des Befehls ifgrri<grrjgotok lautet wie erwartet: hpcit+1p =k, fallshgrhriitpit<hgrhrjitpit, sonsthpcit+1p =hpcitp+1.

2. Die Register gr1 bis grn, wobeindie in gr0gespeicherte Eingabelänge ist, können nur durch obigen Befehl adressiert werden. Eine Berechnung, bei der durch einen anderen Befehl auf eines dieser Register zugegriffen wird (lesend oder schreibend), endet sofort. Dies wäre zum Beispiel der Fall bei n=2 und dem Befehl gr1←r1 oder bein=6und dem Befehl r2←grr8 mithr8itp=5.