• Keine Ergebnisse gefunden

T = hQ, Σ, I, q 0 , F i

N/A
N/A
Protected

Academic year: 2022

Aktie "T = hQ, Σ, I, q 0 , F i"

Copied!
36
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Mitgeshrieben von Bernhard Weiÿ, Sebastian Goebl und anderen

Mitshrift aus dem WiSe 2008/09

Inhaltsverzeihnis

1 Turingmashinen, Berehenbarkeit, Komplexitätsklassen 1

1.1 Turingmashinen . . . 1

1.2 Zeitkomplexität,Speedup und Hierarhiesatz . . . 3

1.3 Nihtdeterminismus, wihtige Komplexitätsklassen und deren Bezie- hungen . . . 5

2 Die Klassen P und NP 8 2.1 NP-Vollständigkeit . . . 8

2.2 Satz von Ladner. . . 10

2.3 Orakelmashinen . . . 13

2.4 RelativierungenvonP und NP. . . 14

2.5 Die PolynomielleHierarhie . . . 16

3 Platzkomplexität 20 3.1 Grundlegende Denitionen . . . 20

3.2 Platzkomplexitätund Nihtdeterminismus . . . 21

3.3 Ausdrukskraft eines Staks . . . 24

3.4 LOGSPACE-ReduktionenundvollständigeProblemefürPundNLOGSPACE 26 4 Programmiersprahen und Komplexität 31 4.1 Beshränkte Notationsrekursion, Satz vonCobham (1965) . . . 31

4.2 Sihere Rekursion nah Bellantoni-Cook . . . 33

(2)

Inhaltsverzeihnis

(3)

1 Turingmashinen, Berehenbarkeit, Komplexitäts-

klassen

1.1 Turingmashinen

Denition 1

(k-BandTuringmashine)Einek-BandTuringmashineisteinQuintupel

T = hQ, Σ, I, q 0 , F i

wobei

Qist endlihe Menge von Zuständen

• Σ

ist eine endlihe Menge von Symbolen

I ist eine Menge von Quintupeln der Form

(q, s, s , d, q )

wobei

q, q ∈ Q, s, s ∈ Σ k , d ∈ {L, R, s} k

. Für alle

q, s

existiert höhstens ein Quintupel der Form

(q, s, −, −, −)

in der Menge I

• q 0 ∈ Q

Anfangszustand

• F ⊆ Q

Endzustände

Beispiel 1

