¨Ubungsblatt 2 - Institut für Informatik
¨Ubungsblatt 2 - Institut für Informatik
¨Ubungsblatt 2 - Institut für Informatik
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Informatik</strong> III:<br />
Theoretische <strong>Informatik</strong><br />
Prof. Bernhard Nebel<br />
Dr. Stefan Wölfl<br />
Wintersemester 2011<br />
Universität Freiburg<br />
<strong>Institut</strong> <strong>für</strong> <strong>Informatik</strong><br />
Übungsblatt 2<br />
Abgabe: 7. November 2011<br />
Beachten Sie bitte die umseitig angeführten Definitionen und Hinweise.<br />
Aufgabe 2.1 (Rechnen mit Sprachen; je Teilaufgabe 1 Punkt)<br />
Im Folgenden seien L,L 1 ,L 2 ,L 3 Sprachen über demselben Alphabet Σ. Beweisen oder<br />
widerlegen Sie die folgenden Aussagen. Benennen Sie jeweils auch das Verfahren, das<br />
Sie zum Nachweis Ihrer Behauptung verwenden.<br />
(a) L 1 ·L 2 = L 2 ·L 1<br />
(b) (L 1 ·L 2 )·L 3 = L 1 ·(L 2 ·L 3 )<br />
(c) (L 1 ∩L 2 )·L 3 = (L 1 ·L 3 )∩(L 2 ·L 3 )<br />
(d) Ist L 1 ⊆ L 2 , so gilt auch L 1 ·L ⊆ L 2 ·L und L·L 1 ⊆ L·L 2 .<br />
(e) (L 1 ·L 2 ) R = L R 2 ·LR 1<br />
(f) Ist L 1 ⊆ L 2 , so gilt auch L/L 1 ⊆ L/L 2 .<br />
(g) (L 1 /L 2 )·L 2 = L 1<br />
Aufgabe 2.2 (Kleene-Abschluss; 1+1+2+1+1 Punkte)<br />
Der Kleene-Abschluss einer Sprache L ist die kleinste Sprache, die L als Teilmenge<br />
und das leere Wort als Element enthält und unter Konkatenation abgeschlossen ist.<br />
Beweisen Sie dies, indem Sie zeigen:<br />
(a) L ⊆ L ∗<br />
(b) L ∗ ·L ∗ ⊆ L ∗<br />
(c) Für jede Sprache L ′ (über demselben Alphabet wie L) mit L ⊆ L ′ , ε ∈ L ′ und<br />
L ′ ·L ′ ⊆ L ′ gilt L ∗ ⊆ L ′ .<br />
Beweisen Sie, dass ferner gilt:<br />
(d) (L ∗ ) ∗ = L ∗ (verwenden Sie hierzu die Aussagen (a), (b) und (c)).<br />
(e) Für Sprachen L 1 ,L 2 mit L 1 ⊆ L 2 gilt L ∗ 1 ⊆ L∗ 2 .<br />
Aufgabe 2.3 (Palindrome; 1+1+2+3 Punkte)<br />
Ein Palindrom (über Σ) ist ein Wort w ∈ Σ ∗ mit w R = w. Für ein fest gewähltes<br />
Alphabet Σ, bezeichne P n die Menge der Palindrome der Länge n.<br />
(a) Geben Sie eine rekursive Definition der Mengen P n an.<br />
(b) Beweisen Sie durch Induktion: Ist w ∈ P n ein Palindrom gerader Länge, so ist<br />
die Anzahl jedes Alphabetszeichens, das in w vorkommt, gerade.
(c) Beweisen Sie durch Induktion über n, dass |P n | = |Σ| ⌈n/2⌉ gilt (hierbei bezeichne<br />
⌈x⌉ die kleinste ganze Zahl ≥ x).<br />
(d) Geben Sie eine Grammatik G an, die gerade die Menge aller Palindrome über Σ<br />
erzeugt. Beweisen Sie dies (Sie dürfen verwenden, dass jedes Palindrom der Länge<br />
n > 0 eine Darstellung der Form uu R oder der Form uxu R <strong>für</strong> ein Wort u und<br />
ein x ∈ Σ hat).<br />
Definitionen und Hinweise: Der Kleene-Abschluss einer Sprache L ist wie folgt definiert:<br />
L ∗ := ⋃ n∈N Ln . Die Quotientensprache zweier Sprachen L und L ′ über demselben Alphabet Σ<br />
ist definiert durch: L/L ′ := {w ∈ Σ ∗ : es gibt ein u ∈ L ′ derart, dass wu ∈ L}. Ist w ein Wort<br />
einer Sprache L, so bezeichne w R das Wort, das man erhält, wenn man w rückwärts schreibt,<br />
d.h., ist w = x 1 ...x n mit x 1 ,...,x n ∈ Σ, so ist w R = x n ...x 1 . Offensichtlich ist ε R = ε und<br />
x R = x <strong>für</strong> jedes x ∈ Σ. L R ist dann definiert durch L R := {w R ∈ Σ ∗ : w ∈ L}. Eine Sprache<br />
heißt endlich, wenn sie (als Mengen gesehen) endlich viele Elemente besitzt.