200 likes | 344 Views
Monadische Logik 2.Ordnung (MSO). Ilhan Aslan Betreuer: Tim Priesnitz Seminar SS/03 „Logische Aspekte in XML“ Gert Smolka PS-Lab Universität des Saarlandes. Motivation: Baue Logik. möglichst expressive aber entscheidbar.
E N D
Monadische Logik 2.Ordnung (MSO) Ilhan Aslan Betreuer: Tim Priesnitz Seminar SS/03 „Logische Aspekte in XML“ Gert Smolka PS-Lab Universität des Saarlandes
Motivation: Baue Logik • möglichst expressive • aber entscheidbar
Logik 1.Ordnung vs. Logik 2.Ordnung 1.Ordnung: Variablen werden durch Individuen interpretiert. z.B. Aussagenlogik 2.Ordnung: Variablen werden durch Mengen von Individuen interpretiert. z.B. Baumlogiken
Logik 1.Ordnung mit Mengenvariablen Logik 2. Ordnung ist unentscheidbar Band von TM Kopf … x … Gitter realisiert durch binäres Prädikat P(x,t). TM hält gdw. t:P(x+1,t) = halt t
Übersetzung von Bit-Mustern • ew ti ti+1 P xi xi+1 TM wird definiert durch endl. viele Muster-Übergänge. Bsp.: t x: P(x,t) P(x+1,t)P(x+2,t) → P(x+3,t+1) P(x+4,t+1) P(x+5,t+1)
Monadische Logik 2.Ordnung (SiS) Syntax • φ ::= Xφ φ φvφSi(X,Y) X Y x φ x Y S(x,y) x φ x Y x < y Einelementig(X) : ↔ Y ((Y X ) (Y=X) Z (Z X →Z=X v Z=Y))
Syntax Varianten Definiere Syntax mit x φ x Y S(x,y) X Y :↔ x (x X → x Y) x = y :↔ Z ((x Z) ↔ (y Z)) S(X,Y) :↔ x,y ((x X) (y Y) z(((z=x) → (z X)) ((z=y) → (y Y))) S(x,y)) Definiere Syntax mit x φ x Y x < y S(x,y) :↔ (x < y z(x < z z < y))
1 Nachfolger (i=1) Universum: 1* 1 1 2 Nachfolger (i=2) Universum: (1∪2)* 1 2 1 2 Interpretation von Variablen in (schwacher) SiS
Menge von Pfade = Baum ? Menge von Pfade {ε,1,2,11,12,121} 1 1 1 2 1 2 2 1 Setze einzelne Pfade zusammen! 2 1 2 1 2 1 1 2 1 2 1 1 2 1 1
Menge von Pfade = Baum ? Menge von Pfade {ε,1,2,11,12,121} 1 1 1 2 1 2 2 1 Setze einzelne Pfade zusammen. 2 1 2 1 2 1 2 2 1 1 2 1 1
Erfüllbarkeit von (schwacher)S2S Sei β eine Belegunsfunktion mit : β :x π , π ist Pfad β :X 2 π β |= y X <=> β(y) β(X) β |= S1(x,y) <=> β(x)1 = β(y) β |= S2(x,y) <=> β(x)2 = β(y) β |= Xφ<=> β[B/X] |= φ für ein B 2 π …
Bsp.: Definiere Prefix-Abgeschlossenheit mit (schwacher)S2S Pfad-bis-Vater-von(y) X:↔ z (S0(z, y) v S1(z, y) z X) z.B. für X = { ε , 1, 11, 2 } Für y = 11 ist Pfad-bis-Vater-von(y) X erfüllbar weil 1 X! 2 1 1 Prefixpfade-von-Pfad(x) Y :↔ x Y z((zY ¬(z=ε)) Pfad-bis-Vater-von(z) Y (z0 Y ¬ (z1 Y)) (z1 Y ¬ (z0 Y))) 2 1 z.B. für X = { ε , 1, 11, 2 } Für y = 11 ist Prefixpfade-von-Pfad(x) X erfüllbar weil ε,1,11 X ! 1
Bsp.: Definiere Prefix-Abgeschlossenheitmit (schwacher)S2S Ein Pfad (121) ist Prefix-Abgeschlossen bzgl. einer Menge von Pfaden, wenn alle Prefixpfade (ε ,1,2,12,121) in der Menge enthalten sind! 2 1 2 1 1 Eine Menge von Pfaden ist Prefix-Abgeschlossen ( definiert einen Baum) wenn gilt : Prefix-Abgeschlossen(Z) :↔ z ((zZ) Prefixpfade-von-Pfad(z) Z)
Prädikate → Mengen Gegeben: Unäres Prädikat P: Σ*{0,1} charachteristische Menge: MP = {x Σ* P(x) = 1} Prädikate ← Mengen Gegeben: Menge M Σ* charackteristisches Prädikat: PM(x) = 1 , falls x M 0 , sonst
Unäre Prädikate in (schwacher)SiS Y(x) <=> x Y X(Y) unentscheidbar (Logik 3.Ordnung) Gitter realisierbar durch P(X) xX t X Zweielementig(X) P({t,x}) = P({x,t}) x t
Axiomatisierung in S1S: La,Lb : La∩ Lb = La∪ Lb = 1* Kodiere ω-Strings in S1S Beispiel: ω-String über A={ a, b } La Lb La = { ε, 11,1111,… } Lb = { 1,111,11111,… } Jede Adresse hat höchstens ein Label Jede Adresse hat mindestens ein Label
Kodiere Strings in schwacher S1S Beispiel: String über A={ a, b } Axiomatisierung in schwacher S1S: La,Lb : La∩ Lb = prefix-abgeschlossen(La∪ Lb) La Lb La = { ε, 11 } Lb = { 1,111} Jede Adresse hat mindestens ein Label Jede Adresse hat höchstens ein Label
Kodiere ω -Bäume in S2S Beispiel: ω-Baum über A = {f/2, g/2} f Lf = { ε, 11,12, …} Länge der Adr. gerade Lg = { ε, 1,2 } Länge der Adr. ungerade 2 1 g g 1 1 Axiomatisierung in S2S: Lg ,Lf : Lg ∩ Lf = Lg∪ Lf = (1 ∪ 2)* 2 2 f f f f Jede Adresse hat mindestens ein Label Jede Adresse hat höchstens ein Label … …
Beispiel: Baum über A = {f/2, a/0} Kodiere Bäume in schwacher S2S f f La = { ε, 1,21,22} Lf = { ε, 2 } 2 1 a (1) zf Lf : x,y (La∪ Lf): S1(z,x) S2(z,y) (2) za La, z (La∪ Lf) : ¬ (za< z) 1 2 a a • Axiomatisierung in (schwacher)S2S • Lf ,La : La ∩ Lf = Prefix-Abgeschlossen(La∪ Lf) (1) (2) (La∪ Lf) = Aritäten-Konsistenz Baum ist nicht Leer
Referenzen [1] Wolfgang Thomas,Languages, Automata, and Logic, May 1996,Bericht 9607 Institut für Informatik und Praktische Mathematik Der Christian-Albrechts-Universität zu Kiel D-24098 Kiel [2] Khoussainov, Bakhodyr and Nerode,Anil: Automata Theory and Its Applications, Progress in Computer Science, Birkhäuser,Boston;Berlin(2001) [3] David Basin, Felix Klaedke, Monadic Second-Order Logics in Theory and Practice, Albert-Universität, Freiburg [5] Hupert Comon, Max Dauchet, Rémi Gilleron, Denis Lugiez, Sophie Tison, Marc Tommasi, Tree Automata Techniques and Applications [6] Erich Grädel, Wolfgang Thomas, Thomas Wilke (Eds.), Automata, Logics, and Infinite Games, A Guide to Current Research (Part VI Monadic Second-Order Logic), Springer (2001) [7] H.Hermes, Einführung in die Mathematische Logik, B.G. Teubner, Stuttgart (1972)