Σ = {0, 1, , #}, k = 2, Q = {q 0 , q 1 , q 2 , q 3 , q 4 }

1.

q 0 , ( , ), (#, #), (S, S), q 1

2.

q 0 , (1, ), (1, #), (S, S), q 2

3.

q 0 , (0, ), (0, 0)(R, R), q 3

4.

q 3 , (0, ), (0, 1)(R, R), q 3

5.

q 3 , ( , ), (#, #), (S, S), q 2

6.

q 3 , (1, ), (1, ), (R, L), q 4

7.

q 4 , (1, 1), (1, 1)(R, L), q 4

8.

q 4 , ( , 0), ( , 0), (S, S), q 1

9.

q 4 , (1, 0), (1, 0), (S, S), q 2

10.

q 4 , ( , 1), ( , 1), (S, S), q 2

Denition 2 (Denition (Globaler Zustand, Konguration))

Sei

T = (Q, Σ, I, q 0 , F )

einek-BandTuringmashine.EinGlobalerZustand(synonym Konguration)vonTisteinTripel

S = (q, w, w )

wobei

q ∈ Q, w ∈ (Σ ) k , w ∈ (Σ + ) k

(qistderaktuelleZustand,wdasWortvordemShreib/Lesekopfundw'dasWortauf

undnahdemShreib/Lesekopf).Seien

S, S

Kongurationen.Manshreibt

S −→ S T

gesprohen

S

ist dieFolgekongurationvon

S

wenn gilt:

S = (q, w, w ), q / ∈ F

(4)

Sei

w = (w 1 , . . . w k ), w = (w 1 , . . . w k ), a i =

erstes Symbolvon

w i

Sei

(q, (a 1 , . . . , a k ), (b 1 , . . . b k )(d 1 , . . . d k ), q ) ∈ I

Dann

S = (q , v, v ) v = (v 1 , . . . , v k ), v =

(v 1 , . . . , v k )

wobei

v i =

 

 

 

 

w i d i = S

u d i = L, w i = uc ǫ d i = L, w i = ǫ w i b i d i = R

w i = a i u, a i ∈ Σ, u ∈ Σ

v i =

 

 

b i u d i = S

cb i u d i = L, c =

Letztes Symbolvon

w i

bzw

falls

w i = ǫ u d i = R

Denition 3 (Start-Konguration)

Sei

X ∈ Σ

und

kommt niht in x vor.Die Startkonguratin für T auf eingabe x istdeniert deniert als

(q 0 , (ǫ, . . . , ǫ), (x, , . . . )

Denition 4 (Berehnung)

Berehnung von T auf Eingabe x ist eine endlihe oder unendlihe Folge von Kon-

gurationen,

S 0 , . . . S n

bzw

S 0 , S 1 , . . .

,sodass

• S 0

istdieStartkonguration von Tfür x

• S i

−→ S T i+1

FallsdieFolge endlih istmitletztemElement

S n

so existiertkeine Folgekon-

guration

S

mit

S n

−→ S T

Denition 5 (Akzeptormashine)

Eine Akzeptormashine ist eine TM Tmit

F = {q A , q R }

(akzeptierender und verwer- vender Zustand) eine Eingabe x wird von solhe einer Mashine akzeptiert, falls die

Berehnung von x aus endlih istund im Zustand

q A

endet

Bemerkung 1

Die Beispielmashine vonoben akzeptiert alleEingaben der Form

0 n 1 n

.

Denition 6 (Erkannte Sprahe)

Sei T eine Turingmashine

L(T ) := {x| T (x)

| {z }

BerehnungvonTmitStartkonguarationx

hält in Zu-

stand

g A }

.

L heiÿt akzeptierbar, wenn

L = L(T )

für eine Mashine T

Bemerkung 2

akzeptierbar =semi-entsheidbar= rekursiv entsheidbar

Denition 7

LwirdvonTMTentshieden,wenn gilt:

x ∈ L ⇒ T (x)

hälltinZustand

g A x / ∈ L ⇒ T (x)

hält in Zustand

g R

L heiÿt entsheidbar, wenn

∃T

,sodass Lwird von Tentshieden

(5)

Bemerkung 3

Wenn keine Verwehslungsgefahr besteht,verwendenwir dieNotation

L(T )

auhfür

dievon

T

entshiedene Sprahe.

Bemerkung 4

Es gibt Sprahen L, dieakzeptierbar, aber niht entsheidbar sind.

Bemerkung 5

Meist betrahtet man eine Teilmenge

Σ in ⊆ Σ

als Alphabet und erweitert Akzep-

tierbarkeit und Entsheidbarkeit auf Sprahen

L ⊆ Σ in

. Manhe Autoren denieren

Turingmashinen alsTupel

(Σ, Σ in , Q, I, q 0 , F )

1.2 Zeitkomplexität, Speedup und Hierarhiesatz

Denition 8 (Zeitkomplexität)

Sei Teine Turingmashine

x ∈ Σ TIME T (x) =

Länge der Berehnung

T (x)

, unde-

niert falls

T (x)

niht hält.

Bemerkung 6

TIME T : Σ → N

ist partielleFunktion

|x| :=

Länge von x

Satz 1 (Speeduptheorem)

Sei T ein TM, die L entsheidet und

d ∈ N

Dann existiert TM

T

die auh L ent-

sheidet und auÿerdem erfüllt:

TIME T (x) = 1 d TIME T (x) + |x| + 1

Beweis (Idee)

T

verwendet als Alphabet

Σ := Σ d

Berehne alle Übergänge von

einemBlokzumnähstenimvorausundspeiheresieinder(riesigen!)Zustandstafel

I' vonT' ab.

Ziel: Denition von

TIME(f)

wobei f eine Funktion

N → N

,z.B.

f (n) = n e

Denition 9 (Zeitkonstruierbar)

Eine Funktion

f : N → N

heiÿt zeitkonstruierbar, wenn eine TM Texistiert, diebei Eingabe x hält nah

≤ c · f (|x|)

Shritten für ein festes

c ∈ N

und auf einem Band

dieAusgabe

1 f (|x|)

liefert(

11 . . . 11

| {z }

f(|x|)

Stük

)

Satz 2

f (n) = n, f (n) = n log n

sind zeitkonstruierbar. Falls f,g zeitkonstruierbar,

k ∈ N

dann auh:

k · f, f + k, f + g, f · g, f g , f!, f ◦ g

. Zu jeder berehenbaren Funktion

f

existiert eine zeitkonstruierbare Funktion

r

, sodass

f(n) ≤ r(n)

.

Denition 10

Sei f zeitkonstruierbar.

TIME(f )

istdeniert als dieMenge aller Sprahen L für die

eine TM Texistiert mit

TIME T (n) ≤ x · f (|x|)

für ein

c ∈ N

(6)

Manshreibt

TIME(f(n))

statt

TIME(f )

undauh

TIME(n 2 )

statt

TIME(sq)

wobei

sq(n) = n 2

Beispiel 2

{0 n 1 n |n ≥ 0} ∈ TIME(n)

'Kürzeste Wege'

∈ TIME(n 2 )

'Sudoku lösen'

∈ TIME(2 n ) {0 n 1 n |n ≥ 0} ∈ TIME(2 n )

ADDITION

∈ TIME(n)

MULTIPLIKATION

∈ TIME(n 2 )

Denition 11

P := S

k≥1 TIME(n k ) EXP := S

k≥1 TIME(2 n k ) E := S

k≥1 TIME(2 kn )

ACHTUNG:

2 5n ∈ / O(2 n )

d.h. fürkeine Konstante gilt:

2 5n < c2 n

Satz 3 (Zeithierarhiesatz)

Sei f zeitkonstruierbare Fkt. Dann gilt:

TIME(f(n)) ( TIME(n 2 f(n) 2 )

Beweis Betrahte folgendenAlgorithmus:

Eingabe: TMT /*odiert als 01Folge /*

1 Berehne

N := f(|T |) + |T | + 1

2 SimuliereT(M) für NShritte.

3 Ausgabe:Fallsdiese Berehnung akzeptiert: REJECT sonst: ACCEPT

Setze

L f = {T | T (T )

akzeptiert niht nah

f (|T |) + |T | + 1

Shritten

}

Klar: Der angegebene Algorithmusist einEntsheidungsverfahren für

L f

.

Sei

T f

eine Turingmashine, die diesenAlgorithmusimplementiert und insbeson- dere

L f

entsheidet. Wirzeigen zunähst, dass

L f ∈ / TIME(f(n))

.

Fallsdoh,sosei

T 0

eineTuringmashinedie

L f

entsheidetundauÿerdem

TIME T 0 (x) ≤ cf (|x|)

. Nah Speedup Theorem können wir oBdA annehmen dass

TIME T 0 (x) ≤ f (|x|) + |x| + 1

. Es gibt zwei Fälle: entweder

T 0 ∈ L f

oder

T 0 ∈ / L f

. Falls

T 0 ∈ L f

dann müsste

T 0 (T 0 )

nah

≤ f (|T 0 |) + |T | + 1

Shritten verwerfen (also insbesondere überhaupt verwerfen). Dannaber wäre

T 0 ∈ / L f

, weil

T 0

die Sprahe

L f

entsheidet

Falls

T 0 ∈ / L f

dann müsste

T 0

dieEingabeverwerfen, und aufgrundder Annahmean

TIME T 0

müsste diesnahspätestens

f (|T 0 |) + |T 0 | + 1

Shritten geshehen, alsowäre

T 0 ∈ L f

.

Komplexitätsabshätzung des Algoritmus von oben: 1:

cf (|T |)

Shritte (weil f

zeitkonstruierbar) 2: Man muss die k Bänder der eingegeben Mashine T auf einem

Band speihern (durh Hintereinandershreiben), da man niht inputabhängig neue

Bänder anfordern kann. Auÿerdem muss das Alphabet der Mashine T mit festem

Alphabetodiertwerden,damannihtinputabhängigneueArbeitssymboleanfordern

kann. Ein Arbeitsband von T enthält hoehstens

f (|T |) + |T | + 1

Symbole. Da

f

zeitkonstruierbar ist,gilt

f (n) ≥ n

, also

f (|T |) + |T | + 1 = O(f (|T |)

.Die Kodierung

(7)

einer globalen Konguration erfordert somit

O(|T | 2 · f(|T |))

Symbole, wenn man

beahtet, dass sowohl dieZahl der Bänder von T, alsauh dieAlphabetgröÿevon

T

durh

|T |

beshränkt sind.

Um einen Shritt zu simulieren,muss man auf dieser langen Codierunghin- und

her navigieren, sodass sih einAufwand von

O(|T | 2 · f (|T |))

ergibt.Da nun

f(|T |) +

|T | + 1

Shritte zu simulierensind, kann der Gesamtaufwand durh

O(|T | 2 · f (|T |) 2 )

beshränkt werden.

Korollar 4

P ( EXP

Beweis

P ⊆ TIME(2 n )

weil

2 n

shnellerwähst als jedes Polynom.

TIME(2 n ) ( TIME(n 2 · (2 n ) 2 )

wegen Zeithierarhiesatz.

TIME(n 2 · (2 n ) 2 ) ⊆ EXP

Satz 5 (GAP-Theorem)

EsexistierteineberehenbareFunktion

f : N → N

T',sodass

TIME(f (n)) = TIME(2 f (n) )

.

Allerdings ist f niht zeitkonstruierbar.

1.3 Nihtdeterminismus, wihtige Komplexitätsklassen undde-

ren Beziehungen

Denition 12 (Nihtdeterministishe Turingmashine)

WiedeterministisheTuringmashineaber

I

beliebig

(I ⊆ Q × Σ× Σ × Q × {S, L, R})

Zu gegebenem

q

,

a

kann es mehrere Quintupel in

I

der Form

(q, a, −, −, −)

geben.

Zueiner Eingabe

x ∈ Σ

deniert man den Berehnungsbaum wie folgt:

Der Binärbaumist endlih verzweigt aber mögliherweise unendlih.

Die Wurzel ist mitder Startkongurationvon

T

auf

x

beshriftet.

Ist einKnoten mitKonguration

S

beshriftet und sind

S 1 , ..., S n

dieNahfol-

gekongurationen von

S

,sohat der Knoten

n

Kinderdiemitdiesenbeshriftet

werden.

Denition 13

Eine nihtdeterministishe Turingmashine

T

akzeptierteinWort

x ∈ Σ

wenn es im

Berehnungsbaum von

T

auf

x

einenAstgibt, der miteinerakzeptierenden Endkon- guration endet und auÿerdem alle Äste endlih sind. Ein Wort

x

wird verworfen,

wennesnihtakzeptiertwird,d.h.esgibteinenunendlihenAstoderalleÄsteenden

in einerverwerfenden Konguration.

Bemerkung 7

AlleNihtdeterministishenTuringmashinendiewirbetrahten, habenendl.Bereh-

(8)

Denition 14 (

NTIME

)

Sei

T

Nihtdeterministishe Turingmashine

x ∈ Σ NTIME T (x) =

(

Länge des kürzesten akzeptierenden Astes, fallsexistent

Länge des kürzesten Astes überhaupt, sonst

Bemerkung 8

Meist sind Nihtdeterministishe Turingmashinen so gebaut, dass alle Äste gleih

lang sind.

Denition 15 (

NTIME( f ( n ))

)

Sei

f

zeitkonstruierbar.

NTIME(f (n)) = {L |

es existiert Nihtdeterministishe Tu- ringmashine

T

,

c > 0 : ∀x

.

x ∈ L ⇔ T

akzeptiert

x

und

NTIME T (x) ≤ c · f(|x|)}

Denition 16 (

P

,

NP

,

E

,

EXP

,

NEXP

,

NE

)

P = S

k≥0 TIME(n k )

/* polynomielleLaufzeit */

NP = S

k≥0 NTIME(n k )

/*nihtdeterministish, polynomielleLaufzeit */

E = S

k≥0 TIME(2 kn ) NE = S

k≥0 NTIME(2 kn ) EXP = S

k≥0 TIME(2 n k ) NEXP = S

k≥0 NTIME(2 n k )

Bemerkung 9

P =

'praktishberehenbar'?LässtsiheinGraph

G

knotenfreiim

R 3

zeihnen?Dieses

Problemist in

P

aber kein Algorithmuskonntebisher konkret angegeben werden.

Satz 6 (Bekannte Beziehungen)

P ⊆ NP

( ∗ ( ∗

E ⊆ NE

( ∗ ( ∗

EXP ⊆ NEXP

*folgt aus Zeithierarhiesätzen

Die Ehtheit dieser Inklusionsbeziehungen wird vermutet, konnte aber niht gezeigt werden.

Satz 7

NP ⊆ EXP

Beweis Durh systematishe Explorationaller Pfadeim Berehnungsbaum.

Satz 8

P = NP ⇒ E = NE

(also

E 6= NE ⇒ P 6= NP)

(9)

Beweis (durh padding) Sei

P = NP

und

L ∈ NE

Deniere

L

über

Σ ⊎ {#}

L = {w #...#

| {z }

2 | w | −|w|

| w ∈ L}

Wir behaupten:

L

istin NP:

Eingabe:

w

Prüfe ob

w = w #...#

| {z }

2 | w | −|w|

Prüfeob

w ∈ L

/*

w

aus Zerlegungvon

w

*/mitgegebenemnihtdeterministishem Algorithmus.

Zeitbedarfdieses Algorithmus:

O(|w |)

fürZerlegung

NB:

|w| = O(log |w |)

Zeitbedarffür Test ob

w ∈ L

O(2 k·|w| ) = O(2 k·O(log(w )) ) = O(|w | k·O(1) )

/* polynomiell */

alsoGesamtlaufzeitdes(nihtdeterministishen!)Algorithmus:

O(|w | O(1) )

alsoin

NP

.

Nah Annahmegibt es einpolynomiellesdeterministishes Verfahren für

L

.Wir

konstruieren darausein Verfahren in

E

wie folgt:

EINGABE

w ∈ Σ

Konstruiere

w = w#...#

Prüfe mitdeterministishpolynomiellemVerfahren ob

w ∈ L

Fallsja: Akzeptiere

sonst: Verwirf

Laufzeit dieses Verfahrens:

Konstruktion von

w

:

O(2 O(|w|) )

Test ob

w ∈ L

:

O(|w | k ) k

fest

= O((2 |w| ) k ) = O((2 k·|w| ))

;

Algorithmusläuftin Zeit

O(2 O(|w|) )

also

L ∈ E

wzbw.

Korollar 9

E 6= NE ⇒ P 6= NP

Slogan Gleihheit von Komplexitätsklassen vererbt sih nah oben; Ungleihheit

vererbt sih nah unten.

(10)

2 Die Klassen P und NP

2.1 NP-Vollständigkeit

Satz 10 (NP als Verikation in polynomieller Zeit)

Wenn

L ∈ NP

dann gibt es

R L ∈ P

und

k ∈ N

so dass

x ∈ L ⇔

es existiert

w

mit

(x, w) ∈ R L

und

|w| ≤ |x| k

Beweis Deute

w

als 'Beweis' für

x ∈ L

. Aussage des Satzes ist, dass für Sprahen

in

NP

immer ein Beweisbegri existiert, sodass Korrektheit eines Beweises in poly- nomiellerZeit geprüft werden kann.

Sei

L ∈ NP

und

NTIME T (x) ≤ |x| k

wobei

T

eine Nihtdeterministishe Turingma- shine für

L

ist.

ObdA habeder Berehnungsbaum von

T

auf

x

Verzweigungsgrad 2.

R L = {(x, w) | w ∈ {0, 1}

, der durh

w

ausgewiesene Zweig im Berehnungsbaum von

T

auf

x

akzeptiert

}

Klar ist

R L ∈ P

(nihtdet. Entsheidung werden ja gemäÿ

w

vorgenommen) Falls

x ∈ L

so wähle einen akzeptierenden Pfad der Länge

≤ |x| k

. Setze für

w

das

entsprehende Wortaus

0, 1

. Esgilt

(x, w) ∈ R L

und

|w| ≤ |x| k

.

Falls

(x, w) ∈ R L

und

|w| ≤ |x| k

so gilt

x ∈ L

nah Denition von

R L

Denition 17 (NP-shwer)

Eine Sprahe

L ⊆ Σ

istNP-shwer, fallsfürjedeSprahe

L ∈ NP

eine inpolynomi-

eller Zeit berehenbare Funktion

f : Σ → Σ

existiert,sodass

x ∈ L ⇔ f(x) ∈ L

.

Denition 18 (Transduer)

Ein Transduer (Übersetzer) ist eine deterministishe TM mit zwei ausgezeihneten

Bändern (ein Eingabe- und einAusgabeband). EinTransduer berehnet eine Funk-

tion

f : Σ → Σ

, wenn die Mashine T für alle Eingaben

x ∈ Σ

hält und dann

auf dem Ausgabeband das Wort

f(x)

steht. Man sagt Tberehnet f. DTIME wird

analog auh für Transduer deniert.

Denition 19 (FP formal)

f ∈ FP

gdw.es einen Transduer T, der f berehnet, und esexistiert einPolynom

p

,

so dass

TIME(T (x)) ≤ p(|x|)

.

Beispiel 3

f (x) = x 2

(x eine Zahl inBinärnotation)

f (x) =

Tabelle der kürzesten Wege von einem Startknoten s in einem gerihteten Graphen G, wobei Gund s durh x odiertsind.

f (x) = 2 x

ist niht in

FP

N.B. Falls

f ∈ FP

dann gilt

|f (x)| ≤ p(|x|)

fürein festes Polynom p.

(11)

Denition 20 (SAT Problem)

Gegeben: aussagenlogishe Formel q

Gefragt: Ist q erfüllbar (gibt esBelegung der Variablen,dieq wahrmaht)

Denition 21 (3-COL)

Die Sprahe 3-COL besteht aus allen ungerihtetenGraphen

G = (V, E)

diemtidrei

Farben gefärbt werden können, d.h. esexistiert

c : V → {r, g, b}

sodass:

{v, v } ∈ E ⇒ c(v) 6= c(v )

Satz 11

Es gibt eine Funktion

f ∈ F P

sodass

x ∈

3-COL

f(x)

SAT

Beweis Sei

x ∈ (V, E)

Graph

f (x)

ist wie folgtdeniert:

Für jeden Knoten

v ∈ V

, für jede Farbe

c ∈ {r, g, b}

eine Variable

x v,c

Das maht

insgesamt

3 · |v |

Variablen

Für jeden Knoten v dieFormel

x v,r vx v,b vx v,g

/*|v| Formeln

FürjedenKnotenvdieFormel

¬(x v,r ∧x v,b )∧¬(x v,r x v,g )∧¬(x v,b ∧x v,g )

/*|V|Formeln

/*

Für

{v, v } ∈ E : ¬(x v,r ∧ x v ,r ) ∧ ¬(x v,g ∧ x v ,g ) ∧ ¬(x v,b ∧ x v ,b )

f(x) besteht aus konjunktionall dieser Formeln(

2 · |V | + |E|

Stük )

f (x)

erfülbar

⇔x ∈

3-Col

Man shreibt3-Col

≤ P

SAT

Satz 12 (Satz von Cook-Levin)

SATist NP-vollständig D.h. für jede Sprahe

L ∈ NP

gibt es eine Übersetzungsfunk- tion

f ∈ F P

welhe Instanzen von L auf aussagenlogishe Formeln abbildet, sodass

x ∈ L ⇔ f(x)

erfüllbar

Beweis (Skizze)

Sei

L ∈

NP und T eine NTM mitL = L(T) und

NTIME(T (x)) ≤ p(|x|)

für ein

Polynom p

Wirmüssen eine Funktion f konstruieren, sodass

x ∈ L ⇔ f (x)erf llbar

. Erinnerung:

x ∈ L ⇔

inBerehnungsbaumvonTaufxeinakzeptierenderPfadexistier,bzw,wenn ausgehendvonder Startkonguration

S 0

vonTaufx eineFolge vonKongurationen

S 0 → S 1 . . . → S n

existiert, sodass

S n

akzeptierend ist und

′ →

Übergangsrelation vonT ist

ObdA :

n = p(|x|)

und That nurein Band

f(x) ist jetztwie folgt deniert:

Variablen:

Für alle

t ≤ p(|x|), q ∈ Q

eine Variable

zust q,t

/* T ist zur Zeit t im Zustand q,

O(p(|x|)) Stük */

Für alle

i ≤ p(|x|), t ≤ p(|x|), a ∈ Σ

eine Variable

sym a,i,t

/* zur Zeit t steht an

Position i das Symbola,

O(p(|x|) 2 )

Stük */

Für alle

z, t ≤ p(|x|)

eine Variable

kopf i,t

/* Zur Zeit t istder Kopfan Position i */

Formeln welhe ausdrüken, dass die Belegung dieser Variablen einer legalen akzep-

(12)

Z.B.

V

i≤p(|x|) sym x i ,i,0

Wobei

x = x 0 . . . x m−1

V

i≥|x| sym ,i,0

V

i≥p(|x|,a6=a ,t≤p(|x|) ¬(sym a,i,t

V sym a ,i,t )

Für jeden Zustand q und Symbol aZeitpunkt t,Position idieFormel

zust q,t ∧ kopf i,t ∧ symbol a,i,t ⇒ ∨ (q,a,q ,a ,d)∈I zust q ,t+1 ∧ kopf i+d,t+1 ∧ sym a ,i,t+1

. . .

Idee: DieVariablenvon

f (x)

beshreiben FolgenvonglobalenKongurationen vonT der Länge und Gröÿe

p(|x|)

Die Formeln von

f(x)

beshreiben, dass solh eine Folge akzeptierend ist. Die Kon- junktion dieser Formelnistdann erfüllbar,genau dann,wenn eineakzeptierende Be-

rehnung existiert.

Weite NP-vollständige Probleme:

3-COL, TSP, Hamiltonshe Kreise,

. . .

Denition 22 (NP-Shwer)

EinProblem/Sprahe List NP-shwer wenn

L ≤ P L

für alle

L ∈ NP

Denition 23 (NP-vollständig)

Eine Sprahe L istNP-vollständig,wenn

L ∈ NP

und L NP shwer

Bemerkung 10

KönntemaneinNP-vollständiges ProbleminpolynomiellerZeitlösen,sowäre NP=

P

Levin hat einen Algorithmus angegeben, der zu gegebener erfüllbarer Formel in po-

lynomiellerZeiteine erfüllendeBelegungndet,vorausgesetzt, dass

P = NP

(Levin-

searh).

2.2 Satz von Ladner

Satz 13 (Satz von Ladner)

Es gibt eine Sprahe

L ∈ NP

die niht NP-vollständig ist und trotzdem niht in P liegt.

Das natürlih unter der Voraussetzung

P 6= NP

.

Beweis Beginne mitNP-vollständiger Sprahe

L 0

z.B

L 0 =

Sat wähle

w 0 ∈ / L 0

Ansatz:

L = {x ∈ L 0 | |x| ∈ G}

für noh zu bestimmendes

G

.

f (x) =

( x

falls

|x| ∈ g w 0

falls |x|

∈ / G

Es gilt

x ∈ L ↔ f(x) ∈ L 0

Ziel:

1. Wähle

G

so, dass

f ∈ FP

, dazu muss

|x| ∈ G

? in polynomieller Zeit ent- sheidbar sein. Dann ist zumindestens

L ∈ NP

, da

L ≤ P L 0

vermöge f und

L 0

(13)

2. Wähle G so dass

L 6=

i-te Sprahe in

und auÿerdem

L 6=

i-te Sprahe die

NP-vollständigist.Dies für alle

i ≥ 0

Sei

T 1 , T 2 , T 3 . . .

eine Aufzählung von Turingmashinen,so, dass

P = {L(T i ) | i ≥ 0}

Auÿerdem soll

i 7→ T i

berehenbar sein.

Idee:

Gegeben:

Deodiere i alsTupel

(T, p)

wobei Teine TM istund pPolynom

bei falshem Format setze

T i = 0

/* Default Mashine */ Setze

T i :=

Die Mashine,

die auf Eingabe

x

die Berehnung von

T (x)

für

p(|x|)

Shritte simuliert und akzep-

tiert gdw. dieSimulationakzeptiert hat.'

Sei

T 1 , T 2 , . . .

eine Aufzählung von Turingmashinen, so dass

NPC = {L|∃i : T i

ent-

sheidet

L

}

Idee: gegeben i:

Deodiere i alsTupel (T,f)

T nihtdet. TMpolynomiellerLaufzeit

f ist FP-Transduer

Konstruiere aus

T, f

folgendedeterministishe TM

T i

BeiEingabe

x

prüfe zunähst, ob

y ∈

SAT

⇐⇒ f(y) ∈ L(T )

für alle

y

mit

|y| ≤ |x|

.

(durh Brute-Fore Simulation aller Berehnungspfade). Falls Ja: Akzeptiere, gdw.

x ∈ L(T )

FallsNein: Akzeptiere,gdw.

x ∈

SAT

Ist

i = (T, f )

und

L(T )

NP-vollständig vermöge der Reduktion

f

, so gilt

L(T i ) = L(T )

. Anderenfalls untersheidet sih

L(T i )

nur an endlih vielen Punkten von SAT

und ist somitimmerhinNP-vollständig.

Sei nunmehr

L i = L(T i )

und

L i = L(T i )

. Es ist

P = {L i | i ≥ 0}

und

NPC = {L i | i ≥ 0}

.Hier ist

NPC

dieMenge der NP-vollständigen Sprahen.

Ziel: Konstruiere

G ⊆ N

so,dass

∀iL 6= L i

und

L 6= L i

NB A,B Mengen:

A 6= B

falls

A∆B 6= ∅

wobei

A∆B = A \ B ∪ B \ A

Für jedes

n, i ∈ N

gibt eseinWort x mit

|x| ≥ n

sodass

x ∈ L∆L i

NB

x

bezeugt, dass

L 6= L i

Nah Voraussetzung

P 6= NP

muss

L∆L i 6= ∅

sein

(14)

Mehr noh: für jedes

n

gibt es

y ∈ L∆L i

mit

|y| ≥ n

, denn sonst würde sih

L

nur anendlihvielen Punkten von

L i

untersheiden und wäre damit selbst in

P

.

Für jedes

i, n ∈ N

gibt esauÿerdem

y

mit

|y| ≥ n

und

y ∈ L i

Sonst wäre nämlih

L i

endlihund deshalb in

P

. Wegen der Voraussetzung

P 6= NP

kann eine NP-vollständige Sprahe wie

L i

niht in

P

sein

Sei nun

r

zeitkonstruierbare funktion

r : N → N

, sodass für alle

n ∈ N

sodass für

jedes

i ≤ n

ein Wörter

x ∈ L∆L i

und

y ∈ L i

mitmit

n ≤ |x|, |y| ≤ r(n)

existieren.

Idee:

Gegeben n:

Simuliere alle

T i , T i

mit

i ≤ n

auf allen Eingaben der Längen ,

n, n + 1, n + 2, . . .

solangebispassendeWörter

x

und

y

gefundensind.NahvorhergehenderDiskussion gibt es solhe.

Ausgabe:Rehenzeit dieses ganzenProzesses.

Dahinter stekt dieallgemeine Beobahtung:

Zu jeder berehenbaren Funktion f gibt es eine zeitkonstruierbare Funktion g mit

g(n) ≥ f (n)

Setze nun:

r 0 = 0

r 1 = r(0) + 1 r 2 = r(r 1 ) + 1

.

.

.

r n+ = r(r n ) + 1

G = {n|r i ≥ n < r i + 1

wobeii gerade

}

Erinnerung

L = {x ∈ L||x| ∈ G}

Behauptung:

L ∈ / NPC

Wäre

L = L i

für eini,dann wähle nungerade, sodass

r n ≥ i

Im Bereih

r n . . . r(r n )

ndet sih ein

y ∈ L i

Nah Denition von G ist aber

y / ∈ L

weil

|y| ∈ / G

Behauptung:

L ∈ /

P:

Wäre

L = L i

füreinidannwählengerade,sodass

r n ≥ i

.ImBereih

r n , . . . , r(r n ) = r n+1 − 1

ndet sih ein

x ∈ L i ∆L

. Auf diesem Bereih stimmen

L

und

L

überein.

Also ist

x ∈ L i ∆L

Es folgt

L i 6= L

Es bleibt zu zeigen,dass:

{x|x ∈ G} ∈ P

Gegeben: x

Berehne sukzessive

r 0 , r 1 , r 2 , . . .

bisn gefunden istmit

r n ≥ |x| < r n+1

akzeptiere

n gerade

Die Berehnung eines

r i

verbrauht Zeit

O(r i )

alsonahdem alle

r i ≤ |x|

sind:

O(|x|)

(15)

Auÿerdem kann n(sehr grob) durh|x| abgeshätzt werden

Gesamtlaufzeit

O(|x| 2 )

Bis heute wurden keine konkreten Sprahen eht zwishen

P

und

NPC

gefunden.

Immerhin:

Deniert man

co − NP := {L|L ∈ NP}

Dann ist

NP = co − NP

einoenes Problem und auh ob:

P = NP ∩co − NP

Falls

NP 6= co − NP

,so istkeinProblem in

co − NP

auh NP-vollständig.

2.3 Orakelmashinen

Denition 24 (Orakelmashine)

Eine (niht)deterministishe Orakelturingmashine ist eine (niht)deterministishe

TM Tmitdrei ausgezeihneten Zuständen

q Q , q Y , q N

Falls

C ⊆ Σ

,sodeniert mandieBerehnungvonTaufEingabe

x ∈ Σ

(

T C (x)

)wie

folgt:

T C (x)

erfolgtwie 'normal'mit der folgendenAusnahme:

gelangtdieBerehnungindenZustand

q Q

(query)sowirddieBerehnung imZustand

q Y

fortgesetzt falls 'Bandinhalt'(des ersten Bandes)

∈ C

und in

q N

fortgesetzt, falls'Bandinhalt'

∈ / C L(T C ) = {x|T C (x)

akzeptiert }

bzw.

L(T C ) = {x

| es gibt eine akzeptierendeBerehnungsfolge im Baum

T C (x)

}

Denition 25

Sei

C ⊆ Σ

Wirdenieren:

P C = {L |

es existiertdet. Orakel TM

T

,

L = L C (T )

und Polynom

p

:

dieLänge der Berehnung

T C (x)

istdurh

p(|x|)

beshränkt.

}

Bemerkung 11

Falls

L ∈ P

, z.B. L= Addition,Mathing,

. . .

so ist

P L = P

Begründung:

SimuliereBerehnung

T L (x)

durh eigenständigeBeantwortungder Orakelanfragen.

Bemerkung 12

Lautzeitvon Tbeshränkt durh pund

L ∈ TIME(q)

für Polynom q

Laufzeit der Simulationbeshränkt durh

p(n) · q( p(n)

|{z}

ShrankeandieLängederAnfrage

)

Bemerkung 13

NP ⊆ P SAT

istklar. Die Frage,ob

NP ⊇ P SAT

ist einoenes Problem.

Setzt man

T AUT = {φ | φ

allgemeingültig

}

,so folgtTAUT

∈ P SAT

mitfolgender

(16)

Eingabe:q /*q aussagenlogishe Formel */

Frage ob

¬q ∈ SAT

/* Shreibe

¬q

aufs erste Bandgege in

q Q

*/

Fallsja: REJECT

Fallsnein: ACCEPT

Aber

T AUT ∈ NP

isteinbekanntes oenes Problem.

Denition 26

Sei

C ⊆ Σ

Wirdenieren:

NP C = {L |

esexistiert nihtdet. Orakel TM

T

,

L = L C (T )

und Polynom

p

:

dieLaufzeit der Berehnung

T C (x)

ist durh

p(|x|)

beshränkt.

}

Bemerkung 14

P C ⊆ NP C

Bemerkung 15

Die Sprahe

{(ϕ, U ) | ϕ

auss.log. Formel,

U

Teilmenge der Variablen, es existiert

Belegung

η

der Variablen in

U

, sodass

ϕ[η]

allgemeingültigist

}

ist in

NP SAT

. (Rate

Belegung der Variablen in

U

, entsheide mit SAT-Orakel, ob entstehende Formel allgemeingültigist.)

2.4 Relativierungen von P und NP

Es isteinoenes Problem,obdiese Sprahe in

P SAT

ist.

Satz 14

Es gibt eine Sprahe

C ⊆ Σ

, sodass

P C = NP C

Bemerkung 16

Es istunbekannt ob

P SAT = NP SAT

Beweis

C = {(T, x, 0 k ) | T

istdet. TM und

T (x)

akzeptiertund verbrauht höhs-

tens

k

Bandpositionen(zusätzlihzur Eingabe)}

NB: Cistentsheidbar. Esgibt nämlihnur

2 poly(k,|x|)

vielemögliheglobaleKongu-

rationen. Hat die Berehnung nah dieser Zeit niht gehalten, so hält sieüberhaupt

niht mehr und kann abgebrohen werden.

NB: Es istoen ob

C ∈ P P C ⊆ NP C

istklar.

Es bleibt zu zeigen

NP C ⊆ P C

Sei

T

nihtdet. Orakel TM zeitbeshränkt durh Polynom

p

. Wir konstruieren eine deterministishe polynomialzeitbeshränkteOrakel TM

T

mit

L(T C ) = L(T ′C )

und

T

tätigtnureine einzige Orakelanfrageganz am Ende.

(17)

T

wie folgt:

EINGABE: x

Baue eine det. TM

T 0

, die

T C (x)

ohne Benutzung des Orakelssimuliert.Dies durh

systematishe ExplorationallerBerehnungspfadeund Beantwortungaller Orakelan-

fragen durhobenstehende Entsheidunsprozedur

Man kann diese Mashine so konstruieren, dass sie nur

p (|x|)

Bandzellen anfordert

für einPolynom

p

Frage nun, ob

(T 0 , x, 0 p (|x|) ) ∈ C

Fallsja, akzeptiere

Fallsnein verwerfe.

NB: Laufzeit dieser Mashine ist polynomiell, denn sie setzt sih zusammen aus fol-

gendem: Erzeugung des Codes für

T 0

, Erzeugung von

0 p (|x|)

und stellen der Anfrage

an

C

.

Bemerkung 17

Eine Beweismethode wie z.B. Diagonalisierung, diein Gegenwart vonOrakeln funk-

tioniertkann niht Pvon NP trennen.

Satz 15

Es existiert eine Sprahe

C ⊆ Σ

sodass

P C 6= NP C

Bemerkung 18 (Vorbemerkung zum Beweis)

Ist T eine OTM,

C ⊆ Σ

und wird die Anfrage y in der Berehnung

T C (x)

niht

gestellt, danngilt:

T C (x)

akzeptiert

⇔T C\{y} (x)

akzeptiert

⇔T C∪{y} (x)

akzeptiert

Beweis Sei

T 0 , T 1 , . . .

eineeektiveAufzählungvonpolynomialzeitbeshränktenOTM sodass gilt:

1.

P C = {L C (T i ) | i ≥ 0}

für alleC

2. Laufzeit von

T i C (x) ≤ |x| i + i

Übung: Solhe Aufzählung existiert

Wähle

B ⊆ Σ

innohzu bestimmender,geeigneter Weise C ={

0 n

| esexistiert

x ∈ B

mit|x| = n}

Es gilt

C ∈ NP B

ganz egal was

B

amEnde ist:

Gegeben

0 n

, rate

x ∈ Σ

mit

|x| = n

.Frage dann das Orakel,ob

x ∈ B

Wir werden esso einrihten, dass

C 6= L B (T i )

für jedes i und somit

C / ∈ P B B 0 = ∅, n 0 = 0

Seien

B i

und

n i

shon deniert. Wir legen

B i+1 , n i+1

wie folgtfest:

/*Invariante:

B i

enthält kein Wortder Länge

≥ n i

*/

/*Invariante:

2 n i > n i i + i − 1

*/

Rehne

T i B i (0 n i )

/* Dauert

n i i + i

Shritte */

Fallsakzeptiert wird:

B i+1 := B i

, sodass

0 n i ∈ / C

Fallszurükgewiesen wird:

Wähle

w

mit

|w| = n i

und so dass

w

in obigerBerehnung

niht gefragt wurde. Soein

w

muss eswegen der Wahl von

n i

geben.

Setze

B i+1 := B ∪ {w}

(18)

Wähle

n i+1

sodass

• 2 n i+1 > n i+1 i+1 + i + 1

• n i+1 > n i i + i − 1

Setze nun:

B = S

i≥0 B i

. Mit dieserWahlvon

B

gilt:

C / ∈ P B

. Denn wäre

C = L(T i B )

für ein

i ≥ 0

, dann betrahten wir die Berehnung

T i B (0 n i )

.Aufgrund derKonstruktion kommthierbeidasselbeErgebnisherauswiebei der Berehnung

T i B i (0 n I )

.Es giltaber

0 n i ∈ L(T i B i ) ⇔ 0 n i ∈ / C

Also ist

C 6= L(T i B )

Halbkonkrete Konstruktion der ersten 3Shritte (

Σ = {0, 1}

):

Betrahte:

T 0 B 0 (ǫ)

/*

B 0 = 0, n 0 = 0

*/

Fallsakzeptiert:

B 1 = B 0 = ∅

hier

ǫ / ∈ C

(wir nehmen an, dass dieser Fall eintritt)

Fallszurükgewiesen wird:

B 1 = {ǫ}

hier

ǫ ∈ C n 1

sodass

2 n 1 > n 1 1 + 1

und

n 0 0 + 0

n 1 = 2

Betrahte

T 1 B 1 (00)

Rehenzeit

2 1 + 1 = 3

Shritte

Annahme. Die Berehnung weise zurük und das Wort11werde nihtangefragt.

B 2 = {11}

n 2

so dss

2 n 2 > n 2 2 + 2

und

n 2 > n 1 1 + 1 = 3

z.b:

n 2 = 5

Betrahte

T 2 B 2 (00000)

Rehenzeit: 27 Shritte

Annahme: Die Berehnung weise zurük und frage das Wort

11011

niht an. Dann

setzen wir

B 3 = {11, 11011}

n 3

sodass

2 n 3 > n 3 3 + 3

und

n 3 > 27

z.B.:

n 3 = 28

2.5 Die Polynomielle Hierarhie

NP SAT

istmehr als

NP

.Es gilt sogar

TAUT ∈ P SAT ⊆ NP SAT

aber

TAUT

isto-

NP

vollständig.

DieKomplexitätsklasse

NP SAT

wirdmit

Σ P 2

bezeihnet,dieKlasse

P SAT

wirdmit

P 2

bezeihnet.

Denition 27 (polynomielle Hierarhie)

Σ P 0 = ∆ P 0 = Π P 0 := P

/* Polynomialzeit*/

Σ P i+1 = NP Σ P i = S

C∈Σ P i NP C

P i+1 = P Σ P i Π P i+1 = co-NP Σ P i

Bemerkung 19

Es gilt:

NP = Σ P 1

(19)

co-NP = Π P 1 P SAT = P NP = ∆ P 2 NP SAT = Σ P 2

Oensihtlihgelten folgende Inklusionsbezeihnungen alsHasse Diagramm:

.

.

.

P 3

/

\

Π P 2 Σ P 2

\

/

P 2

/

\

Π P 1 Σ P 1

\

/

P 1

/

\

Π P 0 Σ P 0

\

/

P 0

Bemerkung 20 (Notation)

Für

n ∈ N

shreiben wir

∃ n y.ϕ(y)

für

∃y ∈ Σ .|y| ≤ n ∧ ϕ(y)

∀ n y.ϕ(y)

für

∀y ∈ Σ .|y| ≤ n ⇒ ϕ(y)

Satz 16

L ∈ Σ P i

genau dann wenneine Sprahe

A ∈ P

und ein Polynom

p

existiert,sodass:

x ∈ L ⇔ ∃ p(|x|) y 1 ∀ p(|x|) y 2 ∃ p(|x|) y 3 . . . ∃/∀ p(|x|) y i (x, y 1 , y 2 , . . . , y i ) ∈ A

Analog gilt

L ∈ Π P i

es gibt Sprahe

A ∈ P

und Polynom

p

mit

x ∈ L ⇔ ∀ p(|x|) y 1 ∃ p(|x|) y 2 . . . (x, y 1 , . . . , y i ) ∈ A

Beweis durh Induktionüber

i

. Wirführen nurdieFälle

i = 0, 1, 2

durh.

i = 0

Klar

i = 1

Aussage des Satzes:

L ∈ Σ P 1

, d.h.

L ∈ NP ⇔

eine Sprahe

A ∈ P

und ein Polynom

p

existiert sodass:

x ∈ L ⇔ ∃y 1 : |y 1 | ≤ p(|x|) ∧ (x, y 1 ) ∈ A

Dies wurdebereits bewiesen.

i = 2

:

Aussage des Satzes:

L ∈ Σ P 2

, d.h.

NP SAT

eine Sprahe

A ∈ P

und ein Polynom

p

existieren mit:

L = {x | ∃ p(|x|) y 1 .∀ p(|x|) y 2 .(x, y 1 , y 2 ) ∈ A

}

:

Sei

L = {x | ∃ p(|x|) y 1 .∀ p(|x|) y 2 .(x, y 1 , y 2 ) ∈ A

} fürein

A ∈ P

und Polynom p

Wir sollenzeigen

L ∈ NP NP

Es gilt

x ∈ L ⇔

(20)

p(|x|) y 1 .¬ ∃ p(|x|) y 2 . (x, y 1 , y 2 ) ∈ / A

| {z }

∈P

| {z }

=:B(x,y 1 )∈NP

Oensihtlih:

B ∈ NP

und

L ∈ NP B ⊆ NP NP = Σ P 2

:

Sei eine Orakelmashine T vorgelegt sodass

L = L(T SAT )

und sei

T

nihtdet und

polynomiell zeitbeshränkt. Wir müssen eine Sprahe

A ∈ P

nden sodass

L = {x | ∃ p(|x|) y 1 .∀ p(|x|) y 2 .(x, y 1 , y 2 ) ∈ A

}

Es gilt

x ∈ L ⇔

esexistiert eine Folge von Kongurationen

y

von

T

auf Eingabe

x

,

sodass,falls

z = z 1 z 2 . . . z k

diein

y

getätigtenundpositivbeantwortetenAnfragenan das

SAT

Orakelbezeihnetundfalls

w = w 1 w 2 . . . w k

diein

y 1

getätigtenundnegativ

beantworteten Anfragen andas

SAT

Orakelbezeihnet, folgendes gilt:

alleRehenshritte in

y 1

erfolgen gemäÿ T

alle

z 1 . . . z k ∈ SAT

/*das ist von der Form

∃y 1 . . .

*/

alle

w 1 . . . w l ∈ / SAT

/* das ist von der Form

∀y 2 . . .

*/

Die gewünshte Charakterisierung lässt sih darausablesen.

Beahte: zwei aufeinanderfolgende polynomiell beshränkte Existenzquantoren kön-

nen durheinen einzigenersetzt werden.

Abstrakte Notation

• ϕ, ψ

bezeihnen Formeln(Boolesh)

• |ϕ|, |ψ |

bezeihnet Länge der Formel

• η, η

bezeihnet Belegung (odiert)

• η | = ϕ

: Belegung

η

erfülltFormel

ϕ

Klar:

{(η, ϕ) | η | = ϕ} ∈ P

SAT = {ϕ | ∃η : η | = ϕ} = {ϕ| ∃η.|η| ≤ |ϕ| ∧ η | = ϕ}

• C, C

bezeihne Shaltkreise

|C|, |C |

deren Länge bzgl fester sinnvoller Codierung

• C(ϕ)

bezeihne dieAnwendung vonC auf(odierung von)

ϕ

Klar:

{(C, ϕ) | C(ϕ) = true} ∈ P

Betrahte:

Test-SAT =

{(C, 1 n ) | C

hat

n

Eingabedrähte und für alle Formeln

ϕ

der Länge

n

gilt:

C(ϕ) = true ⇔ ϕ ∈ SAT}

Oensihtlihgilt

Test-SAT ∈ Π P 2

, denn

(C, 1 n ) ∈ Test-SAT ⇔

∀ϕ : |ϕ| ≤ n : (C(ϕ) = true ∨∀η.|η| ≤ n ⇒ η 6| = ϕ) ∧ (C(ϕ) = false ∨∃η.|η| ≤ n ⇒ η | = ϕ)

⇔ ∀ n ϕ∀ n η∃ n η (C(ϕ) = true ∨η 6| = ϕ) ∧ (C(ϕ) = false ∨η | = ϕ)

(21)

Lemma 1 (Selbstreduzierbarkeit von SAT)

TEST-SAT ∈ Π P 1

Beweis Betrahte folgendenoensihtlih polynomiellen)Algorithmus:

Eingabe:

(C, ϕ, n)

x 1 , . . . , x n

dieVariablenvon

ϕ

IF

C(ϕ) = false

RETURN'Angeblihunerfüllbar'

ELSE /*

C(ϕ) = true

*/wähle

b 1 ∈ {true, false}

sodass

C(ϕ[x 1 := b 1 ] = true

falls niht existent RETURN 'Widerspruh!'

.

.

.

wähle

b k ∈ {true, false}

sodass

C(ϕ[x 1 := b 1 , . . . , x k := b k ]) = true

falls niht existent RETURN 'Widerspruh!'

IF

[x 1 7→ b 1 , . . . , x k 7→ b k ] | = ϕ

return 'erfüllbar' ELSE RETURN 'Widerspruh!'

DieserAlgorithmuserfülltfolgende Spezikationen:

• A(C, ϕ, n) =

'Angeblih unerfüllbar'

⇔C(ϕ) = false

• A(C, ϕ, n) =

'Widerspruh!'

⇒∃ n ψ.¬(C(ψ) = true ⇔ ψ ∈

SAT

}

• A(C, ϕ, n)

= 'erfüllbar'

⇒ ϕ ∈ SAT

Daraus folgt:

(C, 1 n ) ∈ TEST-SAT ⇔ ∀ n ϕ

(C(ϕ) = false ∧∀ n η.η 6| = ϕ) ∨ (C(ϕ) = true ∧A(C, ϕ, n) =

erfüllbar

).

Das aber istnah Satz 16in

Π P 1

.

Satz 17 (Karp-Lipton)

Falls ein Polynom p existiert derart dass

∀n.∃C.|C| ≤ p(n). TEST-SAT(C, 1 n )

(kurz

:

SAT ∈ P / poly

) dann folgt:

Σ P 2 = Π P 2

Beweis Wir zeigenzunähst:

Π P 2 ⊆ Σ P 2

:

Seialso

L ∈ Π P 2

und

A ∈ P

und

r

Polynom sodass:

x ∈ L ⇔ ∀ r(|x|) y∃ r(|x|) z(x, y, z) ∈ A

Da

SAT NP

-vollständigist,gibt es eine Funktion

f ∈ FP

sodass:

x ∈ L ⇔ ∀ r(|x|) yf (x, y ) ∈ SAT

.Letzteresistaberäquivalentzu

∃ p(q(|x|)) C. TEST-SAT(C, 1 p(q(|x|)) )∧

C(f(x, y)) = true

Hier ist

q

so gewählt, dass

|y| ≤ r(|x|) = |f(x, y)| ≤ g(|x|)

Nahdem

TEST-SAT ∈ Π P 1

ist folgt

L ∈ Σ P 2

Für die umgekehrte Rihtung

Σ P 2 ⊆ Π P 2

argumentieren wir so: Falls

L ∈ Σ P 2

dann

ist

L ∈ Π P 2

alsonahdem vorher Gezeigten ist

L ∈ Σ P 2

und also

L ∈ Π P 2

Aus Satz 16 ergibt sih auhunmittelbar, dass wenn

Σ P 2 = Π P 2

, dann auh

Σ P i = Σ P 2

für alle

i ≥ 2

. Mansagt dann:diePH kollabiertaufdie zweite Stufe oder kürzer:

die PH kollabiert. Der Satz von Karp-Lipton besagt also, dass sofern die PH niht

kollabiert,eskeine polynomiellgroÿen Shaltkreise für

SAT

gibt.

(22)

3 Platzkomplexität

3.1 Grundlegende Denitionen

Denition 28

Bei platzbeshränkter Berehnung verwendet man Turingmashinen mit mindestens

zwei Bändern.Auf das erste Bandwird die Eingabe geshrieben.

Dieses Banddarf währendder Berehnung niht verwendet werden. Der Platzbedarf

SPACE(T (x))

der Berehnung einer solhen Mashine

T

auf Eingabe

x

ist deniert

alsdie Anzahl der Felder, dieauf den verbleibenden Bändernbenutzt werden.

Denition 29 (Platzkonstruierbare Funktion)

s : N → N

platzkonstruierbar,fallsTM existiert,diebeiEingabe

x

aufAusgabeband

1 s(|x|)

ausgibt und dabeiPlatz

O(s(|x|))

verbrauht.

Beispiel 4

n, n 2 , 2 n , log n, n log n

Denition 30

DSPACE(s(n)) = {L | ∃

DTM

T

mit

L = L(T )

und

SPACE(T (x)) = O(s(|x|))}

NSPACE(s(n)) = {L | ∃

NTM

T

mit

L = L(T )

und

SPACE(T (x)) = O(s(|x|))}

Bemerkung 21

Analog zur Zeitkomplexitätgibt esauhfür PlatzkomplexitätHierarhiesätze, diein

etwa besagen:

Mit mehrPlatz lässt sihauh beweisbar mehr berehnen.

Satz 18

DSPACE(s(n)) ⊆ DTIME(2 O(s(n)) ) NSPACE(s(n)) ⊆ DTIME(2 O(s(n)) )

Beweis Eine

s(n)

-platzbeshränkte TMhat

2 O(s(n))

vieleglobale Kongurationen.

In Zeit

DTIME(2 O(s(n)) )

kann dieTM somit simuliertwerden.

Bemerkung 22 (triviale Beobahtung)

DTIME(t(n)) ⊆ DSPACE(t(n))

Satz 19

DTIME(t(n)) ⊆ DSPACE( log(n) t(n) )

t(n)

log n

platzkonstruierbar

t(n)

zeitkonstruierbar

Beweis siehe z.B. Skriptum von Goldreih

Satz 20

Falls

L

durh

t(n)

zeitkonstruierbareEinbandturingmashineber.werdenkann. so ist

L ∈ DSPACE( p

t(n))

falls

t(n)

,

p

t(n)

zeitkonstruierbar sind und

t(n) ≥ n 2

.

(23)

Beweis siehe z.B. Bovet-Cresenzi

Denition 31 (wihtige Platzklassen)

LOGSPACE

(auh

L

) :

DSPACE(log n) NLOGSPACE

(auh

NL

) :

NSPACE(log n) PSPACE : S

k≥1 DSPACE(n k )

Bemerkung 23 (Typishe Probleme in

LOGSPACE

)

1. Enthällt einGraph eine bestimmteKonguration?

2. Ist einungerihteter Graph zykelfrei?

3. Addition

4. Multiplikation(shwieriger)

5. Ereihbarkeitim ungerihteten Graphen (shwierig, Satz vonReingold)

Bemerkung 24 (Typishes Probem in NLOGSPACE)

Ereihbarkeitin gerihteten Graphen

RateneinesPfades unterVergessenbisherbesuhter Knoten.MitführeneinesZählers

von

1 . . . n

Abbruh nah maximal

n

Shritten (

n

= Zahl der Knoten)

Bemerkung 25 (Typishe Probleme in PSPACE)

Verallgemeinerte Spiele

n × n

Shah,Dame et.

Quantizierte Booleshe Formeln

Bemerkung 26

(

2 O(log(n) = n O(1)

)

LOGSPACE ⊆ NLOGSPACE ⊆ P ⊆ PSPACE LOGSPACE ( PSPACE

Eine der drei Inklusionen muss eht sein, da

LOGSPACE

wegen des Platzhierarhie- satzes eht in

PSPACE

enthaltenist.

Vonkeiner der drei ist esderzeit bekannt.

3.2 Platzkomplexität und Nihtdeterminismus

Satz 21 (Satz von Savith)

s(n)

platzkonstruierbar

s(n) ≥ log n NSPACE(s(n)) ⊆ DSPACE(s(n) 2 )

Beweis Sei

L ∈ NSPACE(s(n))

und

T

einenihtdeterministisheTM.mit

L = L(T )

und

SPACE(T (x)) ≤ s(n) n = |x|

Sei

V

dieMengederglobalenKongurationenvonTderenBänderGröÿe

s(n)

haben.

Deren Zahl ist durh

2 c·s(n)

für ein

c

beshränkt.

Beahte: hier geht dieVoraussetzung

s(n) ≥ log(n)

ein, denn der Lesezeiger auf das

Eingabebandverbrauht Platz

log(n)

.

Setze

N := 2 c·s(n)

= Anzahl dieserglobalen Kongurationen.

(24)

Für

g, g ∈ V

shreibe

(g, g ) ∈ E

falls

g

möglihe Ein-Shritt Folgekonguration in

T

ist.

Shreibe

s

für Startkongurationvon

T

auf

x

Shreibe

t

fürdieakzeptierendeEndkonguration(oBdAkönnenwir annehmen,dass es genaueine solhe gibt)

Es giltdann

x ∈ L ⇔

imGraphen

(V, E)

einPfad von

s

nah

t

existiert

DeniererekursiveProzedur

reach(g, g , i)

sodass

reach(g, g , i) = true ⇔

in

(V, E)

ein

Pfad von

g

nah

g

der Länge

≤ 2 i

existiert.

reach : V × V × N → bool

Es giltdann:

x ∈ L ⇔ reach(s, t, i) = true

für

i = c · s(n) reach(g, g , i) =

if(i = 0)

if(g = g ∨ (g, g ) ∈ E) return true

else return false else :

for(g ′′ ∈ V )

if(reach(g, g ′′ , i − 1) ∧ reach(g ′′ , g , i − 1)) return : true return : false

EinStakframe istgröÿenmäÿig durh

O(s(n))

beshränkt.

Rekursionstiefe = Stakhöhe

≤ cs(n)

Die gesamte Prozedur lässt sih alsoin Platz

O(s(n) 2 )

auswerten.

Alternativ: funktionaleVersion vonreah:

reach(g, g , 0) =

( true if g = g or(g, g ) ∈ E false sonst

reach(g, g , i + 1) = checkfrom(g 0 , g, g , i) checkfrom(g ′′ , g, g , i) =

reach(g, g ′′ , i) ∧ reach(g ′′ , g , i) ∨ checkfrom(next(g ′′ ), g, g , i)

Falls

g ′′

nihtdieletzte

Konguration ist

checkfrom(g ′′ , g, g , i) = reach(g, g ′′ , i) ∧ reach(g ′′ , g , i)

sonst

Hierbeisei

g 0 , next(g 0 ), next(next(g o )), . . .

eine beliebigeAufzählung von V.

Auswerten von

reach(s, t, cs(n))

führt auf Ausdrüke der Gröÿe

O(s(n) 2 )

Korollar 22

Ereihbarkeit in Graphen

∈ DSPACE((log n) 2 ) NLOGSPACE ⊆ DSPACE((log n) 2 )

NSPACE(n O(1) )

| {z }

=NPSPACE

= PSPACE

Satz 23 (Immerman-Szelepsényi)

Sei

s(n) ≥ log n

platzkonstruierbar.

co-NSPACE(s(n) = NSPACE(s(n))

Hierbei gilt:

co-NSPACE(s(n)) = {L|L ∈ NSPACE(s(n))}

Referenzen

ÄHNLICHE DOKUMENTE

Gerade für taktische Ideen können ETFs eine gute Wahl sein: Während sich viele aktive Manager auf qualitativ hochwertige Unternehmen konzentrieren, werden sprunghafte

2 Siehe „Benchmarking der großen Großstädte – Monitoring 2018“, Seite 60, diese Kennzahl gibt wieder, wie viele Menschen je 1.000 Einwohner eine der existenzsichernden

Der Katalog wassergefährdender Stoffe erfaßt eine Reihe von Stoffen, die vornehmlich im Verkehr sind und ausschließlich durch die KBwS eingestuft worden sind.. Die Stoffe sind

Auf der anderen Seite konnten Personen, welche sogar mehr als 8h pro Tag gesessen hatten, – was bei einer Bürotätigkeit gut vorkommen kann –, ihre Sterblichkeit durch eine

wird vercuttert (große Cuttertafel, nur zwei Buchstaben).. Ziffer nach dem Punkt).. |Der Epochengliederung wird die Einteilung von

„aboptiert*', &#34;^l^ auf bie ^nseige einer 92Tutter llnterfuc^ung gegen bie SlÖiefe eingeleitet tourbe, ftellte cg fid^ l^eraug, ba% fic eine gro^e &#34;^in^a^^l. „i^inber ber

Das ist zwar ohne Marktmacht für die aggregierte Arbeitsnachfrage im Gleichgewicht auch so, wird aber von einzelnen Firmen nicht miteinbezogen, da jede Firma für sich genommen zu

Herr Haferkemper sagt, dass das Solarkataster eine gute erste Anregung für die Bürger/Innen ist, da jeder die Möglichkeit hat, seine Chancen bei der Nutzung von