Gegenstand der Vorlesung 1

Größe: px
Ab Seite anzeigen:

Download "Gegenstand der Vorlesung 1"

Transkript

1 Gegenstand der Vorlesung 1 I. Mittel zur Beschreibung/Spezifikation von Sprachen L; das sind Mengen von Zeichenreihen (Wörter) über einem Alphabet Σ. Bsp. Die Menge der (syntaktisch korrekten) Pascal-Programme bildet eine Sprache über dem ASCII-Zeichensatz. Slide 1 Drei Gruppen von Beschreibungsmittel: 1. Beschreibungsmittel, die auf das Erkennen von Wörtern in L abstellen: Endliche Automaten (deterministisch, nichtdeterministisch,...) Kellerautomaten (deterministisch, nichtdeterministisch) Typisch: Die Eingabe ist ein Wort w über Σ. Die Ausgabe ist JA, falls w L, und NEIN, falls w / L. Gegenstand der Vorlesung 2 2. Beschreibungsmittel, die auf das Erzeugen von Wörtern in einer Sprache abzielen: Grammatiken Slide 2 Bsp. Die Grammatik mit den Produktionen S asb ε erzeugt die Sprache {a n b n n N}. Anwendung: Beschreibung der Syntax von Programmiersprachen, Parsertechiken, Übersetzerbau, Beschreibungsmittel, die eine lineare, kompakte Aufschreibung von formalen Sprachen ermöglichen Reguläre Ausdrücke Bsp (0 + 1) beschreibt die Sprache der Binärdarstellungen der natürlichen Zahlen.

2 Gegenstand der Vorlesung 3 II. Beziehungen zwischen den genannten Beschreibungsmitteln und Verfahren, diese äquivalent ineinander zu überführen. III. Klassifikation von Sprachen (Chomsky-Hierarchie): Reguläre Sprachen Slide 3 Kontextfreie Sprachen Kontextsensitive Sprachen Chomsky-0-Sprachen Wir zeigen: Reguläre Sprachen Kontextfreie Sprachen = Endliche Automaten = Rechtslineare Grammatiken = Kellerautomaten Gegenstand der Vorlesung 4 IV. Nachweismethoden dafür, daß eine gegebene Sprache nicht regulär oder nicht kontextfrei ist. Pumpinglemma Slide 4 V. Abschlußeigenschaften von Sprachenklassen: Unter welchen Operationen (auf Sprachen) sind die obigen Sprachklassen abgeschlossen. Anwendung: Modulare Beschreibung und Zusammenbau/Design von (formalen) Sprachen VI. Minimierung von endlichen Automaten: Verfahren, einen gegebenen endlichen Automaten in einen dazu äquivalenten endlichen Automaten mit minimaler Zustandsmenge zu überführen.

3 Endliche Folgen Slide 5 Bsp. (2, 3, 2, 2, 1, 6) (4, 3, 0, 1) (3, 0, 5) (3, 3) (1) () (a, b, a) (A, F, S, 2, 0, 0, 2) Allgemein: (a 0, a 1,..., a n 1 ) oder (a 1, a 2,...,a n ) für ein n N und Elemente a i aus einer gegebenen Menge. Bem. Wiederholungen sind erlaubt, Reihenfolge ist wichtig! Spezialfall n=0: die leere Folge () Spezialfall n=1: die Einerfolge (a 0 ) Def. Für eine Menge X sei die Menge der endlichen Folgen über X wie folgt definiert: Seq(X) := {(a 0,..., a n 1 ) n N, a 0,..., a n 1 X} Bsp. Seq(N), Seq({0, 1}), Seq({1}), Seq({a,...,z, A,..., Z, 0,..., 9}) Alphabete Slide 6 Bsp. einfach : {a,...,z,a,...,z,0,...,9} {0, 1} Binäres Alphabet {1} Unäres Alphabet komplex : ASCII-Zeichensatz (128 Zeichen) {0, 1} 8 Menge der 256 Bytes {0, 1} 32 Menge der Maschinenwörter Def. Ein Alphabet ist eine endliche, nichtleere Menge. Bem. Keine Alphabete sind z.b. oder N. Symbole für Alphabete: Σ,, Γ, Σ 0, Σ 1,...

4 Standardalphabete Def. Standardalphabete der Größe b N Slide 7 {0, 1,..., b 1} das b-äre Alphabet (b 2) {1, 2,..., b} das b-adische Alphabet (b 1) Def. Die Elemente eines Alphabets heißen Buchstaben. Bsp. a b c A B 0 # (Eine Zahl ein Buchstabe!) Symbole für Buchstaben: a, b, c, d,..., a 0, a 1,... Wörter 1 Slide 8 Def. Ein Wort über Σ (synonym: Zeichenreihe, Zeichenkette, String) ist ein Element (a 0, a 1,...,a n 1 ) Seq(Σ). Bsp. (b,e,g,i,n) (+,1,.,0,E,2) (1,0,0,1,1,0,1) (A,B,r,a,C,a,d,a,b,r,a) () (e,n,d,.) Konvention: Klammern und Kommas weglassen, wo Verwechslung ausgeschlossen ist, d.h. schreibe a 0 a 1...a n 1 für (a 0, a 1,..., a n 1 ). Symbole für Wörter: w, u, v, x, y, z, w 0, w 1,... Def. Die Menge der Wörter über Σ, in Zeichen Σ, ist definiert durch Σ := {a 0 a 1...a n 1 n N, a 0, a 1,..., a n 1 Σ}. Ein spezielles Wort ist ε := (), das leere Wort.!! Nicht verwechseln mit dem ASCII-Zeichen space (Nummer 32).

