Einführung in die Theoretische Informatik
|
|
- Elly Morgenstern
- vor 5 Jahren
- Abrufe
Transkript
1 Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at
2 Zusammenfassung der letzten LVA Definition Eine Grammatik G ist ein Quadrupel G = (V, Σ, R, S), wobei 1 V eine endliche Menge von Variablen (oder Nichtterminale) 2 Σ ein Alphabet, die Terminale, V Σ = 3 R eine endliche Menge von Regeln 4 S V das Startsymbol von G Definition Eine formale Sprache L heißt beschränkt wenn beschränkte Grammatik G, L = L(G) rekursiv aufzählbar (vom Typ 0) wenn Grammatik G, L = L(G) Einführung in die Theoretische Informatik, Wintersemester 2018/19 1
3 Chomsky-Hierarchie L L 0 L 1 L 2 L 3 L(G 3 ) = {a n b n c n n 1} L(G 2 ) = Klammerausdrücke L(G 1 ) = {0, 1} + Einführung in die Theoretische Informatik, Wintersemester 2018/19 2
4 Inhalte der Lehrveranstaltung Einführung in die Logik Syntax & Semantik der Aussagenlogik, Formales Beweisen, Konjunktive und Disjunktive Normalformen Einführung in die Algebra Boolesche Algebra, Universelle Algebra, Logische Schaltkreise Einführung in die Theorie der Formalen Sprachen Grammatiken und Formale Sprachen, Reguläre Sprachen, Kontextfreie Sprachen Einführung in die Berechenbarkeitstheorie Algorithmisch unlösbare Probleme, Turing Maschinen, Registermaschinen Einführung in die Programmverifikation Prinzipien der Analyse von Programmen, Verifikation nach Hoare Einführung in die Theoretische Informatik, Wintersemester 2018/19 3
5 Inhalte der Lehrveranstaltung Einführung in die Logik Syntax & Semantik der Aussagenlogik, Formales Beweisen, Konjunktive und Disjunktive Normalformen Einführung in die Algebra Boolesche Algebra, Universelle Algebra, Logische Schaltkreise Einführung in die Theorie der Formalen Sprachen Grammatiken und Formale Sprachen, Reguläre Sprachen, Kontextfreie Sprachen Einführung in die Berechenbarkeitstheorie Algorithmisch unlösbare Probleme, Turing Maschinen, Registermaschinen Einführung in die Programmverifikation Prinzipien der Analyse von Programmen, Verifikation nach Hoare Einführung in die Theoretische Informatik, Wintersemester 2018/19 3
6 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
7 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Softwarebausteine eines Compilers, etwa in der lexikalischen Analyse: 1 lexikalische Scanner ( Lexer ) wird mit endlichen Automaten implementiert 2 Der lexikalische Scanner dient zur Aufteilung des Eingabetextes in logische Einheiten, wie Bezeichner oder Schlüsselwörter Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
8 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Softwarebausteine eines Compilers, etwa in der lexikalischen Analyse: 1 lexikalische Scanner ( Lexer ) wird mit endlichen Automaten implementiert 2 Der lexikalische Scanner dient zur Aufteilung des Eingabetextes in logische Einheiten, wie Bezeichner oder Schlüsselwörter Software zum Durchsuchen umfangreicher Texte Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
9 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Softwarebausteine eines Compilers, etwa in der lexikalischen Analyse: 1 lexikalische Scanner ( Lexer ) wird mit endlichen Automaten implementiert 2 Der lexikalische Scanner dient zur Aufteilung des Eingabetextes in logische Einheiten, wie Bezeichner oder Schlüsselwörter Software zum Durchsuchen umfangreicher Texte Software zur Verifizierung aller Arten von Systemen, die eine endliche Anzahl verschiedener Zustände besitzen Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
10 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Softwarebausteine eines Compilers, etwa in der lexikalischen Analyse: 1 lexikalische Scanner ( Lexer ) wird mit endlichen Automaten implementiert 2 Der lexikalische Scanner dient zur Aufteilung des Eingabetextes in logische Einheiten, wie Bezeichner oder Schlüsselwörter Software zum Durchsuchen umfangreicher Texte Software zur Verifizierung aller Arten von Systemen, die eine endliche Anzahl verschiedener Zustände besitzen Softwarebausteine eines Computerspiels: 1 Kontrolle von Spielfiguren kann mit Hilfe eines endlichen Automaten implementiert werden 2 erlaubt eine bessere Modularisierung des Codes Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
11 Anwendungen von regulären Sprachen Software zum Entwurf und Testen von digitalen Schaltkreisen (Mealy/Moore Automaten) Softwarebausteine eines Compilers, etwa in der lexikalischen Analyse: 1 lexikalische Scanner ( Lexer ) wird mit endlichen Automaten implementiert 2 Der lexikalische Scanner dient zur Aufteilung des Eingabetextes in logische Einheiten, wie Bezeichner oder Schlüsselwörter Software zum Durchsuchen umfangreicher Texte Software zur Verifizierung aller Arten von Systemen, die eine endliche Anzahl verschiedener Zustände besitzen Softwarebausteine eines Computerspiels: 1 Kontrolle von Spielfiguren kann mit Hilfe eines endlichen Automaten implementiert werden 2 erlaubt eine bessere Modularisierung des Codes Einführung in die Theoretische Informatik, Wintersemester 2018/19 4
12 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
13 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
14 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Der Kunde kann das Geld löschen Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
15 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Der Kunde kann das Geld löschen Das Geschäft kann dem Kunden Waren zusenden Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
16 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Der Kunde kann das Geld löschen Das Geschäft kann dem Kunden Waren zusenden Das Geschäft kann Geld einlösen Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
17 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Der Kunde kann das Geld löschen Das Geschäft kann dem Kunden Waren zusenden Das Geschäft kann Geld einlösen Die Bank kann Geld überweisen Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
18 Beispiel Wir untersuchen Protokolle, die den Gebrauch elektronischen Geldes ermöglichen; dabei handeln: der Kunde, die Bank und das Geschäft: Der Kunde kann zahlen Der Kunde kann das Geld löschen Das Geschäft kann dem Kunden Waren zusenden Das Geschäft kann Geld einlösen Die Bank kann Geld überweisen Wir treffen die folgenden Grundannahmen: Der Kunde ist unverantwortlich Das Geschäft ist verantwortlich, aber gutgläubig Die Bank ist strikt Einführung in die Theoretische Informatik, Wintersemester 2018/19 5
19 Beispiel (Fortsetzung) Start a Zahlen b Einlösen d Überw. f Liefern Liefern Liefern Geschäftsautomat G c Einlösen e Überw. g Einführung in die Theoretische Informatik, Wintersemester 2018/19 6
20 Beispiel (Fortsetzung) Start a Zahlen b Einlösen d Überw. f Liefern Liefern Liefern Geschäftsautomat G c Einlösen e Überw. g Zahlen Start Löschen Kundenautomat K Einführung in die Theoretische Informatik, Wintersemester 2018/19 6
21 Beispiel (Fortsetzung) Start a Zahlen b Einlösen d Überw. f Liefern Liefern Liefern Geschäftsautomat G c Einlösen e Überw. g Zahlen Start Start 1 Einlösen Überw. 3 4 Löschen Löschen Kundenautomat K 2 Bankautomat B Einführung in die Theoretische Informatik, Wintersemester 2018/19 6
22 Beispiel (Fortsetzung) Lö Lö, Z Lö, Z Lö, Z Start a Z b E d Ü f L L L Lö, Z c E e Ü g Lö, Z Lö, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 7
23 Beispiel (Fortsetzung) Lö Lö, Z Lö, Z Lö, Z Start a Lö, Z Z b c L E E d e L Ü Ü f g L Zahlen... Z Einlösen... E Löschen... Lö Liefern... L Überw.... Ü Lö, Z Lö, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 7
24 Beispiel (Fortsetzung) Lö Lö, Z Lö, Z Lö, Z Start a Lö, Z Z b c L E E d L e Ü Ü f L g Zahlen... Z Einlösen... E Löschen... Lö Liefern... L Überw.... Ü L, E, Lö Lö, Z Lö, Z Start Ü, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 7
25 Beispiel (Fortsetzung) Lö Lö, Z Lö, Z Lö, Z Start a Lö, Z Z b L c E E d L e Ü Ü f L g Zahlen... Z Einlösen... E Löschen... Lö Liefern... L Überw.... Ü L, E, Lö L, Z Lö, Z Lö, Z Start Start 1 E Ü 3 4 Ü, Z Lö E, L, Lö, Z E, L, Lö, Z 2 L, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 7
26 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
27 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
28 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
29 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Betrachte B und G: Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
30 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Betrachte B und G: in B gilt, dass aus Zustand 1 durch die Aktion Einlösen Zustand 3 wird, konzise: 1 Einlösen 3 Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
31 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Betrachte B und G: in B gilt, dass aus Zustand 1 durch die Aktion Einlösen Zustand 3 wird, konzise: 1 Einlösen 3 in G gilt, dass aus Zustand b mit Aktion Einlösen d wird Konzise: b Einlösen d Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
32 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Betrachte B und G: in B gilt, dass aus Zustand 1 durch die Aktion Einlösen Zustand 3 wird, konzise: 1 Einlösen 3 in G gilt, dass aus Zustand b mit Aktion Einlösen d wird Konzise: b Einlösen d also gilt in B G, dass aus Zustand (1, b) mit Aktion Einlösen Zustand (3, d) wird Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
33 Beispiel (Fortsetzung) Wir definieren den Produktautomaten B G aus B und G: 1 Die Zustände dieses Automaten sind: (i, x) wobei i {1, 2, 3, 4}, x {a, b, c, d, e, f, g} 2 Die Übergänge werden durch paralleles Ausführen von B und G definiert: Aktion wenn i i und x Aktion x dann (i, x) Aktion (i, x ) Betrachte B und G: in B gilt, dass aus Zustand 1 durch die Aktion Einlösen Zustand 3 wird, konzise: 1 Einlösen 3 in G gilt, dass aus Zustand b mit Aktion Einlösen d wird Konzise: b Einlösen d also gilt in B G, dass aus Zustand (1, b) mit Aktion Einlösen Zustand (3, d) wird, konzise: (1, b) Einlösen (3, d) Einführung in die Theoretische Informatik, Wintersemester 2018/19 8
34 Beispiel (Fortsetzung) Z Z Z Z Z Z Z L L L (1, a) (1, b) (1, c) (1, d) (1, e) (1, f) (1, g) Lö Lö Lö Lö Lö Lö Lö Z L L L (2, a) (2, b) (2, c) (2, d) (2, e) (2, f) (2, g) Z Z Z Z Z Z E E E E Lö, Z Lö, Z Lö, ZZ (3, a) Z (3, b) L (3, c) (3, d) L (3, e) (3, f) L (3, g) Ü Ü Lö Lö, Z Lö, Z Lö, Z E E (4, a) Z (4, b) L (4, c) (4, d) L (4, e) (4, f) L (4, g) Lö Lö, Z Lö, Z Lö, Z Lö, Z Lö, Z Lö, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 9
35 Beispiel (Fortsetzung) Z Z Z Z Z Z Z L L L (1, a) (1, b) (1, c) (1, d) (1, e) (1, f) (1, g) Lö Lö Lö Lö Lö Lö Lö Z L L L (2, a) (2, b) (2, c) (2, d) (2, e) (2, f) (2, g) Z Z Z Z Z Z E E E E Lö, Z Lö, Z Lö, ZZ (3, a) Z (3, b) L (3, c) (3, d) L (3, e) (3, f) L (3, g) Ü Ü Lö Lö, Z Lö, Z Lö, Z E E (4, a) Z (4, b) L (4, c) (4, d) L (4, e) (4, f) L (4, g) Lö Lö, Z Lö, Z Lö, Z Lö, Z Lö, Z Lö, Z Einführung in die Theoretische Informatik, Wintersemester 2018/19 9
36 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
37 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
38 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen 2 Σ eine endliche Menge von Eingabesymbole, (Σ wird auch Eingabealphabet genannt) Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
39 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen 2 Σ eine endliche Menge von Eingabesymbole, (Σ wird auch Eingabealphabet genannt) 3 δ : Q Σ Q die Übergangsfunktion Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
40 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen 2 Σ eine endliche Menge von Eingabesymbole, (Σ wird auch Eingabealphabet genannt) 3 δ : Q Σ Q die Übergangsfunktion 4 q 0 Q der Startzustand Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
41 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen 2 Σ eine endliche Menge von Eingabesymbole, (Σ wird auch Eingabealphabet genannt) 3 δ : Q Σ Q die Übergangsfunktion 4 q 0 Q der Startzustand 5 F Q eine endliche Menge von akzeptierenden Zuständen Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
42 Beispiel (Fortsetzung) Als Schlussfolgerung ergibt sich, dass das Protokoll nicht sicher ist: Der Automat B G kann in den Zustand (2, c) gelangen, in welchem die Waren geschickt wurden und trotzdem nie eine Überweisung an das Geschäft erfolgen wird Definition (Deterministischer endlicher Automat (kurz: DEA)) Ein DEA ist ein 5-Tupel A = (Q, Σ, δ, q 0, F) sodass 1 Q eine endliche Menge von Zuständen 2 Σ eine endliche Menge von Eingabesymbole, (Σ wird auch Eingabealphabet genannt) 3 δ : Q Σ Q die Übergangsfunktion 4 q 0 Q der Startzustand 5 F Q eine endliche Menge von akzeptierenden Zuständen Zu beachten: δ muss für alle möglichen Argumente definiert sein Einführung in die Theoretische Informatik, Wintersemester 2018/19 10
43 Zustandstabelle a 1 Σ a 2 Σ q 1 Q δ(q 1, a 1 ) δ(q 1, a 2 ) q 2 Q δ(q 2, a 1 ).. Einführung in die Theoretische Informatik, Wintersemester 2018/19 11
44 Zustandstabelle a 1 Σ a 2 Σ q 1 Q δ(q 1, a 1 ) δ(q 1, a 2 ) q 2 Q δ(q 2, a 1 ).. Zustandsgraph Sei A = (Q, Σ, δ, q 0, F) ein DEA, der Zustandsgraph ist definiert, sodass 1 die Ecken die Zustände sind, 2 für Zustände p, q Q sind die Kanten von p nach q alle Tripel (p, a, q) mit a Σ und δ(p, a) = q Einführung in die Theoretische Informatik, Wintersemester 2018/19 11
45 Zustandstabelle a 1 Σ a 2 Σ q 1 Q δ(q 1, a 1 ) δ(q 1, a 2 ) q 2 Q δ(q 2, a 1 ).. Zustandsgraph Sei A = (Q, Σ, δ, q 0, F) ein DEA, der Zustandsgraph ist definiert, sodass 1 die Ecken die Zustände sind, 2 für Zustände p, q Q sind die Kanten von p nach q alle Tripel Konvention (p, a, q) mit a Σ und δ(p, a) = q Zu jeder Kante (p, a, q) schreibt man die Eingabe a. Den Startzustand markiert man mit einem Pfeil; die akzeptierenden Zustände werden mit einem doppelten Kreis gekennzeichnet. Einführung in die Theoretische Informatik, Wintersemester 2018/19 11
46 Definition (erweiterte Übergangsfunktion) Sei δ eine Übergangsfunktion, wir definieren die erweiterte Übergangsfunktion δ : Q Σ Q induktiv: Einführung in die Theoretische Informatik, Wintersemester 2018/19 12
47 Definition (erweiterte Übergangsfunktion) Sei δ eine Übergangsfunktion, wir definieren die erweiterte Übergangsfunktion δ : Q Σ Q induktiv: δ(q, ɛ) := q Einführung in die Theoretische Informatik, Wintersemester 2018/19 12
48 Definition (erweiterte Übergangsfunktion) Sei δ eine Übergangsfunktion, wir definieren die erweiterte Übergangsfunktion δ : Q Σ Q induktiv: δ(q, ɛ) := q δ(q, xa) := δ( δ(q, x), a) x Σ, a Σ Einführung in die Theoretische Informatik, Wintersemester 2018/19 12
49 Definition (erweiterte Übergangsfunktion) Sei δ eine Übergangsfunktion, wir definieren die erweiterte Übergangsfunktion δ : Q Σ Q induktiv: δ(q, ɛ) := q δ(q, xa) := δ( δ(q, x), a) x Σ, a Σ Definition Sei A = (Q, Σ, δ, q 0, F) ein DEA; die Sprache L(A) von A: L(A) := {x Σ δ(q 0, x) F} Einführung in die Theoretische Informatik, Wintersemester 2018/19 12
50 Definition (erweiterte Übergangsfunktion) Sei δ eine Übergangsfunktion, wir definieren die erweiterte Übergangsfunktion δ : Q Σ Q induktiv: δ(q, ɛ) := q δ(q, xa) := δ( δ(q, x), a) x Σ, a Σ Definition Sei A = (Q, Σ, δ, q 0, F) ein DEA; die Sprache L(A) von A: L(A) := {x Σ δ(q 0, x) F} Satz Sei A ein DEA, dann ist L(A) regulär und umgekehrt existiert zu jeder regulären Sprache L ein DEA A, sodass L = L(A) Einführung in die Theoretische Informatik, Wintersemester 2018/19 12
51 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
52 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten L = {x01y x, y sind beliebige Zeichenketten aus 0en und 1en} Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
53 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten L = {x01y x, y sind beliebige Zeichenketten aus 0en und 1en} Wir machen die folgende Hilfsüberlegung: Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
54 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten L = {x01y x, y sind beliebige Zeichenketten aus 0en und 1en} Wir machen die folgende Hilfsüberlegung: q 0 A hat Sequenz 01 noch nicht gefunden A wechselt in Zustand q 1, sobald 0 gelesen wird Sonst verharrt A in Zustand q 0 Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
55 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten L = {x01y x, y sind beliebige Zeichenketten aus 0en und 1en} Wir machen die folgende Hilfsüberlegung: q 0 q 1 A hat Sequenz 01 noch nicht gefunden A wechselt in Zustand q 1, sobald 0 gelesen wird Sonst verharrt A in Zustand q 0 A hat Sequenz 0 gelesen A wechselt in Zustand q 2, sobald 1 gelesen wird Sonst verharrt A in Zustand q 1 Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
56 Beispiel Definiere DEA A, der alle aus 0en und 1en bestehenden Zeichenketten akzeptiert, die die Folge 01 enthalten L = {x01y x, y sind beliebige Zeichenketten aus 0en und 1en} Wir machen die folgende Hilfsüberlegung: q 0 q 1 q 2 A hat Sequenz 01 noch nicht gefunden A wechselt in Zustand q 1, sobald 0 gelesen wird Sonst verharrt A in Zustand q 0 A hat Sequenz 0 gelesen A wechselt in Zustand q 2, sobald 1 gelesen wird Sonst verharrt A in Zustand q 1 A hat Sequenz 01 gelesen A akzeptiert jede weitere Eingabe Einführung in die Theoretische Informatik, Wintersemester 2018/19 13
57 Beispiel (Fortsetzung) Nun kann der Automat leicht angegeben werden: 1 0 0, 1 q 0 0 q 1 1 q 2 Einführung in die Theoretische Informatik, Wintersemester 2018/19 14
58 Beispiel (Fortsetzung) Nun kann der Automat leicht angegeben werden: 1 0 0, 1 q 0 0 q 1 1 q 2 Gleichzeitig ist auch eine Darstellung durch die Zustandstabelle denkbar. 0 1 q 0 q 1 q 0 q 1 q 1 q 2 q 2 q 2 q 2 Einführung in die Theoretische Informatik, Wintersemester 2018/19 14
59 Abschlusseigenschaften von regulären Sprachen Satz Seien L, M reguläre Sprachen (über dem Alphabet Σ), dann gilt 1 Die Vereinigung L M ist regulär 2 Das Komplement L ist regulär 3 Der Schnitt L M ist regulär 4 Die Mengendifferenz L \ M ist regulär Einführung in die Theoretische Informatik, Wintersemester 2018/19 15
60 Abschlusseigenschaften von regulären Sprachen Satz Seien L, M reguläre Sprachen (über dem Alphabet Σ), dann gilt 1 Die Vereinigung L M ist regulär 2 Das Komplement L ist regulär 3 Der Schnitt L M ist regulär 4 Die Mengendifferenz L \ M ist regulär Beweis. Der (nicht schwierige) Beweis wird in Diskrete Mathematik nachgeholt. Einführung in die Theoretische Informatik, Wintersemester 2018/19 15
61 Beispiel Endlicher Automat Beispiel Konstruieren Sie einen DEA A, der die Sprache L über dem Alphabet {a, b} akzeptiert, wobei L wie folgt definiert ist: L = {x x enthält eine gerade Anzahl von as} und eine ungerade Anzahl von bs Einführung in die Theoretische Informatik, Wintersemester 2018/19 16
62 Beispiel Endlicher Automat Beispiel Konstruieren Sie einen DEA A, der die Sprache L über dem Alphabet {a, b} akzeptiert, wobei L wie folgt definiert ist: L = {x x enthält eine gerade Anzahl von as} und eine ungerade Anzahl von bs Antwort Tafel Einführung in die Theoretische Informatik, Wintersemester 2018/19 16
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
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
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Maximilian Haslbeck Fabian Mitterwallner Georg Moser David Obwaller cbr.uibk.ac.at Zusammenfassung der letzten LVA Definition Eine Registermaschine (RM) R ist
MehrDefinition (Modus Ponens) Wenn A, dann B. A gilt Also, gilt B
Zusammenfassung der letzten LVA Wenn das Kind schreit, hat es Hunger Das Kind schreit Also, hat das Kind Hunger Fakt Korrektheit dieser Schlussfigur ist unabhängig von den konkreten Aussagen Einführung
MehrZusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung
Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Wenn das Kind schreit, hat es Hunger Das Kind schreit Also, hat das Kind Hunger Christina Kohl Alexander Maringele
MehrZusammenfassung der letzten LVA. Einführung in die Theoretische Informatik. Syntax der Aussagenlogik. Inhalte der Lehrveranstaltung
Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper Manuel Schneckenreither Institut für Informatik
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Woche 5 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Jede binäre Operation hat maximal ein
MehrDiskrete Mathematik. Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom
Diskrete Mathematik Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom Zusammenfassung der letzten LVA Definition Ein ɛ-nea N = (Q, Σ, δ, S, F) ist gegeben durch eine endliche
MehrEinführung in die Theoretische Informatik. Inhalte der Lehrveranstaltung. Definition (Boolesche Algebra) Einführung in die Logik
Zusammenfassung Einführung in die Theoretische Informatik Woche 5 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung der letzten LV Jede binäre Operation hat maximal ein
MehrDiskrete 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
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Woche 4 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Modus Ponens A B B A MP Axiome für
MehrZusammenfassung. Definition. 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten. 2 P ein Programm. Befehle: 1 x i := x i + 1
Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper Manuel Schneckenreither Eine Registermaschine (RM)
MehrZusammenfassung. 1 Wir betrachten die folgende Signatur F = {+,,, 0, 1} sodass. 3 Wir betrachten die Gleichungen E. 4 Dann gilt E 1 + x 1
Zusammenfassung Zusammenfassung der letzten LV Einführung in die Theoretische Informatik Woche 7 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 1 Wir betrachten die folgende Signatur
MehrZusammenfassung der letzten LVA. Endliche Automaten mit Epsilon-Übergängen. Inhalte der Lehrveranstaltung (cont d)
Zusammenfassung der letzten LVA Ein nichtdeterministischer endlicher Automat (NEA) ist ein 5-Tupel (Q, Σ, δ, S, F), sodass Q eine endliche Menge von Zustände Σ eine endliche Menge, das Eingabealphabet;
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
Mehr5.2 Endliche Automaten
114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch
Mehr3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14
3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes,
MehrFormale Sprachen. Reguläre Sprachen. Rudolf FREUND, Marian KOGLER
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER Endliche Automaten - Kleene STEPHEN KLEENE (99-994) 956: Representation of events in nerve nets and finite automata. In: C.E. Shannon und
MehrAkzeptierende Turing-Maschine
Akzeptierende Turing-Maschine Definition: Eine akzeptierende Turing-Maschine M ist ein Sechstupel M = (X, Z, z 0, Q, δ, F ), wobei (X, Z, z 0, Q, δ) eine Turing-Maschine ist und F Q gilt. Die von M akzeptierte
MehrTheoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
Mehr3. Klausur Einführung in die Theoretische Informatik Seite 1 von Welches der folgenden klassischen Probleme der Informatik ist entscheidbar?
3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welches der folgenden klassischen Probleme der Informatik ist entscheidbar? A. Gegeben eine kontextfreie Grammatik G. Gibt es ein
MehrInformatik 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
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
MehrTheorie 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)
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat
MehrDisMod-Repetitorium Tag 4
DisMod-Repetitorium Tag 4 Endliche Automaten, Reguläre Sprachen und Kontextfreie Grammatiken 22. März 2018 1 Endliche Automaten Definition DFA Auswertungen Äquivalenzrelationen Verschmelzungsrelation und
MehrWS06/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Ü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
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Woche 10 Harald Zankl Institut für Informatik @ UIBK Wintersemester 2014/2015 Zusammenfassung Zusammenfassung der letzten LV Satz Sei G = (V, Σ, R, S) eine kontextfreie
Mehr2. Klausur Einführung in die Theoretische Informatik Seite 1 von Welche der folgenden Aussagen zur Aussagenlogik ist falsch?
2. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welche der folgenden Aussagen zur Aussagenlogik ist falsch? A. Für jede Formel A existiert eine DNF D und eine KNF K, sodass A D K
Mehr11.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
MehrLexikalische Analyse, Tokenizer, Scanner
Lexikalische Analyse, Tokenizer, Scanner Frühe Phase des Übersetzers Aufgabenteilung: Scanner (lokale) Zeichen (Symbol-)Analyse Parser Syntax-Analyse Aufgabe des Scanners: Erkennung von: Zahlen, Bezeichner,
MehrSei Σ 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
MehrFormale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23
1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich
MehrTheoretische 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
MehrKlausur zur Vorlesung Informatik III Wintersemester 2007/2008
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Klausur zur Vorlesung Informatik III Wintersemester 2007/2008 Hier Aufkleber mit Name und Matrikelnr. anbringen Vorname: Nachname: Matrikelnummer:
MehrEndliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken
1 / 15 Endliche Automaten, reguläre Ausdrücke, rechtslineare Grammatiken Prof. Dr. Hans Kleine Büning FG Wissensbasierte Systeme WS 08/09 2 / 15 Deterministischer endlicher Automat (DEA) Definition 1:
MehrÜbungen zur Vorlesung Modellierung WS 2003/2004 Blatt 11 Musterlösungen
Dr. Theo Lettmann Paderborn, den 9. Januar 24 Abgabe 9. Januar 24 Übungen zur Vorlesung Modellierung WS 23/24 Blatt Musterlösungen AUFGABE 7 : Es sei der folgende partielle deterministische endliche Automat
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
MehrBerechenbarkeitstheorie 1. Vorlesung
Berechenbarkeitstheorie Dr. Institut für Mathematische Logik und Grundlagenforschung WWU Münster WS 15/16 Alle Folien unter Creative Commons Attribution-NonCommercial 3.0 Unported Lizenz. Zentrale Themen
Mehr2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht
Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der
MehrÜ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
MehrProseminar TI: Kellerautomaten. 1 Motivation. 2 Einführung. Vortrag: Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer.
Proseminar TI: Kellerautomaten Vortrag: 10.11.2015 Von Sebastian Oltmanns und Dorian Wachsmann. Dozent: Wolfgang Mulzer. 1 Motivation Wir kennen bereits die Chomsky-Hierarchie. Sie klassiziert formale
MehrTyp-0-Sprachen und Turingmaschinen
Typ-0-Sprachen und Turingmaschinen Jean Vancoppenolle Universität Potsdam Einführung in formale Sprachen und Automaten Dr. Thomas Hanneforth (Präsentation aus Foliensätzen von Dr. Thomas Hanneforth und
Mehr1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig?
1. Welche der folgenden Aussagen zur Verifikation nach Hoare ist richtig? A. Eine Formel, die sowohl vor der Ausführung des Programmes, wie auch nachher falsch ist, nennt man Invariante. B. Mit Hilfe der
MehrÜbersicht. 3 3 Kontextfreie Sprachen
Formale Systeme, Automaten, Prozesse Übersicht 3 3.1 Kontextfreie Sprachen und Grammatiken 3.2 Ableitungsbäume 3.3 Die pre -Operation 3.4 Entscheidungsprobleme für CFGs 3.5 Normalformen für CFGs 3.6 Chomsky-Normalform
MehrWas 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
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 7. Vorlesung 16.11.2006 schindel@informatik.uni-freiburg.de 1 Informatik III 7. Vorlesung - 2 Informatik III 7. Vorlesung - 3 Informatik III
MehrDeterministische 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
MehrDas Pumping-Lemma Formulierung
Das Pumping-Lemma Formulierung Sei L reguläre Sprache. Dann gibt es ein n N mit: jedes Wort w L mit w n kann zerlegt werden in w = xyz, so dass gilt: 1. xy n 2. y 1 3. für alle k 0 ist xy k z L. 59 / 162
MehrGrundbegriffe der Informatik Tutorium 33
Tutorium 33 02.02.2017 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Gliederung 1 2 3 Ein ist ein Tupel A = (Z, z 0, X, f, Y, h)
MehrNachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2013/14
Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Nachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2013/14 Vorname Nachname Matrikelnummer Hinweise Für die
MehrKontextfreie Sprachen werden von PDAs akzeptiert
Kontextfreie Sprachen werden von PDAs akzeptiert Sei G = (Σ, V, S, P) eine kontextfreie Grammatik. Dann gibt es einen PDA A mit L(A) = L(G). Der PDA A arbeitet mit nur einem Zustand q 0, besitzt das Kelleralphabet
MehrFormale 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
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
MehrKapitel 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
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs
Mehr2. 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
MehrTuring Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.
Thorsten Timmer SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke Turing Maschine SS 2005 p. 1/35 Inhalt Einführung Formale Definition Berechenbare Sprachen und Funktionen Berechnung ganzzahliger
MehrInformatik III. Arne Vater Wintersemester 2006/ Vorlesung
Informatik III Arne Vater Wintersemester 2006/07 10. Vorlesung 24.11.2006 1 Turingmaschinen Informatik III 9. Vorlesung - 2 Turingmaschinen Eine (deterministische 1-Band) Turingmaschine (DTM) wird beschrieben
MehrTheoretische 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
MehrTheoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung
Theoretische Informatik und Logik Übungsblatt (26S) en Aufgabe. Sei L = {w#w r w {, } }. Geben Sie eine deterministische Turingmaschine M an, welche die Sprache L akzeptiert. Wählen Sie mindestens einen
MehrÜbungsblatt 1. Lorenz Leutgeb. 30. März 2015
Übungsblatt Lorenz Leutgeb 30. März 205 Aufgabe. Annahmen ohne Einschränkungen: P Σ und P Γ. Per Definitionem der Reduktion: P P 2 f : Σ Γ wobei f total und berechenbar, genau so, dass: w Σ : w P f(w)
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
Mehr1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,
Theorie der Informatik 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs
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
MehrLexikalische Programmanalyse der Scanner
Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung
MehrAufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 12
Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 2003/04 ILKD Prof. Dr. D. Wagner 20. Februar 2004 1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004 Hier Aufkleber
MehrHauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Hier Aufkleber mit Name und Matrikelnr. anbringen
Mehr3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme
Wiederholung Mit Grammatiken können wir Sprachen beschreiben und sie grob in Typen unterteilen: FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Formale
Mehr1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!
Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 23/4 ILKD Prof. Dr. D. Wagner 2. Februar 24. Klausur zur Vorlesung Informatik III Wintersemester 23/24 Mit Lösung! Beachten Sie:
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 8. Vorlesung 17.11.2006 schindel@informatik.uni-freiburg.de 1 Prinzip des Kellerautomats Push-Down-Automaton (PDA) Ein Kellerautomat vereinigt
Mehr{a i b i i 0} FORMALE SYSTEME. Kellerautomaten. (Nicht)Abschlusseigenschaften für Typ 2. Ein Berechnungsmodell für Typ-2-Sprachen
(Nicht)Abschlusseigenschaften für Typ 2 FORMALE SYSTEME 15. Vorlesung: Einleitung Kellerautomaten Markus Krötzsch Lehrstuhl Wissensbasierte Systeme Satz: Wenn L, L 1 und L 2 kontextfreie Sprachen sind,
Mehr1 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
MehrTheoretische Informatik I
Theoretische Informatik I Rückblick Theoretische Informatik I 1. Mathematische Methoden 2. Reguläre Sprachen 3. Kontextfreie Sprachen Themen der Theoretischen Informatik I & II Mathematische Methodik in
MehrEinführung in die Computerlinguistik
Einführung in die Computerlinguistik Kontextfreie Sprachen und Pushdown-Automaten Dozentin: Wiebke Petersen WS 2004/2005 Wiebke Petersen Formale Komplexität natürlicher Sprachen WS 03/04 Wiederholung c
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 3. Endliche Automaten 30.04.2015 Viorica Sofronie-Stokkermans Matthias Horbach e-mail: sofronie@uni-koblenz.de, horbach@uni-koblenz.de 1 Bis jetzt 1. Motivation
MehrDas Pumping Lemma: Ein Anwendungsbeispiel
Das Pumping Lemma: Ein Anwendungsbeispiel Beispiel: Die Palindromsprache ist nicht regulär. L = { } w {0, 1} w ist ein Palindrom Beweis: Angenommen, L ist doch regulär. Gemäß Pumping Lemma gibt es dann
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
MehrTHIA - Übungsblatt 2.
THIA - Übungsblatt 2. Aufgabe 12 (Eine einfache Sprache). Endliche Ziffernfolgen, die mit einer 0 beginnen, auf die mindestens eine weitere Ziffer folgt, wobei nur die Ziffern 0,..., 7 vorkommen, sollen
MehrFORMALE 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Ü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
Mehr2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018
2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie
Mehr2. 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
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
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik 3. Endliche Automaten (III) 7.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Organisatorisches 1. Teilklausur: Mittwoch, 10.06.2015, D028,
MehrFormale Grundlagen der Informatik 1 Kapitel 5 Abschlusseigenschaften
Formale Grundlagen der Informatik 1 Kapitel 5 Frank Heitmann heitmann@informatik.uni-hamburg.de 18. April 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/64 NFAs - Grundlagen DFAs vs. NFAs Der
Mehr2.6 Verdeutlichung verwendeter Begriffe
2.6 Verdeutlichung verwendeter Begriffe endlich/finit: die Mengen der Zustände und der Ein- bzw. Ausgabezeichen sind endlich synchron: die Ausgabezeichen erscheinen synchron mit dem Einlauf der Eingabezeichen
MehrAutomatentheorie und formale Sprachen
Automatentheorie und formale Sprachen Zusammenfassung Kathrin Hoffmann 27. Juni 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 27.6. 2012 329 Kontextsensitive Grammatiken und Sprachen
Mehrc) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}
2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?
MehrSatz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2
Satz von Kleene (Stephen C. Kleene, 1909-1994) Jede Sprache, die von einem deterministischen endlichen Automaten akzeptiert wird ist regulär und jede reguläre Sprache wird von einem deterministischen endlichen
Mehr2. Übungsblatt 6.0 VU Theoretische Informatik und Logik
2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 25. September 2013 Aufgabe 1 Geben Sie jeweils eine kontextfreie Grammatik an, welche die folgenden Sprachen erzeugt, sowie einen Ableitungsbaum
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
Mehr2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015
2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2014/2015 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie
MehrSoftware Engineering Ergänzung zur Vorlesung
Ergänzung zur Vorlesung Prof. Dr. Markus Müller-Olm WS 2008 2009 2.6.1 Endliche und reguläre Sprachen Endliche und reguläre Sprache: fundamental in vielen Bereichen der Informatik: theorie Formale Sprachen
MehrRegulä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
MehrBerechenbarkeit und Komplexität
Berechenbarkeit und Komplexität Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2010/11 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien und Übungsblätter
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
Mehr