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