5 Wörter 2 Bsp. {1} = {ε, 1, 11, 111, 1111, 11111,...} {0, 1} = {ε, 0, 1, 00, 01, 10, 11, 000, 001, 010,...} Slide 9 Def. Die Länge eines Wortes w=a 1... a n (bzw. w=a 0...a n 1 ) ist die Anzahl (n) der darin vorkommenden Buchstaben, in Zeichen w = n. Bsp. ababc = 5, 0 = 1, ε = 0. (0000,0010) = 2 für Σ = {0,1} 4. Bem. Σ 0 = {ε} Σ 1 = {(a) a Σ}. Identifiziere (a) (Wort) mit a (Buchstabe). Also können wir Σ Σ schreiben. Def. Die Menge der nichtleeren Wörter über Σ, in Zeichen Σ +, ist gegeben durch Σ + := Σ \{ε}. Wörter 3 Größere Wörter: Slide 10 Ein Pascal-Programm. Alphabet: Menge der druckbaren ASCII-Zeichen plus newline-zeichen und Tabulator-Zeichen. Ein Textfile. Alphabet: Menge der druckbaren ASCII-Zeichen plus newline-, Tabulator- und eof-zeichen. Ein ASCII-File. Alphabet: Alle ASCII-Zeichen inklusive der Steuerzeichen. Der Inhalt des Speichers eines Rechners mit 128 kb Hauptspeicher, gruppiert in Wörter à 32 Bit.

6 Konkatenation von Wörtern Slide 11 Bsp = abra cadabra = abracadabra (010,10) (11,01) = (010,10,11,01) Def. Die Konkatenation von Wörtern über Σ ist eine zweistellige Operation auf Σ (Abbildung : Σ Σ Σ ) definiert durch: Alternative Notation für u v: Bem. u v = u + v a 1... a n b 1...b m := a 1...a n b 1... b m u v oder uv Bem. (Σ, ) ist ein Monoid mit neutralem Element ε, d.h. Assoziativität: (u v) w = u (v w) Neutrales Element: ε u = u ε = u. Fazit: Bei mehrfacher oder geschachtelter Konkatenation kann man Klammern weglassen, wo eine Verwechslung ausgeschlossen ist. Anzahl Vorkommen und Wiederholungen Slide 12 Def. Für ein Wort w Σ und einen Buchstaben a Σ bezeichne w a die Anzahl der Vorkommen von a in w. Bsp. abcabdabb a = 3 und abcabdabb b = 4. Bem. u v a = u a + v a Bsp. Statt abacabacabac = abac abac abac schreibe kurz (abac) 3. Def. Für w Σ und i N sei das i-fache von w induktiv definiert: (i) w 0 := ε (ii) w i+1 := w w i Anschaulich: w i = w } w {{ w }. i mal Bsp = , 00(01) 2 0 = , (0001) 2 0 =

7 Teilwort, Präfix, Suffix Slide 13 Bsp. In abracadabra kommt racada als (zusammenhängender) Teil vor. if 1+1=3 then a:=false endif beginnt mit if. if 1+1=3 then a:=false endif endet mit endif. Def. Seien w, u Wörter über Σ. u heißt Teilwort von w : w = v 1 uv 2 für gewisse v 1, v 2 Σ. Bem. v 1 und/oder v 2 können ε sein! u heißt Präfix von w, wenn gilt w = uv für ein Wort v Σ. u heißt Suffix von w, wenn w = vu für ein Wort v Σ. Bem. Das leere Wort ε ist Teilwort, Suffix und Präfix aller Wörter. Sprachen Def. Eine (formale) Sprache ist eine Teilmenge L Σ, für ein Alphabet Σ. In diesem Fall heißt L eine Sprache über Σ. Symbole für Sprachen: L, L 0, L 1,... Slide 14 Bsp. 1) Die Menge der syntaktisch korrekten Pascal-Programme bildet eine Sprache über dem ASCII-Alphabet. 2) Die Menge der Dezimaldarstellungen von Primzahlen bildet eine Sprache über {0,1,2,3,4,5,6,7,8,9}, nämlich: L = {2,3,5,7,11,13,17,19,23,29,31,37,41,...} Bem. Die Menge aller Primzahlen selbst ist keine Sprache!

