Die Korrespondenz zwischen [Moshe Vardi: “A match made in heaven“] Automaten und Logik [Moshe Vardi: “A match made in heaven“] Jens Kerber Himmlische Verbindung Rice university huston texas Betreuer: Tim Priesnitz Gert Smolka Programming Systems Lab Universität des Saarlandes Logische Aspekte von XML (SS03)
Einführendes Beispiel q0 q1 a b Nach jeder folge von a´s kommt mindestens einmal ein b
Überblick Darstellungen mit Hilfe der charakteristischen Mengen schwache SkS Korrespondenz zwischen Baumautomaten und schwacher SkS Komplexität Anwendung auf Presburger Arithmetik
Isomorphie zwischen Prädikaten und Mengen Charakteristische Funktion: Charakteristische Menge: Unäre prädikate Wiederholung Hierbei endlich weil A endlich
String als Matrix Funktion leifert 1 wenn element an position Char. Mengen: Menge derjenigen Positionen an denen das Element steht Nur für beispiel in länge fixiert später beliebige länge Wort als matrix Paarweise disjunkt Eigentlich 1^* wie in vorigen vorträgen erwähnt (nur beispiel)
Charakterisierende Mengen als String Labeling
String als Matrix Hierbei disjunkt Bei binärkodierung oä. Nicht zwingend der fall
String als Matrix Tupel-Automat Hierbei disjunkt Bei binärkodierung oä. Nicht zwingend der fall
String als Matrix ... 1 4 3 2 f Tupel-Automat Logik a b c * d ... 1 4 3 2 d c b a f Hierbei disjunkt Bei binärkodierung oä. Nicht zwingend der fall
schwache SkS Nur Variablen 2. Ordnung Atomare Formeln: Logische Verknüpfungen: x-> X ={x} X=Yi singeltons und x=yi N: anzahl funktionssymbole K maximale anzahl der Nachfolger, siehe WSkS Arity: Stelligkeit
Abgeleitete Prädikate Teilmenge
Abgeleitete Prädikate Teilmenge Wurzel
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung Präfixabgeschlossenheit
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung Präfixabgeschlossenheit Gleicheit
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung Präfixabgeschlossenheit Gleicheit Leerheit
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung Präfixabgeschlossenheit Gleicheit Leerheit Einelementige Menge
Abgeleitete Prädikate Teilmenge Wurzel Endliche Vereinigung Schnittmenge Disjunkte Zerlegung Präfixabgeschlossenheit Gleicheit Leerheit Einelementige Menge Ordnung auf Individuen
Kodiere Bäume in schwacher SkS Nicht leer X=Shape, Domäne Eigentlich X redundant da Vereinigung
Kodiere Bäume in schwacher SkS Nicht leer X disjunkte Vereinigung von X1,...,Xn X=Shape, Domäne Eigentlich X redundant da Vereinigung
Kodiere Bäume in schwacher SkS Nicht leer X disjunkte Vereinigung von X1,...,Xn Präfixabgeschlossen X=Shape, Domäne Eigentlich X redundant da Vereinigung
Kodiere Bäume in schwacher SkS Nicht leer X disjunkte Vereinigung von X1,...,Xn Präfixabgeschlossen X=Shape, Domäne Eigentlich X redundant da Vereinigung Anzahl Nachfolger entspricht Stelligkeit
Wörter und Bäume in schwacher SkS Wort: Baum: S entspricht Domäne Labeling
Entscheidbarkeit Satz: [Büchi,1960][Thatcher&Wright,1968] schwache SkS ist entscheidbar Beweisidee: Rückführung auf Automaten Büchi WS1S
Satz: [Büchi,1960][Thatcher&Wright,1968] Schwache SkS und Baumautomaten haben die gleiche Expressivität Beweisidee Automat nach Formel: Entwickle Formel die genau dann erfüllt ist wenn der entsprechende Automat den Baum akzeptiert Beweisidee Formel nach Automat: - Induktion über die Struktur der Formel - Baue Automaten für jede Basisformel - Verknüpfe Automaten für Basisformeln Kernstück des Vortrags Betrachte WS1S bzw. Wort als Baum mit einem Nachfolger Für jede Formel ex. Automat ... Und umgekehrt Maw. Simuliere erfolgreichen run Büchi WS1S, T&W WS2S
Bottom-up Baumautomat durch schwache SkS Es existiert Zustandsfolge Term paarweise disjunkt => wohldefiniert M+1 freie Variablen M = n+1 Simuliert erfolgreichen run des automaten Erfüllt genau dann wenn mit kodierung eines akzeptierenden laufs belegt (X,Xf1,...,Xfm)
Bottom-up Baumautomat durch schwache SkS Es existiert Zustandsfolge Baum markiert mit Funktionssymbolen Term paarweise disjunkt => wohldefiniert M+1 freie Variablen M = n+1 Simuliert erfolgreichen run des automaten Erfüllt genau dann wenn mit kodierung eines akzeptierenden laufs belegt (X,Xf1,...,Xfm)
Bottom-up Baumautomat durch schwache SkS Es existiert Zustandsfolge Baum markiert mit Funktionssymbolen Baum markiert mit Zuständen Term paarweise disjunkt => wohldefiniert M+1 freie Variablen M = n+1 Simuliert erfolgreichen run des automaten Erfüllt genau dann wenn mit kodierung eines akzeptierenden laufs belegt (X,Xf1,...,Xfm)
Bottom-up Baumautomat durch schwache SkS Es existiert Zustandsfolge Baum markiert mit Funktionssymbolen Baum markiert mit Zuständen Wurzel im Endzustand Term paarweise disjunkt => wohldefiniert M+1 freie Variablen M = n+1 Simuliert erfolgreichen run des automaten Erfüllt genau dann wenn mit kodierung eines akzeptierenden laufs belegt (X,Xf1,...,Xfm)
Bottom-up Baumautomat durch schwache SkS Es existiert Zustandsfolge Baum markiert mit Funktionssymbolen Baum markiert mit Zuständen Wurzel im Endzustand Term paarweise disjunkt => wohldefiniert M+1 freie Variablen M = n+1 Simuliert erfolgreichen run des automaten Erfüllt genau dann wenn mit kodierung eines akzeptierenden laufs belegt (X,Xf1,...,Xfm) Alle Transitionsregeln im Lauf respektiern Δ
Endlicher Automat für atomare Formel q0 Automat arbeitet über {0,1,bottom}^n Wortfall Funktioniert so nur bei fester länge
Endlicher Automat für atomare Formel q0 Problem wo aufhören? Kommt noch was? Unendlichkeit->Swen
Endlicher Automat für atomare Formel q0 q1 ?!? Akzeptiert der Automat?
Endlicher Automat für atomare Formel ü q0 q1
Baumautomat für atomare Formel q q 0 0 ü q 0 1 Baumfall q ist Start- und Endzustand Alles ausser (1,0) akzeptiern q 1 1
Endlicher Automat für atomare Formel q0 q1 q2 Wortfall Singeltons Wortautomat für 1bit speicher
Endlicher Automat für atomare Formel q0 q1 q2 Wortfall Singeltons Wortautomat für 1bit speicher
Endlicher Automat für atomare Formel q0 q1 q2 q3 Wortfall Singeltons Wortautomat für 1bit speicher
Endlicher Automat für atomare Formel q0 q1 q2 q3 Wortfall Singeltons Wortautomat für 1bit speicher Muss im nächste schritt 1 sein Beliebig viele führende nullen ü
Baumautomat für atomare Formel q q´ q 0 1 q´´ q 1 0 q´ q´´ q 0 0 Baumfall Singeltons Baumautomat für 1bit speicher Endzustand q´´ Linker nachfolger X=Y2 analog q q´´ 0 0
Akzeptierter Baum für ü 0 0 0 1 … 1 0 Singeltons, keine 1 bei “...“ Direkt danach und links!!! Rechts analog
Endliche charakteristische Funktion in schwacher SkS fX 1 ... Shape(X) Etwas verwirrend, liefert aber berechtigung
Endliche charakteristische Funktion in schwacher SkS fX 1 ... Shape(X) Etwas verwirrend, liefert aber berechtigung Fluten nach links
Endliche charakteristische Funktion in schwacher SkS fX 1 ... Shape(X) Etwas verwirrend, liefert aber berechtigung Fluten nach links Modified schränkt nicht auf paarweise disjunktion ein Xcol diejenigen positionen an denen keine Variable 1 ist....brauchen wir wegen präfixabgeschlossenheit
Verknüpfung Negation: Determinisierung Automat vervollständigen Normal- und Endzustände vertauschen Disjunktion: Zylindrifikation Existenzquantifizierung: Projektion
Zylindrifikation am Beispiel der Transitivität q0 Transitivität q1 q2
Automat für q0 q5 q1 q2 q3 q6 q7 q8 q9
Projektion am Beispiel q0 q1 q2 q3 q4
Projektion am Beispiel q0 q1 q2 Akzeptiert alles da Formel gültig q3 q4
Rückführung k-när auf binär 1 1 2 3
Rückführung k-när auf binär 1 1 2 3 WSkS WS2S
Komplexität Existenz (Projektion) führt zu ND-Automaten Negation führt zu D-Automaten ND nach D führt zu exponentieller Größenzunahme Sei N Anzahl Quantoralternierungen: Sogar WS1S nicht elementar Potenzmenge der Zustände
Presburger Arithmetik Satz: [Presburger,1929][Büchi,1960][Elgot,1961] Presburger Arithmetik ist entscheidbar + definiert über individuen
Binärdarstellung in schwacher S1S Zahlen werden von links nach rechts gelesen Chrakteristische menge EINDEUTIG!!!!!
Binärdarstellung in schwacher S1S 20 21 22 23 24 25 ... 1 Zahlen werden von links nach rechts gelesen Chrakteristische menge EINDEUTIG!!!!! Binärdarstellung der Zahl (11)10:
Endlicher Automat für Addition q0 q1 q_x besagt carry im nächsten schritt q2
Endlicher Automat für Addition q0 q1 1 ... q_x besagt carry im nächsten schritt Automat in WS1S Formel überführen q2
Referenzen [1] Hubert Comon, Max Dauchet, Remi Gilleron, Florent Jacquemard, Denis Lugiez, Sophie Tison, Marc Tommasi; Tree Automata Techniques and Applications; Online Publication 2002 [2] Wolfgang Thomas; Languages, Automata and Logic; Technical Report 1996 [3] Erich Grädel, Wolfgang Thomas, Thomas Wilke; Automata, Logics, and Infinite Games: A Guide to Current Research; Springer 2002 (LNCS 2500) [4] Bakhadyr Khoussainov, Anil Nerode; Automata Theory and Its Applications; Birkhäuser 2001 [5] Frank Neven; Automata, Logic, and XML; CSL 2002 [6] Frank Neven, Thomas Schwentick; Query Automata on finite trees; Theoretical Computer Science 2002 [7] Frank Neven; Automata theory for XML researchers; to appear in Sigmod Record