K TU Ilmenau, Fakultät IA Institut TI, FG Komplexitätstheorie und Effiziente Algorithmen Priv.-Doz. Dr.rer.nat.habil. K.-H. Niggl, Dipl.-Inf. U. Schellbach http://www.tu-ilmenau.de/fakia/afs.html Automaten und Formale Sprachen WS 06/07 Übungsblatt 5 Abgabetermin: Donnerstag, den 16.11.2006, in der Vorlesung Aufgabe 1 (Induktion über den Aufbau binärer Bäume) Betrachten Sie die in der Vorlesung behandelte (informale) induktive Definition der Menge BB von binären Bäumen: (B) ist ein binärer Baum. (R) Sind T1 , T2 binäre Bäume, so auch hT1 ; ; T2 i. (A) Nur die gemäß (B) und (R) erzeugbaren Objekte sind binäre Bäume. Die Tiefe d(T ) eines binären Baumes T (d.h. die maximale Anzahl der Kanten eines Weges in T von der Wurzel zu einem Blatt) wurde durch Rekursion über den Aufbau“ von BB definiert: ” d() := 0 d(hT1 ; ; T2 i) := 1 + max{d(T1 ), d(T2 )} Beweisen Sie durch Induktion über den Aufbau von BB die folgende Aussage: (∗) Für alle binären Bäume T gilt: #Knoten(T ) ≤ 2d(T )+1 − 1 Dabei bezeichne #Knoten(T ) die Anzahl der Knoten in T . Aufgabe 2 (Eine Standardbasis“ der Booleschen Funktionen) ” Bezeichne BF := {f : {0, 1}n → {0, 1} | n ∈ + } die Menge der Booleschen Funktionen und werde (analog zur Menge alF) die Menge der B-Formeln induktiv aus Variablen und den Konjunktoren aus B := {¬, ∧, ∨} definiert. Eine n-stellige Boolesche Funktion f heiße B-definierbar, falls eine B-Formel φ(X1 , . . . , Xn ) existiert, so daß f (v(X1 ), . . . , v(Xn )) = [[φ]]v für alle Belegungen v gilt. N Beweisen Sie durch vollständige Induktion nach der Stelligkeit n ∈ jede Boolesche Funktion B-definierbar ist. N+ von BF-Funktionen, daß Hinweis: Im Induktionsschritt zerlegt man eine beliebige (n + 1)-stellige Funktion f geeignet in zwei n-stellige Funktionen f0 , f1 und gewinnt aus den nach I.V. existierenden B-Formeln für f0 , f1 eine B-Formel für f . Aufgabe 3 (Informale induktive Definitionen) Geben Sie (informal) induktive Definitionen für die folgenden Mengen an: N (a) Die Menge UD := {1i | i ∈ } der Unärdarstellungen der natürlichen Zahlen. (b) Die Menge BD := {bin(n) | n ∈ + } der Binärdarstellungen der natürlichen Zahlen ≥ 1. (c) Die Menge AA der vollständig geklammerten arithmetischen Ausdrücke über {+, −, ·, /} aufgebaut aus rationalen Zahlen. (d) Die Menge AAV der vollständig geklammerten arithmetischen Ausdrücke über {+, −, ·, /} aufgebaut aus rationalen Zahlen und Variablen x0 , x1 , . . . . N 2 Automaten und Formale Sprachen WS 06/07 Übungsblatt 5 Aufgabe 4 (Rekursionen über den Aufbau) Definieren Sie durch Rekursion über den Aufbau“ (ausgehend von Aufgabe 3) die folgenden ” Funktionen: N mit l(1i ) = i für alle i ∈ N. (b) val : BD → N mit val(bin(n)) = n für alle n ∈ N+ . (a) l : UD → (c) val : AA → Q ∪ {⊥}, wobei val jedem Ausdruck expr ∈ AA seinen numerischen Wert val(expr) zuordnen soll, wenn sich dieser ohne Division durch 0 ermitteln läßt. Andernfalls soll val(expr) = ⊥ gelten, wobei ⊥ für undefiniert“ steht. ” (d) valb : AAV → Q ∪ {⊥}, wobei b : {x0 , x1 , . . . } → Q eine Belegung der Variablen mit Werten aus Q ist und valb jedem Ausdruck expr ∈ AAV seinen numerischen Wert valb (expr) unter der Belegung b zuordnen soll (bzw. ⊥, wenn bei der Auswertung eine Division durch 0 vorkommt). Aufgabe 5 (Induktion über den Aufbau korrekter Klammerausdrücke) Betrachten Sie die folgende (informale) induktive Definition der Menge KKA von korrekten Klammerausdrücken: (B) ε ist ein korrekter Klammerausdruck. (R) Sind w1 , w2 korrekte Klammerausdrücke, so auch (w1 )w2 . (A) Nur die gemäß (B) und (R) erzeugbaren Objekte sind korrekte Klammerausdrücke. Im folgenden bezeichne |u|( bzw. |u|) für Wörter u wie üblich die Anzahl der Vorkommen von (“ bzw. )“ in u. ” ” (a) Bestimmen Sie Mengen A, B, R für eine Darstellung von KKA als Menge IR (B). (b) Beweisen Sie durch Induktion über den Aufbau von KKA die folgende Aussage: (∗∗) Für alle w ∈ KKA gilt: Ist u ∈ A ein Präfix von w, so gilt |u|( ≥ |u|) . Anschauliche Interpretation: Beim Lesen von korrekten Klammerausdrücken (von links nach rechts) hat man zu jedem Zeitpunkt mindestens so viele öffnende wie schließende Klammern gesehen.