Lösungen zum Aufgabenblatt 6 Logik und modelltheoretische

Werbung
Lösungen zum Aufgabenblatt 6
Logik und modelltheoretische Semantik
Universität München, CIS, SS 2013
Hans Leiß
Abgabetermin: Do, 6.6.2013, 16 Uhr
in meinem Postfach (Druckerraum am CIS)
Sei L die Sprache mit Fun = {+, ·, ∗ , 0, 1}. Ein L-Term t(x1 , . . . , xn ) ist
ein regulärer Ausdruck (über dem Alphabet der Variablen). L-Strukturen, die gewisse Axiome
erfüllen, z.B. 0∗ =1,
˙ heißen auch “Kleene-Algebren”. Zwei Standardbeispiele sind folgende.
Aufgabe 6.1
(a) Sei LΣ die Algebra P(Σ∗ ) aller formalen Sprachen über Σ, die wie folgt definiert ist:
P(Σ∗ ) := { A | A ⊆ Σ∗ },
A + B := A ∪ B,
A · B := { vw | v ∈ A, w ∈ B },
[
A∗ :=
{ An | n ∈ N } mit A0 := {ǫ}, An+1 := A · An ,
0 := ∅,
1 := {ǫ}.
Σ
Sei h : Var → P(Σ∗ ) mit h(x1 ) = {a}, h(x2 ) = {b}. Was ist der Wert [[t]]L
h des Terms
t(x1 , x2 ) = ((x1 + x1 ) · (x1 + x2 ))∗ ?
(2 Punkte)
(b) Sei RM die Algebra P(M × M ) aller 2-stelligen Relationen auf M , definiert durch
P(M × M ) := { A | A ⊆ M × M },
A + B := A ∪ B,
A · B := { (i, k) | ∃j ∈ M ((i, j) ∈ A ∧ (j, k) ∈ B) },
[
A∗ :=
{ An | n ∈ N } mit A0 := { (m, m) | m ∈ M }, An+1 := A · An ,
0 := ∅,
1 := { (m, m) | m ∈ M }.
Sei M = {0, . . . , 5} die Menge der Knoten (“Zustände”) in folgendem Graphen
0
a
a
1
b
b
b
2
a
b
4
b
5
a
b
und h : Var → RM eine Belegung mit h(x1 ) = −→ und h(x2 ) = −→ , den im Graphen
a
b
durch die Menge der −→ - bzw. der −→ -Kanten dargestellten Relationen.
M
Was ist der Wert [[t]]R
des Terms t(x1 , x2 ) = ((x1 + x1 ) · (x1 + x2 ))∗ ? Am einfachsten
h
t
h
zeichen Sie die Relation durch Kanten −→
in den Graphen ein.
Tip: Da auch für Relationenprodukt und -Vereinigung die Distributivregeln gelten, ist
M
M
[[(x1 + x1 ) · (x1 + x2 )]]R
= [[(x1 x1 + x1 x2 ]]R
=: S ⊆ M × M . Zeichnen Sie zuerst die
h
h
Kanten von S in das Bild ein, und dann ein neues Bild mit den Kanten von S ∗ . (4 Punkte)
Lösung von Aufgabe 6.1
(a) Die Definitionen liefern in L = LΣ :
[[t]]h = [[((x1 + x1 ) · (x1 + x2 ))∗ ]]h
L
= [[((x1 + x1 ) · (x1 + x2 ))]]∗h
L
= ([[(x1 + x1 )]]h ·L [[(x1 + x2 )]]h )∗
L
= (([[x1 ]]h +L [[x1 ]]h ) ·L ([[x1 ]]h +L [[x2 ]]h ))∗
L
= ((h(x1 ) +L h(x1 )) ·L (h(x1 ) +L h(x2 )))∗
L
= (({a} ∪ {a}) ·L ({a} ∪ {b}))∗
L
= ({a} ·L {a, b})∗
L
= {aa, ab}∗ .
t
h
(b) Da es in R = RM relativ viele Kanten −→
gibt, ist es übersichtlicher, erstmal nur die Kansh
ten −→ mit s := ((x1 +x1 )·(x1 +x2 )) bzw. dem äquivalenten (x1 x1 +x1 x2 ) einzuzeichnen;
dazu trage ich die Kanten
(x1 x1 )h
aa
−→ = −→ und
2
(x1 x2 )h
ab
−→ = −→ getrennt ein:
0
aa
a a
b
ab
1
aa
b ab
b
2
ab
a
ab b
4
b
5
R
R ∗
∗ R
Die Relation [[t]]R
ist der reflexive transitive Abschluß der durch =⇒
h = [[s ]]h = ([[s]]h )
R
(blau) dargestellten Relation [[s]]h .
Die transitive Hülle von [[s]]R
h sind hier die =⇒ -Wege der Längen 1,2, und 3, verlängert
um die Wege der Längen > 0 von 0 nach 0 oder von 1 nach 1 (mit Kantenmarkierung rˆ
statt r+ , da das Graphikprogramm keine oberen Indizes erlaubt):
0
(aa)^
a
b
(aa)^ab
b
(aa)^abab
a
1
(aa)^
(aa)^ab
2
b
(aa)^ab
a
(aa)^abab
ab b
4
b
5
Die reflexive transitive Hülle [[t]]h von [[s]]h ist dann die Relation =⇒ im folgenden Graphen
(mit e für das leere Wort):
3
0
(aa)*
a a
b
(aa)*ab
b
(aa)*abab
1
(aa)*
(aa)*ab
2
b
e
(aa)*ab
a
(aa)*abab
ab b
4
e
b
5
e
Beachte, daß der Ausgangsgraph RM beliebig war, und nicht der in der Automatentheorie
aus Automaten Aa zur Erkennung von {a} und Ab zur Erkennung von {b} entsprechend
dem Ausdruck t aufgebaute Automat At ist. Daher hat z.B. in RM die transitive Hülle
ab
von −→ keine mit (ab)5 markierte Kante, obwohl das Wort (ab)5 in der Sprache [[t]]L
h liegt.
Aufgabe 6.2
Zeige, daß für beliebige Formeln ϕ(x) und ψ(x) die Aussage
(∀xϕ ∨ ∀xψ) → ∀x(ϕ ∨ ψ)
allgemeingültig (in jeder Struktur A wahr) ist, aber nicht die umgekehrte“ Aussage
”
∀x(ϕ ∨ ψ) → (∀xϕ ∨ ∀xψ).
Gib für den zweiten Teil ein Gegenbeispiel an!
(4 Punkte)
Lösung von Aufgabe 6.2 Erster Teil: Sei A eine Struktur mit A |= ∀xϕ ∨ ∀xψ. Dann ist
mindestens eines der Disjunktionsglieder in A wahr, etwa A |= ∀xϕ. Für beliebiges a ∈ A ist
also [[ϕ]]A
[x/a] = 1 und damit auch
A
A
[[(ϕ ∨ ψ)]]A
[x/a] = max{[[ϕ]][x/a] , [[ψ]][x/a] } = 1.
Da das für alle a ∈ A gilt, ist [[∀x(ϕ ∨ ψ)]]A = 1, also
A |= ∀x(ϕ ∨ ψ).
Damit ist gezeigt, daß (∀xϕ ∨ ∀xψ) → ∀x(ϕ ∨ ψ) in jeder Struktur A wahr ist.
Zweiter Teil: Sei P ein einstelliges Relationszeichen, und ϕ(x) := P (x), ψ(x) = ¬P (x). Sei
A = (A, P A ) mit ∅ =
6 P A 6= A, etwa a, b ∈ A mit a ∈ P A , b ∈
/ P A . Offenbar ist
A |= ∀x(ϕ ∨ ψ) = ∀x(P (x) ∨ ¬P (x)),
4
aber
A 6|= ∀xϕ
wegen b ∈
/ P A,
und
A 6|= ∀xψ
wegen a ∈ P A .
Also ist A eine Struktur, in der ∀x(ϕ ∨ ψ) → ∀xϕ ∨ ∀xψ nicht wahr ist.
5
Herunterladen