Universit¨ at Siegen
Lehrstuhl Theoretische Informatik Markus Lohrey
Strukturelle Komplexit¨ atstheorie WS 2020/21
Ubungsblatt 10 ¨
Aufgabe 1. Sei F eine QBF. Wandeln Sie F in eine ¨ aquivalente QBF F
0um, die keine Quantoren mehr enth¨ alt. Wie groß ist |F
0| im Vergleich zu |F |?
L¨ osung. Wir verwenden Induktion, um F
0zu definieren.
• Im Fall, dass F = 0, F = 1 oder F = x
i, ist F = F
0.
• Im Fall, dass F = (¬G), ist F
0= (¬G
0).
• Im Fall, dass F = (G ∧ H ), ist F = (G
0∧ H
0).
• Im Fall, dass F = (G ∨ H ), ist F = (G
0∨ H
0).
• Im Fall, dass F = ∀x
iG, ist F
0= (G
0[x
i/0] ∧ G
0[x
i/1]).
• Im Fall, dass F = ∃x
iG, ist F
0= (G
0[x
i/0] ∨ G
0[x
i/1]).
Die Gr¨ oße von F
0liegt in O(2
|F|). F¨ ur jeden Quantor wird die Gr¨ oße un- gef¨ ahr verdoppelt. Exponentielle Gr¨ oße wird zum Beispiel bei der Familie von Formeln F
n= ∀x
1· · · ∀x
n(x
1∧ · · · ∧ x
n) erreicht.
Aufgabe 2. Das japanische Spiel Go-Moku wird auf einem 19x19 großen Spielbrett gespielt. Die Spieler platzieren abwechselnd Marker O bzw. X . Der Spieler, der als erstes f¨ unf Marker nebeneinander in einer Zeile, Spalte oder Diagonale hat, gewinnt.
Wir verallgemeinern dieses Spiel nun auf ein n × n großes Spielbrett f¨ ur n ∈ N . Wir schreiben im Folgenden n f¨ ur die Menge {0, . . . , n − 1}. Eine Konfiguration eines Spiels f¨ ur ein n × n großes Spielbrett besteht aus einer Abbildung von n × n auf {O , X , ⊥}, wobei ⊥ daf¨ ur steht, dass das Feld nicht besetzt ist, und aus einem Bit aus {1, 2}, das sagt, welcher Spieler gerade dran ist. Die Menge aller Konfigurationen bezeichnen wir mit C , also
C = [
n∈N
(n
2→ {O , X , ⊥}) × {1, 2}.
Sei C
1die Menge aller Konfigurationen dieses Spiels, in der Spieler 1 gerade dran ist, und Spieler 1 eine Gewinnstrategie hat. Das heißt, dass Spieler 1 immer die M¨ oglichkeit hat, zu gewinnen, egal welche Z¨ uge Spieler 2 macht.
Zeigen Sie, dass C
1in PSPACE liegt.
1
L¨ osung. Zun¨ achst sei v
n: (n
2→ {O , X , ⊥}) → {0, 1} f¨ ur n ∈ N die Funkti- on, welche uns sagt, ob Spieler 1 (aber nicht Spieler 2) in einer Konfiguration gewonnen hat. Diese l¨ asst sich leicht in polynomiellem Platz implementieren.
Sei n ∈ N und f : n
2→ {O , X , ⊥}. Wir f¨ uhren die Notation f [d /(x , y)] mit d ∈ {O , X } f¨ ur das Platzieren von d auf einem freien Feld (x , y) ∈ n
2ein.
Wir implementieren dann die Funktion
c
n: (n
2→ {O , X , ⊥}) × {1, 2} → {0, 1},
welche uns sagt, ob Spieler 1 eine Gewinnstrategie auf einer Konfiguration hat. Im Fall, dass Spieler 1 an der Reihe ist, sei
c
n(f , 1) = v
n(f ) ∨ _
(x,y)∈n2,f(x,y)=⊥
c
n(f [O /(x , y)], 2)
F¨ ur den Fall, dass Spieler 2 an der Reihe ist, sei c
n(f , 2) = v
n(f ) ∨ ^
(x,y)∈n2,f(x,y)=⊥