Spiele für den Linearzeit µ-Kalkül

Werbung
Spiele für den
Linearzeit µ-Kalkül
Christian Dax
Betreuer: Dr. Martin Lange
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
1
Entscheidungsverfahren
Kurzer Rückblick
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
2
Entscheidungsverfahren
Linearzeit µ-Kalkül
Definition (µTL)
ϕ ::= a | X | ϕ ∨ ϕ | ϕ ∧ ϕ | Oϕ | µX .ϕ | νX .ϕ
Example
• νX .a ∧ OOX
• µX .a ∨ OX
Wiederholung
(an jd. 2. Stelle gilt a)
(finally a)
Spiele für VAL und SAT
ν-Line Automaten
3
Entscheidungsverfahren
Wort-Spiel mit Bsp.
Definition (Wort-Spiel)
• Start: w ` ϕ
• Regeln:
(∨)
w ` ϕ 0 ∨ ϕ1
w ` ϕk
(µ)
(O)
Wiederholung
w ` µX .ϕ
w `X
w ` Oϕ
w1 ` ϕ
Spiele für VAL und SAT
∃
(∧)
w ` ϕ0 ∧ ϕ1
w ` ϕk
(ν)
w ` νX .ϕ
w `X
(X )
w `X
w ` fb(ϕ)
ν-Line Automaten
∀
4
Entscheidungsverfahren
Wort-Spiel mit Bsp.
Definition
• Wer gewinnt die Partie?
Spieler ∃ gewinnt:
1
2
Partie endet mit aw ` a
∞-Partie: äußerste der ∞-Vars ist νX .
Spieler ∀ gewinnt:
3
4
Partie endet mit aw ` b
∞-Partie: äußerste der ∞-Vars ist µX .
Lemma
∃ gewinnt
Wiederholung
gdw.
w |= ϕ
Spiele für VAL und SAT
ν-Line Automaten
5
Entscheidungsverfahren
Example
(ab)ω ` µY .νX .(a ∨ OOX ) ∧ (b ∨ OY )
abab · · · ` Y
abab · · · ` νX .(a ∨ OOX ) ∧ (b ∨ OY )
abab · · · ` X
abab · · · ` (a ∨ OOX ) ∧ (b ∨ OY )
∀
abab · · · ` (b ∨ OY )
∃
abab · · · ` OY
bab · · · ` Y
bab · · · ` νX .(a ∨ OOX ) ∧ (b ∨ OY )
bab · · · ` X
bab · · · ` (a ∨ OOX ) ∧ (b ∨ OY )
∀
bab · · · ` (a ∨ OOX )
∃
bab · · · ` OOX
ab · · · ` OX
b··· ` X
Baum-Spiel
Definition (Baumspiel)
• Start: t ` ϕ
• Regeln:
(∨)
t ` ϕ 0 ∨ ϕ1 , Φ
t ` ϕ0 , ϕ 1 , Φ
(µ/ν)
t ` µ/νX .ϕ, Φ
t ` X,Φ
(O)
(∧)
t ` ϕ 0 ∧ ϕ1 , Φ
t ` ϕk , Φ
(X )
t ` Oϕ0 , . . . , Oϕm , a0 , . . . an
t 1 , ϕ 0 , . . . , ϕm
∀
t ` X,Φ
t ` fb(ϕ), Φ
∀ : t1
Val-Spiel
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
7
Entscheidungsverfahren
Baum-Spiel
Definition
• Spieler ∃ gewinnt:
1
2
a
Parie endet mit
∧ ` a, Φ
Partie hat ν-Linie
• Spieler ∀ gewinnt:
3
4
a
Partie endet mit
∧ ` b1 , . . . , bn
Partie hat keine ν-Linie
Lemma
∃ gewinnt
⇔ t |= ϕ
Val-Spiel
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
8
Entscheidungsverfahren
Bsp. Baum-Spiel
Example
a! |
a
`
µY .νX .(a ∨ OOX ) ∧ (b ∨ OY )
b
∧`Y
a
∧ ` νX .(a ∨ OOX ) ∧ (b ∨ OY )
a
∧`X
a
∧ ` (a ∨ OOX ) ∧ (b ∨ OY )
a
∧ ` (a ∨ OOX )
a
∧ ` a, OOX
a
∀
∧ ` (b ∨ OY )
a
∧ ` b, OY
a
∀:a
∧`Y
ν-Line
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
9
Entscheidungsverfahren
Spiele für Allgemeingültigkeit und
Erfüllbarkeit
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
10
Entscheidungsverfahren
Sigma Baum
Definition (Sigma Baum)
• Σ = {a0 , a1 , . . . , an }
• tΣ :=
ddddla0 RRRR
RRR
ddddddldllll
d
d
d
d
d
d
R)
ull
dddd
d
r
.
.
.
a
a
F
F
1
0
x FF
xanFFF
lll FFF
x
x
l
l
F
F
x
x
l
l
x
x
|
"
|
"
. . . an a0 . . . an . . . a0 . . . a" n
a0FulF
x
F
F
xx
...
a0|x . . . a" n
...
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
11
Entscheidungsverfahren
Spiel auf Sigma Baum
Lemma
∃ gewinnt MC (tΣ , Oϕ)
⇔
für alle Pfade w in tΣ : w |= Oϕ
⇔
für alle Pfade w 1 (ohne Kopf) in tΣ : w 1 |= ϕ
⇔
für alle Pfade v in Σω : v |= ϕ
⇔
Wiederholung
ϕ allgemeingültig
Spiele für VAL und SAT
ν-Line Automaten
12
Entscheidungsverfahren
VAL-Spiel
Definition (Val-Spiel)
• Start: ϕ
• Regeln:
(∨)
ϕ 0 ∨ ϕ1 , Φ
ϕ0 , ϕ 1 , Φ
(µ/ν)
µ/νX .ϕ, Φ
X,Φ
(O)
(∧)
ϕ0 ∧ ϕ 1 , Φ
ϕk , Φ
(X )
∀
X,Φ
fb(ϕ), Φ
Oϕ0 , . . . , Oϕm , a0 , . . . an
ϕ0 , . . . , ϕ m
vgl. Baum-Spiel
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
13
Entscheidungsverfahren
VAL-Spiel
Definition
• Spieler ∃ gewinnt:
1 Parie endet mit
a1 , . . . , a|Σ|
2 Partie hat ν-Linie
• Spieler ∀ gewinnt:
3 Partie endet mit
b1 , . . . , bn ,
4 Partie hat keine ν-Linie
n < |Σ|
Lemma
∃ gewinnt VAL
⇔
∃ gewinnt MC (tΣ , Oϕ)
vgl. Baum-Spiel
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
14
Entscheidungsverfahren
Sat-Spiele
Lemma
es gibt einen Pfad w in Σω : w |= ϕ
ϕ erfüllbar ⇔
es gibt einen Pfad w in Σω : w 6|= ¬ϕ
⇔
⇔
¬ϕ nicht allgemeingültig
⇔
∀ gewinnt VAL(¬ϕ)
SAT -Spiele:
• Negation: ∨ ⇔ ∧,
µX ⇔ νX
• VAL: ∀ sucht Gegenbsp
⇒
SAT : ∃ sucht Model
• Strategie von ∀ in VAL ⇒ Strategie von ∃ in SAT
• VAL: ∃ wählt gleichzeitig
Wiederholung
Spiele für VAL und SAT
⇒
SAT : ∀ wählt gleichzeitig
ν-Line Automaten
15
Entscheidungsverfahren
Automaten zum Erkennen von
ν-Lines
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
16
Entscheidungsverfahren
Nicht-det. Büchi Automat
Definition (NBA)
Ein NBA A = (Q, A, δ, q0 , F ) besteht aus
• Zustände Q
• Alphabet A
• Transitionen δ ⊆ Q × A × Q
• Startzustand q0
• Endzustände F ⊆ Q
• Lauf auf w ∈ Aω ist r = q0 q1 · · · ∈ Q ω gemäß δ.
• A akzeptiert w ⇔ ex. Lauf mit q ∈ F tritt ∞-oft auf.
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
17
Entscheidungsverfahren
Problemstellung
Zu lösen mit NBA:
• Eingabe: Partie eines VAL Spiels
• Ausgabe: Partie hat/hat keine ν-Line
Definition
Partie hat ν-Line ⇔
• ex. ν-Variable, die ∞-oft auftritt
• ex. keine größere µ-Variable, die ∞-oft auftritt
vgl. Bsp
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
18
Entscheidungsverfahren
Idee
Was macht der NBA?
• Spielablauf beobachten und erst einmal nichts tun
• Wenn ν-Var auftritt:
Raten ob diese ∞-oft auftritt und keine größere µ-Var.
In dem Fall fokussieren!
• Akzeptieren, falls fokussierte Var ∞-oft auftritt
• Nicht akzeptieren, falls µ-Var größer fokussierte Var auftritt
Lemma
NBA akzeptiert Partie ⇔ Partie hat ν-Line
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
19
Entscheidungsverfahren
ν-Line NBA
Definition
Der NBA A(ϕ) = (Q, A, δ, q0 , F ) ist def. durch
• Q := (Sub(ϕ) × ν-Vars) ∪ {ε}
• A := Regeln des Spiels
• δ := . . .
• q0 := ε
• F := {(Y , Y ) | Y is ν-Var}
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
20
Entscheidungsverfahren
ν-Line NBA
• Transition δ besteht aus:
ε
X ist ν-Var: ε
egal
−−−→
ε
(X )
−−−→
(fb(X ), X )
...
LAND
(ϕ ∧ ψ, X )
−−−−−ϕ∧ψ
−−→ (ϕ, X )
(ϕ ∧ ψ, X )
ϕ∧ψ
−−−−−−
−→
(ϕ ∧ ψ, X )
RAND
(ψ, X )
sonst
−−−−→ (ϕ ∧ ψ, X )
...
X ist µ-Var: (X , Y )
Wiederholung
Spiele für VAL und SAT
(X )
−−−→
(fb(X ), Y ),
ν-Line Automaten
falls X < Y
21
Entscheidungsverfahren
Entscheidungsverfahren
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
22
Entscheidungsverfahren
NBA - Determinisierung
Warum determinisieren?
• Partieende bei Wiederholung der Konf gewünscht
• ∀ wählt in Abhängigkeit des Fokus anderen Pfad
• Annotieren der Konfs möglich
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
23
Entscheidungsverfahren
Safra Konstruktion
Safra Konstruktion (NBA → det. Muller Automat)
• Zustände = Safra Bäume
• Transition = Erweiterung der Teilmengen-Konstruktion
• Akzeptanzbedingung:
Ein Knotenname stirbt nicht aus und blinkt ∞-oft
Eigenschaften
• Knoten: Namen × 2Q × {·, !}
• max. Knotenzahl: |Q|
• #Safta-Bäume = 2O(|Q|·log (|Q|))
Q ist Menge der NBA Zustände; |Q| = |ϕ|2
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
24
Entscheidungsverfahren
Algorithmus
C := ϕ
c := 0
While c < ∞ Begin
I f GB 1 Then akz .
I f GB 3 Then verw .
C := ∀ w ä h l t N a c h f o l g e r k o n f . ( n i c h t −d e t . )
c := c + 1
End
I f GB 2 Then akz .
I f GB 4 Then verw .
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
25
Entscheidungsverfahren
Algorithmus
(C , t ) :=
c := 0
While c <
I f GB 1
I f GB 3
(ϕ, t0 )
Pmax Begin
Then akz .
Then verw .
N i c h t −d e t . merkt s i c h ∀ : (C ’ , t ’ )
I f (C , t ) = (C ’ , t ’ ) Then
M u l l e r b e d . : verw .
(C , t ) := ∀ w ä h l t N a c h f o l g e r k o n f . (+ Annotat )
c := c + 1
End
akz .
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
26
Entscheidungsverfahren
Algorithmus
(C , t ) :=
c := 0
While c <
I f GB 1
I f GB 3
(ϕ, t0 )
Pmax Begin
Then akz .
Then verw .
N i c h t −d e t . merkt s i c h ∀ : (C ’ , t ’ )
N := Knoten von t ’
N := N ∩ Knoten von t
I f (C , t ) = (C ’ , t ’ ) Then
I f B l i t z −Knoten ∈ N Then verw .
(C , t ) := ∀ w ä h l t N a c h f o l g e r k o n f . (+ Annotat )
c := c + 1
End
akz .
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
27
Entscheidungsverfahren
Abschätzung
Abschätzung:
• C polynomiell in |ϕ|: |C | ≤ |Sub(ϕ)| = O(|ϕ|)
• t polynomiell in |ϕ|:
• #Knoten ≤ |Q| ≤ |ϕ|2
• Knotenname, Lampe klar
• Menge der NBA Zustände ≤ |Sub(ϕ)|2 = O(|ϕ|2 )
• Pmax ≤ 2|Sub(ϕ)| · 2O(|Q|)·log (|Q|) ⇒ c ∈ log (...)
• N in O(|Q|) = O(|ϕ|2 )
⇒ mit Savich folgt Alg. in PSPACE
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
28
Entscheidungsverfahren
Das war’s.
Wiederholung
Spiele für VAL und SAT
ν-Line Automaten
29
Entscheidungsverfahren
Herunterladen