• Keine Ergebnisse gefunden

Also gibt es eine Orakel-NTM T mit L = L(TA), T IM ET(x)≤p(|x|) f¨ur ein Polynom p

N/A
N/A
Protected

Academic year: 2021

Aktie "Also gibt es eine Orakel-NTM T mit L = L(TA), T IM ET(x)≤p(|x|) f¨ur ein Polynom p"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Theorem 5:

Es gibt A mit PA =N PA. Beweis:

SeiA:={(T, x,1k)|T DTM die x akzeptiert und dabei h¨ochstens k Bandzellen verbraucht}

Nat¨urlich ist PA ⊆N PA, per Definition. Bleibt also zu zeigen, daß N PA⊆PA.

Sei nun L eine beliebige Sprache in N PA. Also gibt es eine Orakel-NTM T mit L = L(TA), T IM ET(x)≤p(|x|) f¨ur ein Polynom p.

Wir bauen daraus jetzt eine DTMT0, dieL(TA) ohne Orakel erkennt und dabei h¨ochstens q(|x|) Bandzellen beschreibt. (q Polynom).

Damit ist L=PA mit Algorithmus:

input x

schreibe (T0, x,1q(|x|)) aufs Anfrageband akzeptiere falls inA, sonst verwirf Was aber soll T0 machen?

Wir lassen es den Berechnungsbaum von T durchsuchen (analog zu Theorem 5, Kapitel 1).

Jeder globale Zustand von T braucht h¨ochstens p(|x|) viel Platz auf dem Band. Die Simulation braucht also O(p(|x|))≤q(|x|) Bandzellen (w¨ahle q groß genug).

Und was ist mit den Orakel-Anfragen?

WennT die Anfrage (T, x,1k) stellt, dann ist insbesonderek ≤p(|x|). Also lassen wir T0 bei Eingabe x die Maschine T einfach simulieren. Da k ≤q(|x|), ist dies m¨oglich ohne mehr als q(|x|) Bandzellen zu verbrauchen.

⇒ T’ entscheidet obX ∈L.

Der Algorithmus von oben entscheidet L in polynomieller Zeit, also N PA ⊆PA. Theorem 6:

Es gibt ein Orakel B ⊆ {0,1} mit PB 6=N PB. Beweis:

F¨ur B ⊆ {0,1} definiere LB:={0n|∃x∈B :|x|=n}.

Offensichtlich ist LB ∈N PB, n¨amlich so:

input w

falls w6= 0 verwerfe sonst rate x mit |x|=|w|

akzeptiere, falls x∈B, sonst verwerfe BleibtB zu konstruieren mit LB ∈/PB.

Sei dazu T0, T1, T2... eine Aufz¨ahlung von Orakel-DTM’s derart, daß f¨ur jedes Orakel X ⊆ {0,1}gilt:

• PX ={T0X, T1X. . . TiX. . .}

• f¨ur alle x und k h¨alt TkX bei Eingabe x nach h¨ochstens |x|k+k Schritten 1

(2)

B wird induktiv definiert:

B :=S

i∈NBi, gemeinsam mit Schranken ni mit ∀x∈Bi :|x| ≤ni B0 :=∅, n0 := 0.

ni+1 := min{m|m > nii+i,2m > mi+1+ (i+ 1)}

Um Bi+1 zu definieren, betrachte die Berechnung von Ti+1 bei Eingabe 0ni+1. Falls sie akzeptiert, so setze Bi+1 =Bi.

Verwirft sie, dann w¨ahle ein yi+1 mit |yi+1| = ni+1 f¨ur das die Berechnung nicht das Orakel befragt und setze Bi+1 := Bi ∪ {yi+1}. So ein yi+1 existiert immer, da Ti+1Bi nur ni+1i+1+i+ 1 <2ni+1 Anfragen an das Orakel stellt.

Beobachtung:

F¨ur alle i ist die Berechnung von TiBi bei Eingabe 0ni die gleiche wie vonTiBi−1 bei 0ni. Denn yi ∈Bi\Bi−1 wird von TiBi bei 0ni nicht befragt

Worte in B\Bi haben eine L¨ange ≥ ni+1 > nii +i, also hat Ti nicht genug Zeit, diese anzufragen.

Zu zeigen: LB ∈/ PB.

Sei also LB ∈PB. Dann ist LB =L(TjB) f¨ur einj ∈N. BetracheTjB(0nj) =TjBj(0nj).

Falls akzeptiert, dann gibt es in B kein Wort der L¨ange nj, also 0nj ∈/ LB. Falls verwirft, dann istyj ∈B mit |yj|=nj, also 0nj ∈LB.

Also akzeptiert TjB nichtLB!! Widerspruch

⇒ Somit ist LB ∈/ PB.

Ahnlich lassen sich alle m¨¨ oglichen Verh¨altnisse zwischen P, NP und co-NP relativ zu einem Orakel herstellen, z.B.:

N PC =co−N PC, aber PC 6= (co)−N PC f¨ur ein C N PD 6=co−N PD, PD =N PD ∩co−N PD f¨ur ein D N PE 6=co−N PE, PE 6=N PE ∩co−N PE f¨ur ein E

2

Referenzen