8 Das Wortproblem für eine Sprache Slide 15 Def. Das Wortproblem für L Σ besteht in der Aufgabe, auf Eingabe w Σ zu entscheiden, ob w L (Ausgabe JA) oder w / L (Ausgabe NEIN) gilt. Bem. Alle Entscheidungsprobleme der Informatik (und viele der Mathematik) können via Kodierung als Wortprobleme für passende Sprachen formuliert werden. Thema der Vorlesung: Beschreibung/Spezifikation von Sprachen ( Grammatiken, reguläre Ausdrücke ) Mechanismen für Entscheidung Ist x L? ( Automaten, Maschinen ) Klassifikation von Sprachen Beispiele für Sprachen 1 Die leere Sprache:, auch L. Die ε-sprache: {ε}, auch L ε. Σ ist eine Sprache, da Σ Σ. Slide 16 Σ ist eine Sprache. Für jeden Buchstaben a Σ ist {a} eine Sprache. Für jeden Buchstaben a Σ ist eine Sprache über Σ. {a n n N} = {ε, a, aa, aaa,...} Bem. Wenn L Σ eine Sprache über Σ ist, dann ist L auch eine Sprache über jedem mit Σ.

9 Beispiele für Sprachen 2 Slide 17 {0, 1} + := {0, 1, 00, 01, 10, 11, 000, 001,...} (Bit-Strings ε) {0, 1} 8 {0, 1} 32 {0} {1w w {0, 1} } {1} = {ε, 1, 11, 111,...} (8-Bit-Wörter: Bytes) (32-Bit-Wörter: Maschinenwörter) (Binärdarstellungen aller n N) (Unärdarstellungen aller n N) L gerade = {0, 10, 100, 110, 1000, 1010, 1100, 1110, 10000,...} L prim = {10, 11, 101, 111, 1011, 1101, 10001, 10011,...} L PZ Zwilling ={bin(p)#bin(p+2) p, p+2 sind Primzahlen} ={11#101, 101#111, 1011#1101, 10001#10011,...} Bem. Es ist ein offenes Problem, ob diese Sprache endlich oder unendlich ist. Konkatenation auf Sprachen Def. Für Sprachen L 1 Σ und L 2 heißt L 1 L 2 := {w 1 w 2 w 1 L 1, w 2 L 2 } (Σ ) Slide 18 die Konkatenation von L 1 mit L 2. Alternativ: L 1 L 2 oder L 1 L 2 Bsp. {0} {1} = {0 i 1 j i, j N} {1}{0, 1} = {bin(n) n 1} Bem. Die Konkatenation von Sprachen ist assoziativ, hat L ε = {ε} als neutrales Element und L = als Annihilator, das heißt: (L 1 L 2 ) L 3 = L 1 (L 2 L 3 ) L {ε} = {ε} L = L L L = L L = L

10 Sprachpotenzen und Kleene-Abschluß Def. Für eine Sprache L Σ und i N bezeichne L i := {w 1... w i w 1,...,w i L} Slide 19 die i-te Potenz von L, wobei L 0 := {ε} gesetzt wird.!! Im allgemeinen gilt L i {w i w L}. Bsp. {00, 01} 2 = {0000, 0001, 0100, 0101} {0000, 0101} Def. Der Kleene-Abschluß von L, in Zeichen L, ist die Sprache L := {L i i N} = {ε} L L 2 L 3 = {w 1...w i i N, w 1,... w i L}. Ferner sei L + := L L 2 L 3 = L \{ε}. Weitere Operationen auf Sprachen Vereinigung L 1 L 2 Durchschnitt L 1 L 2 Komplement L = Σ \L Slide 20 Sprechweise: Klasse aller Sprachen Klasse aller unendlichen Sprachen Klasse aller Sprachen über einem zweielementigen Alphabet Klasse der regulären Sprachen (Diese Gesamtheiten sind genaugenommen keine Mengen.)

11 Die b-äre Zahldarstellung 1 Def. Sei b N mit b 2 und Σ := {0,..., b 1} das b-äre Alphabet. Der b-äre Wert eines Wortes a l 1... a 0 Σ ist wie folgt definiert: (a l 1...a 0 ) b := i<l a i b i N Slide 21 Eine b-äre Darstellung von n ist ein Wort a l 1... a 0 Σ mit n = (a l 1...a 0 ) b. Ist a l 1 0 oder a l 1... a 0 = 0, so heißt a l 1...a 0 die b-äre Darstellung von n. Spezialfälle: b = 2: Binärdarstellung b = 8: Oktaldarstellung b = 10: Dezimaldarstellung b=16: Hexadezimaldarstellung (10, 11,..., 15 = A,B,...,F) Satz (b-äre Darstellung). Jede natürliche Zahl n > 0 besitzt genau eine b-äre Darstellung a l 1... a 0 Σ mit a l 1 0. Die b-äre Zahldarstellung 2 Beweis. Wir zeigen dazu (Tafelanschrift!) den folgenden Hilfssatz: (a) Für l j 0, w := a l 1... a j+1 Σ und a Σ\{b 1} gilt: (wa(b 1) j ) b + 1 = (w(a+1)0 j ) b Slide 22 (b) Für l 0 gilt: ((b 1) l ) b + 1 = (10 l ) b (c) Für l 0 und a l 1... a 0 Σ gilt: (10 l ) b > (a l 1... a 0 ) b Def. Für n > 0 bezeichne bin(n) die Binärdarstellung von n, d.h. den eindeutig bestimmten Binärstring 1w {0, 1} mit Binärwert n=(1w) 2. Für n=0 setze bin(0) := 0. Def. Bezeichne n := bin(n) die binäre Länge von n. Bem. n = max{1, log(n+1) }

12 Die b-äre Zahldarstellung 3 Bem. n = log(n+1) = log n +1 für n > 0 1 Schicht Schicht 2 Slide Schicht Schicht bin(n) = 1a l 2...a 0 mit Kantenbeschriftungen a l 2,...,a 0 auf dem Weg von 1 nach n. Die Knotenbeschriftung folgt bin(n) bin(n+1) gemäß HS. (a), (b). Nachtrag: Beweis des Hilfssatzes 1 Slide 24 (Gezeigt: Aus HS folgt Satz) Gelten die Voraussetzungen wie in HS. Zu (a) Ergibt sich wie folgt aus dem Schneeballprinzip: ( ) x i = xj 1 x 1 für jedes x R\{1} und j N. i<j l 1 (wa(b 1) j ) b + 1 = ( a i b i ) + a b j + ((b 1) b i ) + 1 i=j+1 } {{ } =:B ( ) = B + a b j + (b 1) bj 1 b = B + (a + 1) b j i<j = (w(a + 1)0 j ) b Zu (b) Folgt aus (a) für w:=ε (verschwindet) und a:=0, denn: ((b 1) l ) b + 1 = (0(b 1) l ) b + 1 (a) = (10 l ) b

13 Nachtrag: Beweis des Hilfssatzes 2 Zu (c) Folgt ebenfalls aus ( ), denn: (a l 1... a 0 ) b = i<l a i b i Slide 25 i<l(b 1) b i ( ) = (b 1) bl 1 b 1 < b l = (10 l ) b

Automaten und Formale Sprachen 1. Vorlesung

Automaten und Formale Sprachen 1. Vorlesung Automaten und Formale Sprachen 1. Vorlesung Martin Dietzfelbinger 11. Oktober 2005 Hörer: Informatikstudierende im 3. Semester, Mathematikstudierende bei Bedarf Material: Skript, Folienkopien, Übungsblätter

Mehr

Grundlagen der theoretischen Informatik

Grundlagen der theoretischen Informatik Grundlagen der theoretischen Informatik Kurt Sieber Fakultät IV, Department ETI Universität Siegen SS 2013 Vorlesung vom 09.04.2013 Inhalt der Vorlesung Teil I: Automaten und formale Sprachen (Kurt Sieber)

Mehr

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung?

Ist eine algorithmische Problemstellung lösbar und wenn ja, mit welchen Mitteln? was ist eine algorithmische Problemstellung? Überblick 1. reguläre Sprachen endliche Automaten (deterministisch vs. nichtdeterministisch) Nichtregularität 2. Berechenbarkeit Registermaschinen/Turingmaschinen Churchsche These Unentscheidbarkeit 3.

Mehr

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2011/12 WS 11/12 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen 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

Mehr

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Formale Methoden 2 Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Teil 3: Kodierung 1 Motivation 2 Exkurs Grundlagen formaler Sprachen 3 Grundlagen 4 Beispielkodierungen FM2 (WS 2014/15,

Mehr

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

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann. Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden

Mehr

(Prüfungs-)Aufgaben zu formale Sprachen

(Prüfungs-)Aufgaben zu formale Sprachen (Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),

Mehr

Informatik III - WS07/08

Informatik III - WS07/08 Informatik III - WS07/08 Kapitel 5 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 5 : Grammatiken und die Chomsky-Hierarchie Informatik III - WS07/08 Kapitel 5 2 Definition

Mehr

Alphabet, formale Sprache

Alphabet, 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

Mehr

Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen!

Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit. Sommersemester Herzlich willkommen! Theoretische Informatik 2 bzw. Formale Sprachen und Berechenbarkeit Sommersemester 2012 Prof. Dr. Nicole Schweikardt AG Theorie komplexer Systeme Goethe-Universität Frankfurt am Main Herzlich willkommen!

Mehr

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer, Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen

Mehr

Reguläre Ausdrücke. Michael Jäger. 4. April 2017

Reguläre Ausdrücke. Michael Jäger. 4. April 2017 Reguläre Ausdrücke Michael Jäger 4. April 2017 Zeichenketten und Sprachen Ein Alphabet ist eine endliche Menge von Symbolen. Beispiele: 1. Σ 1 = {0, 1} 2. Σ 2 = {a, b, c, d, e, f, g, h, i, j, k, l, m,

Mehr

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2 Lösungsblatt 3. April 2 Einführung in die Theoretische Informatik

Mehr

4. Übung zur Vorlesung Informatik III am

4. Übung zur Vorlesung Informatik III am 1 4. Übung zur Vorlesung Informatik III am 16.11.2007 Wiederholung Konkatenation 2 Definition Konkatenation Eine endliche Folge w von Symbolen aus Σ heißt Wort. Die Menge aller Wörter über Σ heißt Σ. Sei

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2015 29.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Motivation 2. Terminologie 3. Endliche Automaten und reguläre

Mehr

Herzlich willkommen!!!

Herzlich willkommen!!! Theoretische Informatik 2 Sommersemester 2013 Prof. Dr. Georg Schnitger AG Theoretische Informatik Johann Wolfgang Goethe-Universität Frankfurt am Main Herzlich willkommen!!! 1 / 19 Kapitel 1: Einführung

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Grundlagen 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:

Mehr

Aufgabensammlung Theo Inf I 1

Aufgabensammlung Theo Inf I 1 Aufgabensammlung Theo Inf I 1 1 Grundlagen Aufgabe 1.1 Bestimmen Sie w und w b für w = abacbba. Aufgabe 1.2 Bestimmen Sie alle a) Teilworte der Länge 3 b) Präfixe c) Suffixe des Wortes w = abacbba. Aufgabe

