Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen

Ähnliche Dokumente
Klausur zur Vorlesung Formale Sprachen und Automaten TIT03G2 mit Lösungsvorschlägen

Formale Sprachen und Automaten

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014

DisMod-Repetitorium Tag 4

Automaten und formale Sprachen Klausurvorbereitung

Übungsaufgaben zu Formalen Sprachen und Automaten

Grundbegriffe der Informatik Tutorium 33

Tutorium 23 Grundbegriffe der Informatik (10. Sitzung)

Grammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen

5. Die syntaktische Analyse

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

Grundlagen der Theoretischen Informatik

THIA - Übungsblatt 2.

Klausur zur Vorlesung Grundbegriffe der Informatik 31. August 2009

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Klausur zur Vorlesung Grundbegriffe der Informatik 2. März 2016

Informatik III - WS07/08

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

Klausur zur Vorlesung Grundbegriffe der Informatik 31. August 2009 mit Lösunsgsvorschlägen

Kontextfreie Grammatiken. Kontextfreie Grammatiken 1 / 45

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen:

(Prüfungs-)Aufgaben zu formale Sprachen

Einführung in die Computerlinguistik

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

8. Turingmaschinen und kontextsensitive Sprachen

Kontextfreie Grammatiken. Kontextfreie Grammatiken 1 / 48

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018

Musterlösung (Stand ) zur Klausur zur Vorlesung Grundbegriffe der Informatik 4. März 2015

Theoretische Grundlagen der Informatik

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2016/2017

Grundlagen der theoretischen Informatik

Klausur zur Vorlesung Grundbegriffe der Informatik 14. September 2015

Definition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:

10 Kellerautomaten. Kellerautomaten

Automatentheorie und formale Sprachen

Umformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Musterlösung Informatik-III-Nachklausur

Akzeptierende Turing-Maschine

Aufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 13

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Kurz-Skript zur Theoretischen Informatik I

Grundbegriffe der Informatik Tutorium 11

Grundbegriffe der Informatik Tutorium 12

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht

TU Berlin Nachklausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2012)

Ogden s Lemma: Der Beweis (1/5)

15 R E G U L Ä R E AU S D R Ü C K E U N D R E C H T S L I N E A R E G R A M M AT I K E N

6 Kontextfreie Grammatiken

Informatik III. Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung

Alphabet, formale Sprache

Grundbegriffe der Informatik

Lösungsvorschläge und Erläuterungen Klausur zur Vorlesung Grundbegriffe der Informatik 15. September 2016

Grundlagen der Informatik II

Klammersprache Definiere

19 R E G U L Ä R E AU S D R Ü C K E U N D R E C H T S L I N E A R E G R A M M AT I K E N

Kapitel 7: Kellerautomaten und kontextfreie Sprachen

I.5. Kontextfreie Sprachen

Kontextfreie Sprachen

Theoretische Informatik I

Kontextfreie Sprachen

Klausur zur Vorlesung Grundbegriffe der Informatik 4. März 2015

Informatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Grundbegriffe der Informatik

Kellerautomat (1/4) Kellerautomat (2/4) Kellerautomat (3/4) Kellerautomat (4/4)

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

5.2 Endliche Automaten

Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken

Theoretische Informatik

Theoretische Informatik I

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Übungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen

Nachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Grundlagen der Theoretischen Informatik

Kontextfreie Sprachen werden von PDAs akzeptiert

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Vorlesung Automaten und Formale Sprachen Sommersemester Beispielsprachen. Sprachen

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten

Übungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Vorlesungsmitschrift zur Vorlesung Theoretische Informatik I vom 23. Juni Christian Franz

Das Halteproblem für Turingmaschinen

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015

Kontextfreie Sprachen Kontextfreie Sprachen und Grammatiken. Satzformen sind die Wörter aus (N T ). Notation: Wir verwenden oft

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Formale Sprachen und Automaten

Informatik 3 Theoretische Informatik WS 2015/16

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Formale Grundlagen der Wirtschaftsinformatik

4.2.4 Reguläre Grammatiken

Automaten und Coinduktion

Transkript:

Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 6 7 7 8 8 12 err. Punkte Gesamtpunktzahl: Note: 1

