• Keine Ergebnisse gefunden

Hinweise zu den ¨Ubungsaufgaben

N/A
N/A
Protected

Academic year: 2022

Aktie "Hinweise zu den ¨Ubungsaufgaben"

Copied!
9
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Hinweise zu den ¨ Ubungsaufgaben

Kontextfreie Sprachen und Pushdown-Automaten

Dozentin: Wiebke Petersen

WS 2004/2005

(2)

Aufgabe 4

Aufgabe: Gebe eine Grammatik an, die die Sprache der wohlgeformten arithmetischen Terme ¨ uber dem Alphabet {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, (, ), +, −, ·, :} generiert.

L¨ osung:

G

2

= h{S, Zi, Za, ZaS, NN}, {0, 1, 2, . . . , 9, +, −, ·, :, (, )}, S, P i

P =

 

 

 

 

 

 

 

 

 

 

S → ( S − S ) S → ( S + S ) S → ( S · S )

S → ( S : S ) S → Za, Za → Zi

Za → NN ZaS ZaS → Zi ZaS → ZaS Zi

Zi → NN Zi → 0 NN → 1

NN → 2 NN → 3 NN → 4

NN → 5 NN → 6 NN → 7

NN → 8 NN → 9

 

 

 

 

 

 

 

 

 

 

Wiebke Petersen – Formale Komplexit¨at nat¨urlicher Sprachen – WS 03/04 1

(3)

Chomsky-Normalform

Definition 1. Eine Grammatik ist in Chomsky-Normalform (CNF), wenn alle Regeln die Gestalt

1. A → a 2. A → BC

mit A, B, C ∈ T und a ∈ Σ haben (und gegebenenfalls S → , dann aber ohne S auf den rechten Regelseiten).

Satz 2. Jede kontextfreie Sprache kann durch eine Grammatik in

Chomsky-Normalform erzeugt werden.

(4)

Vorbereitung einer Grammatik zur Umwandlung in Chomsky-Normalform

Generiert die Grammatik , dann ersetze jedes Vorkommen von S in der Grammatik durch S

0

und f¨ uge die zus¨ atzlichen Regeln S → S

0

und S → hinzu.

Anschließend wende das Verfahren an, das auf den folgenden Seiten beschrieben wird.

Wiebke Petersen – Formale Komplexit¨at nat¨urlicher Sprachen – WS 03/04 3

(5)

Ansatz zur Herstellung der Regeln XYZ und Xa: Drei Etappen:

1. Terminalsymbole nur in Regeln der Form Xa (dann nur noch weitere Regeln XX1 . . . Xm) 2. Elimination der Regeln XY

3. Elimination der Regeln XX1 . . . Xm mit m > 2

(6)

Sei die kontextfreie Grammatik G = (N, Σ, P, S) gegeben.

Beweis (1. Etappe): Terminalsymbole sollen nur in Regeln Xa auftreten.

Beispiel: SaSb | ab

(Es gilt L(G) = {aibi | i > 0}) Gehe ¨uber zu: SXaSXb | XaXb

Xaa Xbb

Allgemein: F ¨uhre f ¨ur jedes Terminalsymbol a ein zugeh ¨origes Nichtterminalsymbol Xa ein.

Ersetze in allen Regeln a durch Xa. F ¨uge Regeln Xaa hinzu.

Erhalte so die Grammatik G0. Dann: S `

G a1 . . . an gdw. S `

G0 Xa1 . . . Xan `

G0 a1 . . . an

Prof. Dr. Wolfgang Thomas, 2002 (c) Automatentheorie und Formale Sprachen, Folge 13 – S. 9

(7)

Beweis (2. Etappe): Elimination der Regeln XY

Bestimme alle Ableitungen X1 ` . . . ` Xn mit Regeln der Form XY ohne Wiederholung eines Nichtterminalsymbols.

Dies erfasst alle M ¨oglichkeiten, aus einem X ein Y abzuleiten.

F ¨ur jede Ableitung X1 ` . . . ` Xn ` α mit α < N nehme die Regel X1 → α hinzu.

Abschließend l ¨osche alle Regeln der Form XY und erhalte so die Grammatik G00.

Behauptung: G00 ist ¨aquivalent zu G0.

(8)

Beweis (3. Etappe):

Elimination von Regeln XX1 . . . Xm mit m > 2 F ¨ur jede Regel XX1 . . . Xm f ¨uhre neue

Hilfs-Nichtterminalsymbole Y1, . . . , Ym2 ein.

Ersetze Regel XX1 . . . Xm durch XX1Y1,

Y1X2Y2

...

Ym3Xm2Ym2, Ym2Xm1Xm

Erhalte so die Grammatik G000.

Wir zeigen f ¨ur jedes Nichtterminalsymbol Z von G00: Z `

G00 w gdw. Z `

G000 w

Prof. Dr. Wolfgang Thomas, 2002 (c) Automatentheorie und Formale Sprachen, Folge 13 – S. 12

(9)

Beispiel

F ¨ur G mit SaSb | ab

ergibt sich nach 1. Etappe die Grammatik G0 mit:

SXaSXb | XaXb, Xaa,

Xbb

2. Etappe liefert hier keine neue Grammatik: G0 = G00. 3. Etappe liefert die Grammatik G000 mit

SXaY | XaXb, YSXb,

Xaa, Xbb

Referenzen

ÄHNLICHE DOKUMENTE

● vom Teilschlüssel direkt abhängige Attribute Löschen der direkt abhängigen Attribute aus der Ausgangstabelle. Erzeugung einer neuer

Sprachliche Veränderungen sind ein notwendiges Ergebnis für das Funktionieren von Sprache in der GesellschaftTļ In bestimmten Berei- chen des gesellschaftlichen

Die männlichen Hauptwörter, die sich nicht auf einen Mitlaut endi- g e n , bekommen das weibliche Geschlechtswort, ausgenommen wenn sie mit einem Beiworte stehen ;

Aufgabe 3: Kontextfreie Sprachen (5+4 Punkte) a) Geben Sie kurz an, wann eine Grammatik in Chomsky-Normalform ist.. Geben Sie eine Grammatik G 0 in Chomsky-Normalform an,

Beweis: Jede reguläre Sprache ist per Denition auch kontextfrei und es gibt mindestens eine kontextfreie Sprache, nämlich L(a n b n ), die nicht regulär ist... Eine durch

setzt voraus, dass die Grammatik in Chomsky-Normalform ist wird auch CKY-Parser

Die zweite Gruppe sind Gebete wie die Solota maftehe Seräy (= Gebet.. zim Lösimg des Zaubers)''und Gebete, die

Theorem: Any context-free language can be generated by a context-free grammar in Chomsky normal form.. “Can transform any CFG into Chomsky