Mehr

Kontextfreie Sprachen

Kontextfreie Sprachen Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung

Mehr

Reguläre Sprachen und endliche Automaten

Reguläre Sprachen und endliche Automaten Reguläre Sprachen und endliche Automaten 1 Motivation: Syntaxüberprüfung Definition: Fließkommazahlen in Java A floating-point literal has the following parts: a whole-number part, a decimal point (represented

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2015 16.04.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Organizatorisches Literatur Motivation und Inhalt Kurzer

Mehr

1 Formale Sprachen, reguläre und kontextfreie Grammatiken

1 Formale Sprachen, reguläre und kontextfreie Grammatiken Praktische Informatik 1, WS 2001/02, reguläre Ausdrücke und kontextfreie Grammatiken 1 1 Formale Sprachen, reguläre und kontextfreie Grammatiken Ein Alphabet A ist eine endliche Menge von Zeichen. Die

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 139 Unentscheidbarkeit Überblick Zunächst einmal definieren wir formal

Mehr

Automatentheorie und Formale Sprachen

Automatentheorie und Formale Sprachen Automatentheorie und Formale Sprachen Mengen, Alphabete, Wörter, formale Sprachen Dozentin: Wiebke Petersen 29.4.2009 Wiebke Petersen Automatentheorie und formale Sprachen SoSe 09 Mengen Definition 1.

Mehr

Übungsaufgaben zu Formalen Sprachen und Automaten

Übungsaufgaben zu Formalen Sprachen und Automaten Universität Freiburg PD Dr. A. Jakoby Sommer 27 Übungen zum Repetitorium Informatik III Übungsaufgaben zu Formalen Sprachen und Automaten. Untersuchen Sie das folgende Spiel: A B x x 2 x 3 C D Eine Murmel

Mehr

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

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.

Mehr

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit. Zugangsnummer: 9201

Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit.  Zugangsnummer: 9201 Informatik IV Theoretische Informatik: Formale Sprachen und Automaten, Berechenbarkeit und NP-Vollständigkeit Wiederholung Kapitel 3 und 4 http://pingo.upb.de Zugangsnummer: 9201 Dozent: Jun.-Prof. Dr.

Mehr

2.1 Allgemeines. Was ist eine Sprache? Beispiele:

2.1 Allgemeines. Was ist eine Sprache? Beispiele: Was ist eine Sprache? Beispiele: (a) Deutsch, Japanisch, Latein, Esperanto,...: Natürliche Sprachen (b) Pascal, C, Java, Aussagenlogik,...: Formale Sprachen Wie beschreibt man eine Sprache? (i) Syntax

Mehr

Kontextfreie Sprachen

Kontextfreie 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

Mehr

Theoretische Informatik Testvorbereitung Moritz Resl

Theoretische Informatik Testvorbereitung Moritz Resl Theoretische Informatik Testvorbereitung Moritz Resl Bestandteile einer Programmiersprache: a) Syntax (Form): durch kontextfreie Grammatik beschrieben b) Semantik (Bedeutung) 1.) Kontextfreie Sprachen

