Monadische Prädikatenlogik zweiter Stufe

Die monadische Prädikatenlogik zweiter Stufe, nach dem englischen monadic second order logic auch kurz MSO genannt, ist ein Begriff aus dem Bereich der mathematischen Logik. Es handelt sich um dasjenige Fragment der Prädikatenlogik zweiter Stufe, das nur die einstelligen Prädikate betrachtet.

Definition

Zu einer Signatur σ {\displaystyle \sigma } betrachte die Sprache L I I σ {\displaystyle L_{II}^{\sigma }} der Prädikatenlogik zweiter Stufe. Die Formeln der MSO sind genau diejenigen L I I σ {\displaystyle L_{II}^{\sigma }} -Formeln, bei denen alle vorkommenden Relationsvariablen einstellig sind. Damit ist die Syntax der MSO beschrieben. Die Semantik ist die Einschränkung der Semantik der Prädikatenlogik zweiter Ordnung.

Beachte, dass durchaus mehrstellige Relationen in der MSO vorkommen können, nur müssen diese dann Bestandteil der Signatur sein. Über diese kann nicht quantifiziert werden.

Da einstellige Relationen in jeder Interpretation Teilmengen der Grundmenge sind, kann man in der MSO also Aussagen über alle Teilmengen der zugehörigen σ {\displaystyle \sigma } -Strukturen aufstellen und über diese beliebig quantifizieren. Man kann nicht über Funktionssymbole oder mehrstellige Relationssymbole quantifizieren.[1]

Beispiele

Prädikatenlogik erster Stufe

Jeder Ausdruck der Prädikatenlogik erster Stufe ist ein MSO-Ausdruck, denn ein solcher enthält überhaupt keine Relationsvariablen, insbesondere also keine mehrstelligen.

Induktionsaxiom

Die Peano-Arithmetik kann bekanntlich mit der Signatur σ = { 0 , s } {\displaystyle \sigma =\{0,s\}} beschrieben werden, wobei 0 eine Konstante und s {\displaystyle s} ein Funktionssymbol ist. Die Konstante wird als Nullelement und s als Nachfolger-Funktion interpretiert. Das sogenannte Induktionsaxiom

X ( ( X 0 x ( X x X s x ) ) x X x ) {\displaystyle \forall X((X0\land \forall x(Xx\rightarrow Xsx))\rightarrow \forall x\,Xx)}

ist offenbar ein MSO-Satz.

Zusammenhang von Graphen

Ist σ = { E } {\displaystyle \sigma =\{E\}} für ein zweistelliges Relationssymbol E {\displaystyle E} , so ist jede σ {\displaystyle \sigma } -Struktur ein Graph G {\displaystyle G} , wobei das G {\displaystyle G} das Universum, das heißt die Grundmenge, der Struktur ist und die Interpretation E G {\displaystyle E^{G}} von E {\displaystyle E} die Kantenrelation auf G {\displaystyle G} ist. Dann ist

X ( ( x X x x ¬ X x ) x y ( X x ¬ X y E x y ) ) {\displaystyle \forall X((\exists x\,Xx\land \exists x\,\neg Xx)\rightarrow \exists x\exists y\,(Xx\land \neg Xy\land Exy))}

ein syntaktisch korrekter MSO-Ausdruck, denn die einzige vorkommende Relationsvariable X {\displaystyle X} ist einstellig. Das zweistellige Relationssymbol E {\displaystyle E} gehört zur Signatur und ist daher keine Relationsvariable. Die Semantik dieses Ausdrucks lautet: Für jede Teilmenge ( X {\displaystyle \forall X} ) gilt: wenn die Teilmenge nicht leer ist ( x X x {\displaystyle \exists x\,Xx} ) und auch ihr Komplement nicht leer ist ( x ¬ X x {\displaystyle \exists x\,\neg Xx} ), dann gibt es zwischen ihr und ihrem Komplement eine Kante ( x y ( X x ¬ X y E x y ) ) {\displaystyle \exists x\exists y(Xx\land \neg Xy\land Exy))} ). Das ist offenbar äquivalent zum Zusammenhang des Graphen und wir halten fest, dass man in der MSO den Zusammenhang von Graphen beschreiben kann.[2] In der Prädikatenlogik erster Stufe ist das nicht möglich, siehe Lokalität (Logik), so dass sich MSO durch dieses Beispiel als echt ausdrucksstärker erweist.

Gerade Anzahl von Elementen

Für σ = {\displaystyle \sigma =\emptyset } gibt es keinen MSO-Satz, der auf einer als endlich vorausgesetzten Menge ausdrückt, dass diese geradzahlig ist.[3] In der Prädikatenlogik zweiter Stufe ist das aber möglich, indem man zum Beispiel ausdrückt, dass es eine Teilmenge X {\displaystyle X} gibt und eine bijektive Funktion von X {\displaystyle X} auf ihr Komplement:

