A Lösung

Werbung
4.0 VU Theoretische Informatik und Logik
Teil 1 und 2
Matrikelnummer
SS 2010
Familienname
4. November 2010
Vorname
Lösung
Gruppe
A
1.) Beweisen Sie: Die Sprache {an bm cm | n, m ≥ 1} ∪ {bn cm | n, m ≥ 1} ist nicht regulär.
(8 Punkte)
Lösung: Die folgende gsm bildet die Sprache {an bm cm | n, m ≥ 1} ∪ {bn cm | n, m ≥ 1} auf die
Sprache {an bn | n ≥ 0} ab:
c/ε
b/ε,
?
j
m
q2
6
b/ε
a/ε, b/a,
c/b
?
} a/ε - m
j
q0
q1
2.) Geben Sie einen regulären Ausdruck in egrep-Notation an, der Datensätze einer Personaldatenbank auf Korrektheit überprüft.
Ein Datensatz besteht dabei aus folgenden Feldern (in dieser Reihenfolge), die jeweils durch
einen Strichpunkt (;) getrennt sind:
(a) Tag des Geburtsdatums (zwei Ziffern, zwischen 01 und 31)
(b) Monat des Geburtsdatums (zwei Ziffern, zwischen 01 und 12)
(c) Jahr des Geburtsdatums (vier Ziffern, zwischen 1900 und 1999)
(d) Vorname (beliebig viele Großbuchstaben, mindestens einer)
(e) Nachname (beliebig viele Großbuchstaben, mindestens einer)
(f) Gehalt (beliebige natürliche Zahl oder 0)
Hinweis: Es muss dabei nicht überprüft werden, ob der entsprechende Tag tatsächlich auch
im Monat existiert (ein Geburtsdatum wie “30. Februar 1999” wäre also korrekt).
Einige Beispiele für korrekte Datensätze, auf die Ihr regulärer Ausdruck passen sollte:
– 06;12;1989;GUSTAV;MUELLER;10839
– 19;04;1971;MARIA;SCHMIDT;19380
– 30;02;1965;HERBERT;MAIER;29482
Einige Beispiele für falsche Datensätze, auf die Ihr regulärer Ausdruck nicht passen sollte:
– 99;03;1989;WOLFGANG;KOLARIC;21381
– LUKAS;SCHMIDT;1971;12;08;19380
– 07;06;1955;JOHANNES;THORSTEN;SCHNEIDER
– ;;;;;
– MICHAEL
(7 Punkte)
Lösung:
^([0-2][1-9]|[1-3]0|31);(0[1-9]|1[0-2]);19[0-9][0-9];[A-Z]+;[A-Z]+;([1-9][0-9]*|0)$
3.) Eine Sprache L ist genau dann linear, wenn eine Grammatik G mit L(G) = L existiert, wobei
die Produktionen der Grammatik G von einer der Formen A → uBw, A → w oder A → ε
mit A, B ∈ N und u, w ∈ T ∗ sind. Beweisen Sie, dass die Familie der regulären Sprachen
eine echte Teilmenge der Familie der linearen Sprachen ist.
(9 Punkte)
Lösung: Jede reguläre Sprache ist linear, da zu jeder regulären Sprache eine reguläre Grammatik
existiert und jede reguläre Grammatik auch linear ist. Umgekehrt ist allerdings etwa die lineare
Sprache {an bn | n ≥ 0} (lineare Grammatik: G = h{A}, {a, b}, {A → aAb | ε}, Ai) nicht regulär.
4.) Es sei die Sprache L definiert als die kleinste Sprache, für die gilt:
– b ist in L.
– Wenn u und w in L sind, so ist auch auw in L.
Geben Sie eine kontextfreie Grammatik an, die die Sprache L erzeugt.
(3 Punkte)
Lösung: G = h{A}, {a, b}, {A → b | aAA}, Ai
5.) Geben Sie an, in welcher Beziehung die folgenden Paare von Aussagen über formale Sprachen
miteinander stehen. (Zwei Punkte für richtige Antworten mit richtiger Begründung, einen
Punkt für richtige Antworten mit leicht fehlerhafter Begründung, keinen Punkt für falsche
Antworten oder fehlerhafte Begründungen.)
– Aussage A: “L ist regulär.”
Aussage B: “L wird durch eine kontextfreie Grammatik erzeugt.”
×
2 A ⇒ B 2 B ⇒ A 2 A ⇔ B 2 keine Beziehung zwischen A und B
Lösung: Eine reguläre Sprache ist aufgrund der Chomsky-Hierarchie auch kontextfrei
und wird daher auch von einer kontextfreien Grammatik erzeugt.
– Aussage A: “L wird durch eine monotone Grammatik erzeugt.”
Aussage B: “L ist endlich.”
2A⇒B×
2 B ⇒ A 2 A ⇔ B 2 keine Beziehung zwischen A und B
Lösung: Eine endliche Sprache ist stets regulär, aufgrund der Chomsky-Hierarchie auch
monoton und wird daher von einer monotonen Grammatik erzeugt.
– Aussage A: “L ist kontextfrei.”
Aussage B: “L enthält mindestens ein Wort.”
2A⇒B 2B⇒A2A⇔B×
2 keine Beziehung zwischen A und B
Lösung: Es gibt Sprachen, die mindestens ein Wort enthalten und nicht kontextfrei
sind; umgekehrt ist die leere Sprache endlich, daher regulär und kontextfrei.
– Aussage A: “L ist regulär.”
Aussage B: “Das Komplement von L ist linear.”
×
2 A ⇒ B 2 B ⇒ A 2 A ⇔ B 2 keine Beziehung zwischen A und B
Lösung: Das Komplement jeder regulären Sprache ist wiederum regulär und daher
gemäß Aufgabe 3 auch linear. Umgekehrt ist etwa die Sprache {an bm | n, m ≥ 1, n 6=
m} ∪ {{a, b}∗ ba{a, b}∗ } linear (Grammatik: h{A, B, C, D, E}, {a, b}, {A → D | aAb |
aB | Cb, B → aB | ε, C → Cb | ε, D → EbaE, E → aE | bE | ε}, Ai), ihr Komplement
{an bn | n ≥ 0} ist jedoch nicht regulär.
(8 Punkte)
6.) Für vier Flags, nummeriert von 1 bis 4, gelten folgende Bedingungen:
(a) Wenn kein gerades Flag (2,4) gesetzt ist, dann mindestens ein ungerades (1,3).
(b) Wenn Flag 2, aber nicht Flag 3 gesetzt ist, dann ist Flag 1 gesetzt.
(c) Es stimmt nicht, dass Flag 1 gesetzt ist.
Formulieren Sie einen ausagenlogischen Sequenten der ausdrückt, dass aus den 3 Bedingungen
logisch folgt, dass wenigstens ein Flag gesetzt ist. Verwenden Sie dabei vier aussagenlogische
Variable S1, S2, S3 und S4, wobei Si für “Flag i ist gesetzt” steht.
(5 Punkte)
Lösung: (¬S2 ∧ ¬S4) ⊃ (S1 ∨ S3), (S2 ∧ ¬S3) ⊃ S1, ¬S1 ` S1 ∨ S2 ∨ S3 ∨ S4
7.) Verwenden Sie das Resolutionsverfahren um entweder einen Beweis oder ein Gegenbeispiel
zur Behauptung zu finden, dass folgende Formel F logisch gültig ist:
(A ∧ ¬B) ⊃ (¬C ⊃ A)
(8 Punkte)
Lösung: Zunächst ist die Formel ¬F in eine KNF zu transformieren:
¬F = ¬((A ∧ ¬B) ⊃ (¬C ⊃ A)) = ¬(¬(A ∧ ¬B) ∨ (¬C ⊃ A))
= ¬(¬(A ∧ ¬B) ∨ (¬¬C ∨ A)) = ¬(¬(A ∧ ¬B) ∨ (C ∨ A)) = ¬¬(A ∧ ¬B) ∧ ¬(C ∨ A))
= (A ∧ ¬B) ∧ ¬(C ∨ A) = (A ∧ ¬B) ∧ (¬C ∧ ¬A)
Es ergibt sich die Klauselmenge {{A}, {¬B}, {¬C}, {¬A}}.
Die leere Klausel {} ist eine Resolvente der ersten ({A}) und der vierten Klausel ({¬A}).
Daher ist ¬F unerfüllbar und somit F logisch gültig.
8.) Geben Sie ein Modell I und ein Gegenbeispiel J , jeweils mit dem Gegenstandsbereich der
natürlichen Zahlen, zu folgender Formel über der Signatur h{f }, {Q}, {c}i an:
(∀x)Q(y, f (c, x)) ⊃ (∃y)Q(y, z)
Beide Interpretationen sind vollständig gemäß Definition 4.6 zu spezifizieren.
Erklären Sie kurz warum die Formel unter den von Ihnen spezifizierten Interpretationen wahr
bzw. falsch ist.
Beantworten Sie außerdem folgende Frage: Welche Variablen kommen in der Formel frei vor?
(7 Punkte)
Lösung: Eine von vielen möglichen Lösungen lautet wie folgt:
Modell I = hhω, {+}, {<}, {0}i, Φ, Ii, wobei für die Signaturinterpretation Φ gilt:
Φ(f ) = +, Φ(Q) =<, Φ(c) = 0.
Die Variablenbelegung sei durch I(v) = 1 für alle Variablen v gegeben. Damit erhalten die beiden
freien Variablenvorkommen der Formel – das erste Vorkommen von y und das einzige von z – den
Wert 1.
I ist ein Modell, da es eine natürliche Zahlen < 1 gibt. Somit wird die hintere Teilformel der
Implikation und damit die gesamte Implikation wahr.
Gegenbeispiel J = hhω, {+}, {<}, {1}i, Φ, Ii, wobei für die Signaturinterpretation Φ gilt:
Φ(f ) = +, Φ(Q) =<, Φ(c) = 1.
Die Variablenbelegung sei durch I(v) = 0 für alle Variablen v gegeben. Damit erhalten die beiden
freien Variablenvorkommen der Formel den Wert 0.
J ist ein Gegenbeispiel, da 0 < 1 + n für alle Zahlen n gilt, also die vordere Teilformel der Implikation wahr ist, aber es anderseits keine Zahl < 0 gibt, also die hintere Teilformel der Implikation
falsch ist.
9.) Zeigen Sie mit der Resolutionsmethode, dass (∃z)(∃y)P (h(y), z) logisch aus der Formel
(∃y)(∀z)P (z, y) folgt.
Geben Sie dabei verwendete MGUs und resolvierte Atome an.
(7 Punkte)
Lösung: Um (∃y)(∀z)P (z, y) |= (∃z)(∃y)P (h(y), z) zu zeigen, bilden wir folgende Klauseln:
– cl((∃y)(∀z)P (z, y)) = {{P (z, c)}}
– cl(¬(∃z)(∃y)P (h(y), z)) = cl((∀z)(∀y)¬P (h(y), z)) = {{¬P (h(y), z)))}}
Es ergibt sich folgende Resolutionswiderlegung von K = {{P (z, c))}, {¬P (h(y), z)}}:
1:
{P (z, c))} ∈0 K
2: {¬P (h(y), z 0 )} ∈0 K
3:
{} Robinson-Resolvent von 1,2 mit MGU θ = {z ← h(y), z 0 ← c}
und resolviertem Atom P (h(y), c))
10.) Geben Sie an, ob die folgenden Aussagen richtig, falsch oder unsinnig sind, und begründen
Sie Ihre Antworten. (Zwei Punkte für richtige Antworten mit richtiger Begründung, einen
Punkt für richtige Antworten mit leicht fehlerhafter Begründung, keinen Punkt für falsche
Antworten oder fehlerhafte Begründungen.)
– Wenn A eine logische Konsequenz von B, dann ist der Sequent A ` B ableitbar.
2 richtig ×
2 falsch 2 unsinnig
Lösung: Die Aussage entspricht dem Sequent B ` A, nicht A ` B.
– Jede Klausenmenge ist ein Modell ihrer Resolventen.
2 richtig 2 falsch ×
2 unsinnig
Lösung: Eine Klauselmenge kann keine Interpretation und daher auch kein Modell sein.
– Jede aussagenlogische Variable ist eine Formel, die sowohl erfüllbar als auch widerlegbar
ist.
×
2 richtig 2 falsch 2 unsinnig
Lösung: Jede aussagenlogische Variable A ist eine (atomare) Formel. Manche Interpretationen bilden A auf t und manche auf f ab. Es gibt also Modelle ebenso wie
Gegenbeispiele zu A.
– P (y, f (y)) ist nicht mit P (x, x) unfizierbar.
×
2 richtig 2 falsch 2 unsinnig
Lösung: Da die beiden Argumente des zweiten Atoms gleich sind, müsste ein Unifikator
auch y und f (y) gleich machen, was aber nicht geht (occurs check).
(8 Punkte)
Herunterladen