Mehr

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

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

Mehr

Theoretische Informatik. Alphabete, Worte, Sprachen

Theoretische Informatik. Alphabete, Worte, Sprachen Theoretische Informatik Alphabete, Worte, Sprachen Alphabete, Worte, Sprachen 1. Alphabete und Worte Definitionen, Beispiele Operationen mit Worten Induktionsbeweise 2. Sprachen Definition und Beispiele

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie WS 11/12 155 Überblick Zunächst einmal definieren wir formal den Begriff

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik 1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 2 Kontextfreie Grammatiken Definition: Eine Grammatik G

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011 Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2011 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink Automaten und Formale Sprachen 1 Wir beschäftigen uns ab

Mehr

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

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 10. Januar 2018 Abgabe 23. Januar 2018, 11:00 Uhr (im

Mehr

Klausur zur Vorlesung Einführung in die Theoretische Informatik

Klausur zur Vorlesung Einführung in die Theoretische Informatik Universität Heidelberg 19. Juli 2012 Institut für Informatik Prof. Dr. Klaus Ambos-Spies Dipl.-Math. Thorsten Kräling Klausur zur Vorlesung Einführung in die Theoretische Informatik LÖSUNGEN Es können

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische

Mehr

Deterministischer Kellerautomat (DPDA)

Deterministischer 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,δ,

Mehr

1. Alphabete, Wörter, Sprachen

1. Alphabete, Wörter, Sprachen 1. Alphabete, Wörter, Sprachen Im Rahmen der Vorlesung: Und damit: und DATEN = WÖRTER (ENTSCHEIDUNGS)PROBLEME ˆ= WORTMENGEN = SPRACHEN FUNKTIONALE (BERECHNUNGS)PROBLEME ˆ= WORTFUNKTIONEN Mit Wörtern lassen

Mehr

Adventure-Problem. Vorlesung Automaten und Formale Sprachen Sommersemester Adventure-Problem

Adventure-Problem. Vorlesung Automaten und Formale Sprachen Sommersemester Adventure-Problem -Problem Vorlesung Automaten und Formale Sprachen Sommersemester 2018 Prof. Barbara König Übungsleitung: Christina Mika-Michalski Zum Aufwärmen: wir betrachten das sogenannte -Problem, bei dem ein Abenteurer/eine

Mehr

Automaten und Formale Sprachen SoSe 2013 in Trier

Automaten und Formale Sprachen SoSe 2013 in Trier Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche

Mehr

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Das Alphabet Σ sei eine endliche

Mehr

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 15 + 16 vom 17.12.2012 und 20.12.2012 Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Mehr

Diskrete Mathematik. Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl

Diskrete Mathematik. Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl OLC mputational gic Diskrete Mathematik Arne Dür Kurt Girstmair Simon Legner Georg Moser Harald Zankl Fakultät für Mathematik, Informatik und Physik @ UIBK Sommersemester 2011 GM (MIP) Diskrete Mathematik

Mehr

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

Kapitel: 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

Mehr

Formale Sprachen und endliche Automaten

Formale Sprachen und endliche Automaten Formale Sprachen und endliche Automaten Formale Sprachen Definition: 1 (Alphabet) Ein Alphabet Σ ist eine endliche, nichtleere Menge von Zeichen oder Symbolen. Ein Wort über dem Alphabet Σ ist eine endliche

Mehr

Kapitel 2: Formale Sprachen Gliederung

Kapitel 2: Formale Sprachen Gliederung Gliederung. Einleitung und Grundbegriffe. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie 2.. Chomsky-Grammatiken 2.2. Reguläre Sprachen Reguläre Grammatiken, ND-Automaten

Mehr

Kurz-Skript zur Theoretischen Informatik I

Kurz-Skript zur Theoretischen Informatik I Kurz-Skript zur Theoretischen Informatik I Inhaltsverzeichnis 1 Grundlagen 2 2 Reguläre Ausdrücke 4 3 Endliche Automaten 5 3.1 Vollständige endliche Automaten................................... 6 3.2 ε

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Sommersemester 2016 20.04.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt 1. Terminologie 2. Endliche Automaten und reguläre Sprachen

Mehr

Definition 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) 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