X Y ( Y  ist Funktion X  ist Definitionsbereich von  Y ¬ X  ist Wertebereich von  Y Y  ist bijektiv } {\displaystyle \exists X\,\exists Y\,(''Y{\text{ ist Funktion}}''\,\land \,''X{\text{ ist Definitionsbereich von }}Y''\,\land \,''\neg X{\text{ ist Wertebereich von }}Y''\,\land \,''Y{\text{ ist bijektiv}}''\}} ,

wobei klar ist, dass die in Apostrophen eingeschlossenen Teilsätze sogar in der Prädikatenlogik erster Stufe formulierbar sind. Da hier die zweistellige Relationsvariable Y {\displaystyle Y} verwendet wird, handelt es sich nicht um einen MSO-Satz. Dieses Beispiel zeigt, dass die Prädikatenlogik zweiter Stufe echt ausdrucksstärker als MSO ist.

MSO auf Wörtern

Modelle von Wörtern

Die monadische Prädikatenlogik zweiter Stufe eignet sich zur Formulierung von Aussagen über Wörtern über einem endlichen Alphabet Σ {\displaystyle \Sigma } . Dazu verwenden wir als Signatur σ = { < , P a , P b , } {\displaystyle \sigma =\{<,P_{a},P_{b},\ldots \}} , wobei a , b , {\displaystyle a,b,\ldots } die Zeichen des Alphabets sind und wir formulieren, dass < eine lineare Ordnung auf dem Universum ist und die P a , P b {\displaystyle P_{a},P_{b}\ldots } eine Partition des Universums bilden.

x ¬ ( x < x ) x y z ( ( ( x < y ) ( y < z ) ) ( x < z ) ) x y ( ( x = y ) ( x < y ) ( y < x ) ) {\displaystyle \forall x\,\neg (x<x)\,\land \,\forall x\forall y\forall z\,(((x<y)\land (y<z))\rightarrow (x<z))\,\land \,\forall x\forall y\,((x=y)\lor (x<y)\lor (y<x))}

drückt die lineare Ordnung aus, und

x ( ( P a x P b x P c x ) ¬ ( P a x P b x ) ¬ ( P a x P c x ) ¬ ( P b x P c x ) ) {\displaystyle \forall x\,((P_{a}x\lor P_{b}x\lor P_{c}x)\land \neg (P_{a}x\land P_{b}x)\land \neg (P_{a}x\land P_{c}x)\land \neg (P_{b}x\land P_{c}x))}

drückt die Partitionseigenschaft aus.

Ein endliches Universum können wir dann als isomorph zu { 1 , 2 , , n } {\displaystyle \{1,2,\ldots ,n\}} annehmen, wobei < als die natürliche Ordnung interpretiert wird und P a i {\displaystyle P_{a}i} als an i {\displaystyle i} -ter Stelle steht ein a, entsprechend für P b i {\displaystyle P_{b}i} und so weiter.

Ist etwa Σ = { a , b , c } {\displaystyle \Sigma =\{a,b,c\}} , so definiert das Wort s = a a b c b c a {\displaystyle s=aabcbca} eine { < , P a , P b , P c } {\displaystyle \{<,P_{a},P_{b},P_{c}\}} -Struktur M s {\displaystyle M_{s}} auf dem Universum { 1 , 2 , 3 , 4 , 5 , 6 , 7 } {\displaystyle \{1,2,3,4,5,6,7\}} mit den Interpretationen { 1 , 2 , 7 } {\displaystyle \{1,2,7\}} für P a {\displaystyle P_{a}} , { 3 , 5 } {\displaystyle \{3,5\}} für P b {\displaystyle P_{b}} , { 2 , 4 } {\displaystyle \{2,4\}} für P c {\displaystyle P_{c}} und der natürlichen Ordnung für <. Die Wörter aus Σ {\displaystyle \Sigma ^{*}} , das heißt die endlichen Zeichenketten über dem Alphabet Σ {\displaystyle \Sigma } , sind in diesem Sinne genau die L I I σ {\displaystyle L_{II}^{\sigma }} -Modelle.

MSO-Definierbarkeit

Man kann nun mittels MSO-Ausdrücken Teilmengen solcher Zeichenketten beschreiben. Ist Φ {\displaystyle \Phi } ein MSO-Satz, das heißt eine MSO-Formel ohne freie Variablen, so ist

L ( Φ ) := { s Σ | M s Φ } {\displaystyle L(\Phi ):=\{s\in \Sigma ^{*}|\,M_{s}\vDash \Phi \}}

die Menge (Sprache) aller Wörter, die Modell für Φ {\displaystyle \Phi } sind, das heißt die Φ {\displaystyle \Phi } erfüllen. Eine Sprache dieser Form heißt MSO-definierbar.

