VU Software Paradigmen / SS 2014
|
|
- Imke Klein
- vor 7 Jahren
- Abrufe
Transkript
1 VU Software Paradigmen / SS 2014 Thorsten Ruprechter ruprechter@tugraz.at Institute for Software Technology 1
2 Organisatorisches Ausgabe: (heute) Fragestunde: Abgabe: (ausgedruckt) Einsichtnahme: wird bekanntgegeben Gruppengröße: 2 tu-graz.lv.swp.gruppensuche gemeinsame Abgabe Institute for Software Technology 2
3 Inhalt Grammatiken Allgemeines & Produktionsregeln Parse Trees Chomsky-Sprachhierarchie LL(1) Allgemeines FIRST & FOLLOW Parse-Table Scala Institute for Software Technology 3
4 Grammatik - Allgemeines Definiert mögliche Wörter einer Sprache Grammatik ist 4-Tupel Nonterminale Terminale (unterstrichen) Startsymbol Endliche Menge von Produktionsregeln α β Institute for Software Technology 4
5 Grammatik Produktionsregel Def.: β kann von α abgeleitet werden α β Aneinanderreihung von Non-Terminalen und Terminalen mindestens ein Non-Terminal Aneinanderreihung von Non-Terminalen und Terminalen inklusive leere Menge Institute for Software Technology 5
6 Grammatik - Beispiel Institute for Software Technology 6
7 Grammatik - Sprachhierarchie Chomsky Hierarchie = 4 Ebenen unterscheidet nach Komplexität prod. Sprachen hier von keine Regeln bis strikte Regeln geordnet [Typ 0] allgemein/uneingeschränkt [Typ 1] kontext-sensitiv [Typ 2] kontext-frei [Typ 3] regulär Institute for Software Technology 7
8 Sprachhierarchie - uneingeschränkt Allgemeine Grammatiken unrestricted Jede gültige Grammatik, welche keine Restriktionen bezüglich der Ableitung aufweist Def: G: keine Restriktionen bezüglich α β Institute for Software Technology 8
9 Sprachhierarchie kontext-sensitiv alle Regeln von uneingeschränkten Grammatiken erfüllt nicht mehr Symbole produziert als gelöscht = Anzahl Symbole links kleiner gleich Anzahl Symbole rechts Def: G sens : α β Institute for Software Technology 9
10 Sprachhierarchie kontext-frei alle Regeln von kontext-sensitiven Grammatiken erfüllt zusätzlich: α = genau EIN Non-Terminal Def: G free : α β, α V N Institute for Software Technology 10
11 Sprachhierarchie regulär alle Regeln von kontext-freien Grammatiken erfüllt Zusätzlich: β = aa oder β = a a = Terminal oder leer (epsilon/ε) A = Non-Terminal Def: α β, α V N, β hat Form aa oder a, mit a V T {ε}, A V N Institute for Software Technology 11
12 Parse Trees Parser Überprüft, ob Satz in Sprache (= durch Grammatik definiert) vorhanden ist Kann Zeichenkette durch Grammatik geparst werden? Visuelle Darstellung Institute for Software Technology 12
13 Parse Tree - Beispiel G: ( {E}, { (, ), num, +, * }, E, ) { } E E + E E E * E E ( E ) E num Ist num + num * num in dieser Sprache?? Institute for Software Technology 13
14 Parse Tree - Beispiel G: ( {E}, { (, ), num, +, * }, E, { E E + E E E * E E ( E ) E num } ) Institute for Software Technology 14
15 Parse Tree - Beispiel G: ( {E}, { (, ), num, +, * }, E, { E E + E E E * E E ( E ) E num } ) Institute for Software Technology 15
16 LL(1) - Allgemeines Left to right / Leftmost derivation Kontextfreie Grammatik mit Einschränkungen Keine Linksrekursion (direkt oder indirekt) L La I Jx und J Iy Keine Linksfaktorisierung F ax und F ay Institute for Software Technology 16
17 LL(1) - Linksrekursion Direkt L La L b Auflösen L bm M am ε Indirekt I J I z J Iy Auflösen in direkte I Iy I z Institute for Software Technology 17
18 LL(1) - Linksfaktorisierung Mehrdeutigkeit auflösen F xg F xh Auflösen F xe E G H Institute for Software Technology 18
19 LL(1) Umformen Äquivalenz muss bestehen bleiben G vor = G nach Überprüfe immer, ob beide Grammatiken die exakt selbe Sprache erzeugen Institute for Software Technology 19
20 LL(1) - Allgemeines Warum? Einfaches Parsing Nächstes Token muss reichen, um Produktionsregel zu identifizieren 1 Token Look Ahead Wie? Möglich durch Hilfe von Parse-Table Dazu notwendig: FIRST- & FOLLOW-Mengen Institute for Software Technology 20
21 FIRST & FOLLOW FIRST(α) All jene Terminalsymbole, die an erster Stelle von α vorkommen können (inkl. ε) FOLLOW(A) All jene Terminalsymbole, die DIREKT rechts von Nonterminal A stehen können falls A abschließendes (am weitest rechts stehendes) sein kann, ist $ Element v. FOLLOW(A) Institute for Software Technology 21
22 FIRST(X) - Regeln Wenn Terminal a an erster Stelle von Non-Terminal A steht, inkludiere a in FIRST(A) FIRST-Menge von Terminal = genau dieses Terminal Beispiel: S AB A a FIRST(S) = FIRST(AB) = B b FIRST(A) = FIRST(a) = a Institute for Software Technology 22
23 FIRST(X) - Regeln Wenn A ε, dann ist ε in FIRST(A) Wenn A ein Nonterminal ist, und unter anderem folgende Regeln existieren... A BC, B ε, C d dann ist d in FIRST(A) Wenn auch C ε gelten würde, müsste FIRST(A) zusätzlich auch ε enthalten Institute for Software Technology 23
24 FIRST(X) - Regeln Beispiel (Startsymbol A) A BC B b ε C d ε FIRST(A) = FIRST(BC) = FIRST(B) + FIRST(C) = {b, ε} + {d, ε} = {b, d, ε} (weil ε in FIRST(B)) Institute for Software Technology 24
25 FOLLOW(X) - Regeln Startsymbol (z.b. S) enthält immer $ $ = Endmarker Falls Regel A abc existiert, ist FIRST(C) in FOLLOW(B) enthalten Ausnahme: ε C kann in diesem Fall ein Terminal oder weitere Non-Terminale darstellen Institute for Software Technology 25
26 FOLLOW(X) - Regeln Falls die Regeln A abc sowie C ε existieren, so ist JEDES Element aus FOLLOW(A) auch in FOLLOW(B) Institute for Software Technology 26
27 FOLLOW(X) - Beispiel S ABC FOLLOW(S) = {$} A a FOLLOW(C) = {$} B bb B ε C c FOLLOW(A) = FIRST(B)\ε + FIRST(C) = {b, c} FOLLOW(B) = FIRST(C) = {c} (weil ε in FIRST(B)) Institute for Software Technology 27
28 Parse-Table Terminal1 Terminal2. TerminalN Nonterminal1 Nonterminal2 NonterminaN Institute for Software Technology 28
29 Parse-Table - Aufbau Trage Regel A B (wenn B nicht ε) in alle Spalten mit Element x aus FIRST(B) ein Ist ε in FIRST(B), dann trage A B in alle Spalten mit Element y aus FOLLOW(A) ein Kann auch als Überprüfung verwendet werden, ob FIRST/FOLLOW richtig Tabelle muss selbe Sprache parsen wie Grammatik Institute for Software Technology 29
30 Parse-Table S ABC A ac B bb B ε C c Institute for Software Technology 30
31 Parse-Table - Beispiel S ABC A ac B bb B ε C c Sets FIRST FOLLOW S a $ A a b, c B b, ε c C c b, c, $ Institute for Software Technology 31
32 Parse-Table Beispiel 1 S ABC A ac B bb B ε C c Sets FIRST FOLLOW S a $ A a b, c B b, ε c C c b, c, $ a b c $ S S ABC A A ac B B bb B ε C C c Institute for Software Technology 32
33 Parse-Table Beispiel 2 S ABC A ac B bb B ε C c C ε Sets FIRST FOLLOW S a $ A a b, c, $ B b, ε c, $ C c, ε b, c, $ a b c $ S S ABC A A ac B B bb B ε B ε C C ε C c C ε Institute for Software Technology 33
34 Stack Parse-Tabelle Parsen S A Input (Forts.) Produktion/ Kommentar $ acc$ S ABC $ CBA acc$ A ac $ CBCa acc$ a matched $ CBC cc$ C c $ CBc cc$ siehe nächste Folie siehe nächste Folie a b c $ S ABC A ac B B bb B ε C siehe nächste Folie C c Institute for Software Technology 34
35 Parse-Tabelle - Parsen S A Stack (Übertrag) a b c $ S ABC A ac B B bb B ε C Input(Übertrag) C c Produktion/ Kommentar $ CBc cc$ c matched $ CB c$ B ε $ C c$ C c $ c c$ c matched $ $ MATCHED Institute for Software Technology 35
36 Scala Scala Tutorial bereits durchgeführt Dokumente online zugänglich Beispiele von AB-1 sind gute Übung für AB-P! Institute for Software Technology 36
37 Fragen? VU Softwareparadigmen Thorsten Ruprechter Institute for Software Technology 37
Softwareparadigmen VU / SS 2018
Softwareparadigmen VU 716.060 / SS 2018 Jannik Hildebrandt swp@ist.tugraz.at NG: tu-graz.lv.swp Institute for Software Technology 1 Organisatorisches Ausgabe: 21.03. Fragestunde: 11.04. Abgabe: 18.04.,
MehrVU Software Paradigmen / SS 2014
VU Software Paradigmen 716.060 / SS 2014 Ralph Ankele ralph.ankele@tugraz.at Termine Ausgabe: 19. März (heute) Fragestunde: 24. März Abgabe: 09. April(bis 16:00 Uhr) Einsichtsnahme: xx. April (16:00 Uhr)
MehrVU Software Paradigmen / SS 2012
VU Software Paradigmen 716.060 / SS 2012 Sandra Fruhmann sandra.fruhmann@student.tugraz.at Inhalt Grammatiken Chomsky Sprachhierarchie Parse Trees Recursive Descent Parser First-, Follow-Mengen 2 Compiler
MehrVU SWP - Syntax. Bernhard Aichernig und Alexander Felfernig Institut für Softwaretechnologie
VU SWP - Syntax Bernhard Aichernig und Alexander Felfernig Institut für Softwaretechnologie {aichernig,felfernig}@ist.tugraz.at Institute for Software Technology Produktionen Inhalt welche Sätze akzeptiert?
MehrKonstruieren der SLR Parsing Tabelle
Konstruieren der SLR Parsing Tabelle Kontextfreie Grammatik (CFG) Notation 1. Diese Symbole sind Terminals: (a) Kleinbuchstaben vom Anfang des Alphabets wie a, b, c. (b) Operator Symbole wie +,, usw. (c)
MehrÜbungsskriptum verfasst von Daniel Gruß. Version 29. Juni Fehlerfunde bitte melden an
Softwareparadigmen Dieses Skriptum basiert auf der Softwareparadigmen Übung im Sommersemester 2012 und dem Vorlesungsskriptum 2007. Vorlesung von Alexander Felfernig ii Übungsskriptum verfasst von Daniel
MehrInhalt. VU SWP - Syntax. Sprachen. Strukturbeschreibung. Beispiel. Grammatik. Produktionen Sprachhierarchie Parsing Anmerkungen zum Sprachdesign
Inhalt VU SWP - Syntax Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Produktionen Sprachhierarchie Parsing Anmerkungen zum Sprachdesign Syntax 2 Sprachen Strukturbeschreibung Struktur
MehrKapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14
Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen
Mehr2.6 Deterministisches Top-Down-Parsen
48 2.6 Deterministisches Top-Down-Parsen Als nächstes wollen wir uns mit Methoden zur syntaktischen Analyse befassen. Der lexikale canner eines Compilers liest die Eingabe Zeichen für Zeichen und erzeugt
MehrLL(k)-Analyse. (y) folgt α = β. (x) = start k. (=l> ist ein Linksableitungsschritt)
LL(k)-Analyse Eine KFG G = (N,T,P,S) heisst LL(k)-Grammatik, wenn für alle w,x,y T*, α,β,σ (N U T)* und A N mit 1. S =l>* waσ =l> wασ =l>* wx, 2. S =l>* waσ = > wβσ =l>* wy, 3. start k (x) = start k (y)
MehrFachseminar Compilerbau
Fachseminar Compilerbau WS 08/09 Matthias Schiller Syntaktische Analyse 1. Prinzip der Top-Down-Analyse 2. LL(1)-Grammatiken Modell-Vorstellung Der Scanner liefert als Ergebnis der lexikalischen Analyse,
MehrLL(1)-Parsing. Ullrich Buschmann, Linda Schaffarczyk, Maurice Schleussinger. Automatische Syntaxanalyse (Parsing)
LL(1)-Parsing Ullrich Buschmann, Linda Schaffarczyk, Maurice Schleussinger Automatische Syntaxanalyse (Parsing) Heinrich-Heine-Universität Düsseldorf Wintersemester 2012/2013 Aufbau des Referats 1. Einführung,
MehrGrammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen
Grammatiken Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen Grammatiken eignen sich besonders zur Modellierung beliebig tief geschachtelter,
MehrVU Software Paradigmen / SS 2012
VU Software Paradigmen 716.060 / SS 2012 Monika Mandl Institut für Softwaretechnologie mmandl@ist.tugraz.at Institute for Software Technology StudienassistentInnen Markus Eger markus.eger@student.tugraz.at
MehrVon der Grammatik zum AST
Von der Grammatik zum AST Welche Eigenschaften soll ein Parser haben? Wann ist eine Grammatik eindeutig? Wie sollte eine Grammatik aussehen? Theoretischer Hin tergrund: FIRST, FOLLOW Einschränkungen von
MehrFormale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER
Formale Sprachen Grammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marian KOGLER Grammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind Grammatiken.
MehrDer Earley-Algorithmus
Der Earley-Algorithmus Kursfolien Karin Haenelt 25.03.02 1 25.03.02 2 Inhalt Funktion des Earley-Algorithmus Begriffe Erkenner/Parser Kontextfreie Grammatik Ein Beispiel Funktionen des Algorithmus Funktionsweise
MehrDer Earley-Algorithmus
Der Earley-Algorithmus Kursfolien Karin Haenelt 25.03.02 1 25.03.02 2 Inhalt Funktion des Earley-Algorithmus Begriffe Erkenner/Parser Kontextfreie Grammatik Ein Beispiel Funktionen des Algorithmus Funktionsweise
MehrEarley Parser. Flutura Mestani
Earley Parser Flutura Mestani Informatik Seminar Algorithmen zu kontextfreien Grammatiken Wintersemester 2015/2016 Prof. Martin Hofmann, Dr. Hans Leiß Flutura Mestani 25.11.2015 Seminar Algorithmen zu
MehrTheoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 08.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Letzte Vorlesung Eine
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 15.01.2015 INSTITUT FÜR THEORETISCHE 0 KIT 15.01.2015 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik
MehrAutomatentheorie und formale Sprachen
Automatentheorie und formale Sprachen VL 8 Chomsky-Grammatiken Kathrin Hoffmann 23. Mai 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 23.5. 2012 250 Wortproblem Wortproblem ist das
MehrFormale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung
Formale Sprachen rammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marion OSWALD rammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind rammatiken.
Mehr1. Übungsblatt 6.0 VU Theoretische Informatik und Logik
. Übungsblatt 6. VU Theoretische Informatik und Logik 25. September 23 Aufgabe Sind folgende Aussagen korrekt? Begründen Sie jeweils Ihre Antwort. a) Für jede Sprache L gilt: L < L (wobei A die Anzahl
MehrVorlesung Automaten und Formale Sprachen Sommersemester Beispielsprachen. Sprachen
Vorlesung Automaten und Formale Sprachen Sommersemester 2018 Prof. Barbara König Übungsleitung: Christina Mika-Michalski Wörter Wort Sei Σ ein Alphabet, d.h., eine endliche Menge von Zeichen. Dann bezeichnet
MehrTheorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie
Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung
MehrKapitel 5: Syntax-Analyse
Kapitel 5: Syntax-Analyse Aufgabe Die Token-Folge wird strukturiert in Anweisungen, Ausdrücke etc., um die Semantische Analyse und Code-Erzeugung zu ermöglichen Themen Kontextfreie Grammatik Äquivalente
MehrSprachanalyse. Fachseminar WS 08/09 Dozent: Prof. Dr. Helmut Weber Referentin: Nadia Douiri
Sprachanalyse WS 08/09 Dozent: Prof. Dr. Helmut Weber Referentin: Inhalt 1. Formale Sprachen 2. Chomsky-Hierarchie 2 FORMALE SPRACHE 1. WAS IST EINE SPRACHE? 2. WIE BESCHREIBT MAN EINE SPRACHE? 3. WAS
MehrEinführung in die Computerlinguistik Chomskyhierarchie
Einführung in die Computerlinguistik Chomskyhierarchie Dozentin: Wiebke Petersen 14. Foliensatz Wiebke Petersen Einführung CL 1 Wiederholung: Formale Grammatik Denition Eine formale Grammatik ist ein 4-Tupel
MehrEinführung in die Computerlinguistik Chomskyhierarchie
Einführung in die Computerlinguistik Chomskyhierarchie Dozentin: Wiebke Petersen 14. Foliensatz Wiebke Petersen Einführung CL 1 Wiederholung: Formale Grammatik Denition Eine formale Grammatik ist ein 4-Tupel
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (II) 11.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrDas Halteproblem für Turingmaschinen
Das Halteproblem für Turingmaschinen Das Halteproblem für Turingmaschinen ist definiert als die Sprache H := { T w : T ist eine TM, die bei Eingabe w {0, 1} hält }. Behauptung: H {0, 1} ist nicht entscheidbar.
MehrTutorium 23 Grundbegriffe der Informatik (10. Sitzung)
Tutorium 23 Grundbegriffe der Informatik (10. Sitzung) Tutor: Felix Stahlberg SOFTWARE DESIGN AND QUALITY GROUP Source: pixelio.de KIT The cooperation of Forschungszentrum Karlsruhe GmbH and Universität
MehrEinführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.11.2005 5. Vorlesung 1 Überblick: Kontextfreie Sprachen Formale Grammatik Einführung, Beispiele Formale
MehrSoftwareparadigmen Zusammenfassung
Softwareparadigmen Zusammenfassung Dieses Skriptum basiert auf der Softwareparadigmen Übung im Sommersemester 2012 und dem Vorlesungsskriptum 2007. Vorlesung von Alexander Felfernig Übungsskriptum verfasst
MehrSkriptum zur Lehrveranstaltung 2006 DRAFT Teil 1
Software-Paradigmen Skriptum zur Lehrveranstaltung 2006 DRAFT Teil 1 PROF. DR. FRANZ WOTAWA Technische Universität Graz, Institut für Softwaretechnologie A-8010 Graz, Inffeldgasse 16b/2, Austria wotawa@ist.tugraz.at
MehrBeschreibungskomplexität von Grammatiken Definitionen
Beschreibungskomplexität von Grammatiken Definitionen Für eine Grammatik G = (N, T, P, S) führen wir die folgenden drei Komplexitätsmaße ein: Var(G) = #(N), Prod(G) = #(P ), Symb(G) = ( α + β + 1). α β
MehrFormale Sprachen Jörg Roth Formale Sprachen
Formale Sprachen Jörg Roth 196 3 Formale Sprachen Wir haben uns bisher nur mit einem Typ formaler Sprachen besonders intensiv beschäftigt den regulären Sprachen. Wir haben aber auch erkannt, dass reguläre
MehrWas bisher geschah: Formale Sprachen
Was bisher geschah: Formale Sprachen Alphabet, Wort, Sprache Operationen und Relationen auf Wörtern und Sprachen Darstellung unendlicher Sprachen durch reguläre Ausdrücke (Syntax, Semantik, Äquivalenz)
MehrGrundbegriffe. Grammatiken
Grammatiken Grammatiken in der Informatik sind ähnlich wie Grammatiken für natürliche Sprachen ein Mittel, um alle syntaktisch korrekten Sätze (hier: Wörter) einer Sprache zu erzeugen. Beispiel: Eine vereinfachte
MehrAbschnitt 5. Grammatiken
Abschnitt 5 Sven Büchel Computerlinguistik I: Übung 148 / 163 Definition Formale Grammatik Eine formale Grammatik G ist eine 4-Tupel G =(N,T,P,S) mit einem Alphabet von Nicht-Terminalsymbolen N einem Alphabet
MehrTheoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 17.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Evaluation Ergebnisse
MehrGrammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)
Grammatiken Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V Startsymbol S V Produktionen P ( (V Σ) \ Σ ) (V Σ) Kurzschreibweise G = (V, Σ, P, S) Schreibweise für Produktion (α, β) P: α β 67 /
MehrEndgültige Gruppeneinteilung Kohorte Innere-BP Sommersemester 2016 (Stand: )
A A1a 2197120 on on A A1a 2311330 on on on on on on on A A1a 2316420 on on A A1a 2332345 on on on on on on on A A1a 2371324 on on on on on on on A A1a 2382962 on on A A1a 2384710 on on on on on on on A
MehrTutoraufgabe 1 (ɛ-produktionen):
Prof aa Dr J Giesl Formale Systeme, Automaten, Prozesse SS 2010 M Brockschmidt, F Emmes, C Fuhs, C Otto, T Ströder Hinweise: Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus dem gleichen Tutorium
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrAlphabet, formale Sprache
n Alphabet Alphabet, formale Sprache l nichtleere endliche Menge von Zeichen ( Buchstaben, Symbole) n Wort über einem Alphabet l endliche Folge von Buchstaben, die auch leer sein kann ( ε leere Wort) l
Mehr5. Die syntaktische Analyse
mittels sog. Parser Input: Folge von Token (Symbolen), geliefert vom Scanner/Sieber Aufgabe: Teilfolgen zusammenfassen zu größeren syntaktischen Einheiten Ausdrücke, Anweisungen(-folgen), Deklarationen,
MehrTheoretische Informatik Mitschrift
Theoretische Informatik Mitschrift 2. Grammatiken und die Chomsky-Hierarchie Beispiel: Syntaxdefinition in BNF :=
MehrFormale Sprachen und Grammatiken
Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax
MehrAutomaten und formale Sprachen Klausurvorbereitung
Automaten und formale Sprachen Klausurvorbereitung Rami Swailem Mathematik Naturwissenschaften und Informatik FH-Gießen-Friedberg Inhaltsverzeichnis 1 Definitionen 2 2 Altklausur Jäger 2006 8 1 1 Definitionen
MehrEinführung in die Computerlinguistik. Chomskyhierarchie. Dozentin: Wiebke Petersen Wiebke Petersen Einführung CL (SoSe 2010) 1
Einführung in die Computerlinguistik Chomskyhierarchie Dozentin: Wiebke Petersen 1.7.2010 Wiebke Petersen Einführung CL (SoSe 2010) 1 Wiederholung: Formale Grammatik Denition Eine formale Grammatik ist
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Sommersemester 2015 23.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen
MehrLR-Parsing. Präsentation vom 19. Dez Adriana Kosior, Sandra Pyka & Michael Weidauer. Automatische Syntaxanalyse (Parsing) Wintersemester 12/13
LR-Parsing Präsentation vom 19. Dez. 2012 Adriana Kosior, Sandra Pyka & Michael Weidauer Automatische Syntaxanalyse (Parsing) Wintersemester 12/13 Inhalte Einleitung LR(0) Parser LR(1) Parser Fazit Literatur
MehrCompilerbau. Bachelor-Programm. im SoSe Prof. Dr. Joachim Fischer Dr. Klaus Ahrens Dr. Andreas Kunert Dipl.-Inf.
Bachelor-Programm Compilerbau im SoSe 2014 Prof. Dr. Joachim Fischer Dr. Klaus Ahrens Dr. Andreas Kunert Dipl.-Inf. Ingmar Eveslage fischer@informatik.hu-berlin.de J.Fischer 7.1 4.3 LL-Parser Prinzip der
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 6. Vorlesung 10.11.2006 schindel@informatik.uni-freiburg.de 1 Kapitel IV Kontextfreie Sprachen Kontextfreie Grammatik Informatik III 6. Vorlesung
MehrInformatik IC2. Balazs Simon
Informatik IC2 Balazs Simon Inhaltsverzeichnis 1 Contextfreie Sprachen 3 1.1 Ableitungsbaum..................................... 3 1.2 Schönheit........................................ 4 1.3 Normalformen......................................
MehrHallo Welt für Fortgeschrittene
Hallo Welt für Fortgeschrittene Parsen Thomas Wehr Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Inhalt Theoretische Grundlagen Grammatiken im Allgemeinen Die Chomsky-Hierarchie Die Chomsky-Normalform
MehrDefinition der Greibach-Normalform
Definition der Greibach-Normalform Ähnlich wie die CNF wollen wir noch eine zweite Normalform einführen, nämlich die Greibach-Normalform (GNF), benannt nach Sheila Greibach: Definition: Eine Typ-2 Grammatik
MehrFormale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten
MehrÜbungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Ausgabe 8. Januar 2019 Abgabe 22. Januar 2019, 11:00 Uhr (im
MehrSprachen sind durch folgenden Aufbau gekennzeichnet:
BNF UND SYNTAXDIAGRAMME 1. Allgemeines 1.1 Aufbau von Sprachen BNF und Syntaxdiagramme werden verwendet, um die Syntax einer Sprache darzustellen und graphisch zu veranschaulichen. Mit ihnen können entweder
MehrTheoretische Informatik I
Theoretische Informatik I Einheit 2.5 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibung des Aufbaus von Sprachen Mathematische Mengennotation Beschreibung durch Eigenschaften
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
MehrCompB Zusammenfassung
Compilerbau CompB Zusammenfassung Stand: 2013-09-08 https://github.com/hsr-stud/compb/ Inhaltsverzeichnis 1 Lexikalische Analyse 3 1.1 Aufgaben eines Lexers................................... 3 1.2 Probleme,
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 5. Vorlesung 09.11.2006 schindel@informatik.uni-freiburg.de 1 Äquivalenzklassen Definition und Beispiel Definition Für eine Sprache L Σ* bezeichnen
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 13.01.2011 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrGrammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht
Zusammenhang: Formale Sprache Grammatik Formale Sprache kann durch Grammatik beschrieben werden. Zur Sprache L = L(G) gehören nur diejenigen Kombinationen der Zeichen des Eingabealphabets, die durch die
MehrLemma Für jede monotone Grammatik G gibt es eine kontextsensitive
Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive Grammatik G mit L(G) = L(G ). Beweis im Beispiel (2.): G = (V,Σ, P, S) : P = {S asbc, S abc, CB BC, ab ab, bb bb, bc bc, cc cc}. (i) G
MehrZusammenfassung. Stephan Gspandl Institut für Softwaretechnologie Institute for Software Technology
Zusammenfassung Stephan Gspandl Institut für Softwaretechnologie sgspandl@ist.tugraz.at SYNTAX 2 Syntax Struktur einer Sprache Werkzeug zur Beschreibung aller möglichen Sätze: Grammatik Tupel (V N,V T,S,Φ)
MehrGrundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I
Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:
Mehr2.1 Grundlagen: Kontextfreie Grammatiken
2.1 Grundlagen: Kontextfreie Grammatiken Programme einer Programmiersprache können unbeschränkt viele Tokens enthalten, aber nur endlich viele Token-Klassen :-) Als endliches Terminal-Alphabet T wählen
MehrEinführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.02.2006 28. und letzte Vorlesung 1 Die Chomsky-Klassifizierung Chomsky-Hierachien 3: Reguläre Grammatiken
MehrRekursiv aufzählbare Sprachen
Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 17.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrDeterministischer Kellerautomat (DPDA)
Deterministische Kellerautomaten Deterministischer Kellerautomat (DPDA) Definition Ein Septupel M = (Σ,Γ, Z,δ, z 0,#, F) heißt deterministischer Kellerautomat (kurz DPDA), falls gilt: 1 M = (Σ,Γ, Z,δ,
MehrKapitel IV Formale Sprachen und Grammatiken
Kapitel IV Formale Sprachen und Grammatiken 1. Begriffe und Notationen Sei Σ ein (endliches) Alphabet. Dann Definition 42 1 ist Σ das Monoid über Σ, d.h. die Menge aller endlichen Wörter über Σ; 2 ist
MehrDefinition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An
Definition 4 (Operationen auf Sprachen) Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A 0 = {ɛ}, A n+1 = AA n A = n 0 An A + = n 1 An Beispiel 5 {ab, b}{a, bb} = {aba, abbb,
MehrÜbungsblatt 7. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 7 Vorlesung Theoretische Grundlagen der Informatik im W 16/17 Ausgabe 17. Januar 2017 Abgabe 31. Januar 2017, 11:00 Uhr (im
Mehrq 0 q gdw. nicht (q A) (q A) q i+1 q gdw. q i q oder ( a Σ) δ(q, a) i δ(q, a) L = {a n b n : n N} für a, b Σ, a b
Kap. 2: Endliche Automaten Myhill Nerode 2.4 Minimalautomat für reguläre Sprache Abschnitt 2.4.3 L Σ regulär der Äuivalenzklassen-Automat zu L ist ein DFA mit minimaler Zustandszahl (= index( L )) unter
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV 1 Wir betrachten die folgende Signatur
MehrTheoretische Grundlagen des Software Engineering
Theoretische Grundlagen des Software Engineering 5: Reguläre Ausdrücke und Grammatiken schulz@eprover.org Software Systems Engineering Reguläre Sprachen Bisher: Charakterisierung von Sprachen über Automaten
MehrI.5. Kontextfreie Sprachen
I.5. Kontextfreie prachen Zieht man in Betracht, dass BNF-yteme gerade so beschaffen sind, dass auf der linken eite immer genau ein Nichtterminal steht, so sind das also gerade die Ableitungsregeln einer
MehrKontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen
Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Wortproblem: der CYK-Algorithmus Pumping Lemma für kontextfreie Sprachen
MehrSoftware Paradigmen Skriptum zur Lehrveranstaltung Sommersemester 2006
Software Paradigmen Skriptum zur Lehrveranstaltung Sommersemester 2006 Prof. Dr. Franz Wotawa Technische Universität Graz Institut für Softwaretechnologie 8010 Graz, Inffeldgasse 16b/2 wotawa@ist.tugraz.at
MehrMehrdeutige Grammatiken
Mehrdeutige Grammatiken Wir haben gesehen, dass es auch mehr als eine Linksableitung, d.h. mehr als einen Syntaxbaum geben kann, um das selbe Terminalwort zu erzeugen. Eine Grammatik, die für mindestens
MehrFormale Grundlagen der Wirtschaftsinformatik
Formale Grundlagen der Wirtschaftsinformatik Nikolaj Popov Research Institute for Symbolic Computation popov@risc.uni-linz.ac.at Sprachen und Grammatiken Teil II Sprache Definition: Ein Alphabet Σ ist
MehrVorname:... Matrikel-Nr.:... Unterschrift:...
Fachhochschule Mannheim Hochschule für Technik und Gestaltung Fachbereich Informatik Studiengang Diplom (RGS 9) Compilerbau Sommersemester 2005 Name:... Vorname:... Matrikel-Nr.:... Unterschrift:... Hinweise:
MehrCompilerbau Syntaxanalyse 68. LR(1)-Syntaxanalyse
Compilerbau Syntaxanalyse 68 LR(1)-Syntaxanalyse Bei der LL(1)-Syntaxanalyse wird allein aufgrund des nächsten Tokens die zu verwendende Produktion ermittelt. Bei der LR(1)-Syntaxanalyse braucht diese
MehrEinführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten
Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten Dozentin: Wiebke Petersen 13. Foliensatz Wiebke Petersen Einführung CL 1 Formale Grammatik
MehrSoftware Paradigmen 2007
Software Paradigmen 2007 Software-Paradigmen Skriptum zur Lehrveranstaltung (SS 2007) PROF. DR. FRANZ WOTAWA Technische Universität Graz, Institut für Softwaretechnologie A-8010 Graz, Inffeldgasse 16b/2,
MehrCompiler: Parser. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München. Letzte Änderung:
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 17.05.2017 11:06 Inhaltsverzeichnis Parsing....................................... 2 Syntax........................................
MehrTyp-1 Sprachen. Die Beispielgrammatik für die Sprache. L = {a n b n c n n 1} hat die folgende Regelmenge:
Typ-1 Sprachen Die Beispielgrammatik für die Sprache hat die folgende Regelmenge: L = {a n b n c n n 1} P = { (S, asbc), (S, abc), (CB, BC), (ab, ab), (bb, bb), (bc, bc), (cc, cc)} die offensichtlich nichtverkürzend
MehrKontextfreie Sprachen
Kontextfreie Sprachen besitzen große Bedeutung im Compilerbau Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung durch
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Sommersemester 2017 20.04.2017 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Organisatorisches Literatur Motivation und Inhalt Kurzer
MehrTheoretische Informatik I
Theoretische Informatik I Einheit 2.4 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibungsformen für Sprachen Mathematische Mengennotation Prädikate beschreiben Eigenschaften
Mehr