Daten und Algorithmen

Daten und Algorithmen LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Kapitel 3 Daten und Algorithmen Skript zur Vorlesung Einführung in die Programmierung g im Wintersemester 2012/13 Ludwig-Maximilians-Universität

Mehr

Chomsky-Grammatiken 16. Chomsky-Grammatiken

Chomsky-Grammatiken 16. Chomsky-Grammatiken Chomsky-Grammatiken 16 Chomsky-Grammatiken Ursprünglich von Chomsky in den 1950er Jahren eingeführt zur Beschreibung natürlicher Sprachen. Enge Verwandschaft zu Automaten Grundlage wichtiger Softwarekomponenten

Mehr

Seien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M 2. p 1

Seien M 1,M 2 NFAs f. die Sprachen L 1 und L 2. Konstruktion eines NFAs für L 1 L 2 : Erzeuge Kopien von M 1 und M 2. p 1 Beispiel Produktautomat p Vereinfachte Konstruktion f. NFAs Seien M,M 2 NFAs f. die Sprachen L und L 2. Konstruktion eines NFAs für L L 2 : Erzeuge Kopien von M und M 2. p q q p 2 Erzeuge neuen Startzustand

Mehr

Grundbegriffe der Informatik Tutorium 2

Grundbegriffe der Informatik Tutorium 2 Grundbegriffe der Informatik Tutorium 2 Tutorium Nr. 16 Philipp Oppermann 9. November 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