So können wir zum Beispiel die Sprache aller Zeichenketten über Σ = { a , b , c } {\displaystyle \Sigma =\{a,b,c\}} , die eine gerade Anzahl a {\displaystyle a} 's enthält, wie folgt beschreiben:

Φ = X Y ( x ( ( P a x ( X x Y x ) ) ¬ ( X x Y x ) ) {\displaystyle \Phi =\exists X\exists Y\,{\big (}\forall x((P_{a}x\leftrightarrow (Xx\lor Yx))\land \neg (Xx\land Yx))}
x ( X x y ( y < x ¬ P a x ) ) {\displaystyle \land \exists x(Xx\land \forall y\,(y<x\rightarrow \neg P_{a}x))}
x ( Y x y ( x < y ¬ P a x ) ) {\displaystyle \land \exists x(Yx\land \forall y\,(x<y\rightarrow \neg P_{a}x))}
x y ( ( X x X y x < y ) z ( Y z x < z z < y ) ) {\displaystyle \land \forall x\forall y\,((Xx\land Xy\land x<y)\rightarrow \exists z(Yz\land x<z\land z<y))}
x y ( ( Y x Y y x < y ) z ( X z x < z z < y ) ) ) {\displaystyle \land \forall x\forall y\,((Yx\land Yy\land x<y)\rightarrow \exists z(Xz\land x<z\land z<y)){\big )}}

In Worten bedeutet das

Die a {\displaystyle a} 's verteilen sich auf zwei Mengen X {\displaystyle X} und Y {\displaystyle Y} , die disjunkt sind,
und das erste a {\displaystyle a} liegt in X {\displaystyle X}
und das letzte a {\displaystyle a} liegt in Y {\displaystyle Y}
und zwischen zwei verschiedenen Elementen aus X {\displaystyle X} liegt eines aus Y {\displaystyle Y}
und zwischen zwei verschiedenen Elementen aus Y {\displaystyle Y} liegt eines aus X {\displaystyle X} .

Damit ist dann klar, dass L ( Φ ) {\displaystyle L(\Phi )} genau die die Menge der Zeichenketten ist, die eine gerade Anzahl von a {\displaystyle a} 's enthält, das heißt diese Sprache ist MSO-definierbar.

Satz von Büchi

Der Satz von Büchi, benannt nach Julius Richard Büchi, gibt Auskunft darüber, welche Sprachen MSO-definierbar sind:

  • Eine Sprache ist genau dann MSO-definierbar, wenn sie regulär ist.[4][5]

Dieser aus dem Jahre 1960 stammende Satz stellt somit eine sehr frühe Verbindung zwischen mathematischer Logik und theoretischer Informatik her, er gilt als erstes Resultat der deskriptiven Komplexitätstheorie. Der Satz wurde unabhängig auch von Boris Trakhtenbrot gefunden.[6]

Eine Analyse des Beweises zeigt, dass man sogar mit MSO-Ausdrücken der Art

X 1 X n φ {\displaystyle \exists X_{1}\ldots \exists X_{n}\varphi }

auskommt, wobei φ {\displaystyle \varphi } ein Ausdruck der Prädikatenlogik erster Stufe in einer um X 1 , , X n {\displaystyle X_{1},\ldots ,X_{n}} erweiterten Signatur ist. Die Menge dieser Ausdrücke nennt man M Σ 1 1 {\displaystyle M\Sigma _{1}^{1}} . Für Sprachen sind daher Regularität, MSO-Definierbarkeit und M Σ 1 1 {\displaystyle M\Sigma _{1}^{1}} -Definierbarkeit äquivalent.[7]

Einzelnachweise

  1. Heinz-Dieter Ebbinghaus, Jörg Flum: Finite Model Theory, Springer-Verlag 1999, ISBN 3-540-28787-6, Kapitel 3.1: Second-Order Logic
  2. Leonid Libkin: Elements of Finite Model Theory, Springer-Verlag (2004), ISBN 3-540-21202-7, Satz 7.14 für eine genauere Aussage
  3. Leonid Libkin: Elements of Finite Model Theory, Springer-Verlag (2004), ISBN 3-540-21202-7, Satz 7.12
  4. J. R. Büchi: Weak second-order arithmetic and finite automata, Zeitschrift für mathematische Logik und Grundlagen der Mathematik (1960), Band 6, Seiten 66–92
  5. Leonid Libkin: Elements of Finite Model Theory, Springer-Verlag (2004), ISBN 3-540-21202-7, Satz 7.21
  6. B. Trahtenbrot: Finite automata and the logic of monadic predicates (russisch), Sibirskij Mat. Zhurnal (1962), Band 3, Seiten 103–131
  7. Heinz-Dieter Ebbinghaus, Jörg Flum: Finite Model Theory, Springer Verlag 1999, ISBN 3-540-28787-6, Satz 6.2.3