Aufgabe 1 (3+1+1+1 = 6 Punkte) Es seien die formalen Sprachen L 1 = {a k b l k, l N 0 } und L 2 = {b k a l k, l N 0 } gegeben. 1. Geben Sie präzise an, welche Wörter im Produkt L = L 1 L 2 enthalten sind. 2. (a) Ist L 1 L 2 regulär? (b) Ist L 1 L 2 kontextfrei? (c) Ist L 1 L 2 rekursiv? 1. L 1 L 2 = {a p b q a r p, q, r N 0 } 2. (a) ja (b) ja (c) ja 2

Aufgabe 2 (4+2 = 6 Punkte) Gegeben sei der deterministische endliche Akzeptor mit Eingabealphabet X = {a, b}, Zustandsmenge Z = {A, B, C, D, E, F, G}, Anfangszustand A und der Menge akzeptierender Zustände {A, C}, dessen Überführungsfunktion durch die folgende Tabelle festgelegt sei: A B C D E F G a B C G A F D A b E C G A F D A 1. Konstruieren Sie nach dem in der Vorlesung vorgestellten Verfahren so viele Äquivalenzrelationen i wie nötig, um einen äquivalenten Akzeptor mit minimaler Zustandszahl zu konstruieren. 2. Zeichnen Sie das Zustandsdiagramm Ihres in Punkt 1 konstruierten Akzeptors. Bitte achten Sie darauf, dass aus dem Bild hervorgeht, welcher Knoten des Graphen welchem Zustand des in Punkt 1 konstruierten Akzeptors entspricht und dass Anfangszustand usw. des konstruierten Akzeptors klar ersichtlich sind. keine Musterlösung; (es ist Sonntag) 3

Aufgabe 3 (1+1+1+1+2+1 = 7 Punkte) 1. Geben Sie eine Grammatik G mit Terminalzeichenalphabet T = {a, b, c} und ein Wort w T + an, das in G mehrere Linksableitungen hat. 2. Wieviele Linksableitungen gibt es für w in Ihrer Grammatik? 3. Wieviele Rechtsableitungen gibt es für w in Ihrer Grammatik? 4. Wie ist allgemein der Zusammenhang zwischen der Anzahl der Links- und der Anzahl der Rechtsableitungen eines Wortes in einer Grammatik? 5. Begründen Sie Ihre Aussage aus Punkt 4. 6. Wann ist eine Linksableitung gleichzeitig auch eine Rechtsableitung? 1. G = ({X, Y }, {a, b, c}, X, {X a, X Y, Y a}) und w = a. 2. zwei 3. zwei 4. Es sind immer gleich viele. 5. Zu jeder Linksableitung gibt es genau einen Ableitungsbaum und umgekehrt und zu jeder Rechtsableitung gibt es genau einen Ableitungsbaum und umgekehrt. 6. Wenn in jedem im Laufe der Ableitung auftretenden Wort genau ein Nichtterminalsymbol vorkommt (das dann eben gleichzeitig am weitesten links und am weitesten rechts steht). 4

Aufgabe 4 (2+2+3 = 7 Punkte) Es sei A = {a, b, c} und L A die formale Sprache aller Wörter w, für die gilt: w fängt mit einem a an und w hört mit einem c auf und w enthält nirgends ab direkt hintereinander. 1. Geben Sie die drei kürzesten Wörter aus L an. 2. Geben Sie die vier kürzesten Wörter an, die nicht zu L gehören. 3. Geben Sie einen regulären Ausdruck an, der L beschreibt. Sie dürfen (müssen aber nicht) auch die verallgemeinerten Notationsmöglichkeiten für reguläre Ausdrücke verwenden. erst mal keine Musterlösung; (es ist Sonntag) 5