8. Turingmaschinen und kontextsensitive Sprachen

8. Turingmaschinen und kontextsensitive Sprachen 8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten

Mehr

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ.

Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (ii) ε ist ein regulärer Ausdruck über Σ. Reguläre Ausdrücke Definition (Reguläre Ausdrücke) Sei Σ ein Alphabet, dann gilt: (i) ist ein regulärer Ausdruck über Σ. (ii) ε ist ein regulärer Ausdruck über Σ. (iii) Für jedes a Σ ist a ein regulärer

Mehr

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1

Zusammenfassung. Beispiel. 1 Wir betrachten die folgende Signatur F = {,, +, 0, 1} sodass. 3 Wir betrachten die Identitäten E. 4 Dann gilt E 1 + x = 1 Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele eorg Moser Michael Schaper Institut für Informatik @ UIBK Wintersemester 2016

Mehr

2 Alphabete, Wörter, Sprachen und die Darstellung von Problemen

2 Alphabete, Wörter, Sprachen und die Darstellung von Problemen Das Tiefste, das wir erfahren können, sind die Offenbarungen der Mystik. Sie sind das fundamentalste Gefühl, das an der Wiege aller wahren Kunst und Wissenschaft steht. Wer es nicht kennt, kann sich nicht

Mehr

Grundlagen der theoretischen Informatik

Grundlagen der theoretischen Informatik Grundlagen der theoretischen Informatik Kurt Sieber Fakultät IV, Department ETI Universität Siegen SS 2013 Vorlesung vom 04.06.2013 An den Transitionen sieht man zunächst, dass nur die folgenden Zustandsübergänge

Mehr

11.1 Kontextsensitive und allgemeine Grammatiken

11.1 Kontextsensitive und allgemeine Grammatiken Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert

Mehr

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

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen: Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter

Mehr

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

TU Berlin Nachklausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2012) Berlin, 05. Oktober 2012 Name:... Matr.-Nr.:... TU Berlin Nachklausur TheGI 2 Automaten und Komplexität (Niedermeier/Hartung/Nichterlein, Sommersemester 2012) 1 2 3 4 5 6 7 Σ Bearbeitungszeit: 60 min.

Mehr

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution Wiederholung Beschreibungsformen für reguläre Sprachen: DFAs NFAs Reguläre Ausdrücke:, {ε}, {a}, und deren Verknüpfung mit + (Vereinigung), (Konkatenation) und * (kleenescher Abschluss) Abschluss gegen

Mehr

Satz (Abschluß unter der Stern-Operation)

Satz (Abschluß unter der Stern-Operation) Satz (Abschluß unter der Stern-Operation) Wenn L eine reguläre Sprache ist, dann ist auch L regulär. Beweis: Es gibt einen NFA M = (Z, Σ, S, δ, S, E) mit L(M) = L. Wir bauen aus diesem NFA nun wie folgt

Mehr

Was bisher geschah: Formale Sprachen

Was 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)

Mehr

q 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

q 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

Mehr

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften Endlichkeitstest Eingabe: DFA/NFA M. Frage: Ist die von M akzeptierte Sprache endlich? Nahe liegende Beobachtung: In einem DFA/NFA, der eine unendliche Sprache akzeptiert, muss es einen Kreis geben, der

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 1. Automaten und Sprachen 1.1 Endlicher Automat Einen endlichen Automaten stellen wir uns als Black Box vor, die sich aufgrund einer Folge von

Mehr

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN

Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 12 LÖSUNGEN Universität Heidelberg / Institut für Informatik 7. Juli 24 Prof. Dr. Klaus Ambos-Spies Nadine Losert Übungen zur Vorlesung Einführung in die Theoretische Informatik, Blatt 2 LÖSUNGEN Aufgabe Verwenden

Mehr

Herzlich willkommen!!!

Herzlich willkommen!!! Theoretische Informatik 2 Sommersemester 2015 Prof. Dr. Georg Schnitger AG Theoretische Informatik Goethe-Universität Frankfurt am Main Herzlich willkommen!!! 1 / 19 Kapitel 1: Einführung Einführung 2

Mehr

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale 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

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)

Mehr

Abschnitt 2: Daten und Algorithmen

Abschnitt 2: Daten und Algorithmen Abschnitt 2: Daten und Algorithmen 2. Daten und Algorithmen 2.1 Zeichenreihen 2.2 Datendarstellung durch Zeichenreihen 2.3 Syntaxdefinitionen 2.4 Algorithmen 2 Daten und Algorithmen Einf. Progr. (WS 08/09)

Mehr

1.5 Turing-Berechenbarkeit

