• Keine Ergebnisse gefunden

Übung Algorithmen und Datenstrukturen 4. Übung: Zusatzaufgaben

N/A
N/A
Protected

Academic year: 2022

Aktie "Übung Algorithmen und Datenstrukturen 4. Übung: Zusatzaufgaben"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Wolfgang Hönig / Andreas Ecke WS 09/10

Übung Algorithmen und Datenstrukturen

4. Übung: Zusatzaufgaben

1. Sei E = (V,Σ, S, R) mit V = {S, A},Σ = {a} und R = {S ::= Aa, A ::= S}.

Berechnen Sie die syntaktischen Kategorien W(E, S) und W(E, A) mit Hilfe der Fixpunktsemantik.

2. Zur Bestimmung der Sprache die durch eine EBNF beschrieben wird, wurde in der Vorlesung die über den „induktiven Aufbau von EBNF-Termen definierten Regeln zur Bestimmung von Objektsprachen“ sowie die Fixpunktsemantik eingeführt.

Was unterscheidet die beiden Verfahren und wann sind sie anwendbar?

3. Geben Sie eine EBNFE an, welche die Sprache die das leere Wort enthält beschreibt.

Zeigen Sie mit den Regeln zur Bestimmung von Objektsprachen oder der Fixpunkt- semantik, dass ihre Definition korrekt ist.

Hinweis: Es ist das logisches Oder gemeint.

4. Sei E = (V,Σ, S, R) mit V = {S, A, B},Σ = {a, b, c} und R = {S ::= aAa, A ::=

bBb, B ::= c}. Bestimmen Sie die formale Sprache (als Menge von Wörtern), mit Hilfe der Regeln zur Bestimmung von Objektsprachen und der Fixpunktsemantik.

Welches Verfahren ist besser geeignet?

Lösungen

1. Es entsteht nach jedem Schritt W(E, S) = W(E, A) = ∅. Dies ist insofern nicht verwunderlich, da der Algorithmus zur Sprachenerzeugung nie abbrechen würde (Endlosrekursion.).

2. Die Regeln zur Bestimmung von Objektsprachen ist nur anwendbar, wenn keine Abhängigkeiten zwischen den einzelnen Regeln vorhanden sind. Das heißt insbe- sondere, dass es mindestens eine Regel geben muss, die keine syntaktische Variable enthält.

Die Fixpunktsemantik hingegen funktioniert auch in den anderen Fällen, da sie schrittweise arbeitet. Durch die schrittweise Abarbeitung ist es allerdings auch nicht möglich nach endlich vielen Schritten eine unendliche Sprache eindeutig zu definie- ren (Falls man eine Vermutung hat, kann jedoch vorzeitig ein Induktionsbeweis geführt werden.). Die Regeln zur Bestimmung von Objektsprachen liefern dagegen nach endlich vielen Schritten ein eindeutiges (und richtiges) Ergebnis.

Übersicht

Regeln zur Bestimmung von Objektsprachen

Fixpunktsemantik anwendbar falls es keine Abhängigkeiten

zwischen den Regeln gibt

immer

Terminierung nach endlich vielen Schritten Nie (aber nach Vermutung Ab- bruch und Induktionsbeweis möglich.)

Korrektheit bei korrekter Regelanwendung korrekt; kein Beweis nötig.

Induktionsbeweis nötig

(2)

3. E = (V,Σ, S, R)mit V ={S},Σ ={a} und R ={S ::= ˆ[Sˆ]} Beweis mit Fixpunktsemantik:

W(E, S)

(∅) 7→f ({}) 7→f ({}) 7→f . . . 7→f ({}) Hinweis: streng genommen ist noch ein Induktionsbeweis nötig.

Beweis mit Regeln zur Bestimmung von Objektsprachen:

JSK(ρ) = Jˆ[Sˆ]K=JSK(ρ)∪ {}=ρ(S)∪ {} ⇒ keine abschließender Beweis möglich, da ρ(S) unbekannt!

4. Fixpunktsemantik:

W(E, S) W(E, A) W(E, B)

 7→f

∅ {c}

 7→f

∅ {bcb}

{c}

 7→f

{abcba}

{bcb}

{c}

7→f . . .7→f

{abcba}

{bcb}

{c}

⇒W(E, S) ={abcba}

Beweis mit Regeln zur Bestimmung von Objektsprachen:

JSK(ρ) = JaAaK(ρ) =JaK(ρ)JAK(ρ)JaK(ρ) = {a}JAK(ρ){a}

⇒: Nebenrechnung 1:

JAK(ρ) =JbBbK(ρ) =JbK(ρ)JBK(ρ)JbK(ρ) ={b}JBK(ρ){b}

⇒: Nebenrechnung 2:

JBK(ρ) =JcK(ρ) = {c}

Damit ergibt sich für Nebenrechnung 1:

JAK(ρ) ={b}JBK(ρ){b}={b}{c}{b}={bcb}

Damit ergibt sich gesamt:

JSK(ρ) = {a}JAK(ρ){a}={a}{bcb}{a}={abcba}

In diesem Spezialfall eignen sich beide Verfahren gleich gut.

Referenzen

ÄHNLICHE DOKUMENTE

Wolfgang Hönig WS 09/101. Übung Algorithmen

• Suchbaum: Für jeden Knoten gilt: alle Schlüssel im linken Teilbaum sind kleiner und alle Schlüssel im rechten Teil- baum sind größer als der Schlüssel des Knotens. •

Dies geht, in dem man die Vergleichsfunktion so verändert, dass nicht einfach nur die Zahlen verglichen werden, sondern auch noch die Namen (wenn die Zahlen gleich sind).. mit

Durch den Durchschnitt zweier Sprachen, welche durch EBNF-Definitionen beschrie- ben werden, kann eine neue Sprache entstehen, welche sich nicht mit einer einzelnen

minimale Beispiele der Wörter aufschreiben2. aktuelles Wort und

Hinweis: Wenn die Übung immer noch zu langweilig ist, lohnt es sich alle Syntaxdia- grammsysteme der obigen Aufgaben in die entsprechende EBNF

Alphabet (Σ) nichtleere, endliche Menge zulässiger Symbole für die Wortbildung („Zeichenvorrat“). Wort endliche Folge

Durch die schrittweise Abarbeitung ist es allerdings auch nicht möglich nach endlich vielen Schritten eine unendliche Sprache eindeutig zu definieren (Falls man eine Vermutung hat,