Aufgabe 5 (2+2+2+2 = 8 Punkte) Im folgenden sei das Terminalzeichenalphabet T = {(, ), [, ]} mit zwei Sorten Klammern zugrunde gelegt. 1. Geben Sie eine präzise Definition für Gebilde an, die wohlgeformte Klammerausdrücke vom Typ A heißen sollen. Dabei sollen sowohl runde Klammern innerhalb von eckigen auftreten dürfen, als auch eckige innerhalb von runden (sowie runde innerhalb von runden und eckige innerhalb von eckigen). Es sollen also zum Beispiel [(())[]] und ([]) als korrekt gelten, aber (] und ))[)(nicht. 2. Geben Sie eine Grammatik an, die alle wohlgeformten Klammerausdrücke vom Typ A wie in Punkt 1 definiert erzeugt. 3. Geben Sie eine präzise Definition für Gebilde an, die wohlgeformte Klammerausdrücke vom Typ B heißen sollen. Dabei sollen runde Klammern innerhalb von eckigen auftreten dürfen, aber nicht mehr auch eckige innerhalb von runden. Es soll also zum Beispiel [(())[]] als korrekt gelten, aber ([]) nicht. (Und was bei Typ A schon verboten war, bleibt natürlich verboten.) 4. Geben Sie eine Grammatik an, die alle wohlgeformten Klammerausdrücke vom Typ B wie in Punkt 3 definiert erzeugt. Statt wohlgeformter Klammerausdruck vom Typ A bzw. B schreibe ich kurz WGA- A bzw. WKA-B. 1. zum Beispiel so: (a) ε ist WGA-A (b) Wenn W WGA-A ist, dann auch (W ) (c) Wenn W WGA-A ist, dann auch [W ] (d) Wenn W 1 und W 2 WGA-A sind, dann auch W 1 W 2 2. (jetzt nicht) 3. zum Beispiel so; definiere erst noch wohlgeformter Klammerausdruck vom Typ R für Ausdrücke, in denen nur runde Klammern vorkommen: (a) ε ist WGA-R (b) Wenn W WGA-R ist, dann auch (W ) (c) Wenn W 1 und W 2 WGA-R sind, dann auch W 1 W 2 Nun 6

(a) wenn W WGA-R ist, dann ist W auch WKA-B (b) Wenn W WGA-B ist, dann auch [W ] (c) Wenn W 1 und W 2 WGA-B sind, dann auch W 1 W 2 7

Aufgabe 6 (2+4+2 = 8 Punkte) Es sei die Grammatik G = ({E, T, F }, {2, 3, 4, (, ), +, *}, E, P ) gegeben mit den Produktionen P = {E T +E T, T F *T F, F (E) 2 3 4}. 1. Geben Sie den Ableitungsbaum für das Wort 2+3*4 an. 2. Beschreiben Sie, wie man aus einem Ableitungsbaum für ein Wort w die entsprechende Linksableitung für w konstruieren kann. 3. Wie kann man an einem Ableitungsbaum ablesen, wie viele Ableitungsschritte bei der zugehörigen Linksableitung nötig sind? erst mal keine Musterlösung; (es ist Sonntag) 8

Aufgabe 7 (6+4+2 = 12 Punkte) Gegeben sei die Grammatik G = ({E}, {a, (, ), +, *}, E, P ) mit den Produktionen P = {E a, E (E+E), E (E*E)}. 1. Erläutern Sie, welche Schritte ein nichtdeterministischer Kellerautomat bei der Top-Down-Syntaxanalyse für die Beispieleingabe ((a+a)*a) durchführen würde. 2. Erklären Sie anhand geeigneter Beispieleingaben, dasss ein Kellerautomat für die obige Grammatik in der noch nicht verarbeiteten Eingabe in ganz ungünstigen Fällen beliebig weit vorausschauen müsste, um seine Entscheidungen deterministisch fällen zu können. 3. Machen Sie einen Vorschlag, was man an der Grammatik ändern könnte, so dass Vorausschau von nur noch einem Zeichen genügt, und die von Ihrer neuen Grammatik erzeugte Sprache zwar nicht mehr genau die gleiche ist, aber im Prinzip immer noch geklammerte Summen und Produkte erzeugt werden. Hinweis: Sie dürfen auch das Terminalzeichenalphabet ändern... 1. wie immer 2. Bei Top-Down-Analyse muss im ersten Schritt das Startsymbol im Keller durch (E+E) oder (E*E) ersetzt werden. Welche man nehmen muss hängt an dem Operator, der bei Eingaben der Form ((((a+a)+a)+a)*a) und länger gaaanz weit hinten stehen kann. Der Kellerautomat müsste also beliebig weit vorausschauen können. 3. jetzt nicht (Sonntag) 9