1.5 Turing-Berechenbarkeit A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Dr.-Ing. Sven Hellbach S. Hellbach Grundlagen der Informatik II Abbildungen entnommen aus: Dirk W. Hoffmann: Theoretische Informatik; Hanser Verlag 2011, ISBN: 978-3-446-42854-6

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 17. DIE CHOMSKY-HIERARCHIE Theoretische Informatik (SoSe 2011) 17. Die Chomsky-Hierarchie 1 / 15 Einleitung Die

Mehr

Abschnitt 4: Daten und Algorithmen

Abschnitt 4: Daten und Algorithmen Abschnitt 4: Daten und Algorithmen 4. Daten und Algorithmen 4.1 4.2 Syntaxdefinitionen 4.3 Eigenschaften von Algorithmen 4.4 Paradigmen der Algorithmenentwicklung Peer Kröger (LMU München) Einführung in

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

Kapitel IV Formale Sprachen und Grammatiken

Kapitel 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

Mehr

Theoretische Informatik Mitschrift

Theoretische Informatik Mitschrift Theoretische Informatik Mitschrift 2. Grammatiken und die Chomsky-Hierarchie Beispiel: Syntaxdefinition in BNF :=

Mehr

liefern eine nicht maschinenbasierte Charakterisierung der regulären

liefern eine nicht maschinenbasierte Charakterisierung der regulären Reguläre Ausdrücke 1 Ziel: L=L M für NFA M L=L(r) für einen regulären Ausdruck r Reguläre Ausdrücke über einem Alphabet Σ Slide 1 liefern eine nicht maschinenbasierte Charakterisierung der regulären Sprachen

Mehr

Theoretische Informatik I (Grundzüge der Informatik I)

Theoretische Informatik I (Grundzüge der Informatik I) Theoretische Informatik I (Grundzüge der Informatik I) Literatur: Buch zur Vorlesung: Uwe Schöning, Theoretische Informatik - kurzgefasst. Spektrum Akademischer Verlag, Heidelberg/Berlin, 4. Auflage, 2001.

Mehr

Formale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5.

Formale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5. Formale Sprachen Spezialgebiet für Komplexe Systeme Yimin Ge 5ahdvn Inhaltsverzeichnis 1 Grundlagen 1 2 Formale Grammatien 4 Endliche Automaten 5 4 Reguläre Sprachen 9 5 Anwendungen bei Abzählproblemen

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 - 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 - 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:

Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet

Mehr

16. Die Chomsky-Hierarchie

16. Die Chomsky-Hierarchie 16. Die Chomsky-Hierarchie Die Chomsky-Sprachen sind gerade die rekursiv aufzählbaren Sprachen: CH = RA Da es nicht rekursive (d.h. unentscheidbare) r.a. Sprachen gibt, ist das Wortproblem für Chomsky-Grammatiken,

Mehr

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung Gliederung 1. Berechenbarkeitstheorie 2. Grundlagen 3. Grundlegende Ergebnisse aus der Komplexitätstheorie 4. Die Komplexitätsklassen P und NP 5. Die Komplexitätsklassen RP und BPP 3.1. Ressourcenkompression

Mehr

1.5 Turing-Berechenbarkeit

1.5 Turing-Berechenbarkeit A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine

Mehr

Theorie 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. 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

Mehr

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

Lösungsvorschläge und Erläuterungen Klausur zur Vorlesung Grundbegriffe der Informatik 15. September 2016 Lösungsvorschläge und Erläuterungen Klausur zur Vorlesung Grundbegriffe der Informatik 15. September 2016 Klausurnummer Nachname: Vorname: Matr.-Nr.: Diese Klausur ist mein 1. Versuch 2. Versuch in GBI

Mehr

Die mathematische Seite

Die mathematische Seite Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion

Mehr

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

2. Gegeben sei folgender nichtdeterministischer endlicher Automat mit ɛ-übergängen: Probeklausur Automatentheorie & Formale Sprachen WiSe 2012/13, Wiebke Petersen Name: Matrikelnummer: Aufgabe A: Typ3-Sprachen 1. Konstruieren Sie einen endlichen Automaten, der die Sprache aller Wörter

Mehr

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto 26.09.2011 Fachbereich Elektrotechnik/Informatik Universität Kassel Klausur zur Vorlesung Theoretische Informatik: Berechenbarkeit und Formale Sprachen SS 2011 Name:................................

Mehr

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Pumping-Lemma für kontextfreie Sprachen, Abschlußeigenschaften kontextfreier Sprachen und die Komplexität natürlicher Sprachen Dozentin: Wiebke Petersen WS 2004/2005

Mehr

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie Gliederung der Vorlesung. Grundbegriffe. Formale Sprachen/Automatentheorie.. Grammatiken.2..3. Kontext-freie Sprachen 2. Berechnungstheorie 2.. Berechenbarkeitsmodelle 2.2. Die Churchsche These 2.3. Unentscheidbarkeit

Mehr