Spieltheoretische Methoden in der Logik Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/alg/lehre/ss09/SPIELE/ Sommersemester 2009 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 1 / 203 0. Allgemeines Überblick: 1 Motivation 2 Mathematische Grundlagen 3 Unendliche Spiele 4 Erreichbarkeitsspiele 5 Modallogik und Logik 1.Stufe 6 Paritätsspiele 7 Modaler µ-Kalkül Literatur: Grädel, Thomas, Wilke. Automata, Logics, and Infinite Games: A Guide to Current Research. Lecture Notes in Computer Science 2500, Springer 2002 Stirling. Modal and Temporal Properties of Processes, Springer 2001 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 2 / 203 Motivation Model-Checking Das Model-Checking Problem für eine Logik L (z. B. Prädikatenlogik oder Modallogik): EINGABE: Eine endliche Struktur A (z. B. ein Graph) und eine Formel ϕ∈L FRAGE: Gilt ϕ in A, kurz A |= ϕ? Beispiel: ϕ = ∀x∀y ∀z : E (x, y ) ∧ E (y , z) → E (x, z) Dies ist eine Formel der Prädikatenlogik (= Logik 1.Stufe), die in einer Struktur A = (V , E ) (ein gerichteter Graph) genau dann gilt, wenn die Kantenrelation E transitiv ist. Model-Checking hat vielerlei Anwendungen in der Informatik: Automatische Verifikation von Software- und Hardwaresystemen Datenbanktheorie Künstliche Intelligenz Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 3 / 203 Motivation Model-Checking und Spiele Unser Ansatz zur Lösung des Model-Checking Problems: Konstruiere aus A, ϕ eine Spiel G (A, ϕ) in der zwei Spieler Adam und Eve gegeneinander spielen. Eve versucht zu zeigen, dass A |= ϕ gilt. Adam versucht zu zeigen, dass A 6|= ϕ gilt. G (A, ϕ) wird so konstruiert, dass gilt: A |= ϕ ⇐⇒ Eve hat eine Gewinnstrategie im Spiel G (A, ϕ) Viele Fragen müssen noch geklärt werden: Welche Strukturen A betrachten wir? Welche Logiken L betrachten wir? Wie sieht das Spiel G (A, ϕ) aus? Was bedeutet “Eve eine Gewinnstrategie in G (A, ϕ)?” Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 4 / 203 Mathematische Grundlagen Überblick In diesem Abschnitt werden wir die benötigten mathematischen Grundlagen einführen. Endliche und unendliche Wörter Graphentheoretische Grundbegriffe Ordinalzahlen Fixpunkte Fixpunktsatz von Knaster-Tarski Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 5 / 203 Mathematische Grundlagen Endliche und unendliche Wörter Definition (endliche und unendliche Wörter) Sei A eine beliebige Menge. Mit A∗ bezeichnen wir die Menge aller endlichen Wörter über A. Das leere Wort wird stets mit ε bezeichnet. Mit Aω = {a1 a2 a3 · · · | ai ∈ A für alle i ≥ 1} bezeichnen wir die Menge aller unendlichen Wörter über A. Sei A∞ = A∗ ∪ Aω . Definition (Menge der vorkommenden Symbole) Für w ∈ A∞ definieren wir: ( {a1 , . . . , an } falls w = a1 · · · an ∈ A∗ Occ(w ) = {a1 , a2 , . . .} falls w = a1 a2 · · · ∈ Aω Occ(w ) ist also die Menge aller Symbole aus A, die in w vorkommen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 6 / 203 Mathematische Grundlagen Endliche und unendliche Wörter Definition (erstes Symbol) Für w ∈ A∞ \ {ε} ist first(w ) das erste Symbol in w . Definition (Menge der unendlich oft vorkommenden Symbole) Für w = a1 a2 · · · ∈ Aω definieren wir: Inf(w ) = {a | es existieren unendlich viele i mit ai = a} ⊆ A Inf(w ) ist also die Menge aller Symbole aus A, die in w unendlich oft vorkommen. Definition (Präfix) Ein endliches Wort u ∈ A∗ ist Präfix (oder Anfangsstück) des Worts v ∈ A∞ , falls ein Wort w ∈ A∞ mit v = uw existiert. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 7 / 203 Mathematische Grundlagen Gerichtete Graphen Definition (gerichteter Graph) Ein gerichteter Graph ist ein Paar G = (V , E ), wobei V eine beliebige Menge ist (die Menger der Knoten). E ⊆ V × V ist die Menge der Kanten. Definition (Pfade) Ein endlicher Pfad in G ist eine endliches Wort w = v1 v2 · · · vn ∈ V ∗ mit (vi , vi+1 ) ∈ E für alle 1 ≤ i ≤ n − 1. Ein unendlicher Pfad in G is eine unendliches Wort w = v1 v2 v3 · · · ∈ V ω mit (vi , vi+1 ) ∈ E für alle i ≥ 1. Definition (Nachfolger eines Knoten) Für u ∈ V sei NG (u) = {v ∈ V | (u, v ) ∈ E } die Menge aller Nachfolger von u. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 8 / 203 Mathematische Grundlagen Ordnungen Definition (partielle Ordnung) Ein partielle Ordnung ist ein Paar (M, ≤), wobei M eine beliebige Menge ist, und ≤ ⊆ M × M eine binäre Relation auf M mit folgenden Eigenschaften ist: 1 ∀a ∈ M : a ≤ a (Reflexivität) 2 ∀a, b, c ∈ M : (a ≤ b ∧ b ≤ c) =⇒ a ≤ c (Transitivität) 3 ∀a, b ∈ M : (a ≤ b ∧ b ≤ a) =⇒ a = b (Antisymmetrie) Wir schreiben a < b, falls a ≤ b und a 6= b. Definition (lineare Ordnung) Eine partielle Ordnung (M, ≤) ist eine lineare Ordnung, wenn gilt: ∀a, b ∈ M : a ≤ b ∨ b ≤ a Markus Lohrey (Universität Leipzig) (Linearität). Spieltheoretische Methoden in der Logik SS 2009 9 / 203 Mathematische Grundlagen Ordnungen Definition (wohlfundiert) Eine partielle Ordnung (M, ≤) ist wohlfundiert, falls jede nicht-leere Teilmenge A ⊆ M ein minimales Element besitzt: ∃a ∈ A ∀b ∈ A : b ≤ a → a = b Lemma 1 Eine partielle Ordnung (M, ≤) ist wohlfundiert genau dann, wenn keine unendliche Folge · · · < a2 < a1 < a0 mit a0 , a1 , . . . ∈ M gibt. Beweis: “⇒”: Gelte · · · < a2 < a1 < a0 für a0 , a1 , . . . ∈ M. Dann hat die nicht-leere Menge A = {ai | i ≥ 0} kein minimales Element. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 10 / 203 Mathematische Grundlagen Ordnungen “⇐”: Sei A 6= ∅ eine Teilmenge von M ohne minimales Element. Wähle a0 ∈ A beliebig. Wähle a1 ∈ A mit a1 < a0 . Wähle a2 ∈ A mit a2 < a1 · · · Satz 2 (Noethersche Induktion) Sei (M, ≤) eine wohlfundierte partielle Ordnung und A ⊆ M. Dann gilt A = M genau dann, wenn ∀a ∈ M (∀b < a : b ∈ A) → a ∈ A (1) Beweis: “⇒” klar. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 11 / 203 Mathematische Grundlagen Ordnungen “⇐”: Gelte (1). Angenommen es gilt M \ A 6= ∅. Dann besitzt M \ A ein minimales Element a ∈ M \ A. ∀b < a : b 6∈ M \ A, d. h. b ∈ A. (1) a ∈ A. Widerspruch! Definition (Wohlordnung) Eine lineare wohlfundierte Ordnung ist eine Wohlordnung. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 12 / 203 Mathematische Grundlagen Ordnungen Beispiele: (Z, ≤), (Q+ , ≤) und (R+ , ≤) sind lineare Ordnungen, aber keine Wohlordnungen. Für jede Teilmenge A ⊆ N ist (A, ≤) eine Wohlordung. (N ∪ {ω}, ≤) (wobei ω > n für alle n ∈ N) ist eine Wohlordung. Wenn wir Worte in {a, b}∗ nach der Länge, und gleichlange Worte lexikographisch ordnen, dann erhalten wir eine Wohlordnung auf {a, b}∗ : ε < a < b < aa < ab < ba < bb < aaa < · · · Die Struktur dieser Ordnung entspricht der von (N, ≤). Die lexikographische Ordnung ≤ auf {a, b}∗ ist eine lineare Ordnung, aber keine Wohlordnung wegen · · · < a3 b < aab < ab < b. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 13 / 203 Mathematische Grundlagen Ordnungen Beispiele: Betrachten nun die lexikographische Ordnung auf der Menge a+ ∪ b+ : a < a2 < a3 < · · · < b < b 2 · · · Dies ist eine Wohlordnung, welche anders strukturiert als (N, ≤) ist: Zu dem Wort b gibt es unendlich viele kleinere Worte, während es in (N, ≤) zu jeder Zahl nur endlich viele kleinere Zahlen gibt. Diese Ordnung ist auch anders strukturiert als (N ∪ {ω}, ≤), weil es kein größtes Element gibt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 14 / 203 Mathematische Grundlagen Ordinalzahlen Zwei Wohlordnungen (M1 , ≤1 ) und (M2 , ≤2 ) sind isomorph, falls es eine bijektive Abbildung h : M1 → M2 gibt mit: ∀a, b ∈ M1 : a ≤1 b ⇐⇒ h(a) ≤2 h(b). Wir schreiben (M1 , ≤1 ) ≃ (M2 , ≤2 ), falls (M1 , ≤1 ) und (M2 , ≤2 ) isomorph sind. Offensichtlich ist die binäre Relation ≃ eine Äquivalenzrelation auf der Klasse aller Wohlordnungen. Definition (Ordinalzahlen) Eine Ordinalzahl ist eine Isomorphieklasse wohlgeordneter Mengen, d. h. eine Äquivalenzklasse bezüglich ≃. Anders ausgedrückt: Wenn wir von Ordinalzahlen sprechen, dann reden wir über Wohlordnungen, aber wir unterscheiden nicht zwischen isomorphen Wohlordnungen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 15 / 203 Mathematische Grundlagen Ordinalzahlen Es sei ξ = (M, ≤) eine Ordinalzahl und a ∈ M. Es sei ξ<a = (M, ≤)<a := ({x ∈ M | x < a}, ≤). Dann ist ξ<a wiederum eine Ordinalzahl. Eine Ordinalzahl ξ ′ ist echtes Anfangsstück von ξ, wenn es ein a ∈ M gibt, so dass ξ ′ und ξ<a isomorph sind. Notation: ξ ′ ⊏ ξ Wir schreiben ξ ′ ⊑ ξ, falls ξ ′ ⊏ ξ oder ξ ′ = ξ gilt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 16 / 203 Mathematische Grundlagen Ordinalzahlen Satz 3 Sei M eine Menge von Ordinalzahlen. Dann ist (M, ⊑) eine Wohlordnung. Beweis: Behauptung 1: Es gibt keine Folge von Ordinalzahlen der Form · · · ⊏ ξ3 ⊏ ξ2 ⊏ ξ1 ⊏ ξ0 (2) Angenommen, es gibt eine Folge von Ordinalzahlen der Form (2). Sei ξi = (Mi , ≤i ). Wegen ξi+1 ⊏ ξi gibt es ein ai ∈ Mi , so dass (Mi+1 , ≤i+1 ) isomorph zu (Mi , ≤i )<ai ist. O.B.d.A. sei (Mi+1 , ≤i+1 ) = (Mi , ≤i )<ai für alle i ≥ 0. · · · a3 <0 a2 <0 a1 <0 a0 . Widerspruch, da (M0 , ≤0 ) eine Wohlordnung ist! Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 17 / 203 Mathematische Grundlagen Ordinalzahlen Aus Behauptung 1 folgt insbesondere, dass es keine Ordinalzahl ξ mit ξ ⊏ ξ gibt. Behauptung 2: Die Relationen ⊏ und ⊑ sind transitiv, ⊑ ist reflexiv. Dies ist offensichtlich. Behauptung 3: Die Relation ⊑ ist antisymmetrisch. Seien hierzu ξ1 und ξ2 zwei Ordinalzahlen mit ξ1 ⊑ ξ2 und ξ2 ⊑ ξ1 . Wenn ξ1 6= ξ2 , dann gilt ξ1 ⊏ ξ2 und ξ2 ⊏ ξ1 und damit ξ1 ⊏ ξ1 wegen der Transitivität von ⊏. Widerspruch! Behauptung 4: Die Relation ⊑ ist linear. Seien hierzu ξ1 = (M1 , ≤1 ) und ξ2 = (M2 , ≤2 ) wieder zwei Ordinalzahlen. Wir definieren eine Relation f ⊆ M1 × M2 durch: (a1 , a2 ) ∈ f genau dann, wenn (M1 , ≤1 )<a1 und (M2 , ≤2 )<a2 isomorph sind. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 18 / 203 Mathematische Grundlagen Ordinalzahlen Eigenschaften von f , wobei dom(f ) = {x ∈ M1 | ∃y ∈ M2 : (x, y ) ∈ f } und ran(f ) = {y ∈ M2 | ∃x ∈ M1 : (x, y ) ∈ f }: (a1 , a2 ), (b1 , b2 ) ∈ f =⇒ (a1 ≤1 b1 ⇐⇒ a2 ≤2 b2 ) (3) b1 ∈ dom(f ) ∧ a1 <1 b1 =⇒ a1 ∈ dom(f ) (4) b2 ∈ ran(f ) ∧ a2 <2 b2 =⇒ a2 ∈ ran(f ) (5) Aus (3) folgt, dass f eine bijektive Abbildung von dom(f ) nach ran(f ) ist, denn aus (a1 , a2 ), (b1 , b2 ) ∈ f folgt: a1 = b1 ⇐⇒ a1 ≤1 b1 ≤1 a1 ⇐⇒ a2 ≤2 b2 ≤2 a2 ⇐⇒ a2 = b2 . Ausserdem ist nach (3) f auch noch ordnungserhaltend, d. h. f ist ein Isomorphismus zwischen (dom(f ), ≤1 ) und (ran(f ), ≤2 ): (dom(f ), ≤1 ) ≃ (ran(f ), ≤2 ) (6) Wir machen nun eine Fallunterscheidung. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 19 / 203 Mathematische Grundlagen Ordinalzahlen Fall 1: M1 \ dom(f ) 6= ∅ Da (M1 , ≤1 ) eine Wohlordnung ist, existiert a1 = min(M1 \ dom(f )). (4) dom(f ) = {x ∈ M1 | x <1 a1 }, d. h. (dom(f ), ≤1 ) = (M1 , ≤1 )<a1 Fall 1.1: M2 \ ran(f ) 6= ∅ Da (M2 , ≤2 ) eine Wohlordnung ist, existiert a2 = min(M2 \ ran(f )). (5) (6) ran(f ) = {x ∈ M2 | x <2 a2 }, d. h. (ran(f ), ≤2 ) = (M2 , ≤2 )<a2 . (M1 , ≤1 )<a1 ≃ (M2 , ≤2 )<a2 (a1 , a2 ) ∈ f . Widerspruch! Fall 1.2: M2 \ ran(f ) = ∅, d. h. M2 = ran(f ). (6) (M1 , ≤1 )<a1 ≃ (M2 , ≤2 ). ξ2 ⊏ ξ1 . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 20 / 203 Mathematische Grundlagen Ordinalzahlen Fall 2: M1 \ dom(f ) = ∅, d. h. M1 = dom(f ). Fall 2.1: M2 \ ran(f ) 6= ∅. Völlig analog zu Fall 1.2 ergibt sich ξ1 ⊏ ξ2 . Fall 2.2: dom(f ) = M1 , ran(f ) = M2 . Dann gilt ξ1 = ξ2 wegen (6). Aus Satz 3 folgt, dass für jede Ordinalzahl ξ = (M, ≤) die Ordnung ({χ | χ ⊏ ξ} ⊑) eine Wohlordnung ist. Es ist sogar die gleiche Wohlordnung: ξ = ({χ | χ ⊏ ξ}, ⊑). Definiere hierzu die Abbildung h : M → {χ | χ ⊏ ξ} durch h(a) = (M, ≤)<a = ξ<a ⊏ ξ. Dies ist ein Isomorphismus zwischen ξ = (M, ≤) und ({χ | χ ⊏ ξ}, ⊑). In Worten: Jede Ordinalzahl kann mit der Menge aller echt kleineren Ordinalzahlen identifiziert werden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 21 / 203 Mathematische Grundlagen Ordinalzahlen Ein Paradoxon: A) Es gibt keine größte Ordinalzahl, weil man zu jeder Ordinalzahl durch Anhängen eines größten Elements eine größere Ordinalzahl konstruieren kann. B) Es sei O die Menge aller Ordinalzahlen. Dann ist (O, ⊑) eine Ordinalzahl. Nun sei ξ = (M, ≤) eine beliebige Ordinalzahl. Es gilt ξ ∈ O. Dann sind ξ und (O, ⊑)⊏ξ isomorph durch die Abbildung h : M → O mit h(a) := ξ<a für alle a ∈ M. Damit ist jede Ordinalzahl ξ ein echtes Anfangstück von (O, ⊑), d. h. (O, ⊑) ist die größte Ordinalzahl. Wo ist der Fehler? Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 22 / 203 Mathematische Grundlagen Ordinalzahlen Es gibt drei Arten von Ordinalzahlen: 1 Die Ordinalzahl über der leeren Menge (∅, ≤). 2 Ordinalzahlen, die ein größtes Element besitzen. Diese werden als Nachfolgerordinale bezeichnet. 3 Nichtleere Ordinalzahlen, die kein größtes Element besitzen. Diese werden als Limesordinalzahlen bezeichnet. Zu jedem n ∈ N notieren wir mit n die Ordinalzahl {1, 2, . . . , n}, ≤ , insbesondere sei 0 die Ordinalzahl (∅, ≤). Zu jeder Ordinalzahl ξ notieren wir mit ξ + 1 die Ordinalzahl, die durch Anhängen eines neuen größten Elements an ξ entsteht. Es gilt ξ ⊏ ξ + 1 und es gibt keine Ordinalzahl ξ ′ mit ξ ⊏ ξ ′ ⊏ ξ + 1. Eine Ordinalzahl ξ ist ein Nachfolgerordinal, genau dann, wenn eine Ordinalzahl ξ ′ mit ξ = ξ ′ + 1 existiert. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 23 / 203 Mathematische Grundlagen Ordinalzahlen Ein “kleines” Anfangsstück der Ordinalzahlen lautet: 0 ⊏ 1 ⊏ 2··· ⊏ ω ⊏ ω + 1 ⊏ ω + 2··· ⊏ ω + ω = ω · 2 ⊏ ω · 2 + 1 ⊏ ω · 2 + 2 ⊏ ··· ⊏ ω · 3 ⊏ ··· ⊏ ω · ω = ω ω 2 ⊏ ω 3 ⊏ · · · ⊏ ω ω ⊏ ω ω ⊏ · · · ω1 ⊏ · · · , hierbei ist ω1 die kleinste nicht abzählbare Ordinalzahl. Wohlordnungsprinzip Jede Menge M kann wohlgeordnet werden, d. h. es existiert eine Wohlordnung ≤ auf M. Das Wohlordnungsprinzip ist zum Auswahlaxiom der Mengenlehre äquivalent. Es ist “nicht-konstruktiv”, z. B. kann niemand eine Wohlordnung der reellen Zahlen konstruktiv angeben. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 24 / 203 Mathematische Grundlagen Ordinalzahlen Prinzip der transfiniten Induktion (siehe Satz 2) Sei (M, ≤) eine Wohlordnung und sei A ⊆ M eine Teilmenge mit ∀x ∈ M : (∀y < x : y ∈ A) =⇒ x ∈ A. (7) Dann gilt A = M. Mit transfiniter Induktion kann man Aussagen für beliebige wohlgeordnete Mengen beweisen. Um eine Aussage A für alle Elemente einer Menge M zu beweisen, wählt man sich zunächst eine Wohlordnung ≤ auf M (existiert nach dem Wohlordnungsprinzip) und zeigt dann (7). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 25 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Sei A eine Menge und f : 2A → 2A . Die Abbildung f ist monoton, falls für alle X , Y ∈ 2A gilt: X ⊆ Y =⇒ f (X ) ⊆ f (Y ). Y ∈ 2A ist Fixpunkt von f , falls f (Y ) = Y gilt. Sei Y ∈ 2A ein Fixpunkt von f . Y ist kleinster (bzw. größter) Fixpunkt von f , falls für alle Fixpunkte X ∈ 2A von f gilt: Y ⊆ X (bzw. X ⊆ Y ). Im Allgemeinen muss ein Fixpunkt (geschweige denn ein kleinster bzw. größter Fixpunkt) von f nicht existieren. Aber: Satz 4 (Fixpunktsatz von Knaster-Tarski) Sei f : 2A → 2A eine monotone Abbildung. Dann hat f einen kleinsten Fixpunkt µf und einen größten Fixpunkt νf und es gilt: \ [ µf = {Y ⊆ A | f (Y ) ⊆ Y } und νf = {Y ⊆ A | Y ⊆ f (Y )}. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 26 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Beweis: Wir beweisen zunächst die Existenz eines kleinsten Fixpunktes µf . Sei F = {Y ⊆ A | f (Y ) ⊆ Y }. Beachte: F = 6 ∅ (denn f (A) ⊆ A) und jeder Fixpunkt von f gehört zu F. T Definiere µf = F. ∀Y ∈ F : µf ⊆ Y ∀Y ∈ F : f (µf ) ⊆ f (Y ) ⊆ Y wegen der Monotonie von f : T T f (µf ) ⊆ {Y ⊆ A | Y ∈ F} = F = µf , d. h. f (µf ) ⊆ µf . µf ∈ F. Wir müssen noch µf ⊆ f (µf ) zeigen: Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 27 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Aus f (µf ) ⊆ µf und der Monotonie von f folgt f (f (µf )) ⊆ f (µf ). f (µf ) ∈ F. T µf = {Y | Y ∈ F} ⊆ f (µf ). Also gilt f (µf ) = µf und µf ⊆ Y für alle Y ∈ F (und damit auch für alle Fixpunkte Y von f ). Wir beweisen nun die Existenz des größten Fixpunktes νf . Für Y ⊆ A sei g (Y ) = A \ f (A \ Y ). g ist monoton. Definiere νf = A \ µg . f (νf ) = f (A \ µg ) = A \ (A \ f (A \ µg )) = A \ g (µg ) = A \ µg = νf . Also ist νf ein Fixpunkt von f . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 28 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Sei nun Y ein beliebiger Fixpunkt von f , d. h. f (Y ) = Y . A \ Y = A \ f (Y ) = A \ f (A \ (A \ Y )) = g (A \ Y ). A \ Y ist Fixpunkt von g . µg ⊆ A \ Y (da µg der kleinste Fixpunkt von g ist) Y ⊆ A \ µg = νf . Also ist νf der größte Fixpunkt von f . S Behauptung: νf = {Y ⊆ A | Y ⊆ f (Y )}. T Es gilt: µg = {Y ⊆ A | g (Y ) ⊆ Y }. Also gilt: Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 29 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski νf = A \ µg \ = A \ {Y [ = {A \ Y [ = {A \ Y [ = {A \ Y [ = {Y | Y | g (Y ) ⊆ Y } | g (Y ) ⊆ Y } | A \ f (A \ Y ) ⊆ Y } | f (A \ Y ) ⊇ A \ Y } ⊆ f (Y )} Aus dem Beweis von Satz 4 folgt: Lemma 5 Sei f : 2A → 2A monoton und sei g : 2A → 2A definiert durch g (Y ) = A \ f (A \ Y ) für alle Y ∈ 2A . Dann gilt: νf = A \ µg . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 30 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski “Berechnung” des kleinsten und größten Fixpunktes von f : Satz 6 (Knaster-Tarski) Sei f : 2A → 2A eine monotone Abbildung. Definiere für jede Ordinalzahl ξ die folgenden “Approximationen”: F0 = ∅ Fξ+1 = Fξ ∪ f (Fξ ) [ Fχ = Fξ ξ⊏χ F0 = A F ξ+1 = F ξ ∩ f (F ξ ) \ Fχ = F ξ für ein Limesordinal χ ξ⊏χ Dann existieren kleinste Ordinalzahlen α, β mit Fα = Fα+1 und F β = F β+1 und es gilt Fα = µf und F β = νf . Beachte: ξ ⊑ χ =⇒ Fξ ⊆ Fχ und F ξ ⊇ F χ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 31 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Beweis von Satz 6: Sei α eine beliebige Ordinalzahl deren Kardinalität größer als die Kardinalität von A ist (wir können z. B. nach dem Wohlordnungsprinzip für α eine Wohlordnung auf 2A wählen). Angenommen es gilt Fχ ( Fχ+1 für alle χ ⊏ α. Dann erhalten wir eine injektive Abbildung i : α = {χ | χ ⊏ α} → A, indem wir für alle χ ⊏ α ein xχ ∈ Fχ+1 \ Fχ auswählen und i(χ) = xχ setzen. Die Existenz einer solchen Injektion widerspricht jedoch |α| > |A|. Aufgrund der Wohlordnung der Ordinalzahlen existiert also die kleinste Ordinalzahl α mit Fα = Fα+1 . Analog ergibt sich die Existenz der kleinsten Ordinalzahl β mit F β = F β+1 . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 32 / 203 Mathematische Grundlagen Der Fixpunktsatz von Knaster-Tarski Fα = Fα+1 = Fα ∪ f (Fα ) und F β = F β+1 = F β ∩ f (F β ). f (Fα ) ⊆ Fα und F β ⊆ f (F β ). µf ⊆ Fα und νf ⊇ F β (Satz 4). Wir zeigen nun Fα ⊆ µf (analog ergibt sich F β ⊇ νf ). Behauptung: Für jede Ordinalzahl χ gilt Fχ ⊆ µf . Beweis durch transfinite Induktion über χ. (i) χ = 0: Es gilt Fχ = ∅ ⊆ µf . (ii) χ = ξ + 1: Nach IA gilt Fξ ⊆ µf . Aus der Monotonie von f folgt Fξ+1 = f (Fξ ) ∪ Fξ ⊆ f (µf ) ∪ µf = µf . (iii) χ ist ein Limesordinal: Nach IA gilt Fξ ⊆ µf für alle ξ ⊏ χ. S Fχ = ξ⊏χ Fξ ⊆ µf . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 33 / 203 Unendliche Spiele Überblick In diesem Abschnitt werden wir 2-Personen Spiele auf Graphen untersuchen. Idee: Knoten des Graphen entsprechen Spielpositionen. In jeder Spielposition muss einer von zwei Spielern, die wir Adam und Eve nennen, ziehen. Die Kanten des Graphen entsprechen dabei den möglichen Spielzügen. Später werden wir solche Spiele benutzen, um das Model-Checking Problem für diverse Logiken zu lösen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 34 / 203 Unendliche Spiele Spielarenen Definition (Spielarena) Eine Spielarena ist ein Tripel G = (S, →, ρ), wobei (S, →) ein gerichteter Graph ist mit N(S,→) (s) 6= ∅ für alle s ∈ S (keine Sackgassen) und ρ : S → {Adam, Eve} ist eine Abbildung, die jeder Spielposition s ∈ S einen Spieler ρ(s) ∈ {Adam, Eve} zuordnet (der Spieler, der in s ziehen muss). Beachte: S muss nicht endlich sein. Für s ∈ S sei im folgenden NG (s) = N(S,→) (s). Definiere Adam = Eve und Eve = Adam. Für x ∈ {Adam, Eve} sei Sx = {s ∈ S | ρ(s) = x} die Menge aller Knoten, wo Spieler x ziehen muss. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 35 / 203 Unendliche Spiele Partien Konvention Ein Tripel (S, →, ρ), wobei (S, →) ein gerichteter Graph ist und ρ : S → {Adam, Eve}, identifizieren wir mit der Spielarena (S, → ∪ {(s, s) | s ∈ S, N(S,→) (s) = ∅}, ρ). Sackgassen werden also durch Hinzufügen von Schleifen eliminiert. Definition (Partien) Eine Partie in der Spielarena G ist ein unendlicher Pfad w ∈ S ω in dem Graphen (S, →). Wir sagen, dass die Partie w ∈ S ω in der Position first(w ) ∈ S beginnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 36 / 203 Unendliche Spiele Gewinnbedingungen Beachte: Partien dauern bei uns also stets unendlich lange. Trotzdem wollen wir bestimmen, welcher Spieler eine Partie gewinnt. Die allgemeinste Definition lautet: Definition (Gewinnbedingungen und Spiele) Eine Gewinnbedingung für die Spielarena G = (S, →, ρ) ist eine Teilmenge L ⊆ Sω. Das Paar (G , L) (wird auch als (S, →, ρ, L) geschrieben) nennen wir auch ein Spiel. Definition (Gewinner einer Partie) Sei (S, →, ρ, L) ein Spiel und sei w ∈ S ω eine Partie in der Spielarena (S, →, ρ). Eve (bzw. Adam) gewinnt die Partie w , falls w ∈ L (bzw. w 6∈ L) gilt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 37 / 203 Unendliche Spiele Gefärbte Spielarenen Problem: Wie soll die Gewinnbedingung L ⊆ S ω spezifiziert werden? Definition (gefärbte Spielarena) Eine gefärbte Spielarena ist ein Tupel G = (S, →, ρ, χ) wobei (S, →, ρ) eine Spielarena wie bisher ist, und χ : S → C eine Funktion von S in eine endliche Menge von Farben C ist. Für eine Menge L ⊆ C ω sei χ−1 (L) = {s0 s1 s2 · · · | χ(s0 )χ(s1 )χ(s2 ) · · · ∈ L} ⊆ S ω . Wir spezifizieren eine Gewinnbedingung durch eine Menge L ⊆ C ω . Die zugehörige Gewinnbedingung ist dann χ−1 (L). Teilmengen von C ω werden durch verschiedene Bedingungen definiert, siehe nächste Folie. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 38 / 203 Unendliche Spiele Wichtige Gewinnbedingungen Eine Erreichbarkeitsbedingung ist eine Teilemenge E ⊆ C . zugehörige Gewinnbedingung: χ−1 ({w ∈ C ω | Occ(w ) ∩ E = 6 ∅}) Wir nennen (S, →, ρ, χ, E) auch ein Erreichbarkeitsspiel. Eine Büchibedingung ist eine Teilmenge B ⊆ C . zugehörige Gewinnbedingung: χ−1 ({w ∈ C ω | Inf(w ) ∩ B = 6 ∅}) Wir nennen (S, →, ρ, χ, B) auch ein Büchispiel. Eine Mullerbedingung ist eine Teilmenge M ⊆ 2C . zugehörige Gewinnbedingung: χ−1 ({w ∈ C ω | Inf(w ) ∈ M}) Wir nennen (S, →, ρ, χ, M) auch ein Mullerspiel. Paritätsbedingung: Hier setzen wir lediglich voraus, dass C ⊆ N gilt. zugehörige Gewinnbedingung: χ−1 ({w ∈ C ω | max(Inf(w )) gerade }) Wir nennen (S, →, ρ, χ) auch ein Paritätsspiel. Die endlich vielen Zahlen in C werden auch Prioritäten genannt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 39 / 203 Unendliche Spiele Wichtige Gewinnbedingungen Beispiel (von R. Mazala, aus Grädel, Thomas, Wilke. Automata, Logics, and Infinite Games, LNCS 2500, Springer 2002): Betrachte folgende gefärbte Spielarena G , wobei C = {1, 2, 3, 4}. Die Farbe χ(s) einer Spielposition s steht neben s als Markierung. Grüne Knoten gehören Eve, rote Knoten gehören Adam. 1 s0 s1 2 1 s2 3 s3 2 s4 4 s5 s6 2 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 40 / 203 Unendliche Spiele Wichtige Gewinnbedingungen Beispiel (Fortsetzung) Ist die Gewinnbedingung durch die Mullerbedingung {{1, 2}, {1, 2, 3, 4}} gegeben, so gewinnt Eve die Partie s6 s3 s2 s4 s6 s5 (s2 s4 )ω , während Adam die Partie (s2 s4 s6 s5 )ω gewinnt. Ist die Gewinnbedingung durch die Büchibedingung {1} gegeben, so gewinnt Eve die Partie (s2 s4 s6 s3 )ω . Ist die Gewinnbedingung schließlich durch die Paritätsbedingung gegeben, so gewinnt Eve die Partie (s2 s4 s6 s5 )ω , während Adam die Partie (s2 s4 s6 s3 )ω gewinnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 41 / 203 Unendliche Spiele Büchi → Parität → Muller Sei GB = (S, →, ρ, χ, B) ein Büchispiel. Mit GB können wir das Paritätsspiel GP = (S, →, ρ, χ′ ) mit ( 1 falls χ(s) 6∈ B ′ χ (s) = 2 falls χ(s) ∈ B assozieren. Dann gilt für jede Partie w ∈ S ω : Eve gewinnt w in GB genau dann, wenn Eve w in GP gewinnt. Desweiteren kann ein Paritätsspiel GP = (S, →, ρ, χ) mit dem Mullerspiel GM = (S, →, ρ, χ, M) mit M = {F ⊆ C | max(F ) gerade} identifiziert werden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 42 / 203 Unendliche Spiele Strategien Sei G = (S, →, ρ, L) eine Spiel. Eine partielle Partie in G ist ein endlicher Pfad in G . Beachte: Jede partielle Partie in G ist Präfix einer Partie in G und jeder Präfix einer Partie in G ist eine partielle Partie in G . Sei τ : S ∗ Sx → S eine Abbildung (x ∈ {Eve, Adam}) und sei s0 s1 · · · sm ∈ S ∗ eine partielle Partie in G . Dann ist s0 s1 · · · sm konform mit τ , falls gilt: ∀i ∈ {0, . . . , m − 1} : si ∈ Sx =⇒ si+1 = τ (s0 s1 · · · si ) Eine Partie w ∈ S ω ist konform mit τ , falls jeder Präfix von w konform mit τ ist. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 43 / 203 Unendliche Spiele Strategien Definition (Strategie) Eine Strategie für Spieler x ist eine Abbildung τ : S ∗ Sx → S mit folgender Eigenschaft: Für alle w = us (u ∈ S ∗ , s ∈ Sx ) gilt s → τ (w ). Definition (Gewinnstrategie) Eine Strategie τ für Spieler x ist eine Gewinnstrategie für x auf U ⊆ S genau dann, wenn x jede mit τ konforme und bei einer Position aus U beginnende Partie gewinnt. Spieler x gewinnt auf U ⊆ S, falls x eine Gewinnstrategie auf U ⊆ S hat. Falls U = {s} gilt, sagen wir auch, dass x auf s (in dem Spiel G ) gewinnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 44 / 203 Unendliche Spiele Strategien Beispiel: Sei wieder folgende gefärbte Spielarena gegeben. s0 1 1 s2 3 s3 2 s4 s1 2 4 s5 2 s6 Die Gewinnbedingung sei durch die Mullerbedingung {{1, 2}, {1, 2, 3, 4}} gegeben. Eine Gewinnstrategie für Eve auf {s2 , s3 , s4 , s5 , s6 } ist: s4 falls w ∈ S ∗ s2 s falls w ∈ S ∗ s5 (s2 s4 )+ s6 3 τ (w ) = s5 falls w ∈ S ∗ s3 (s2 s4 )+ s6 ∪ (S \ {s3 , s5 })∗ s6 s falls w ∈ S ∗ s5 2 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 45 / 203 Unendliche Spiele Strategien Auf allen anderen Elementen ws (w ∈ S ∗ , s ∈ SEve ) können wir τ (w ) als einen beliebigen Nachfolger von s definieren. Beispiel (für Erreichbarkeitsspiele): Sei G die folgende Spielarena (grüne Knoten gehören Eve, rote Knoten gehören Adam, die Färbungsfunktion χ : S → C ist die Identitätsfunktion): 0 Markus Lohrey (Universität Leipzig) 1 2 3 Spieltheoretische Methoden in der Logik SS 2009 46 / 203 Unendliche Spiele Strategien Auf allen anderen Elementen ws (w ∈ S ∗ , s ∈ SEve ) können wir τ (w ) als einen beliebigen Nachfolger von s definieren. Beispiel (für Erreichbarkeitsspiele): Sei G die folgende Spielarena (grüne Knoten gehören Eve, rote Knoten gehören Adam, die Färbungsfunktion χ : S → C ist die Identitätsfunktion): 0 1 2 3 Die Gewinnbedingung sei durch die Erreichbarkeitsbedingung {3} gegeben. Eine Gewinnstrategie für Eve auf der Position 0: 0 Markus Lohrey (Universität Leipzig) 1 2 3 Spieltheoretische Methoden in der Logik SS 2009 46 / 203 Unendliche Spiele Strategien Auf allen anderen Elementen ws (w ∈ S ∗ , s ∈ SEve ) können wir τ (w ) als einen beliebigen Nachfolger von s definieren. Beispiel (für Erreichbarkeitsspiele): Sei G die folgende Spielarena (grüne Knoten gehören Eve, rote Knoten gehören Adam, die Färbungsfunktion χ : S → C ist die Identitätsfunktion): 0 1 2 3 Die Gewinnbedingung sei durch die Erreichbarkeitsbedingung {3} gegeben. Keine Gewinnstrategie für Eve auf der Position 0: 0 Markus Lohrey (Universität Leipzig) 1 2 3 Spieltheoretische Methoden in der Logik SS 2009 46 / 203 Unendliche Spiele Gewinnmengen Definition (Gewinnmengen) Sei G = (S, →, ρ, L) eine Spiel. Die Gewinnmenge für Spieler x ∈ {Eve, Adam} ist die Menge WGx = {s ∈ S | x gewinnt auf s}. Lemma 7 Sei G = (S, →, ρ, L) ein Spiel. Dann gilt WGEve ∩ WGAdam = ∅. Beweis: Angenommen es gilt s ∈ WGEve ∩ WGAdam . Sei τx eine Gewinnstrategie für Spieler x auf s. Dann gibt es eine eindeutige in s beginnende Partie w , die sowohl konform zu τEve als auch konform zu τAdam ist. Also gewinnen sowohl Eve als auch Adam die Partie w . Dies ist ein Widerspruch. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 47 / 203 Unendliche Spiele Erreichbarkeit → Büchi Sei GE = (S, →, ρ, χ, E) ein Erreichbarkeitsspiel. Wir können dann mit GE das Büchispiel GB = (S, →′ , χ, E) assozieren, wobei gilt: →′ = {(s, t) ∈ →| χ(s) 6∈ E} ∪ {(s, s) ∈ S × S | χ(s) ∈ E}. Dann gilt WGEve = WGEve und WGAdam = WGAdam . E B E B Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 48 / 203 Unendliche Spiele Determiniertheit Definition (Determiniertheit) Ein Spiel G = (S, →, ρ, L) ist determiniert, falls gilt: WGEve ∪ WGAdam = S. Dies bedeutet, dass in jeder Spielposition genau einer der beiden Spieler eine Gewinnstrategie hat. Später werden wir zeigen, dass Erreichbarkeisspiele, Mullerspiele und Paritätsspiele stets determiniert sind. Es gibt jedoch auch Spiele, die nicht determiniert sind. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 49 / 203 Unendliche Spiele Gedächtnislose Strategien Definition (gedächtnislose Strategien) Sei G = (S, →, ρ, L) ein Spiel. Eine gedächtnislose Strategie für Spieler x ist eine Abbildung τ : Sx → S mit s → τ (s) für alle s ∈ Sx . Die gedächtnislose Strategie τ : Sx → S kann offensichtlich mit der Strategie τ ′ : S ∗ Sx → S mit τ ′ (ws) = τ (s) identifiziert werden. Definition (gedächtnislos gewinnen) Sei G = (S, →, ρ, L) ein Spiel. Spieler x gewinnt auf U ⊆ S gedächtnislos, falls x eine gedächtnislose Gewinnstrategie auf U ⊆ S hat. Falls U = {s} gilt, sagen wir auch, dass x auf s (in dem Spiel G ) gedächtnislos gewinnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 50 / 203 Unendliche Spiele Gedächtnislose Gewinnmengen Definition (gedächtnislose Gewinnmengen) Sei G = (S, →, ρ, L) ein Spiel. Die gedächtnislose Gewinnmenge für Spieler x ∈ {Eve, Adam} ist die Menge gWxG = {s ∈ S | x gewinnt auf s gedächtnislos}. Offensichtlich gilt gWxG ⊆ WGx und damit (wegen WGEve ∩ WGAdam = ∅) Adam gWEve = ∅. G ∩ gWG Definition (gedächtnislose Determiniertheit) Ein Spiel G = (S, →, ρ, L) ist gedächtnislos determiniert, falls gilt: Adam gWEve = S. G ∪ gWG Später werden wir sehen, dass Erreichbarkeitsspiele und Paritätsspiele gedächtnislose determiniert sind. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 51 / 203 Unendliche Spiele Gedächtnislose Gewinnmengen Aber: Mullerspiele sind nicht gedächtnislose determiniert. Beispiel: Sei die folgende gefärbte Spielarena gegeben. 1 s0 2 s1 3 s2 Für die Mullerbedingung {{1, 2, 3}} kann zwar Eve in der Position s0 gewinnen (indem sie z.B. abwechselnd von s0 nach s1 bzw. s2 zieht), sie kann jedoch nicht gedächtnislos gewinnen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 52 / 203 Erreibarkeitsspiele Überblick In diesem Abschnitt werden wir Erreichbarkeitsspiele genauer untersuchen. Für endliche Erreichbarkeitsspiele zeigen wir, dass die Gewinnmenge für Eve sehr effizient berechnet werden kann. Später werden wir Erreichbarkeitsspiele auf das Model-Checking Problem für Modallogik anwenden. Konvention Ein Erreichbarkeitsspiel (S, →, ρ, χ, E) identifizieren wir im weiteren mit dem Tupel (S, →, ρ, χ−1 (E)). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 53 / 203 Erreibarkeitsspiele Attraktoren Sei G = (S, →, ρ) eine Spielarena und E ⊆ S. Wir definieren für einen Spieler x ∈ {Eve, Adam} eine monotone Funktion fx : 2S → 2S wie folgt: fx (A) = E ∪ {s ∈ Sx | NG (s) ∩ A 6= ∅} ∪ {s ∈ Sx | NG (s) ⊆ A} Sei AttxG (E) = µfx der Attraktor von E für Spieler x. Nach Satz 6 kann AttxG (E) auch als Limes der wie folgt definierten Mengen Attxξ (E) (ξ eine Ordinalzahl) definiert werden: Attx0 (E) = E Attxχ+1 (E) = Attxχ (E) ∪ {s ∈ Sx | NG (s) ∩ Attxχ (E) 6= ∅} ∪ {s ∈ Sx | NG (s) ⊆ Attxχ (E)} [ Attxχ (E) falls ξ ein Limesordinal ist Attxξ (E) = χ⊏ξ Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 54 / 203 Erreibarkeitsspiele Attraktoren Dann ist AttxG (E) = Attxα (E), wobei α die kleinste Ordinalzahl ξ mit Attxξ (E) = Attxξ+1 (E) ist. Wenn die Spielarena G klar ist, schreiben wir auch kurz Attx (E) anstatt AttxG (E). Wir definieren eine gedächtnislose Strategie τEx : Sx → S wie folgt: Wenn s ∈ Sx ∩ (Attxξ+1 (E) \ Attxξ (E)) für ein ξ ⊏ α dann wähle ein beliebiges t ∈ NG (s) ∩ Attxξ (E) aus (existiert!) und setze τEx (s) = t. Für alle anderen s ∈ Sx setze τEx (s) = t für ein beliebiges t ∈ NG (s). Lemma 8 Sei G = (S, →, ρ, E) ein Erreichbarkeitsspiel. Dann ist τEEve eine gedächtnislose Gewinnstrategie für Eve auf AttEve (E) und daher gilt AttEve (E) ⊆ gWEve G . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 55 / 203 Erreibarkeitsspiele Attraktoren Beweis: Sei s ∈ AttEve (E) und sei w = s1 s2 · · · eine in s = s1 beginnende und mit τEEve konforme Partie. Sei ξ ⊑ α das kleinste Ordinal mit Occ(w ) ∩ AttEve ξ (E) 6= ∅. Behauptung: ξ = 0 (wegen AttEve 0 (E) = E impliziert dies das Lemma) Sei si ∈ AttEve ξ (E). Angenommen es gilt ξ ⊐ 0. Fall 1: ξ ist ein Limesordinal. S Eve Wegen AttEve ξ (E) = χ⊏ξ Attχ (E) muss ein Ordinal χ ⊏ ξ mit si ∈ AttEve χ (E) existieren. Widerspruch zur Minimalität von ξ. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 56 / 203 Erreibarkeitsspiele Attraktoren Fall 2: ξ = χ + 1 ist ein Nachfolgerordinal. Also gilt si ∈ AttEve χ (E) ∪ {s ∈ SEve | NG (s) ∩ AttEve χ (E) 6= ∅} ∪ {s ∈ SAdam | NG (s) ⊆ AttEve χ (E)}. Aufgrund der Minimalität von ξ können wir si 6∈ AttEve χ (E) annehmen. Fall 2.1: si ∈ {s ∈ SEve | NG (s) ∩ AttEve χ (E) 6= ∅} si+1 = τEx (si ) ∈ AttEve χ (E) Widerspruch zur Minimalität von ξ = χ + 1. Fall 2.1: si ∈ {s ∈ SAdam | NG (s) ⊆ AttEve χ (E)} si+1 ∈ AttEve χ (E) Widerspruch zur Minimalität von ξ = χ + 1. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 57 / 203 Erreibarkeitsspiele Attraktoren Lemma 9 Sei G = (S, →, ρ) eine Arena, E ⊆ S und s ∈ S \ Attx (E). Dann gilt: Wenn s ∈ Sx , dann NG (s) ⊆ S \ Attx (E). Wenn s ∈ Sx , dann NG (s) ∩ (S \ Attx (E)) 6= ∅. Beweis: Da Attx (E) Fixpunkt der Abbildung fx von Folie 54 ist, folgt: Attx (E) = E ∪ {s ∈ Sx | NG (s) ∩ Attx (E) 6= ∅} ∪ {s ∈ Sx | NG (s) ⊆ Attx (E)}. Hieraus ergibt sich das Lemma. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 58 / 203 Erreibarkeitsspiele Attraktoren Lemma 10 Sei G = (S, →, ρ, E) ein Erreichbarkeitsspiel. Dann gilt S \ AttEve (E) ⊆ gWAdam . G Beweis: Wir definieren eine gedächtnislose Strategie τEAdam für Adam wie folgt: Sei s ∈ SAdam . Falls s ∈ AttEve (E) sei τEAdam (s) eine beliebige Position in NG (s). Falls s ∈ SAdam \ AttEve (E), muss NG (s) ∩ (S \ AttEve (E)) 6= ∅ gelten (Lemma 9). Wir wählen nun eine beliebige Position s ′ ∈ NG (s) ∩ (S \ AttEve (E)) aus und setzen τEAdam (s) = s ′ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 59 / 203 Erreibarkeitsspiele Attraktoren Sei nun s ∈ S \ AttEve (E) und sei w = s1 s2 · · · eine in s = s1 beginnende und mit τEAdam konforme Partie. Durch Induktion über i ≥ 1 folgt leicht, dass si ∈ S \ AttEve (E) für alle i ≥ 1 gilt. Hierzu ist nur zu beachten: Für si ∈ SAdam \ AttEve (E) gilt si+1 = τEAdam (si ) ∈ S \ AttEve (E). Für si ∈ SEve \ AttEve (E) gilt si+1 ∈ NG (si ) ⊆ S \ AttEve (E) (Lemma 9). Wegen E ⊆ AttEve (E) folgt si ∈ S \ E für alle i ≥ 1. Also gewinnt Adam die Partie w . τEAdam ist somit eine gedächtnislose Gewinnstrategie für Adam auf der Menge S \ AttEve (E). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 60 / 203 Erreibarkeitsspiele Attraktoren Satz 11 Sei G = (S, →, ρ, E) ein Erreichbarkeitsspiel. Dann gilt: Eve WGEve = gWEve (E) G = Att WGAdam = gWAdam = S \ AttEve (E) G Insbesondere ist G gedächtnislos determiniert. Beweis: Lemma 8 Lemma 10 AttEve (E) ⊆ gWEve G . S \ AttEve (E) ⊆ gWAdam . G Adam Wegen gWEve = ∅ folgt die Aussage des Lemmas. G ∩ gWG Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 61 / 203 Erreibarkeitsspiele Berechnung der Gewinnpositionen für Eve Satz 12 Für ein gegebenes endliches Erreichbarkeitsspiel G = (S, →, ρ, E) kann WGEve in Polynomialzeit berechnet werden. Bei geeigneter Repräsentation des Graphen (S, →) (Adjazenzlisten für (S, →) und (S, →−1 )) kann man WGEve in Zeit O(|S| + | → |) berechnen. Beweis: Eve Wegen Satz 11 gilt WGEve = gWEve (E). G = Att Aus der Definition des Attraktors AttEve (E) folgt, dass der Algorithmus auf der nächsten Folie die Gewinnmenge von Eve sowie eine Gewinnstrategie korrekt berechnet. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 62 / 203 Erreibarkeitsspiele Berechnung der Gewinnpositionen für Eve winning-region(G = (S, →, ρ, E)) W := E for all s ∈ SEve do τ (s) := t mit t ∈ NG (s) beliebig endfor repeat U1 := {s ∈ S \ W | ρ(s) = Eve und NG (s) ∩ W 6= ∅} U2 := {s ∈ S \ W | ρ(s) = Adam und NG (s) ⊆ W } forall s ∈ U1 do τ (s) := t, wobei t ∈ NG (s) ∩ W beliebig ist. W := W ∪ U1 ∪ U2 until U1 ∪ U2 = ∅ return W und τ Die repeat-until-Schleife kann höchstens |S| mal durchlaufen werden. Ein Durchlauf durch die repeat-until Schleife benötigt höchstens | → | Schritte. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 63 / 203 Erreibarkeitsspiele Weitere Fakten über Erreichbarkeitsspiele Der folgende Satz sagt aus, dass in einem Erreichbarkeitsspiel jeder Spieler eine feste (gedächtnislose) Strategie hat, mit der sie/er auf allen Spielpositionen, wo sie/er überhaupt gewinnen kann, gewinnt. Satz 13 Sei G = (S, →, ρ, E) ein Erreichbarkeitsspiel. Dann existieren gedächtnislose Strategien τ Eve und τ Adam für Eve bzw. Adam mit: τ x ist eine Gewinnstrategie für Spieler x auf seiner Gewinnmenge WGx . Beweis: Die im Beweis von Lemma 8 und 10 betrachteten Strategien haben die gewünschten Eigenschaften. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 64 / 203 Erreibarkeitsspiele Weitere Fakten über Erreichbarkeitsspiele Das folgende Lemma benötigen wir später: Lemma 14 Sei G = (S, →, ρ, E) ein Erreichbarkeitsspiel und sei s ∈ S \ E. 1 Wenn s ∈ SEve , dann (NG (s) ∩ WGEve 6= ∅ ⇐⇒ s ∈ WGEve ). 2 Wenn s ∈ SAdam , dann (NG (s) ⊆ WGEve ⇐⇒ s ∈ WGEve ). Beweis: Nach Satz 11 gilt WGEve = AttEve (E). Da AttEve (E) Fixpunkt der Abbildung fEve von Folie 54 ist, folgt WGEve = E ∪ {s ∈ SEve | NG (s) ∩ WGEve 6= ∅} ∪ {s ∈ SAdam | NG (s) ⊆ WGEve }. Hieraus ergibt sich das Lemma. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 65 / 203 Modallogik und Logik 1.Stufe Überblick In diesem Abschnitt werden wir Erreichbarkeitsspiele benutzen, um das Model-Checking Problem für zwei Logiken zu lösen: Modallogik Logik 1.Stufe (= Prädikatenlogik, siehe Vorlesung Logik im 1. Semester) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 66 / 203 Modallogik und Logik 1.Stufe Kripkestrukturen Eine Kripkestruktur ist ein Tupel K = (V , E , Π, π) wobei gilt: (V , E ) ist ein gerichteter Graph. V wird auch als Menge der Welten oder Zustände bezeichnet, E ⊆ V × V ist die Menge der Systemübergänge. Π ist eine endliche Menge (Menge der Knotenmarkierungen oder atomaren Propositionen) π : Π → 2V , π(p) ist die Menge der p-markierten Knoten. Falls V endlich ist, ist K eine endliche Kripkestruktur. Für v ∈ V sei NK (v ) = N(V ,E ) (v ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 67 / 203 Modallogik und Logik 1.Stufe Kripkestrukturen Beispiel: Die endliche Kripkestruktur K = ({0, 1, 2, 3}, E , {p, q}, π) mit E = {(0, 1), (0, 2), (1, 3)(2, 3), (3, 0), (3, 3)} und π(p) = {0}, π(q) = {0, 1, 3} kann wie folgt graphisch dargestellt werden: 2 q 3 p, q 0 q 1 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 68 / 203 Modallogik und Logik 1.Stufe Syntax und Semantik der Modallogik Sei Π eine endliche Menge von Knotenmarkierungen. Die Menge aller Formeln der Modallogik über Π (kurz ML(Π)) ist die kleinste Menge mit folgenden Eigenschaften: Π ⊆ ML(Π) (alle Propositionen sind Formeln) Wenn ϕ, ψ ∈ ML(Π), dann auch ¬ϕ, ϕ ∧ ψ, ϕ ∨ ψ ∈ ML(Π). Wenn ϕ ∈ ML(Π), dann auch ♦ϕ, ϕ ∈ ML(Π). Sei nun K = (V , E , Π, π) eine Kripkestruktur. Wir ordnen jeder Formel ϕ ∈ ML(Π) induktiv eine Teilmenge [[ϕ]]K ⊆ V zu. Für p ∈ Π ist [[p]]K = π(p) [[¬ϕ]]K = V \ [[ϕ]]K [[ϕ ∨ ψ]]K = [[ϕ]]K ∪ [[ψ]]K , [[ϕ ∧ ψ]]K = [[ϕ]]K ∩ [[ψ]]K [[♦ϕ]]K = {v ∈ V | NK (v ) ∩ [[ϕ]]K 6= ∅} [[ϕ]]K = {v ∈ V | NK (v ) ⊆ [[ϕ]]K } Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 69 / 203 Modallogik und Logik 1.Stufe Syntax und Semantik der Modallogik Für einen Knoten v ∈ V der Kripkestruktur K und eine Formel ϕ ∈ ML(Π) definieren wir: (K , v ) |= ϕ ⇐⇒ v ∈ [[ϕ]]K Beispiel: Sei K wieder die folgende Kripkestruktur: 2 q 3 p, q 0 q 1 Dann gilt z. B. (K , 0) |= p ∧ ♦♦(¬p ∧ q). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 70 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik Sei K = (V , E , Π, π) eine Kripkestruktur, v ∈ V und ϕ ∈ ML(Π). Wir konstruieren nun ein endliches Erreichbarkeitsspiel G (K , ϕ) und eine Spielposition u, so dass gilt: (K , v ) |= ϕ ⇐⇒ u ∈ WGEve (K ,ϕ) Wie können o.B.d.A. davon ausgehen, dass in ϕ das Negationszeichen nur direkt vor Propositionen p ∈ Π steht, da folgende Äquivalenzen gelten: ¬(ψ ∧ θ) ≡ ¬ψ ∨ ¬θ ¬(ψ ∨ θ) ≡ ¬ψ ∧ ¬θ ¬♦ψ ≡ ¬ψ ¬ψ ≡ ♦¬ψ Hierbei bedeutet ψ ≡ θ, dass [[ψ]]K = [[θ]]K für jede Kripkestruktur K . Die Menge sub(ϕ) aller Teilformeln von ϕ ist induktiv wie folgt definiert: sub(p) = {p} und sub(¬p) = {¬p} für p ∈ Π sub(ψ ◦ θ) = {ψ ◦ θ} ∪ sub(ψ) ∪ sub(θ) für ◦ ∈ {∧, ∨} sub(◦ψ) = {◦ψ} ∪ sub(ψ) für ◦ ∈ {♦, } Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 71 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik Wir definieren das Erreichbarkeitsspiel G (K , ϕ) = (S, →, ρ, E) wie folgt: S = V × sub(ϕ) (beachte: V war die Zustandsmenge von K ) → ist wie folgt definiert: v, θ v, θ v, ψ ∧ θ v, ψ ∨ θ v, ψ v , ψ u, ψ v, ψ ∀u ∈ NK (v ) v , ♦ψ u, ψ ∀u ∈ NK (v ) Beachte: Knoten der Form (v , p), (v , ¬p) mit p ∈ Π sowie (v , ♦ψ), (v , ψ) mit NK (v ) = ∅ sind Sackgassen in dem Spiel. Nach unserer Konvention identifizieren wir diese mit Schleifen an den entsprechenden Positionen. ρ(v , ψ ∧ θ) = ρ(v , ψ) = Adam, ρ(v , ψ ∨ θ) = ρ(v , ♦ψ) = Eve Alle anderen ρ-Werte können beliebig definiert werden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 72 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik E = {(v , p) | p ∈ Π, v ∈ π(p)} ∪ {(v , ¬p) | p ∈ Π, v 6∈ π(p)}∪ {(v , ψ) | NK (v ) = ∅} Intuition: Eve will von einer Position (v , ϕ) aus zeigen, dass (K , v ) |= ϕ gilt. Adam will von einer Position (v , ϕ) aus zeigen, dass (K , v ) 6|= ϕ gilt. Hieraus ergibt sich die Definition des Spiels G (K , ϕ) auf natürliche Weise. Z. B.: (v , ♦ψ) → (u, ψ) für alle u ∈ V mit (v , u) ∈ E , denn um (K , v ) |= ♦ψ zu zeigen (Eves Ziel) muss man einen Knoten u ∈ V mit (v , u) ∈ E finden, für den (K , u) |= ψ gilt. (v , p) ∈ E, falls v ∈ π(p), denn letzteres impliziert (K , v ) |= p. Also sollte Eve an der Position (v , p) gewinnen, was natürlich auch der Fall ist. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 73 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik Beispiel: Sei K die Kripkestruktur p 0 q 1 Sei ϕ = ♦(p ∨ q). Dann sieht das Spiel G (K , ϕ) wie folgt aus (grüne Knoten gehören Eve, rote Knoten gehören Adam) 0, ♦(p ∨ q) 1, ♦(p ∨ q) 0, (p ∨ q) 1, (p ∨ q) 0, p ∨ q 1, p ∨ q 0, p Markus Lohrey (Universität Leipzig) 0, q 1, p 1, q Spieltheoretische Methoden in der Logik SS 2009 74 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik Satz 15 Sei K = (V , E , Π, π) eine Kripkestruktur und ϕ ∈ ML(Π). Dann gilt für alle v ∈ V und alle ψ ∈ sub(ϕ): (K , v ) |= ψ ⇐⇒ (v , ψ) ∈ WGEve (K ,ϕ) Beweis: Wir beweisen den Satz durch Induktion über den Aufbau der Formel ψ. Sei G = G (K , ϕ) = (V × sub(ϕ), →, ρ, E). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 75 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik 1. Fall: ψ = p ∈ Π. Dann gilt (K , v ) |= p ⇐⇒ v ∈ π(p) ⇐⇒ (v , p) ∈ E ⇐⇒ (v , p) ∈ WGEve (K ,ϕ) Für die letzte Äquivalenz beachte, dass wir in (v , p) eine Schleife in G haben (nach unserer Konvention). 2. Fall: ψ = ¬p für ein p ∈ Π. Dann gilt (K , v ) |= ¬p ⇐⇒ v 6∈ π(p) ⇐⇒ (v , ¬p) ∈ E ⇐⇒ (v , ¬p) ∈ WGEve (K ,ϕ) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 76 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik 3. Fall: ψ = ψ1 ∨ ψ2 . Dann gilt (K , v ) |= ψ ⇐⇒ ∃i ∈ {1, 2} : (K , v ) |= ψi IH ∃i ∈ {1, 2} : (v , ψi ) ∈ WGEve (K ,ϕ) ⇐⇒ Lem. 14 ⇐⇒ (v , ψ) ∈ WGEve (K ,ϕ) 4. Fall: ψ = ψ1 ∧ ψ2 . Dann gilt (K , v ) |= ψ ⇐⇒ ∀i ∈ {1, 2} : (K , v ) |= ψi IH ∀i ∈ {1, 2} : (v , ψi ) ∈ WGEve (K ,ϕ) ⇐⇒ Lem. 14 ⇐⇒ Markus Lohrey (Universität Leipzig) (v , ψ) ∈ WGEve (K ,ϕ) Spieltheoretische Methoden in der Logik SS 2009 77 / 203 Modallogik und Logik 1.Stufe Erreichbarkeitsspiele und Modallogik 5. Fall: ψ = ♦θ. Dann gilt (K , v ) |= ψ ⇐⇒ ∃u ∈ NK (v ) : (K , u) |= θ IH ∃u ∈ NK (v ) : (u, θ) ∈ WGEve (K ,ϕ) ⇐⇒ Lem. 14 ⇐⇒ (v , ψ) ∈ WGEve (K ,ϕ) 6. Fall: ψ = θ. Dann gilt (K , v ) |= ψ ⇐⇒ ∀u ∈ NK (v ) : (K , u) |= θ IH ∀u ∈ NK (v ) : (u, θ) ∈ WGEve (K ,ϕ) ⇐⇒ Lem. 14 ⇐⇒ (v , ψ) ∈ WGEve (K ,ϕ) Beachte: Die jeweils letzten Äquivalenzen im 5. und 6. Fall gelten auch falls NK (v ) = ∅ aufgrund (i) der Definition von E und (ii) unserer Schleifenkonvention für Sackgassen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 78 / 203 Modallogik und Logik 1.Stufe Model-Checking Modallogik Satz 16 Für eine gegebene endliche Kripkestruktur K = (V , E , Π, π), v ∈ V und ϕ ∈ ML(Π) können wir in Zeit O(|V |2 · |ϕ|) entscheiden, ob (K , v ) |= ϕ gilt. Beweis: (1) Konstruiere das Erreichbarkeitsspiel G = G (K , ϕ) Beachte: G hat nur |V | · |ϕ| Knoten und höchstens |V |2 · |ϕ| viele Kanten. (2) Berechne W = WGEve und teste, ob (v , ϕ) ∈ W gilt. Nach Satz 12 können wir W in Zeit O(|V |2 · |ϕ|) berechnen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 79 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe: Syntax Logik 1. Stufe (= Prädikatenlogik) wurde in der Vorlesung Logik im 1. Semester behandelt. Eine Signatur ist ein Paar S = (R, arity) wobei gilt: R ist eine endliche Menge von Relationssymbolen. arity : R → N ist eine Funktion, die jedem Relationssymbol r ∈ R seine Stelligkeit arity(r ) zuordnet. Sei X im folgenden eine abzählbar-unendliche Menge von Variablen. Variablen werden wir im folgenden mit x, y , z, x ′ , x0 , . . . bezeichnen. Die Menge FO(S) aller Formeln der Logik 1. Stufe (über der Signatur S) ist die kleinste Menge mit: Wenn r ∈ R, arity(r ) = n und x1 , . . . , xn ∈ X , dann r (x1 , . . . , xn ) ∈ FO(S). Wenn ϕ, ψ ∈ FO(S), dann auch ¬ϕ, ϕ ∧ ψ, ϕ ∨ ψ ∈ FO(S). Wenn ϕ ∈ FO(S) und x ∈ X , dann auch ∃x ϕ, ∀x ϕ ∈ FO(S). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 80 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe: Syntax Beachte: Im Gegensatz zur Vorlesung Logik erlauben wir keine Funktionssymbole. Für das Model-Checking Problem für Logik 1. Stufe ist dies keine Einschränkung, da eine Funktion f : An → A durch die Relation {(a, a) ∈ An+1 | f (a) = a} ersetzt werden kann. Die Menge der freien Variablen free(ϕ) ⊆ X einer Formel ϕ ∈ FO(S) ist induktiv wie folgt definiert: free(r (x1 , . . . , xn )) = {x1 , . . . , xn } free(¬ϕ) = free(ϕ), free(ϕ ∧ ψ) = free(ϕ ∨ ψ) = free(ϕ) ∪ free(ψ). free(∃x ϕ) = free(∀x ϕ) = free(ϕ) \ {x}. Eine Formel ϕ ∈ FO(S) ist ein Satz, falls free(ϕ) = ∅ gilt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 81 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe: Semantik Eine Struktur über der Signatur S = (R, arity) ist ein Tripel A = (A, IS , IX ), wobei gilt: A ist eine beliebige nicht-leere Menge (das Universum der Struktur). IS ist eine Funktion, die jedem Relationssymbol r ∈ R eine arity(r )-stellige Relation IS (r ) ⊆ Aarity(r ) zuordnet. IX : X → A ist eine partielle Funktion, ihr Definitionsbereich sei dom(IX ). Für eine Formel ϕ ∈ FO(S) und eine Struktur A = (A, IS , IX ) über der Signatur S mit dom(IX ) = free(ϕ) schreiben wir A |= ϕ genau dann, wenn einer der folgenden Fälle gilt: ϕ = r (x1 , . . . , xn ) und (IX (x1 ), . . . , IX (xn )) ∈ IS (r ). ϕ = ¬ψ und A 6|= ψ. ϕ = ψ ∧ θ und (A |= ψ und A |= θ). ϕ = ψ ∨ θ und (A |= ψ oder A |= θ). ϕ = ∃x ψ und es gibt ein a ∈ A mit (A, IS , IX ∪ {(x, a)}) |= ψ ϕ = ∀x ψ und für alle a ∈ A gilt (A, IS , IX ∪ {(x, a)}) |= ψ. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 82 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe: Model-Checking Die Struktur A = (A, IS , IX ) ist endlich, falls A eine endliche Menge ist. Falls dom(IX ) = ∅ gilt, identifizieren wir die Struktur (A, IS , IX ) mit (A, IS ). Das Model-Checking-Problem für FO(S): EINGABE: Eine endliche Struktur A = (A, IS ) und ein Satz ϕ ∈ FO(S). FRAGE: Gilt A |= ϕ? Wir werden das Model-Checking-Problem für FO(S) wieder mittels eines Erreichbarkeitsspiels lösen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 83 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe und Erreichbarkeitsspiele Sei A = (A, IS ) eine endliche Struktur und ϕ ∈ FO(S). O.B.d.A. kommt in ϕ die Negation ¬ nur direkt vor atomaren Formeln vor. Wir definieren ein Erreichbarkeitsspiel G (A, ϕ) = (S, →, ρ, E) wie folgt: S = {(I , ψ) | ψ ∈ sub(ϕ), I : free(ψ) → A} → ist wie folgt definiert: I ↾free(θ), θ I ↾free(θ), θ I,ψ ∧ θ I,ψ ∨ θ I ↾free(ψ), ψ I , ∀x ψ I ∪ {(x, a)}, ψ ∀a ∈ A Markus Lohrey (Universität Leipzig) I ↾free(ψ), ψ I , ∃x ψ Spieltheoretische Methoden in der Logik I ∪ {(x, a)}, ψ ∀a ∈ A SS 2009 84 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe und Erreichbarkeitsspiele Beachte: Da A 6= ∅ gilt, gibt es keine Sackgassen. ρ ist wie folgt definiert: ρ(I , ψ ∨ θ) = Eve ρ(I , ψ ∧ θ) = Adam ρ(I , ∃x ψ) = Eve ρ(I , ∀x ψ) = Adam Für alle anderen Spielpositionen s kann ρ(s) beliebig definiert werden. Die Erreichbarkeitsbedingung ist E = {(I , r (x1 , . . . , xn )) | (I (x1 ), . . . , I (xn )) ∈ IS (r )} ∪ {(I , ¬r (x1 , . . . , xn )) | (I (x1 ), . . . , I (xn )) 6∈ IS (r )}. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 85 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe und Erreichbarkeitsspiele Satz 17 Sei A = (A, IS ) eine endliche Struktur und ϕ ∈ FO(S). Dann gilt für alle ψ ∈ sub(ϕ) und I : free(ψ) → A: (A, IS , I ) |= ψ ⇐⇒ (I , ψ) ∈ WGEve (A,ϕ) Beweis: Analog zum Beweis von Satz 15 für Modallogik (Übung). Folgt aus Satz 17, dass das Model-Checking-Problem für FO(S) in Polynomialzeit gelöst werden kann ? Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 86 / 203 Modallogik und Logik 1.Stufe Logik 1. Stufe und Erreichbarkeitsspiele Satz 17 Sei A = (A, IS ) eine endliche Struktur und ϕ ∈ FO(S). Dann gilt für alle ψ ∈ sub(ϕ) und I : free(ψ) → A: (A, IS , I ) |= ψ ⇐⇒ (I , ψ) ∈ WGEve (A,ϕ) Beweis: Analog zum Beweis von Satz 15 für Modallogik (Übung). Folgt aus Satz 17, dass das Model-Checking-Problem für FO(S) in Polynomialzeit gelöst werden kann ? Nein! Das Problem ist, dass das Spiel G (A, ϕ) nicht polynomiell in der Größe von ϕ beschränkt ist: Die Menge der Spielpositionen von G (A, ϕ) ist S = {(I , ψ) | ψ ∈ sub(ϕ), I : free(ψ) → A}. P |S| = ψ∈sub(ϕ) |A||free(ψ)| . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 86 / 203 Modallogik und Logik 1.Stufe Komplexität von Model-Checking für FO Bemerkung: In der Tat ist das Model-Checking Problem für FO(S) PSPACE-vollständig (insbesondere also NP-hart), weshalb es wohl keinen Polynomialzeitalgorithmus für das Problem gibt. Wir können jedoch Fragemente von FO(S) definieren, für die das Model-Checking Problem in Polynomialzeit entschieden werden kann. Für ϕ ∈ FO(S) definiere die Weite von ϕ width(ϕ) = max{|free(ψ)| | ψ ∈ sub(ϕ)}. Satz 18 Das Model-Checking Problem für FO(S) kann in Zeit O(|ϕ| · |A|width(ϕ) ) gelöst werden. Allgemeiner: Für eine gegebene Formel ϕ ∈ FO(S) und eine Struktur A = (A, IS , IX ) mit dom(IX ) = free(ϕ) können wir in Zeit O(|ϕ| · |A|width(ϕ) ) entscheiden, ob A |= ϕ gilt? Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 87 / 203 Modallogik und Logik 1.Stufe Komplexität von Model-Checking für FO Beweis: (1) Konstruiere das Erreichbarkeitsspiel G = G (A, ϕ) Beachte: G hat höchsten |A|width(ϕ) · |ϕ| viele Knoten und nur O(|A|width(ϕ) · |ϕ|) viele Kanten. (2) Berechne W = WGEve und teste, ob (IX , ϕ) ∈ W gilt. Nach Satz 12 können wir W in Zeit O(|A|width(ϕ) · |ϕ|) berechnen. Korollar aus Satz 18 Sei w ≥ 0 eine feste Konstante. Das Model-Checking Problem, eingeschränkt auf FO(S)-Formeln der Weite ≤ w , kann in Polynomialzeit gelöst werden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 88 / 203 Modallogik und Logik 1.Stufe Modallogik → FO Sei K = (V , E , Π, π) eine Kripkestruktur. Definiere die Signatur SK = ({e} ∪ Π, arity), wobei arity(e) = 2 und arity(p) = 1 für alle p ∈ Π. Sei IK die Interpretation mit IK (e) = E und IK (p) = π(p) für p ∈ Π. Dann können wir K mit der Struktur AK = (V , IK ) über SK identifizieren. Wir definieren nun für jede modallogische Formel ϕ ∈ ML(Π) eine Formel ϕf ∈ FO(SK ) induktiv. Seien x0 , y0 ∈ X zwei ausgezeichnete Variablen. p f = p(x0 ) für p ∈ Π. (¬ϕ)f = ¬ϕf , (ϕ ∧ ψ)f = ϕf ∧ ψ f , (ϕ ∨ ψ)f = ϕf ∨ ψ f (♦ϕ)f = ∃y0 (e(x0 , y0 ) ∧ (ϕf )[x0 7→ y0 ]) (ϕ)f = ∀y0 (e(x0 , y0 ) → (ϕf )[x0 7→ y0 ]) Hierbei entsteht ψ[x0 7→ y0 ] aus ψ, indem jedes freie Vorkommen von x0 in ψ durch y0 ersetzt wird. Dabei müssen gebundene Vorkommen von y0 evtl. umbenannt werden, um neue Bindungen zu vermeiden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 89 / 203 Modallogik und Logik 1.Stufe Modallogik → FO Beachte: Für jede Formel ϕ ∈ ML(Π) gilt free(ϕf ) = {x0 } und width(ϕf ) ≤ 2. Lemma 19 Für jede Kripkestruktur K = (V , E , Π, π), jeden Knoten v ∈ V und jede Formel ϕ ∈ ML(Π) gilt: (K , v ) |= ϕ ⇐⇒ (AK , x0 7→ v ) |= ϕf Aus Lemma 19 sowie Satz 18 folgt Satz 16: Für eine gegebene Kripkestruktur K = (V , E , Π, π), v ∈ V und ϕ ∈ ML(Π) können wir in Zeit O(|V |2 · |ϕ|) entscheiden, ob (K , v ) |= ϕ gilt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 90 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik Eine Fomel ϕ ∈ ML(Π) ist erfüllbar, falls eine Kripkestruktur K = (V , E , Π, π) und v ∈ V mit (K , v ) |= ϕ existieren. Satz 20 (small model property für Modallogik) Sei ϕ ∈ ML(Π) erfüllbar. Dann existiert eine Kripkestruktur K = (V , E , Π, π) und v ∈ V mit (K , v ) |= ϕ |V | ≤ 2|ϕ| Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 91 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik Beweis: Sei ϕ ∈ ML(Π) erfüllbar. Also existiert eine Kripkestruktur K = (V , E , Π, π) und v ∈ V mit (K , v ) |= ϕ. Definiere eine Abbildung f : V → 2sub(ϕ) durch f (x) = {ψ ∈ sub(ϕ) | (K , x) |= ψ}. und sei ≡ folgende Äquivalenzrelation auf V : x ≡y Beachte: x ≡ y ⇐⇒ ⇐⇒ f (x) = f (y ). ∀ψ ∈ sub(ϕ) : (K , x) |= ψ ⇔ (K , y ) |= ψ. [x] = {y ∈ V | x ≡ y } ist die x enthaltende Äquivalenzklasse. V ′ = {[x] | x ∈ V } ist die Menge aller Äquivalenzklassen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 92 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik Nun definieren wir die Kripkestruktur K ′ = (V ′ , E ′ , Π, π ′ ), wobei E ′ = {([x], [y ]) | ∃(u, v ) ∈ E : u ≡ x, v ≡ y } π ′ (p) = {[x] | ∃u ∈ π(p) : u ≡ x} für p ∈ Π (A) |V ′ | ≤ 2|ϕ| Wegen [x] = [y ] ⇐⇒ f (x) = f (y ) gilt |V ′ | = |f (V )| ≤ |2sub(ϕ) | ≤ 2|ϕ| . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 93 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik (B) (K ′ , [v ]) |= ϕ. Wir zeigen die folgende allgemeinere Aussage durch Induktion über den Aufbau der Formel ψ ∈ sub(ϕ): ∀x ∈ V : (K , x) |= ψ ⇐⇒ (K ′ , [x]) |= ψ Wegen (K , v ) |= ϕ folgt hieraus (K ′ , [v ]) |= ϕ. 1.Fall. ψ = p ∈ Π: Es gilt (K , x) |= p ⇐⇒ ∗ x ∈ π(p) ⇐⇒ [x] ∈ π ′ (p) ⇐⇒ (K ′ , [x]) |= p Zu (*): Es gilt offensichtlich x ∈ π(p) [x] ∈ π ′ (p). ′ Andererseits: [x] ∈ π (p) ∃y ∈ π(p) : x ≡ y x ∈ π(p) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 94 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik 2.Fall. ψ = ¬θ: Es gilt (K , x) |= ¬θ ⇐⇒ (K , x) 6|= θ IH ⇐⇒ (K ′ , [x]) 6|= θ ⇐⇒ (K ′ , [x]) |= ¬θ 3.Fall. ψ = ψ1 ∧ ψ2 : Es gilt (K , x) |= ψ1 ∧ ψ2 ⇐⇒ IH Markus Lohrey (Universität Leipzig) (K , x) |= ψ1 und (K , x) |= ψ2 ⇐⇒ (K ′ , [x]) |= ψ1 und (K ′ , [x]) |= ψ2 ⇐⇒ (K ′ , [x]) |= ψ1 ∧ ψ2 Spieltheoretische Methoden in der Logik SS 2009 95 / 203 Modallogik und Logik 1.Stufe Kleine Modelle in der Modallogik 4.Fall. ψ = ♦θ. Gelte zunächst (K , x) |= ♦θ. ∃y ∈ V : (x, y ) ∈ E , (K , y ) |= θ. (K ′ , [y ]) |= θ IH ([x], [y ]) ∈ E ′ (x, y ) ∈ E (K ′ , [x]) |= ♦θ Gelte nun (K ′ , [x]) |= ♦θ ∃[y ] ∈ V ′ : ([x], [y ]) ∈ E ′ , (K ′ , [y ]) |= θ. IH (K , y ) |= θ ([x], [y ]) ∈ E ′ ∃(u, v ) ∈ E : x ≡ u, y ≡ v y ≡v (K , v ) |= θ x ≡u (K , x) |= ♦θ Markus Lohrey (Universität Leipzig) (K , u) |= ♦θ Spieltheoretische Methoden in der Logik SS 2009 96 / 203 Modallogik und Logik 1.Stufe Erfüllbarkeit für Modallogik Korollar aus Satz 20 Es ist entscheidbar, ob eine gegebene Formel ϕ ∈ ML(Π) erfüllbar ist. Beweis: Da Π endlich ist gibt es nur endlich viele Kripkestrukturen K = (V , E , Π, π) mit |V | ≤ 2|ϕ| . Für jedes solche K und alle v ∈ V testen wir, ob (K , v ) |= ϕ gilt. Bekommen wir dabei einen Treffer, so ist ϕ erfüllbar, ansonsten ist ϕ nach Satz 20 nicht erfüllbar. Bemerkungen: Der im obigen Beweis skizzierte Algorithmus ist nicht sehr effizient. Es wurde gezeigt, dass das Erfüllbarkeitsproblem für Modallogik PSPACE-vollständig ist. Das Erfüllbarkeitsproblem für Logik 1. Stufe ist sogar unentscheidbar. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 97 / 203 Paritätsspiele Überblick In diesem Kapitel werden wir Paritätsspiele genauer untersuchen. Wir werden zunächst zeigen, wie Mullerspiele auf Paritätsspiele reduziert werden können. Danach zeigen wir das zentrale Resultat über Paritätsspiele: Paritätsspiele sind gedächtnislos determiniert. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 98 / 203 Paritätsspiele Muller → Parität Die Paritätsbedingung erscheint zunächst recht speziell, sie ist jedoch in der Tat sehr mächtig: Satz 21 Sei G = (S, →, ρ, χ, M) ein Mullerspiel. Dann existiert ein Paritätsspiel G ′ = (S ′ , →′ , ρ′ , χ′ ) und eine Abbildung f : S → S ′ , so dass für alle s ∈ S gilt: Eve gewinnt auf s in G ⇐⇒ Eve gewinnt auf f (s) in G ′ . Falls S endlich ist, ist auch S ′ endlich und G ′ , f kann in exponentieller Zeit aus G berechnet werden. Beweis: Erinnerung: Für ein Wort w = a1 a2 · · · an ist Occ(w ) = {a1 , a2 , . . . , an } die Menge aller Symbole, die in w vorkommen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 99 / 203 Paritätsspiele Muller → Parität Sei C die Farbenmenge von G , d. h. χ : S → C und M ⊆ 2C . Sei # 6∈ C und sei C ′ = {x#y | x, y ∈ C ∗ , ∀c ∈ C : |xy |c ≤ 1, |y | ≥ 1}. Hier ist |w |a die Anzahl der Vorkommen eines Symbols a in einem Wort w . Die Menge der Spielpositionen von G ′ ist S ′ = {(s, x#y ) ∈ S × C ′ | y endet mit χ(s) }. Sei ρ′ (s, x#y ) = ρ(s) für alle (s, x#y ) ∈ S × C ′ . Definiere die update-Funktion µ : S × C ′ x # y χ(s) µ(s, x#y ) = x1 # x2 y χ(s) x y1 # y2 χ(s) → C ′ wie folgt: falls χ(s) 6∈ Occ(x y ). falls x = x1 χ(s) x2 . falls y = y1 χ(s) y2 . Die Kantenrelation von G ′ ist dann: →′ = { (s, x#y ), (t, µ(t, x#y )) | s → t, (s, x#y ) ∈ S ′ }. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 100 / 203 Paritätsspiele Muller → Parität Die Färbungsfunktion χ′ : S ′ → N des Paritätsspiels G ′ ist ( 2 · |y | − 1 falls Occ(y ) 6∈ M χ′ (s, x#y ) = 2 · |y | falls Occ(y ) ∈ M. Beachte: χ′ (S ′ ) ⊆ {1, . . . , 2|C |}. Damit ist das Paritätsspiel G ′ = (S ′ , →′ , ρ′ , χ′ ) definiert. Schließlich sei f : S → S ′ definiert durch f (s) = (s, #χ(s)) für alle s ∈ S. Bemerkung: Die in der C ′ -Komponente berechnete Datenstruktur ist auch als LAR (last appearance record) bekannt, und geht auf Büchi zurück. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 101 / 203 Paritätsspiele Muller → Parität Beispiel: Sei G das folgende Mullerspiel, wobei die Mullerbedingung M = {{b}} ist. a s0 a s1 b s2 Dann sieht das Paritätsspiel G ′ wie folgt aus: 1 s0 , #a 1 s1 , #a 3 s2 , #ab 2 s2 , a#b s0 , #ba 3 s2 , #b 2 3 s1 , #ba s0 , b#a 1 Markus Lohrey (Universität Leipzig) s1 , b#a 1 Spieltheoretische Methoden in der Logik SS 2009 102 / 203 Paritätsspiele Muller → Parität Sei w = s0 s1 s2 · · · eine Partie in G . Definiere die folgende in f (s0 ) beginnende Partie in G ′ : f (w ) = (s0 , q0 )(s1 , q1 )(s2 , q2 ) · · · , wobei q0 = #χ(s0 ) (d. h. (s0 , q0 ) = f (s0 )) und qi+1 = µ(si+1 , qi ) für i ≥ 1 Umgekehrt: Ist w ′ = (s0 , q0 )(s1 , q1 )(s2 , q2 ) · · · eine in (s0 , q0 ) = f (s0 ) beginnende Partie in G ′ , so ist w := s0 s1 s2 · · · eine Partie in G mit f (w ) = w ′ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 103 / 203 Paritätsspiele Muller → Parität Sei im folgenden w = s0 s1 s2 · · · eine Partie in G , f (w ) = (s0 , x0 #y0 )(s1 , x1 #y1 )(s2 , x2 #y2 ) · · · und F = Inf(χ(w )). Behauptung 1: ∃j ≥ 0 ∀i > j : yi ∈ F ∗ ( |yi | ≤ |F |) Es existieren 0 ≤ k < j, so dass: {χ(sk ), χ(sk+1 ), χ(sk+2 ), . . .} = F (8) {χ(sk ), χ(sk+1 ), χ(sk+2 ), . . . , χ(sj )} = F (9) Angenommen es gibt i > j und c ∈ C \ F mit c ∈ Occ(yi ), d. h. xi # yi = x i # u c v . 1.Fall: v = ε, d. h. xi # yi = xi # u c. χ(si ) = c 6∈ F Widerspruch zu (8) wegen i ≥ j ≥ k. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 104 / 203 Paritätsspiele Muller → Parität 2.Fall: v 6= ε, d. h. xi # yi = xi # u c w c ′ mit c ′ = χ(si ) ∈ F . Wähle ein maximales ℓ ∈ N mit k ≤ ℓ ≤ i − 1 (beachte: i − 1 ≥ j wegen i > j) χ(sℓ ) = c ′ (existiert wegen (9)) xℓ #yℓ ist von der Form · · · c · · · c ′ xℓ+1 #yℓ+1 , . . . , xi−1 #yi−1 sind von der Form · · · c · · · c ′ · · · xi #yi ist von der Form · · · c · · · # · · · c ′ Widerspruch! Dies beweist Behauptung 1. Sei j im folgenden die Zahl aus Behauptung 1. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 105 / 203 Paritätsspiele Muller → Parität Behauptung 2: Es gibt ∞ viele i mit Occ(yi ) = F . Sei ℓ ≥ j beliebig. F ⊆ Occ(xℓ yℓ ) (wegen (9)). Sei c ∈ F , so dass in xℓ #yℓ keine Farbe aus F links von c steht. Wähle i > ℓ minimal mit χ(si ) = c (muss existieren). xi ∈ (C \ F )∗ in xi #yi Da wegen (9) wieder F ⊆ Occ(xi yi ) gilt, folgt Occ(yi ) = F . Dies beweist Behauptung 2. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 106 / 203 Paritätsspiele Muller → Parität Behauptung 3: Eve gewinnt die Partie w in G genau dann, wenn Eve die Partie f (w ) in G ′ gewinnt. =⇒: Angenommen Eve gewinnt die Partie w in G . Sei Inf(χ(w )) = F . Dann gilt: F ∈M ∃j ∀i > j : Occ(yi ) ⊆ F und es existieren ∞ viele i mit Occ(yi ) = F . Mit n = |F | folgt: ∃j ∀i > j : χ′ (si , xi #yi ) ≤ 2n und χ′ (si , xi #yi ) = 2n für ∞ viele i. Eve gewinnt die Partie f (w ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 107 / 203 Paritätsspiele Muller → Parität ⇐=: Angenommen Eve gewinnt die Partie w in G nicht. Sei Inf(χ(w )) = F . Dann gilt: F 6∈ M ∃j ∀i > j : Occ(yi ) ⊆ F und es existieren ∞ viele i mit Occ(yi ) = F . Mit n = |F | folgt: ∃j ∀i > j : χ′ (si , xi #yi ) ≤ 2n − 1 und es existieren ∞ viele i mit χ′ (si , xi #yi ) = 2n − 1. Eve gewinnt die Partie f (w ) nicht. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 108 / 203 Paritätsspiele Muller → Parität Hieraus ergibt sich: Eve gewinnt auf s in G genau dann, wenn Eve auf f (s) in G ′ gewinnt. Denn: Eine Gewinnstrategie für Eve auf s in dem Mullerspiel G liefert eine Gewinnstrategie für Eve auf f (s) in G ′ wie folgt: Zieht Eve in G zum Zeitpunkt t von von s1 nach s2 und ist (s1 , x#y ) die Position in G ′ zum Zeitpunkt t, so zieht Eve in G ′ von (s1 , x#y ) nach (s2 , µ(s2 , x#y )). Eine Gewinnstrategie für Eve auf f (s) in dem Paritätsspiel G ′ liefert eine Gewinnstrategie für Eve auf s in G wie folgt: Zieht Eve in G ′ zum Zeitpunkt t in G ′ von (s1 , x#y ) nach (s2 , µ(s2 , x#y )), so zieht Eve in G zum Zeitpunkt t von s1 nach s2 . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 109 / 203 Paritätsspiele Strategievereinheitlichung Für ein Spiel G = (S, →, ρ, L), x ∈ {Adam, Eve}, und eine Strategie τ für x sei WGx (τ ) = {s ∈ S | τ ist eine Gewinnstrategie für x auf s}. Satz 22 (Strategievereinheitlichung) Sei G = (S, →, ρ, L) ein Spiel. Angenommen die Gewinnbedingung L ⊆ S ω erfüllt folgende Bedingung: ∀u, v ∈ S ∗ ∀w ∈ S ω : uw ∈ L ⇐⇒ vw ∈ L. Dann existiert für jeden Spieler x eine gedächtnislose Strategie τ mit WGx (τ ) = gWxG . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 110 / 203 Paritätsspiele Strategievereinheitlichung Beweis: Sei W = gWxG . Fixiere eine Wohlordnung < auf der Menge aller gedächtnislosen Strategien für Spieler x (existiert nach Wohlordungsprinzip). Für eine Position s ∈ W sei gS(s) 6= ∅ die Menge aller gedächtnislosen Gewinnstrategien für Spieler x auf s. Wir definieren die neue gedächtnislose Strategie τ für Spieler x durch ∀s ∈ W ∩ Sx : τ (s) = [min gS(s)](s). Behauptung: τ ist eine Gewinnstrategie für Spieler x auf W . Sei s0 s1 s2 eine zu τ konforme Partie mit s0 ∈ W . Für jede Position si mit si ∈ W sei τi = min gS(si ) für i ≥ 0. Dann gilt si+1 = τ (si ) = τi (si ) für alle i ≥ 0 mit si ∈ W ∩ Sx . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 111 / 203 Paritätsspiele Strategievereinheitlichung Sei τm das Minimum (bzgl. <) aller dieser τi (existiert, da τ0 existiert). Durch Induktion über i ≥ m zeigen wir, dass jede Position si in der Partie sm sm+1 · · · zu WGx (τm ) gehört, und dass diese Partie konform zu τm ist. IA: sm ∈ WGx (τm ) gilt nach Definition (τm ∈ gS(sm )). IS: Gelte si ∈ WGx (τm ) für ein i ≥ m. τm ∈ gS(si ). τi = min gS(si ) ≤ τm . τi = τm . Falls si ∈ Sx gilt, folgt sofort si+1 ∈ WGx (τm ). Falls si ∈ Sx gilt (insbesondere also si ∈ W ∩ Sx ), so folgt si+1 = τi (si ) = τm (si ) und si+1 ∈ WGx (τm ). Also gewinnt Spieler x die Partie sm sm+1 sm+2 · · · (da sm ∈ WGx (τm )). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 112 / 203 Paritätsspiele Strategievereinheitlichung Spieler x gewinnt w = s1 · · · sm−1 sm · · · ; hier wird die Forderung ∀u, v ∈ S ∗ ∀w ∈ S ω : uw ∈ L ⇐⇒ vw ∈ L an die Gewinnbedingung L benutzt. Wir haben somit W ⊆ WGx (τ ) gezeigt. Da offensichtlich auch WGx (τ ) ⊆ W gilt erhalten wir W = WGx (τ ). Bemerkung: Die Forderung ∀u, v ∈ S ∗ ∀w ∈ S ω : uw ∈ L ⇐⇒ vw ∈ L ist erfüllt, falls die Gewinnbedingung über eine Mullerbedingung (und damit auch eine Büchi- oder Paritätsbedingung) definiert ist. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 113 / 203 Paritätsspiele Gedächtnislose Determiniertheit von Paritätsspielen Satz 23 Adam Für jedes Paritätsspiel G = (S, →, ρ, χ) gilt gWEve = S, d. h. G ∪ gWG Paritätsspiele sind gedächtnislos determiniert. Aus Satz 21 und Satz 23 ergibt sich sofort: Satz 24 Für jedes Mullerspiel G = (S, →, ρ, M) gilt WGEve ∪ WGAdam = S, d. h. Mullerspiele sind determiniert (aber i. A. nicht gedächtnislos determiniert). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 114 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Beweis von Satz 23: Sei G = (S, →, ρ, χ) ein Paritätsspiel mit n = max{χ(s) | s ∈ S}. Wir zeigen Satz 23 durch Induktion über n. IA: n = 0. Adam Dann gilt gWEve = ∅. G = S und gWG IS: n > 0, o.B.d.A. sei n gerade (sonst muss man Adam und Eve in der folgende Argumentation vertauschen). Es sei τAdam die nach Satz 22 existierende gedächtnislose Gewinnstrategie für Adam auf gWAdam . G Wir konstruieren eine gedächtnislose Strategie τ für Eve mit WGEve (τ ) = S \ gWAdam . G Sei H = G ↾(S \ gWAdam ) das Spiel G , eingeschränkt auf S \ gWAdam . G G Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 115 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Dann hat H wieder keine Sackgassen: Sei s ∈ S \ gWAdam . G ρ(s) = Eve NG (s) ∩ (S \ gWAdam ) 6= ∅, G gehören. denn sonst würde s zu gWAdam G ρ(s) = Adam ∅= 6 NG (s) ⊆ S \ gWAdam , G denn sonst würde s zu gWAdam gehören. G Sei nun Adam A = AttEve | χ(s) = n}). H ({s ∈ S \ gWG Aus Lemma 8 folgt die Existenz einer gedächtnislosen Strategie τA für Eve (in dem Spiel H), so dass jede mit τA konforme und bei einer Position aus A beginnende Partie schließlich eine Position s ∈ S \ gWAdam mit χ(s) = n G besucht. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 116 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Sei nun K = G ↾(S \ (gWAdam ∪ A)) das Spiel G , eingeschränkt auf G S \ (gWAdam ∪ A). G Dann hat K wieder keine Sackgassen: Sei s ∈ S \ (gWAdam ∪ A). G Wir wissen bereits, dass NH (s) 6= ∅ gilt. Lemma 9 impliziert: NH (s) ∩ (S \ (gWAdam ∪ A)) 6= ∅ G ρ(s) = Adam ρ(s) = Eve NH (s) ⊆ (S \ (gWAdam ∪ A)) G Es gilt max{χ(s) | s ∈ S \ (gWAdam ∪ A)} < n. G Also können wir IH auf das Spiel K anwenden: Adam gWEve = S \ (gWAdam ∪ A) K ∪ gWK G 6= ∅. Angenommen gWAdam K Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 117 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Dann gäbe es eine Position s ∈ S \ (gWAdam ∪ A) und eine gedächtnislose G ′ Strategie τ für Adam, so dass Adam jede mit τ ′ konforme und bei s beginnende Partie in dem Spiel K gewinnt. Dann hätte Adam auch eine gedächtnislose Strategie, mit der Adam auf s in dem Spiel G gewinnen würde (dies widerspricht jedoch s 6∈ gWAdam ): G Solange die aktuelle Position in S \ (gWAdam ∪ A) liegt: G Adam zieht entsprechend τ ′ . Falls die aktuelle Position in gWAdam liegt: G Adam zieht entsprechend τAdam . Beachte: Die Partie wird so nie in eine Spielposition aus dem Attraktor A gelangen, denn es gibt keine Kante s1 → s2 mit s1 ∈ S \ (gWAdam ∪ A), G s2 ∈ A und ρ(s1 ) = Eve (siehe wieder Lemma 9). Adam Also gilt gWAdam = ∅, d. h. gWEve ∪ A). K K = S \ (gWG Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 118 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Sei τ ′ eine gedächtnislose Strategie für Eve, so dass Eve jede mit τ ′ konforme Partie in dem Spiel K gewinnt. Nun können wir endlich eine gedächtnislose Strategie τ für Eve mit WGEve (τ ) = S \ gWAdam definieren: G Falls die aktuelle Spielposition zu S \ (gWAdam ∪ A) gehört: G ′ Eve zieht entsprechend τ . Falls die aktuelle Spielposition t zum Attraktor A gehört und χ(t) < n: Eve zieht entsprechend τA Beachte: Eve erzwingt so, dass eine Position t ′ mit χ(t ′ ) = n schließlich erreicht wird. Falls die aktuelle Spielposition t zu S \ gWAdam gehört, und χ(t) = n: G ) Eve zieht zu einer beliebigen Position aus NG (t) ∩ (S \ gWAdam G (dies ist möglich). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 119 / 203 Paritätsspiele Beweis der gedächtnislosen Determiniertheit Behauptung: Sei s ∈ S \ WGAdam . Dann gewinnt Eve jede mit τ konforme und bei s beginnende Partie. Sei s0 s1 s2 · · · eine mit τ konforme Partie, s0 = s. Fall 1: Es existiert ein i ≥ 0 mit sj ∈ S \ (gWAdam ∪ A) für alle j ≥ i. G Die Partie si si+1 si+2 · · · ist konform zu τ ′ . Eve gewinnt die Partie si si+1 si+2 · · · und damit auch s0 s1 s2 · · · . Fall 2: Es existieren unendlich viele i ≥ 0 mit si ∈ A. Es existieren unendlich viele i ≥ 0 mit χ(si ) = n. Da n gerade ist, gewinnt Eve die Partie s0 s1 s2 · · · . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 120 / 203 Paritätsspiele Komplexität von Paritätsspielen Die Komplexitätsklasse coNP ist Menge aller Komplemente von NP-Mengen: coNP = {A | A ∈ NP} Satz 25 Das folgende Problem PARITY gehört zu NP ∩ coNP: EINGABE: Ein endliches Paritätsspiel G = (S, →, ρ, χ) und eine Position s∈S FRAGE: s ∈ WGEve (= gWEve G )? Beweis: Wir zeigen zunächst PARITY ∈ NP. Sei hierzu G = (S, →, ρ, χ) ein endliches Paritätsspiel, und sei s ∈ S. Es gilt: s ∈ WGEve ⇐⇒ Eve hat eine gedächtnislose Gewinnstrategie τ auf s Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 121 / 203 Paritätsspiele Komplexität von Paritätsspielen Ein nicht-deterministischer Polynomialzeitalgorithmus, der s ∈ WGEve überprüft, arbeitet wie folgt: 1 Rate eine gedächtnislose Strategie τ : SEve → S für Eve. 2 Sei G ↾τ = (S, {(s, t) | s → t, ρ(s) = Adam oder t = τ (s)}, ρ, χ). 3 Überprüfe, ob für jeden unendlichen Pfad s0 s1 s2 · · · in G ↾τ mit s0 = s gilt: max(Inf(χ(s0 )χ(s1 )χ(s2 ) · · · )) gerade. Wir müssen noch zeigen, dass Eigenschaft (3) (oder ¬(3)) deterministisch in Polynomialzeit überprüft werden kann. Da das Spiel G endlich ist, ist Eigenschaft ¬(3) ist äquivalent zu: Es gibt Positionen t1 , . . . , tn , n ≥ 1, mit s →∗ t1 → t2 → · · · tn → t1 in G ↾τ χ(t1 ) ist ungerade und χ(ti ) ≤ χ(t1 ) für alle 1 ≤ i ≤ n. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 122 / 203 Paritätsspiele Komplexität von Paritätsspielen Dies ist äquivalent zu: Es gibt eine Position t ∈ S mit: χ(t) ist ungerade In G ↾τ gibt es einen Pfad von s nach t. In G ↾τ , eingeschränkt auf alle Positionen u ∈ S mit χ(u) ≤ χ(t), gibt es einen nicht-leeren Pfad von t nach t. Dies kann leicht in Polynomialzeit (z. B. mittels des Algorithmus von Dijkstra) überprüft werden. Dies zeigt PARITY ∈ NP. PARITY ∈ coNP (d.h PARITY ∈ NP) folgt nun leicht aus der Determiniertheit: s 6∈ WGEve ⇐⇒ s ∈ WGAdam Natürlich können wir s ∈ WGAdam genauso in NP überprüfen, wie s ∈ WGEve . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 123 / 203 Paritätsspiele Komplexität von Paritätsspielen Bemerkungen zu PARITY ∈ NP ∩ coNP: Es gilt P ⊆ NP ∩ coNP. Ob jedoch PARITY ∈ P gilt, ist ein berühmtes offenes Problem. Andererseits ist es sehr unwahrscheinlich, dass PARITY NP-vollständig ist, denn dies würde NP = coNP implizieren, was Komplexitätstheoretiker als sehr unwahrscheinlich ansehen. Die Frage, ob s ∈ WGEve für ein gegebenes Mullerspiel G und eine Position s gilt, scheint schwieriger zu sein: Dieses Problem ist PSPACE-vollständig, siehe: Paul Hunter, Anuj Dawar: Complexity Bounds for Regular Games, Proceedings of MFCS 2005, Lecture Notes in Computer Science 3618, S. 495-506, Springer 2005. Beachte: Die Umwandlung eines Mullerspiels in ein “äquivalentes” Paritätsspiels (siehe Beweis von Satz 21) erfordert einen exponentiellen Blow-Up. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 124 / 203 Der modale µ-Kalkül Überblick In diesem Abschnitt führen wir den modalen µ-Kalkül ein. Dieser erweitert Modallogik um Konstrukte zur Definition von Fixpunkten. Wir zeigen dann, wie das Model-Checking Problem für den modalen µ-Kalkül auf die Berechnung der Gewinnmenge in einem Paritätsspiel reduziert werden kann (analog zu modale Logik → Erreichbarkeitsspiele). Schließlich zeigen wir auch noch, wie umgekehrt Paritätsspiele auf den modalen µ-Kalkül reduziert werden können. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 125 / 203 Der modale µ-Kalkül Fixpunkte Idee: Viele interessante Eigenschaften von Kripkestrukturen lassen sich über Fixpunkte beschreiben. Sei K = (V , E , Π, π) eine Kripkestruktur und p ∈ Π. Beispiel 1: Sei A1 = {v ∈ V | ∃u ∈ π(p) : (v , u) ∈ E ∗ }. Sei f1 : 2V → 2V definiert durch f1 (U) = π(p) ∪ {v ∈ V | ∃u ∈ U : (v , u) ∈ E } = π(p) ∪ predK (U), wobei predK (U) = {v ∈ V | ∃u ∈ U : (v , u) ∈ E }. Beachte: f1 ist monoton, d. h. U1 ⊆ U2 =⇒ f1 (U1 ) ⊆ f1 (U2 ). Dann gilt: A1 = \ {U ∈ 2V | f1 (U) ⊆ U} = min{U ∈ 2V | f1 (U) = U} d. h. A1 ist der kleinste Fixpunkt von f1 . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 126 / 203 Der modale µ-Kalkül Fixpunkte Beispiel 2: Sei A2 = {v0 ∈ V | ∃v1 , v2 , . . . ∀i ≥ 0 : vi ∈ π(p) ∧ (vi , vi+1 ) ∈ E }. Sei f2 : 2V → 2V definiert durch f2 (U) = π(p) ∩ predK (U), Beachte: f2 ist wieder monoton. Dann gilt: A2 = [ {U ∈ 2V | U ⊆ f2 (U)} = max{U ∈ 2V | f2 (U) = U} d. h. A2 ist der größte Fixpunkt von f2 . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 127 / 203 Der modale µ-Kalkül Der modaler µ-Kalkül: Idee Der modale µ-Kalkül ist eine ausdrucksstarke Logik, in der z. B. Eigenschaften wie Ein Knoten, wo die Proposition p gilt, ist erreichbar. “ ” ausgedrückt werden können. Eigenschaften dieser Art lassen sich nicht in Logik 1. Stufe ausdrücken. Formal: Es gibt keine Formel ϕ(x) ∈ FO({r , p}, arity) (mit arity(r ) = 2, arity(p) = 1), so dass für jede Struktur (A, IS , IX ) über der Signatur ({r , p}, arity) mit dom(IX ) = {x} gilt: (A, IS , IX ) |= ϕ(x) ⇐⇒ ∃b ∈ IS (p) : (IX (x), b) ∈ IS (r )∗ Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 128 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Syntax Der modale µ-Kalkül erweitert Modallogik um Konstrukte zur Definition von kleinsten und größten Fixpunkten. Sei Π wieder eine endliche Menge von Knotenmarkierungen (atomare Propositionen), und sei X eine (abzählbar-unendliche) Menge von Variablen (Fixpunktvariablen). Die Menge aller Formeln des modalen µ-Kalküls über Π (kurz µC(Π)) ist die kleinste Menge mit folgenden Eigenschaften: Für alle p ∈ Π sind p, ¬p ∈ µC(Π). X ⊆ µC(Π). Wenn ϕ, ψ ∈ µC(Π), dann auch ϕ ∧ ψ, ϕ ∨ ψ ∈ µC(Π). Wenn ϕ ∈ µC(Π), dann auch ♦ϕ, ϕ ∈ µC(Π). Wenn ϕ ∈ µC(Π) und X ∈ X , dann auch µX .ϕ, νX .ϕ ∈ µC(Π). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 129 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Syntax Die Menge free(ϕ) der freien Variablen von ϕ ist wie üblich induktiv definiert: free(p) = free(¬p) = ∅ für p ∈ Π free(X ) = {X } für X ∈ X , free(ϕ ∧ ψ) = free(ϕ ∨ ψ) = free(ϕ) ∪ free(ψ). free(♦ϕ) = free(ϕ) = free(ϕ). free(µX .ϕ) = free(νX .ϕ) = free(ϕ) \ {X }. Ein Formel ϕ ∈ µC(Π) ist ein Satz, falls free(ϕ) = ∅ gilt. Die Menge sub(ϕ) aller Teilformeln von ϕ ist wie üblich definiert. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 130 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Um die Semantik des modalen µ-Kalkül zu definieren, betrachten wir im Weiteren Kripkestrukturen der Form K = (V , E , Π ∪ X , π). Insbesondere gilt also π : Π ∪ X → 2V . Fixpunktvariablen aus X werden also mit Teilmengen von V belegt. Für X ∈ X und U ⊆ V sei K [X /U] die Kripkestruktur (V , E , Π ∪ X , π[X /U]), wobei ( U falls y = X π[X /U](y ) = π(y ) sonst. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 131 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Wir ordnen jeder Formel ϕ ∈ µC(Π) induktiv eine Teilmenge [[ϕ]]K ⊆ V zu. Für p ∈ Π ist [[p]]K = π(p) und [[¬p]]K = V \ π(p) Für X ∈ X ist [[X ]]K = π(X ) [[ϕ ∨ ψ]]K = [[ϕ]]K ∪ [[ψ]]K , [[ϕ ∧ ψ]]K = [[ϕ]]K ∩ [[ψ]]K [[♦ϕ]]K = {v ∈ V | ∃u ∈ V : (v , u) ∈ E ∧ u ∈ [[ϕ]]K } [[ϕ]]K = {v ∈ V | ∀u ∈ V : (v , u) ∈ E → u ∈ [[ϕ]]K } [[µX .ϕ]]K = µFXK,ϕ , [[νX .ϕ]]K = νFXK,ϕ . Hierbei ist FXK,ϕ die monotone Funktion von 2V nach 2V mit FXK,ϕ (U) = [[ϕ]]K [X /U] für U ∈ 2V . Die Monotonie der Funktion Fϕ beweisen wir auf der nächsten Folie. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 132 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Lemma 26 Für jede Kripkestruktur K = (V , E , Π ∪ X , π), alle ϕ ∈ µC(Π) und alle Variablen X ∈ X ist die Abbildung FXK,ϕ monoton. Beweis: Induktion über den Aufbau von ϕ. ϕ = p ∈ Π: FXK,ϕ (U) = π(p) für alle U ⊆ V . ϕ = ¬p ∈ Π: FXK,ϕ (U) = V \ π(p) für alle U ⊆ V . ϕ = X ∈ X : FXK,ϕ (U) = U für alle U ⊆ V . ϕ = Y ∈ X \ {X }: FXK,ϕ (U) = π(Y ) für alle U ⊆ V . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 133 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik ϕ = ψ ∧ θ: FXK,ϕ (U) = [[ψ ∧ θ]]K [X /U] = FXK,ψ (U) ∩ FXK,θ (U). Da nach IH FXK,ψ und FXK,θ monoton sind, ist auch FXK,ϕ monoton. ϕ = ψ ∨ θ: Analog. ϕ = ♦ψ: FXK,ϕ (U) = [[♦ψ]]K [X /U] = {v ∈ V | ∃u ∈ V : (v , u) ∈ E ∧ u ∈ [[ψ]]K [X /U] } = {v ∈ V | ∃u ∈ V : (v , u) ∈ E ∧ u ∈ FXK,ψ (U)}. Da nach IH FXK,ψ monoton ist, ist auch FXK,ϕ monoton. ϕ = ψ: Analog. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 134 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik ϕ = µY .ψ: Falls Y = X gilt, so erhalten wir: FXK,ϕ (U) = [[µX .ψ]]K [X /U] K [X /U] = µ FX ,ψ \ = {W \ = {W \ = {W \ = {W K [X /U] ⊆ V | FX ,ψ (W ) ⊆ W } ⊆ V | [[ψ]]K [X /U][X /W ] ⊆ W } ⊆ V | [[ψ]]K [X /W ] ⊆ W } ⊆ V | FXK,ψ (W ) ⊆ W } = µ FXK,ψ , d. h. FXK,ϕ ist eine konstante (und somit monotone) Funktion. K [X /U] Beachte: Nach IH sind FXK,ψ und FX ,ψ Markus Lohrey (Universität Leipzig) beide monoton. Spieltheoretische Methoden in der Logik SS 2009 135 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Sei nun Y 6= X . Dann gilt: FXK,ϕ (U) = [[µY .ψ]]K [X /U] K [X /U] = µFY ,ψ \ = {W \ = {W \ = {W \ = {W K [X /U] ⊆ V | FY ,ψ (W ) ⊆ W } ⊆ V | [[ψ]]K [X /U][Y /W ] ⊆ W } ⊆ V | [[ψ]]K [Y /W ][X /U] ⊆ W } K [Y /W ] ⊆ V | FX ,ψ (U) ⊆ W } Sei nun U ⊆ U ′ . IH K [Y /W ] FX ,ψ K [Y /W ] (U) ⊆ FX ,ψ Markus Lohrey (Universität Leipzig) (U ′ ) Spieltheoretische Methoden in der Logik SS 2009 136 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Also gilt: FXK,ϕ (U) = ⊆ \ \ K [Y /W ] {W ⊆ V | FX ,ψ {W ⊆ V | (U) ⊆ W } K [Y /W ] FX ,ψ (U ′ ) ⊆ W} = FXK,ϕ (U ′ ) ϕ = νY .ψ: Analog. Dies beendet den Beweis der Monotonie von FXK,ϕ . Beachte: Entscheidend für den Beweis von Lemma 26 war, dass wir keine Formeln der Gestalt ¬X (X ∈ X ) erlauben. In der Tat wäre FXK,¬X : U 7→ V \ U nicht monoton. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 137 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Seien ϕ, ψ ∈ µC(Π) und sei X ∈ X eine Fixpunktvariable. Die Formel ϕ[X /ψ] entsteht durch Ersetzen aller freien Vorkommen von X in ϕ durch ψ: p[X /ψ] = p, (¬p)[X /ψ] = ¬p X [X /ψ] = ψ, Z [X /ψ] = Z für Z ∈ X \ {X } (θ1 ∧ θ2 )[X /ψ] = θ1 [X /ψ] ∧ θ2 [X /ψ], (θ1 ∨ θ2 )[X /ψ] = θ1 [X /ψ] ∨ θ2 [X /ψ] (♦θ)[X /ψ] = ♦(θ[X /ψ]), (θ)[X /ψ] = (θ[X /ψ]) (µX .θ)[X /ψ] = µX .θ, (νX .θ)[X /ψ] = νX .θ (µZ .θ)[X /ψ] = µZ .θ[X /ψ], (νZ .θ)[X /ψ] = νZ .θ[X /ψ] für Z 6= X Offensichtlich gilt: [[µX .ϕ]]K = [[µY .ϕ[X /Y ]]]K falls Y 6∈ free(µX .ϕ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 138 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Bemerkungen: Der Beweis der Monotonie von FXK,ϕ hat auch gezeigt: [[µX .ψ]]K [X /U] = [[µX .ψ]]K für alle U ⊆ V (analoges gilt für ν). d. h. der Wert π(X ) spielt für den Wert [[µX .ψ]]K keine Rolle. Insbesondere: Ist ϕ ∈ µC(Π) ein Satz, so sind alle Werte π(X ) mit X ∈ X irrelevant, und wir können ϕ über einer gewöhnlichen Kripkestruktur K = (V , E , Π, π) auswerten. Wir erlauben in µC-Formeln die Negation nur direkt vor Propositionen. Alternativ könnten wir die Negation überall erlauben, müssten jedoch dann die folgende Einschränkung vornehmen: Wenn ϕ ∈ µC(Π), X ∈ X und jedes freie Vorkommen von X in ϕ innerhalb einer geraden Anzahl von Negationen liegt, dann auch µX .ϕ, νX .ϕ ∈ µC(Π). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 139 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik In einer Formel, die dieser Einschränkung genügt, können dann Negationen durch wiederholte Anwendung der folgenden Äquivalenzen bis auf Propositionen heruntergedrückt werden: ¬(ψ ∧ θ) ≡ ¬ψ ∨ ¬θ ¬(ψ ∨ θ) ≡ ¬ψ ∧ ¬θ ¬¬ψ ≡ ψ ¬♦ψ ≡ ¬ψ ¬µX .ψ ≡ νX .¬ψ[X /¬X ] ¬ψ ≡ ♦¬ψ ¬νX .ψ ≡ µX .¬ψ[X /¬X ] Die beiden letzten Äquivalenzen ergeben sich aus Lemma 5. Alternativ zeigen die obigen Äquivalenzen, dass man auf die Operatoren ∧, und νX verzichten kann, falls man die Negation ¬ (eingeschränkt wie auf der vorherigen Folie erläutert) erlaubt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 140 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Semantik Beispiele: Sei K = (V , E , Π, π) eine Kripkestruktur. Für die Formel ϕ = µX .(p ∨ ♦X ) gilt: [[ϕ]]K = {v ∈ V | ∃u ∈ π(p) : (v , u) ∈ E ∗ } Für die Formel ϕ = µX .X gilt: [[ϕ]]K = {v0 ∈ V | ¬∃v1 , v2 , . . . ∈ V : ^ (vi , vi+1 ) ∈ E } i≥0 Für die Formel ϕ = νX .(p ∧ ♦X ) gilt: [[ϕ]]K = {v0 ∈ π(p) | ∃v1 , v2 , . . . ∈ π(p) : ^ (vi , vi+1 ) ∈ E } i≥0 Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 141 / 203 Der modale µ-Kalkül Der modale µ-Kalkül: Normalform Eine Formel ϕ ∈ µC(Π) ist in Normalform falls gilt: Keine Fixpunktvariable wird zweimal in ϕ gebunden: Sind αX .ψ und βY .θ (mit α, β ∈ {µ, ν}) zwei Teilformeln von ϕ, die an verschiedenen Positionen in ϕ beginnen, so gilt X 6= Y . Keine Fixpunktvariable kommt in ϕ sowohl gebunden als auch frei vor: Falls ϕ eine Teilformel der Gestalt αX .ψ (mit α ∈ {µ, ν}) enthält, so gilt X 6∈ free(ϕ). Lemma 27 Für jede Formel ϕ ∈ µC(Π) gibt es eine Formel ψ in Normalform mit [[ϕ]]K = [[ψ]]K für jede Kripkestruktur K . Für den Beweis von Lemma 27 muss man nur systematisch alle gebundenen Variablen in ϕ geeignet umbenennen. Für ϕ ∈ µC(Π) in Normalform und eine in ϕ gebundene Variable X sei βXϕ ∈ sub(ϕ) die eindeutige Teilformel der Gestalt µX .ψ oder νX .ψ. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 142 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Sei K = (V , E , Π ∪ X , π) eine Kripkestruktur, w ∈ V und ϕ ∈ µC(Π). Wir konstruieren nun ein Paritätsspiel G (K , ϕ) mit: w ∈ [[ϕ]]K ⇐⇒ (w , ϕ) ∈ WGEve (K ,ϕ) O.B.d.A. sei ϕ in Normalform. Es sei G (K , ϕ) = (V × sub(ϕ), →, ρ, χ), wobei → wie folgt definiert ist: v, θ v, θ v, ψ ∧ θ v, ψ ∨ θ v, ψ v , ψ u, ψ v , νX .ψ v, ψ v, X v , βXϕ Markus Lohrey (Universität Leipzig) v, ψ ∀(v , u) ∈ E v , ♦ψ u, ψ v , µX .ψ v, ψ ∀(v , u) ∈ E falls X in ϕ gebunden ist Spieltheoretische Methoden in der Logik SS 2009 143 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Beachte: Folgende Positionen sind Sackgassen in G (K , ϕ): (v , p), (v , ¬p) für p ∈ Π, (v , X ) für X ∈ free(ϕ), (v , ♦ψ), (v , ψ) für NK (v ) = ∅. Diese werden nach unserer Konvention implizit durch Schleifen ersetzt. Die Funktion ρ : V × sub(ϕ) → {Eve, Adam} ist wie folgt definiert: ρ(v , ψ ∧ θ) = Adam ρ(v , ψ ∨ θ) = Eve ρ(v , ψ) = Adam ρ(v , ♦ψ) = Eve Für alle anderen Spielpositionen (v , ψ) ist ρ(v , ψ) beliebig definiert. Wir müssen nun noch die Funktion χ : V × sub(ϕ) → N definieren. Hierzu definieren wir die Alternierungstiefe ad(λX .ψ) einer Formel λX .ψ (λ ∈ {µ, ν}) induktiv wie folgt: ad(µX .ψ) ist die kleinste ungerade Zahl a ∈ N, so dass a ≥ ad(λY .θ) für alle λY .θ ∈ sub(ψ), λ ∈ {µ, ν}. ad(νX .ψ) ist die kleinste gerade Zahl a ∈ N, so dass a ≥ ad(λY .θ) für alle λY .θ ∈ sub(ψ), λ ∈ {µ, ν}. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 144 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Dann ist χ : V × sub(ϕ) → N definiert als: ad(ψ) falls ψ von der Form λX .θ mit λ ∈ {µ, ν} ist −1 falls ψ = p ∈ Π ∧ v 6∈ π(p) oder ψ = ¬p ∈ Π ∧ v ∈ π(p) χ(v , ψ) = oder ψ = X ∈ free(ϕ) ∧ v 6∈ π(X ) oder ψ = ♦Θ ∧ NK (v ) = ∅ 0 sonst Beachte: χ(v , λX .ψ) ≥ χ(w , θ) für alle λ ∈ {µ, ν} und alle θ ∈ sub(ψ). ran(χ) ist endlich, auch wenn V unendlich ist. Die Zahl −1 gilt natürlich als ungerade Priorität. Durch Addieren von +2 könnte man alle Prioritäten wieder positiv machen. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 145 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Beispiel: Sei ϕ = µX .(p ∨ ♦♦X ) und sei K die Kripkestruktur 0 1 p Dann sieht das Spiel G (K , ϕ) wie folgt aus (grüne Knoten gehören Eve, rote Knoten gehören Adam, blaue Zahlen sind Prioritäten): 1 0, µX .(p ∨ ♦♦X ) 0 0, p ∨ ♦♦X 0 0, ♦♦X 0 1, ♦X 0, p −1 1, µX .(p ∨ ♦♦X ) 1 0 1, p ∨ ♦♦X 0 1, p 0 1, ♦♦X 0 0, ♦X 0, X 0 Markus Lohrey (Universität Leipzig) 0 1, X Spieltheoretische Methoden in der Logik SS 2009 146 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Beispiel: Sei ϕ = νX .(p ∧ ♦X ) und sei K die Kripkestruktur 0 1 p Dann sieht das Spiel G (K , ϕ) wie folgt aus: 0 0, νX .(p ∧ ♦X ) 0 0, p ∧ ♦X 0 0, ♦X 0, p −1 1, νX .(p ∧ ♦X ) 0 0 1, p ∧ ♦X 0 1, p 0 1, ♦X 0 0, X Markus Lohrey (Universität Leipzig) 1, X 0 Spieltheoretische Methoden in der Logik SS 2009 147 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Satz 28 Sei K = (V , E , Π ∪ X , π) eine Kripkestruktur und ϕ ∈ µC(Π). Dann gilt für alle v ∈ V : v ∈ [[ϕ]]K ⇐⇒ (v , ϕ) ∈ WGEve (K ,ϕ) Für den Beweis werden das folgende einfache Lemma benutzen. Lemma 29 Sei G = (S, →, ρ, χ) ein Paritätsspiel und sei s ∈ S. Definiere das Spiel Gs = ({t ∈ S | s →∗ t}, →, ρ, χ), d. h. Gs ist G eingeschränkt auf alle Positionen, die von s aus in G erreichbar sind. . Dann gilt: s ∈ WGEve ⇐⇒ s ∈ WGEve s Beweis: Übung Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 148 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Beweis von Satz 28: Induktion über den Aufbau von ϕ. Sei v ∈ V . Die Fälle ϕ = p, ϕ = ¬p und ϕ = X sind einfach. ϕ = ϕ1 ∧ ϕ2 : Aus der Konstruktion von G = G (K , ϕ) folgt: G(v ,ϕ1 ) = G (K , ϕ1 )(v ,ϕ1 ) und G(v ,ϕ2 ) = G (K , ϕ2 )(v ,ϕ2 ) (10) Wir erhalten: (v , ϕ) ∈ WGEve ⇐⇒ (v , ϕ1 ), (v , ϕ2 ) ∈ WGEve Lem. 29 ⇐⇒ (v , ϕ1 ) ∈ WGEve , (v , ϕ2 ) ∈ WGEve (v ,ϕ ) (v ,ϕ 2) 1 (10) Eve ⇐⇒ (v , ϕ1 ) ∈ WGEve (K ,ϕ1 )(v ,ϕ ) , (v , ϕ2 ) ∈ WG (K ,ϕ2 )(v ,ϕ 2) 1 Lem. 29 Eve ⇐⇒ (v , ϕ1 ) ∈ WGEve (K ,ϕ1 ) , (v , ϕ2 ) ∈ WG (K ,ϕ2 ) IH ⇐⇒ v ∈ [[ϕ1 ]]K , v ∈ [[ϕ2 ]]K ⇐⇒ v ∈ [[ϕ]]K Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 149 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele ϕ = ϕ1 ∨ ϕ2 : analog ϕ = ♦ψ: Aus der Konstruktion von G = G (K , ϕ) folgt für alle u ∈ V : G(u,ψ) = G (K , ψ)(u,ψ) (11) Wir erhalten: (v , ϕ) ∈ WGEve ⇐⇒ ∃u ∈ V : (v , u) ∈ E , (u, ψ) ∈ WGEve Lem. 29 ⇐⇒ ∃u ∈ V : (v , u) ∈ E , (u, ψ) ∈ WGEve (u,ψ) (11) ⇐⇒ ∃u ∈ V : (v , u) ∈ E , (u, ψ) ∈ WGEve (K ,ψ)(u,ψ) Lem. 29 ⇐⇒ ∃u ∈ V : (v , u) ∈ E , (u, ψ) ∈ WGEve (K ,ψ) IH ⇐⇒ ∃u ∈ V : (v , u) ∈ E , u ∈ [[ψ]]K ⇐⇒ v ∈ [[ϕ]]K ϕ = ψ: analog Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 150 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele ϕ = µX .ψ: Sei f = FXK,ψ : U 7→ [[ψ]]K [X /U] für U ⊆ V . \ [[µX .ψ]]K = µf = {U ⊆ V | f (U) ⊆ U}. Wir müssen also zeigen: (v , µX .ψ) ∈ WGEve (K ,µX .ψ) ⇐⇒ v ∈ \ {U ⊆ V | f (U) ⊆ U}. (12) Sei Vµ = {u ∈ V | (u, µX .ψ) ∈ WGEve (K ,µX .ψ) }. Dann ist (12) äquivalent zu Vµ = Beweis von ”⊇”: \ {U ⊆ V | f (U) ⊆ U} Wir zeigen dafür f (Vµ ) ⊆ Vµ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 151 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Sei also u ∈ f (Vµ ) u ∈ [[ψ]]K [X /Vµ ] IH (u, ψ) ∈ WGEve (K [X /Vµ ],ψ) Eve hat also eine gedächtnislose Gewinnstrategie τψ auf der Spielposition (u, ψ) in dem Spiel G (K [X /Vµ ], ψ). Wir zeigen nun, dass dann Eve auch eine gedächtnislose Gewinnstrategie τ auf der Spielposition (u, µX .ψ) in dem Spiel G (K , µX .ψ) hat, denn dies bedeutet u ∈ Vµ . Die gedächtnislose Strategie τ sieht wie folgt aus: Im ersten Schritt zieht Eve von (u, µX .ψ) nach (u, ψ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 152 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Nun zieht Eve solange konform zur Strategie τψ , wie die aktuelle Spielposition nicht von der Form (v , X ) für ein v ∈ V ist. Sollte dies nie passieren, so erhalten wir eine zu τψ konforme Partie in dem Spiel G (K [X /Vµ ], ψ), also gewinnt Eve. Beachte: Positionen der Form (v , X ) sind Sackgassen in G (K [X /Vµ ], ψ), in G (K , µX .ψ) kann/muss jedoch von solch einer Position zu (v , µX .ψ) gezogen werden. Falls die aktuelle Position doch irgenwann von der Form (v , X ) ist, dann muss in dem Spiel G (K [X /Vµ ], ψ) die Priorität von (v , X ) gleich 0 sein. Denn: Eve spielte von (u, ψ) aus konform zu ihrer Gewinnstrategie τψ , und (v , X ) ist eine Sackgasse in G (K [X /Vµ ], ψ). v ∈ Vµ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 153 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Nach Definition von Vµ hat Eve eine Gewinnstrategie τ ′ auf (v , µX .ψ) in dem Spiel G (K , µX .ψ). Eve zieht deshalb von (v , X ) nach (v , µX .ψ) und spielt fortan konform zu τ ′ . Eve gewinnt. Dies beendet den Beweis von ”⊇”. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 154 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele G (K , µX .ψ) G (K [X /Vµ ], ψ) u, µX .ψ u, ψ τψ v, X v , µX .ψ Abbildung: Der Fall ψ = µX .ψ, f (Vµ ) ⊆ Vµ Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 155 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Wir kommen nun zum Beweis von \ Vµ ⊆ {U ⊆ V | f (U) ⊆ U} = µf . (13) Sei τ eine gedächtnislose Strategie für Eve mit der Eve auf allen Positionen aus WGEve (K ,µX .ψ) in dem Spiel G (K , µX .ψ) gewinnt (existiert nach Lemma 22). (13) folgt aus: ∀U ⊆ V : f (U) = U ⇒ Vµ ⊆ U Sei also U ⊆ V ein Fixpunkt von f : f (U) = U, und sei v0 ∈ Vµ , d. h. (v0 , µX .ψ) ∈ WGEve (K ,µX .ψ) . Wir zeigen v0 ∈ U. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 156 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Angenommen es gilt v0 6∈ U = f (U) = [[ψ]]K [X /U] . IH (v0 , ψ) 6∈ WGEve (K [X /U],ψ) Aus (v0 , µX .ψ) ∈ WGEve (K ,µX .ψ) und N(v0 , µX .ψ) = {(v0 , ψ)} folgt andererseits Eve (v0 , ψ) ∈ WGEve (K ,µX .ψ) = WG (K ,µX .ψ) (τ ). Betrachte nun die Einschränkung τ ′ der Strategie τ auf die Positionen des Spiels G (K [X /U], ψ). ′ Wegen (v0 , ψ) 6∈ WGEve (K [X /U],ψ) kann τ keine Gewinnstrategie für Eve auf (v0 , ψ) sein. es existiert eine zu τ ′ konforme und bei (v0 , ψ) beginnende Partie w in G (K [X /U], ψ), welche Adam gewinnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 157 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Ein Vergleich der Spiele G (K [X /U], ψ) und G (K , µX .ψ) zeigt, dass die Partie w schließlich in eine Sackgasse (v1 , X ) mündet. Da Adam die Partie w gewinnt, muss die Priorität von (v1 , X ) gleich −1 sein. v1 6∈ U. Sei w0 ein endlicher Präfix von w , welcher in (v1 , X ) endet. Da w0 ein Präfix einer zu τ konformen Partie in dem Spiel G (K , µX .ψ) ist, folgt: (v1 , X ) ∈ WGEve (K ,µX .ψ) . Wegen N(v1 , X ) = {(v1 , µX .ψ)} folgt (v1 , µX .ψ) ∈ WGEve (K ,µX .ψ) , d. h. v1 ∈ Vµ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 158 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Wir sind nun wieder in einer Situation wie am Anfang: Wir haben eine Position v1 (anstatt v0 ) vorliegen mit: v1 6∈ U und v1 ∈ Vµ . Wir können also die obige Argumentationskette unendlich lange wiederholen und erhalten so eine Partie w0 w1 w2 · · · , welches konform zur Strategie τ ist und bei einer Position aus WGEve (K ,µX .ψ) beginnt. Eve gewinnt w0 w1 w2 · · · . Aber: die höchste Priorität (χ-Wert), der in der Partie w0 w1 w2 · · · unendlich of vorkommt, ist ad(µX .ψ) (eine ungerade Zahl). Adam gewinnt w0 w1 w2 · · · . Widerspruch. Also muss wie gewünscht v0 ∈ U gelten. Dies beendet den Fall ϕ = µX .ψ. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 159 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele G (K , µX .ψ) G (K [X /U], ψ) v0 , µX .ψ v0 , ψ v1 , µX .ψ w0 v1 , X w1 v2 , X v1 , ψ v2 , µX .ψ v2 , ψ ... Abbildung: Der Fall ψ = µX .ψ, Vµ ⊆ U Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 160 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele ϕ = νX .ψ: Sei wieder f = FXK,ψ : U 7→ [[ψ]]K [X /U] für U ⊆ V . [ [[νX .ψ]]K = νf = {U ⊆ V | U ⊆ f (U)}. Wir müssen also zeigen: (v , νX .ψ) ∈ WGEve (K ,νX .ψ) ⇐⇒ v ∈ [ {U ⊆ V | U ⊆ f (U)}. (14) Sei Vν = {u ∈ V | (u, νX .ψ) ∈ WGEve (K ,νX .ψ) }. Dann ist (14) äquivalent zu Vν = Beweis von ”⊆”: [ {U ⊆ V | U ⊆ f (U)}. Wir zeigen dafür Vν ⊆ f (Vν ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 161 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Sei also u ∈ Vν (u, νX .ψ) ∈ WGEve (K ,νX .ψ) Sei τ eine gedächtnislose Gewinnstrategie für Eve auf der Spielposition (u, νX .ψ) in dem Spiel G (K , νX .ψ). Wir zeigen nun, dass die Einschränkung τψ von τ auf das Spiel G (K [X /Vν ], ψ) eine Gewinnstrategie für Eve auf der Position (u, ψ) in dem Spiel G (K [X /Vν ], ψ) ist ( u ∈ [[ψ]]K [X /Vν ] = f (Vν ) mit IH). Sei w eine zu τψ konforme Partie in G (K [X /Vν ], ψ), welche bei (u, ψ) beginnt. Fall 1: w besucht niemals eine Position der Form (v , X ) für ein v ∈ V . Dann ist w eine zu τ konforme Partie in dem Spiel G (K , νX .ψ), welche in der Position (u, ψ) beginnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 162 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Da (u, νX .ψ) nur den Nachfolger (u, ψ) in dem Spiel G (K , νX .ψ) hat, ist (u, νX .ψ)w eine zu τ konforme Partie in dem Spiel G (K , νX .ψ), welche bei (u, νX .ψ) beginnt. Eve gewinnt die Partie (u, νX .ψ)w und damit auch die Partie w . Fall 2: w besucht schließlich eine Position der Form (v , X ) für ein v ∈ V . (v , X ) ∈ WGEve (K ,νX .ψ) Da (v , νX .ψ) der einzige Nachfolger von (v , X ) in dem Spiel G (K , νX .ψ) ist, folgt (v , νX .ψ) ∈ WGEve (K ,νX .ψ) . v ∈ Vν in G (K [X /Vν ], ψ) ist die Priorität von (v , X ) gleich 0. Eve gewinnt die Partie w in dem Spiel G (K [X /Vν ], ψ). Dies beendet den Beweis von ”⊆”. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 163 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Wir kommen nun zum Beweis von [ Vν ⊇ {U ⊆ V | U ⊆ f (U)} = νf . Sei v0 ∈ νf = f (νf ) = [[ψ]]K [X /νf ] . IH (v0 , ψ) ∈ WGEve (K [X /νf ],ψ) Sei τψ eine gedächtnislose Strategie für Eve mit der Eve auf allen Positionen aus WGEve (K [X /νf ],ψ) (insbesondere also auf (v0 , ψ)) in dem Spiel G (K [X /νf ], ψ) gewinnt (existiert nach Lemma 22). Wir konstruieren nun eine Strategie τ für Eve in dem Spiel G (K , νX .ψ): τ (u, νX .ψ) = (u, ψ) τ (u, X ) = (u, νX .ψ) τ (u, θ) = τψ (u, θ) falls θ 6∈ {X , νX .ψ} Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 164 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele Behauptung: τ ist eine Gewinnstrategie für Eve auf (v0 , νX .ψ). ( v0 ∈ Vν ) Sei s0 s1 s2 · · · eine zu τ konforme Partie in dem Spiel G (K , νX .ψ), welche mit s0 = (v0 , νX .ψ) beginnt. Fall 1: Keine Position si ist von der Form (v , X ) für ein v ∈ V . Dann ist s1 s2 · · · eine zur Strategie τψ konforme Partie in dem Spiel G (K [X /νf ], ψ), welche bei s1 = (v0 , ψ) beginnt. Eve gewinnt, da (v0 , ψ) ∈ WGEve (K [X /νf ],ψ) (τψ ). Fall 2: sk = (v1 , X ) ist die erste Position von der Form (v , X ) ( sk+1 = (v1 , νX .ψ)). s1 s2 · · · sk ist Präfix einer zu τψ konformen Partie in dem Spiel G (K [X /νf ], ψ). Da sk = (v1 , X ) eine Sackgasse in dem Spiel G (K [X /νf ], ψ) ist, hat sk die Priorität 0 in dem Spiel G (K [X /νf ], ψ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 165 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele v1 ∈ νf = f (νf ) = [[ψ]]K [X /νf ] IH (v1 , ψ) ∈ WGEve (K [X /νf ],ψ) . Wir sind damit wieder in der Ausgangslage: (v1 , ψ) ∈ WGEve (K [X /νf ],ψ) und sk+1 sk+2 · · · (bzw. sk+1 sk+2 · · · sm ) ist eine mit τ konforme Partie, welche in der Spielposition sk+1 = (v1 , νX .ψ) beginnt. Wir können somit die obige Argumentation beliebig oft wiederholen. Einer der beiden folgenden Fälle gilt: Fall 1 tritt irgendwann ein, d. h. es gibt ein i ≥ 0, so dass ab der Position si keine Position (v , X ) für ein v ∈ V besucht wird. Eve gewinnt. Fall 2 wird stets eintreten. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 166 / 203 Der modale µ-Kalkül modaler µ-Kalkül → Paritätsspiele es wird ∞ oft eine Spielposition der Form (v , νX .ψ) besucht. max Inf(χ(s0 )χ(s1 ) · · · ) = ad(νX .ψ) ist gerade. Eve gewinnt. Dies beendet den Beweis von Satz 28. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 167 / 203 Der modale µ-Kalkül Model-Checking für modalen µ-Kalkül Satz 30 Das folgende Problem (Model-Checking Problem für den modalen µ-Kalkül) gehört zu NP ∩ coNP: EINGABE: Eine endliche Kripkestruktur K = (V , E , Π, π), v ∈ V und ϕ ∈ µC(Π) (ohne freie Variablen) FRAGE: Gilt v ∈ [[ϕ]]K ? Beweis: Für Enthaltensein in NP: (1) Konstruiere das Spiel G = G (K , ϕ) Beachte: G hat nur |V | · |ϕ| viele Positionen und kann leicht in Polynomialzeit aus K und ϕ konstruiert werden. (2) Teste mit einem NP-Algorithmus (raten einer Gewinnstrategie, siehe Satz 25), ob (v , ϕ) ∈ WGEve (K ,ϕ) (⇐⇒ v ∈ [[ϕ]]K nach Satz 28) gilt. Enthaltensein in coNP folgt analog, da die Frage (v , ϕ) ∈ WGEve (K ,ϕ) nach Satz 25 auch in coNP liegt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 168 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül Satz 31 Aus einem endlichen Paritätsspiel G = (S, →, ρ, χ) kann man in Polynomialzeit eine Kripkestruktur K = (S, →, Π, π) und eine Formel ϕ ∈ µC(Π) mit WGEve = [[ϕ]]K berechnen. Beweis: Sei G = (S, →, ρ, χ) ein Paritätsspiel. Sei d = max{χ(s) | s ∈ S} die maximale Priorität. Wir definieren die Kripkestruktur K = (S, →, Π, π) wie folgt: Π = {Ei , Ai | 0 ≤ i ≤ d} π(Ei ) = {s | ρ(s) = Eve und χ(s) = i} π(Ai ) = {s | ρ(s) = Adam und χ(s) = i} Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 169 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül Die Formel ϕ sei schließlich: ϕ = λd Xd · · · µX1 νX0 d _ i=0 (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi ) , wobei λi = ν, falls i gerade, und λi = µ, falls i ungerade. Nach Satz 28 gilt für alle s ∈ S: s ∈ [[ϕ]]K ⇐⇒ (s, ϕ) ∈ WGEve (K ,ϕ) Eve Behauptung: (s, ϕ) ∈ WGEve (K ,ϕ) ⇐⇒ s ∈ WG (dies impliziert s ∈ [[ϕ]]K ⇐⇒ s ∈ WGEve ). Betrachte hierzu das Spiel G (K , ϕ). Ein Ausschnitt hiervon sieht wie folgt aus (siehe nächste Folie): Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 170 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül s ′ , λd Xd d s, λd Xd d s ′ , λi Xi i s, µX1 1 s ′ , νX0 0 s, νX0 0 W s, Eve rät χ(s) s, ∨ Eve rät ρ(s) s, ∧ s, ∧ Adam überprüft Eve s, Ei s, ♦Xi ... Eve rät Nachfolger von s Markus Lohrey (Universität Leipzig) s, Ai s ′ , Xi s, Xi ... Adam rät Nachfolger von s Spieltheoretische Methoden in der Logik SS 2009 171 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül Eve Wir zeigen nun: (s, ϕ) ∈ WGEve (K ,ϕ) ⇐⇒ s ∈ WG . “⇐”: Sei τ eine Gewinnstrategie für Eve auf s ∈ S in dem Spiel G . Definiere eine Strategie τ ′ für Eve in dem Spiel G (K , ϕ) wie folgt: Von einer Position d _ (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi ) ) (t, i=0 zieht Eve nach (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )), falls χ(t) = i. Von einer Position (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )) zieht Eve nach (t, Ei ∧ ♦Xi ), falls ρ(t) = Eve. Von einer Position (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )) zieht Eve nach (t, Ai ∧ Xi ), falls ρ(t) = Adam. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 172 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül Eve zieht also entsprechend den tatsächlichen Werten χ(t) und ρ(t). Sei χ(t) = i und ρ(t) = Eve, d. h. Eve wird nach (t, Ei ∧ ♦Xi ) ziehen. Zieht Adam nun von der Position (t, Ei ∧ ♦Xi ) nach (t, Ei ), so wird Eve gewinnen, da t ∈ π(Ei ). Also wird Adam von (t, Ei ∧ ♦Xi ) nach (t, ♦Xi ) ziehen. Nun zieht Eve zur Position (τ (t), Xi ), von wo die Partie nach (τ (t), λi Xi · · · ) gelangt. Diese Position hat Priorität i. Falls ρ(t) = Adam, gelangt die Partie in die Position (t, Xi ), von der Adam zu einer beliebigen Position (t ′ , Xi ) mit t ′ ∈ NG (t) ziehen kann. Von dort gelangt die Partie in die Position (t ′ , λi Xi · · · ) mit Priorität i. Wenn Eve sich an die Strategie τ ′ hält, wird eine zu Eves Gewinnstrategie τ -konforme Partie in dem Spiel G simuliert. Eve gewinnt. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 173 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül “⇒”: Sei τ eine Gewinnstrategie für Eve auf (s, ϕ) ∈ S in G (K , ϕ). O.B.d.A. gilt für die Strategie τ : Von einer Position d _ (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi ) ) i=0 zieht Eve nach (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )), falls χ(t) = i. Von einer Position (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )) zieht Eve nach (t, Ei ∧ ♦Xi ), falls ρ(t) = Eve. Von einer Position (t, (Ei ∧ ♦Xi ) ∨ (Ai ∧ Xi )) zieht Eve nach (t, Ai ∧ Xi ), falls ρ(t) = Adam. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 174 / 203 Der modale µ-Kalkül Paritätsspiele → modaler µ-Kalkül Wenn dies nicht gelten würde, könnte Adam gewinnen. Wir definieren nun eine Strategie τ ′ für Eve in dem Spiel G wie folgt: Sei t ∈ S mit ρ(t) = Eve und χ(t) = i: τ ′ (t) = t ′ , falls τ (t, ♦Xi ) = (t ′ , Xi ). Eine zu τ ′ konforme und bei s beginnende Partie in dem Spiel G entspricht dann einer zu τ konformen und bei (s, ϕ) beginnenden Partie in dem Spiel G (K , ϕ). Also ist τ ′ eine Gewinnstrategie für Eve auf der Positon s. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 175 / 203 Der modale µ-Kalkül Weitere Resultate zum modalen µ-Kalkül Das folgende Problem (Erfüllbarkeitsproblem für den modalen µ-Kalkül) ist entscheidbar: EINGABE: Formel ϕ ∈ µC(Π). FRAGE: Existiert eine Kripkestruktur K mit [[ϕ]]K 6= ∅? Genauer: Dieses Problem ist vollständig für die Komplexitätsklasse EXPTIME (deterministische exponentielle Zeit). Auch für den Beweis dieses Resultats spielen Paritätsspiele eine zentrale Rolle. Ist ϕ ∈ µC(Π) erfüllbar, so existiert eine endliche Kripkestruktur K mit [[ϕ]]K 6= ∅ (finite model property) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 176 / 203 Fixpunktlogik Überblick In diesem Abschnitt führen wir die Fixpunktlogik ein. Diese erweitert sowohl Logik 1. Stufe als auch den modalen µ-Kalkül. Wir zeigen, wie das Model-Checking Problem für Fixpunktlogik wieder auf die Berechnung der Gewinnmenge in einem Paritätsspiel reduziert werden kann. Schließlich betrachten wir noch einige Fragmente der Fixpunktlogik, für die das Model-Checking Problem effizient gelöst werden kann. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 177 / 203 Fixpunktlogik Fixpunktlogik Der modale µ-Kalkül ist eine Erweiterung von Modallogik um Fixpunktkonstrukte. Logik 1. Stufe ist ebenfalls eine Erweiterung von Modallogik. Eine gemeinsame Erweiterung des modalen µ-Kalküls und von Logik 1. Stufe ist Fixpunktlogik (LFP für least fixpoint logic). Zur Erinnerung: Eine Signatur ist ein Paar S = (R, arity) wobei gilt: R ist eine endliche Menge von Relationssymbolen. arity : R → N ist eine Funktion, die jedem Relationssymbol r ∈ R seine Stelligkeit arity(r ) zuordnet. Sei X wieder eine abzählbar-unendliche Menge von Variablen 1. Stufe (x, y , z, x ′ , x0 , . . .). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 178 / 203 Fixpunktlogik Fixpunktlogik Sei Yi im folgenden eine abzählbar-unendliche Menge von S Fixpunktvariablen von Rang i ≥ 1 (X , Y , Z , X ′ , X0 , . . .), Y = i≥1 Yi . Ist also Y ′ ⊆ Y eine endliche Menge von Fixpunktvariablen, so ist auch (R ∪ Y ′ , arity) eine Signatur. Wir definieren die Menge LFP(S) aller Fixpunktformeln (über der Signatur S) und simultan die Menge aller freien Variablen (1.Stufe) free1 (ϕ) von ϕ ∈ LFP(S): (x = y ), (x 6= y ) ∈ LFP(S) für alle x, y ∈ X und free1 (x = y ) = free1 (x 6= y ) = {x, y }. Wenn r ∈ R, arity(r ) = n und x1 , . . . , xn ∈ X , dann r (x1 , . . . , xn ), ¬r (x1 , . . . , xn ) ∈ LFP(S). free1 (r (x1 , . . . , xn )) = free1 (¬r (x1 , . . . , xn )) = {x1 , . . . , xn } Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 179 / 203 Fixpunktlogik Fixpunktlogik Wenn X ∈ Yn und x1 , . . . , xn ∈ X , dann X (x1 , . . . , xn ) ∈ LFP(S). free1 (X (x1 , . . . , xn )) = {x1 , . . . , xn } Wenn ϕ, ψ ∈ LFP(S), dann auch ϕ ∧ ψ, ϕ ∨ ψ ∈ LFP(S). free1 (ϕ ∧ ψ) = free1 (ϕ ∨ ψ) = free1 (ϕ) ∪ free1 (ψ) Wenn ϕ ∈ LFP(S) und x ∈ X , dann auch ∃x ϕ, ∀x ϕ ∈ LFP(S). free1 (∀x ϕ) = free1 (∃x ϕ) = free1 (ϕ) \ {x} Sei ϕ ∈ LFP(S), X ∈ Y, arity(X ) = n, free1 (ϕ) = {x1 , . . . , xn } mit xi 6= xj für i 6= j. Sei x = (x1 , . . . , xn ) und sei y = (y1 , . . . , yn ) ein Tupel von Variablen 1.Stufe (yi = yj für i 6= j ist erlaubt). Dann ist [lfp(X , x).ϕ] y ∈ LFP(S) und [gfp(X , x).ϕ] y ∈ LFP(S). free1 ([lfp(X , x).ϕ] y ) = free1 ([lfp(X , x).ϕ] y ) = {y1 , . . . , yn } Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 180 / 203 Fixpunktlogik Semantik für Fixpunktlogik Die Menge free2 (ϕ) ⊆ Y der freien Fixpunktvariablen von ϕ ist analog definiert, wobei lfp und gfp Fixpunktvariablen binden. Eine Struktur über der Signatur S = (R, arity) ist ein Tripel A = (A, I2 , I1 ), wobei gilt: A ist eine beliebige Menge (das Universum der Struktur) mit A 6= ∅. I2 ist eine partielle Funktion, für deren endlichen Definitionsbereich dom(I2 ) gilt: R ⊆ dom(I2 ) ⊆ R ∪ Y. Jedem α ∈ dom(I2 ) ordnet I2 eine arity(α)-stellige Relation I2 (α) ⊆ Aarity(α) zu. I1 : X → A ist eine partielle Funktion mit endliche Definitionsbereich dom(I1 ). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 181 / 203 Fixpunktlogik Semantik für Fixpunktlogik Für eine Formel ϕ ∈ LFP(S) und eine Struktur A = (A, I2 , I1 ) über der Signatur S mit dom(I1 ) = free1 (ϕ) und dom(I2 ) = free2 (ϕ) ∪ R (d. h. A passt zu ϕ) schreiben wir A |= ϕ genau dann, wenn einer der folgenden Fälle gilt: ϕ = (x = y ) und I1 (x) = I1 (y ) ϕ = (x 6= y ) und I1 (x) 6= I1 (y ) ϕ = r (x1 , . . . , xn ) und (I1 (x1 ), . . . , I1 (xn )) ∈ I2 (r ). ϕ = ¬r (x1 , . . . , xn ) und (I1 (x1 ), . . . , I1 (xn )) 6∈ I2 (r ). ϕ = X (x1 , . . . , xn ) und (I1 (x1 ), . . . , I1 (xn )) ∈ I2 (X ). ϕ = ψ ∧ θ und (A |= ψ und A |= θ). ϕ = ψ ∨ θ und (A |= ψ oder A |= θ). ϕ = ∃x ψ und es gibt ein a ∈ A mit (A, I2 , I1 ∪ {(x, a)}) |= ψ ϕ = ∀x ψ und für alle a ∈ A gilt (A, I2 , I1 ∪ {(x, a)}) |= ψ. ϕ = [lfp(X , x).ψ] y oder ϕ = [gfp(X , x).ψ] y : siehe nächste Folie. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 182 / 203 Fixpunktlogik Semantik für Fixpunktlogik Sei arity(X ) = n und x = (x1 , . . . , xn ), y = (y1 , . . . , yn ). Da free1 ([lfp(X , x).ψ] y ) = free1 ([gfp(X , x).ψ] y ) = {y1 , . . . , yn } gilt I1 : {y1 , . . . , yn } → A. Beachte: yi = yj für i 6= j ist erlaubt, dann muss natürlich auch I1 (yi ) = I1 (yj ) gelten. n n Wir definieren eine Funktion F : 2A → 2A wie folgt: Sei R ⊆ An . F (R) = {(a1 , . . . , an ) | (A, J2 , J1 ) |= ψ} Hierbei ist J2 = I2 ∪ {(X , R)} und J1 = {(x1 , a1 ), . . . , (xn , an )}. Analog zum modalen µ-Kalkül zeigt man, dass F monoton ist (eigentlich müssten wir FXA,x,ψ anstatt F schreiben). Dann gilt: A |= [lfp(X , x).ψ] y ⇐⇒ (I1 (y1 ), . . . , I1 (yn )) ∈ µF A |= [gfp(X , x).ψ] y ⇐⇒ (I1 (y1 ), . . . , I1 (yn )) ∈ νF Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 183 / 203 Fixpunktlogik Beispiele für Fixpunkformeln (1) Sei S = ({E }, arity) mit arity(E ) = 2, und sei ϕ die folgende LFP(S)-Formel: ϕ = [lfp(X , (x, y )). E (x, y ) ∨ ∃z(E (x, z) ∧ X (z, y ))](u, v ). Dann gilt für jede Struktur A = (A, I2 , I1 ) (die zu ϕ passt): A |= ϕ ⇐⇒ (I1 (u), I1 (v )) ∈ I2 (E )+ . (2) Für die LFP(S)-Formel ϕ = [lfp(X , (x, y )). (x = y ) ∨ ∃z(E (x, z) ∧ X (z, y ))](u, v ). gilt: A |= ϕ ⇐⇒ (I1 (u), I1 (v )) ∈ I2 (E )∗ . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 184 / 203 Fixpunktlogik Fixpunktformeln in Normalform Eine Formel ϕ ∈ LFP(S) ist in Normalform falls gilt: Keine Fixpunktvariable wird zweimal in ϕ gebunden: Sind [α(X , x).ψ]u und [β(Y , y ).θ]v (mit α, β ∈ {lfp, gfp}) zwei Teilformeln von ϕ, die an verschiedenen Positionen in ϕ beginnen, so gilt X 6= Y . Keine Fixpunktvariable kommt in ϕ gebunden und frei vor: Falls ϕ eine Teilformel der Gestalt [α(X , x).ψ]u (mit α ∈ {lfp, gfp}) enthält, so gilt X 6∈ free2 (ϕ). Für jede Teilformel der Gestalt [α(X , x).ψ](y1 , . . . , yn ) sind die Variablen y1 , . . . , yn paarweise verschieden, d. h. yi 6= yj für i 6= j. (mit α ∈ {lfp, gfp}) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 185 / 203 Fixpunktlogik Fixpunktformeln in Normalform Lemma 32 Für jede Formel ϕ ∈ LFP(S) gibt es eine Formel ψ in Normalform mit den gleichen freien Variablen, so dass für alle passenden Strukturen A gilt: A |= ϕ ⇔ A |= ψ. Beweis: Die ersten beiden Forderungen können durch systematisches Umbenennen gebundener Fixpunktvariablen erreicht werden. Die letzte Forderung kann durch Einführen neuer Variablen 1.Stufe erreicht werden, z.B: [lfp(X , (x1 , x2 )).ψ](y1 , y1 ) Markus Lohrey (Universität Leipzig) ∃y2 (y2 = y1 ∧ [lfp(X , (x1 , x2 )).ψ](y1 , y2 )). Spieltheoretische Methoden in der Logik SS 2009 186 / 203 Fixpunktlogik LFP → Paritätsspiele Sei ϕ ∈ LFP(S) in Normalform und sei A = (A, I2 , I1 ) eine zu ϕ passende Struktur. Wir konstruieren ein Paritätsspiel G (A, ϕ) = (S, →, ρ, χ) wie folgt: S = {(I , ψ) | ψ ∈ sub(ϕ), I : free1 (ψ) → A} → ist wie folgt definiert: I ↾free1 (θ), θ I,ψ ∨ θ I ↾free1 (θ), θ I,ψ ∧ θ I ↾free1 (ψ), ψ I , ∃x ψ I ∪ {(x, a)}, ψ ∀a ∈ A Markus Lohrey (Universität Leipzig) I ↾free1 (ψ), ψ I , ∀x ψ Spieltheoretische Methoden in der Logik I ∪ {(x, a)}, ψ ∀a ∈ A SS 2009 187 / 203 Fixpunktlogik LFP → Paritätsspiele I , [lfp(X , x).ψ]y J, ψ I , [gfp(X , x).ψ]y J, ψ Hierbei ist J : {x1 , . . . , xn } → A definiert durch J(xi ) = I (yi ) für 1 ≤ i ≤ n, wobei x = (x1 , . . . , xn ) und y = (y1 , . . . , yn ). Falls X in ϕ gebunden ist: J, X (x1 , . . . , xn ) I , [α(X , x).ψ]y Hierbei ist [α(X , x).ψ]y (mit α ∈ {lfp, gfp}) die (wegen Normalform) eindeutige Teilformel von ϕ, die X bindet. Die Funktion I : {y1 , . . . , yn } → A ist definiert durch I (yi ) = J(xi ) für 1 ≤ i ≤ n. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 188 / 203 Fixpunktlogik LFP → Paritätsspiele Die Funktion ρ : S → {Eve, Adam} ist wie folgt definiert: ρ(I , ψ ∨ θ) = ρ(I , ∃x ψ) = Eve ρ(I , ψ ∧ θ) = ρ(I , ∀x ψ) = Adam Auf allen anderen Spielpositionen kann ρ beliebig definiert werden. Wir müssen nun noch die Funktion χ : S → N definieren. Hierzu definieren wir die Alternierungstiefe ad([α(X , x).ψ]u) einer Formel [α(X , x).ψ]u (α ∈ {lfp, gfp}) induktiv wie folgt: ad([lfp(X , x).ψ]u) ist die kleinste ungerade Zahl a ∈ N, so dass a ≥ ad([α(Y , y ).θ]v ) für alle Teilformeln [α(Y , y ).θ]v von ψ (α ∈ {lfp, gfp}). ad([gfp(X , x).ψ]u) ist die kleinste gerade Zahl a ∈ N, so dass a ≥ ad([α(Y , y ).θ]v ) für alle Teilformeln [α(Y , y ).θ]v von ψ (α ∈ {lfp, gfp}). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 189 / 203 Fixpunktlogik LFP → Paritätsspiele Dann ist χ : S → N ad(ψ) −1 χ(I , ψ) = 0 definiert als: falls ψ von der Form [α(X , x).θ]y (α ∈ {lfp, gfp}) ist falls ψ = r (x1 , . . . , xn ) ∧ (I (x1 ), . . . , I (xn )) 6∈ I2 (r ) oder ψ = ¬r (x1 , . . . , xn ) ∧ (I (x1 ), . . . , I (xn )) ∈ I2 (r ) oder ψ = (x = y ) ∧ I (x) 6= I (y ) oder ψ = (x 6= y ) ∧ I (x) = I (y ) oder ψ = X (x1 , . . . , xn ) ∧ (I (x1 ), . . . , I (xn )) 6∈ I2 (X ) und X ist frei in ϕ sonst Satz 33 Sei ϕ ∈ LFP(S) und sei A = (A, I2 , I1 ) eine zu ϕ passende Struktur. Dann gilt: A |= ϕ ⇐⇒ (I1 , ϕ) ∈ WGEve (A,ϕ) Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 190 / 203 Fixpunktlogik LFP → Paritätsspiele Der Beweis verläuft völlig analog zum Beweis von Satz 28 (modaler µ-Kalkül → Paritätsspiele). Beispiel: Die Signatur S enthalte nur ein 2-stelliges Relationssymbol E . Sei A die folgende Struktur (gerichteter Graph) über der Signatur S: 0 1 Sei ϕ = ∀u∀v [lfp(X , (x, y )).θ](u, v ) mit θ = E (x, y ) ∨ ∃z(E (x, z) ∧ X (z, y )). Dann sieht das Spiel G (A, ϕ) wie folgt aus, wobei wir eine Position (I , ψ(x1 , . . . , xn )) identifizieren mit ψ(I (x1 ), . . . , I (xn )). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 191 / 203 Fixpunktlogik LFP → Paritätsspiele ∀u∀v [lfp(X , (x, y )).θ](u, v ) [lfp(X , (x, y )).θ](0, 0) [lfp(X , (x, y )).θ](0, 1) 1 1 [lfp(X , (x, y )).θ](1, 0) [lfp(X , (x, y )).θ](1, 1) 1 1 θ(0, 0) θ(0, 1) θ(1, 0) θ(1, 1) ∃z E (0, z) ∧ X (z, 0) ∃z E (0, z) ∧ X (z, 1) ∃z E (1, z) ∧ X (z, 0) ∃z E (1, z) ∧ X (z, 1) E (0, 0) ∧ X (0, 0) E (0, 0) E (0, 1) ∧ X (1, 0) E (0, 0) ∧ X (0, 1) E (0, 1) X (0, 0) Markus Lohrey (Universität Leipzig) E (0, 1) ∧ X (1, 1) X (0, 1) E (1, 0) ∧ X (0, 0) E (1, 0) E (1, 1) ∧ X (1, 0) X (1, 0) Spieltheoretische Methoden in der Logik E (1, 0) ∧ X (0, 1) E (1, 1) E (1, 1) ∧ X (1, 1) X (1, 1) SS 2009 192 / 203 Fixpunktlogik LFP → Paritätsspiele ∀u∀v [lfp(X , (x, y )).θ](u, v ) [lfp(X , (x, y )).θ](0, 0) [lfp(X , (x, y )).θ](0, 1) 1 1 [lfp(X , (x, y )).θ](1, 0) [lfp(X , (x, y )).θ](1, 1) 1 1 θ(0, 0) θ(0, 1) θ(1, 0) θ(1, 1) ∃z E (0, z) ∧ X (z, 0) ∃z E (0, z) ∧ X (z, 1) ∃z E (1, z) ∧ X (z, 0) ∃z E (1, z) ∧ X (z, 1) E (0, 0) ∧ X (0, 0) E (0, 0) E (0, 1) ∧ X (1, 0) E (0, 0) ∧ X (0, 1) E (0, 1) X (0, 0) Markus Lohrey (Universität Leipzig) E (0, 1) ∧ X (1, 1) X (0, 1) E (1, 0) ∧ X (0, 0) E (1, 0) E (1, 1) ∧ X (1, 0) X (1, 0) Spieltheoretische Methoden in der Logik E (1, 0) ∧ X (0, 1) E (1, 1) E (1, 1) ∧ X (1, 1) X (1, 1) SS 2009 193 / 203 Fixpunktlogik Komplexität von Model-Checking für LFP Für das Model-Checking Problem für LFP gilt (ohne Beweis): Satz 34 (Vardi 1982) Das folgende Problem (Model-Checking Problem für Fixpunktlogik) kann in exponentieller Zeit gelöst werden: EINGABE: Eine Formel ϕ ∈ LFP(S) und eine passende endliche Struktur A. FRAGE: A |= ϕ? Dieses Problem ist sogar vollständig für die Komplexitätsklasse EXPTIME. Für eine bestimmte Klasse von Fixpunktformeln kann man die obere Schranke von EXPTIME verbessern: Für ϕ ∈ LFP(S) definiere die Weite von ϕ wie für FO-Formeln: width(ϕ) = max{|free1 (ψ)| | ψ ∈ sub(ϕ)}. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 194 / 203 Fixpunktlogik Komplexität von Model-Checking für LFP Satz 35 Sei w ≥ 0 eine feste Konstante. Das Model-Checking Problem für Fixpunktlogik, eingeschränkt auf LFP(S)-Formeln der Weite ≤ w , liegt in NP ∩ coNP. Beweis: Sei ϕ ∈ LFP(S) (ohne freie Variablen) der Weite ≤ w und sei A eine zu ϕ passende Struktur. (1) Konstruiere das Paritätsspiel G = G (A, ϕ) Beachte: G hat höchsten |A|width(ϕ) · |ϕ| ≤ |A|w · |ϕ| viele Knoten. (2) Teste in NP (bzw. coNP), ob (∅, ϕ) ∈ WGEve . Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 195 / 203 Fixpunktlogik Solitärspiele Will man einen Polynomialzeitalgorithmus für das Model-Checking Problem für Fixpunktlogik erhalten, so muss man weitere Einschränkungen fordern. Sei G = (S, →, ρ, χ) ein Paritätsspiel. Das Spiel G ist ein Solitärspiel, falls ein x ∈ {Adam, Eve} existiert mit: ∀s ∈ S : |NG (s)| > 1 ⇒ ρ(s) = x d. h. alle nicht-trivialen Züge werden vom gleichen Spieler gemacht. Definiere eine Äquivalenzrelation ≡ auf S durch: s ≡ t ⇐⇒ s →∗ t →∗ s. Die Äquivalenzklassen von ≡ sind die starken Zusammenhangskomponenten von (S, →). Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 196 / 203 Fixpunktlogik Solitärspiele Auf der Menge [S]≡ = {[s]≡ | s ∈ S} aller starken Zusammenhangskomponenten können wir eine partielle Ordnung wie folgt definieren: [s]≡ [t]≡ ⇐⇒ s →∗ t Das Spiel G ist ein geschachteltes Solitärspiel, falls für jede starke Zusammenhangskomponente Z ⊆ S ein x ∈ {Adam, Eve} existiert mit: ∀s ∈ Z : |{t ∈ Z | s → t}| > 1 ⇒ ρ(s) = x Satz 36 Es existiert ein Polynomialzeitalgorithmus für das folgende Problem: EINGABE: Ein geschachteltes Solitärspiel G AUSGABE: Die Gewinnmenge WGEve Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 197 / 203 Fixpunktlogik Solitärspiele Beweis: Zunächst zeigen wir, wie für ein Solitärspiel G = (S, →, ρ, χ) die Gewinnmengen WGEve und WGAdam = S \ WGEve in Polynomialzeit berechnet werden können. Gelte o.B.d.A.: ∀s ∈ S : |NG (s)| > 1 ⇒ ρ(s) = Adam. Damit gilt: s ∈ WGEve ⇐⇒ von s aus ist kein Zyklus erreichbar, dessen maximale Priorität ungerade ist. Dies kann in Polynomialzeit überprüft werden, siehe Beweis von Satz 25. Sei nun G = (S, →, ρ, χ) ein geschachteltes Solitärspiel und sei Z eine bzgl. maximale Zusammenhangskomponente. ∀s ∈ Z : NG (s) ⊆ Z Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik (*) SS 2009 198 / 203 Fixpunktlogik Solitärspiele Nach der obigen Betrachtung können wir für H = G ↾Z die Gewinnmengen WHEve und WHAdam = S \ WHEve in Polynomialzeit berechnen. (*) WGEve ∩ Z = WHEve und WGAdam ∩ Z = WHAdam . Eve Berechne nun in Polynomialzeit die Attraktoren AEve = AttEve G (WH ) und AAdam = AttAdam (WHAdam ). G AEve ⊆ WGEve und AAdam ⊆ WGAdam . Sei nun G ′ = G ↾(S \ (AEve ∪ AAdam )). WGEve = AEve ∪ WGEve und WGAdam = AAdam ∪ WGAdam ′ ′ (siehe Aufgabe 2 von Blatt 6). Es genügt also die Gewinnmengen WGEve und WGAdam zu berechnen. ′ ′ Behauptung: G ′ ist wieder ein geschachteltes Solitärspiel. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 199 / 203 Fixpunktlogik Solitärspiele Sei Z ′ eine starke Zusammenhangskomponente von G ′ . es gibt eine starke Zusammenhangskomponente Z von G mit Z ′ ⊆ Z . Sei x ∈ {Adam, Eve}, so dass ∀s ∈ Z : |{t ∈ Z | s → t}| > 1 ⇒ ρ(s) = x Sei nun s ∈ Z ′ ⊆ Z mit |{t ∈ Z ′ | s → t}| > 1 |{t ∈ Z | s → t}| > 1. ρ(s) = x. Dies zeigt, dass G ′ tatsächlich ein geschachteltes Solitärspiel ist. Wir können daher das obige Verfahren wiederholt anwenden. Beachte: Da AEve ∪ AAdam 6= ∅ gilt, wird das Spiel in jeder Iteration echt kleiner. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 200 / 203 Fixpunktlogik Das Solitärfragment von LFP Wir definieren nun ein Fragment von Fixpunktlogik, das sogenannte Solitärfragment SLFP, so dass für jede SLFP-Formel ϕ und jede Struktur A gilt: G (A, ϕ) ist ein geschachteltes Solitärspiel. Für eine LFP-Formel ϕ in Normalform definieren wir den Graphen G (ϕ) = (sub(ϕ), →) mit folgenden Kanten, die mit 1 oder 2 markiert sind: 1 1 ψ1 ∧ ψ2 → ψi , ψ1 ∨ ψ2 → ψi für i ∈ {1, 2} 2 2 ∀xψ → ψ, ∃xψ → ψ 1 1 [lfp(X , x).ψ]y → ψ, [gfp(X , x).ψ]y → ψ 1 1 X → [lfp(X , x).ψ]y und X → [gfp(X , x).ψ]y Beachte: Nur eine dieser Möglichkeiten kann zutreffen, da ϕ in Normalform ist. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 201 / 203 Fixpunktlogik Das Solitärfragment von LFP Eine LFP-Formel ϕ ist eine Adam-Formel (bzw. Eve-Formel), falls in ϕ der oberste Operator ∧ oder ∀ (bzw. ∨ oder ∃) ist. Eine Formel ϕ ∈ LFP(S) gehört zum Fragment SLFP(S), falls für jede starke Zusammenhangskomponente Z des Graphen G (ϕ) ein x ∈ {Eve, Adam} existiert mit: P Für jede x-Formel ψ ∈ Z gilt: θ∈Z Markierung der Kante (ψ, θ) ≤ 1 Beispiele: Die LFP-Formel ∀u∀v [lfp(X , (x, y )).E (x, y ) ∨ ∃z(E (x, z) ∧ X (z, y )](u, v ) gehört zum Solitärfragment von LFP. Die Formel ∀u∀v [lfp(X , (x, y )).E (x, y ) ∨ ∃z(X (x, z) ∧ X (z, y )](u, v ) gehört nicht zum Solitärfragment von LFP. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 202 / 203 Fixpunktlogik Das Solitärfragment von LFP Lemma 37 Für jede Formel ϕ ∈ SLFP(S) und jede passende Struktur A ist G (A, ϕ) ein geschachteltes Solitärspiel. Beweis: Folgt direkt aus der Konstruktion des Spiels G (A, ϕ). Satz 38 (Berwanger, Grädel 2004) Sei w ≥ 0 eine feste Konstante. Das Model-Checking Problem für Fixpunktlogik, eingeschränkt auf SLFP(S)-Formeln der Weite ≤ w , kann in Polynomialzeit gelöst werden. Markus Lohrey (Universität Leipzig) Spieltheoretische Methoden in der Logik SS 2009 203 / 203