Theorie der Informatik

Ähnliche Dokumente
11.1 Kontextsensitive und allgemeine Grammatiken

2.2 Reguläre Sprachen Endliche Automaten

Theorie der Informatik

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

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

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

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

Theoretische Informatik für Wirtschaftsinformatik und Lehramt

FORMALE SYSTEME. 10. Vorlesung: Grenzen regulärer Sprachen / Probleme für Automaten. TU Dresden, 14. November 2016.

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2011

Grundlagen der Theoretischen Informatik

Endliche Automaten. δ : Z Σ Z die Überführungsfunktion, z 0 Z der Startzustand und F Z die Menge der Endzustände (Finalzustände).

Das Pumping-Lemma Formulierung

FORMALE SYSTEME. 8. Vorlesung: Minimale Automaten. TU Dresden, 6. November Markus Krötzsch Lehrstuhl Wissensbasierte Systeme

Die Nerode-Relation und der Index einer Sprache L

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

äußere Klammern können entfallen, ebenso solche, die wegen Assoziativität von + und Konkatenation nicht notwendig sind:

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

Kontextfreie Sprachen

Kontextfreie Sprachen

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

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

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Zusammenfassung Grundzüge der Informatik 4

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

Automaten und Formale Sprachen ε-automaten und Minimierung

Satz (Abschluß unter der Stern-Operation)

Turing: prinzipielle Berechenbarkeit Abschnitt 4.2. Turingmaschinen: DTM Abschnitt 4.2. DTM: Akzeptieren und Entscheiden Abschnitt 4.

Kurz-Skript zur Theoretischen Informatik I

Aufgabentypen: Spickerblatt: kontextfrei (Typ 2): zusätzlich: u ist eine!"# v 1

Theoretische Grundlagen der Informatik

Formale Sprachen. Script, Kapitel 4. Grammatiken

Die mathematische Seite

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

Formale Methoden 1. Gerhard Jäger 23. Januar Uni Bielefeld, WS 2007/2008 1/18

Formale Sprachen und Automaten

Ausgewählte unentscheidbare Sprachen

Theoretische Grundlagen der Informatik

Typ-3-Sprachen. Das Pumping-Lemma

4. Übung zur Vorlesung Informatik III am

Formale Systeme. Büchi-Automaten. Prof. Dr. Bernhard Beckert WS 2009/2010 KIT INSTITUT FÜR THEORETISCHE INFORMATIK

... = für δ(z, a i ) = z. Abbildung 4.4: Interpretation der Arbeitsweise eines endlichen Automaten

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

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

Nachklausur zur Vorlesung

Lösungsvorschläge Blatt 4

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

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Beispiel: NTM. M = ({q 0,q 1,q 2 }, {0, 1}, {0, 1, #},δ, q 0, #, {q 2 }) q 2

Formalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften

Übung zur Vorlesung Theoretische Information. Pumping Lemma

Grundlagen der Theoretischen Informatik

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

Minimalautomaten. Minimalautomaten. Frage: Ist der Äquivalenzautomat A der kleinste Automat ( Minimalautomat ) der die Sprache L(A) erkennt?

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

Technische Universität München Sommer 2016 Prof. J. Esparza / Dr. M. Luttenberger, S. Sickert 11. Juli HA-Lösung. TA-Lösung

Formale Sprachen und endliche Automaten

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

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

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Formale Sprachen und Automaten: Tutorium Nr. 8

Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

Abschluss unter Operationen

Eigenschaften regulärer Sprachen

Reguläre Sprachen Slide 1. Reguläre Sprachen. Hans U. Simon (RUB) Homepage:

Grundlagen der Theoretischen Informatik

Theoretische Informatik I

Grundlagen der Theoretischen Informatik

Worterkennung in Texten speziell im Compilerbau 20. April Frank Heitmann 2/64

5.2 Endliche Automaten

2.5 Halteproblem und Unentscheidbarkeit

WS07/08 Automaten und Formale Sprachen 5. Vorlesung

Übung zur Vorlesung Grundlagen der theoretischen Informatik. Aufgabenblatt 7 Lösungen. Wiederholung: Pumping-Lemma für kontextfreie Sprachen

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

Automaten und Formale Sprachen SoSe 2007 in Trier. Henning Fernau Universität Trier

Lemma Für jede monotone Grammatik G gibt es eine kontextsensitive

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

1. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004. Mit Lösung!

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

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

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

<Satz> <Subjekt> <Prädikat> <Objekt> <Objekt> <Artikel> <Attribut> <Substantiv> <Artikel> <Artikel> das <Attribut> ε <Attribut> <Adjektiv> <Attribut>

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Software Engineering Ergänzung zur Vorlesung

Vorlesung im Sommersemester Informatik IV. Probeklausurtermin: 21. Juni 2016

Grundlagen der Theoretischen Informatik

Einführung in die Theoretische Informatik

Theoretische Informatik II

Musterlösung Informatik-III-Klausur

Grenzen der Regularität

Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist

Theoretische Grundlagen der Informatik

Zentralübung zur Vorlesung Theoretische Informatik

Transkript:

Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24

Pumping Lemma

Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man eine geeignete Grammatik, endlichen Automaten oder regulären Ausdruck angibt. Wie kann man zeigen, dass eine Sprache nicht regulär ist? Direkter Beweis, dass keine reguläre Grammatik existiert, die die Sprache erzeugt i.a. schwierig Pumping Lemma: Notwendige Eigenschaft, die für alle regulären Sprachen gelten muss. Foto mit freundlicher Genehmigung von imagerymajestic / FreeDigitalPhotos.net

Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man eine geeignete Grammatik, endlichen Automaten oder regulären Ausdruck angibt. Wie kann man zeigen, dass eine Sprache nicht regulär ist? Direkter Beweis, dass keine reguläre Grammatik existiert, die die Sprache erzeugt i.a. schwierig Pumping Lemma: Notwendige Eigenschaft, die für alle regulären Sprachen gelten muss. Foto mit freundlicher Genehmigung von imagerymajestic / FreeDigitalPhotos.net

Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man eine geeignete Grammatik, endlichen Automaten oder regulären Ausdruck angibt. Wie kann man zeigen, dass eine Sprache nicht regulär ist? Direkter Beweis, dass keine reguläre Grammatik existiert, die die Sprache erzeugt i.a. schwierig Pumping Lemma: Notwendige Eigenschaft, die für alle regulären Sprachen gelten muss. Foto mit freundlicher Genehmigung von imagerymajestic / FreeDigitalPhotos.net

Pumping Lemma Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N (eine Pumpingzahl für L), so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass folgendes gilt: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L.

Pumping Lemma: Beweis Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N, so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L.

Pumping Lemma: Beweis Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N, so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L. Beweis. Für reguläres L existiert DFA M = (Z, Σ, δ, z, E) mit L(M) = L. Wir zeigen, dass n = Z die geforderten Eigenschaften hat....

Pumping Lemma: Beweis Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N, so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L. Beweis. Für reguläres L existiert DFA M = (Z, Σ, δ, z, E) mit L(M) = L. Wir zeigen, dass n = Z die geforderten Eigenschaften hat. Betrachte beliebiges x L(M) mit Länge x Z. Inklusive dem Startzustand durchläuft M beim Abarbeiten von x insgesamt x + Zustände. Wegen x Z muss daher mindestens ein Zustand mehrfach durchlaufen werden....

Pumping Lemma: Beweis Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N, so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L. Beweis (Fortsetzung). Wähle Zerlegung x = uvw, so dass M nach Lesen von u und Lesen von uv im gleichen Zustand ist. Offensichtlich können wir die Zerlegung so wählen, dass v und uv Z erfüllt sind....

Pumping Lemma: Beweis Satz (Pumping Lemma) Sei L eine reguläre Sprache. Dann gibt es ein n N, so dass sich alle Wörter x L mit x n zerlegen lassen in x = uvw, so dass: v, 2 uv n, und 3 für alle i =,, 2,... gilt: uv i w L. Beweis (Fortsetzung). Das Teilwort v entspricht nach Abarbeitung von u einer Schleife in dem DFA und kann daher beliebig oft durchlaufen werden. Jede anschliessende Fortsetzung mit w endet im selben Endzustand wie die Abarbeitung von x. Daher gilt für alle i =,, 2,..., dass uv i w L(M) = L.

Pumping Lemma: Verwendung Verwendung des Pumping Lemma (PL): Beweis der Nichtregularität Wenn L regulär ist, dann gilt PL für L Wenn PL für L gilt, kann man nichts über L aussagen. Aber: Wenn PL für L nicht gilt, kann L nicht regulär sein. D.h.: Wenn es kein n N mit den geforderten Eigenschaften für PL gibt, dann kann L nicht regulär sein.

Pumping Lemma: Beispiel Beispiel Die Sprache L = {a n b n n N} ist nicht regulär. Beweis. Angenommen L ist regulär. Dann sei p eine Pumpingzahl für L. Das Wort x = a p b p ist in L und hat Länge p. Sei x = uvw eine Zerlegung mit den Eigenschaften aus dem PL. Dann ist auch das Wort x = uv 2 w in L. Da uv p besteht uv nur aus Symbolen a und x = a u a 2 v a p uv b p = a p+ v b p. Da v gilt p + v p und damit x L. Dies ist ein Widerspruch zum PL. L nicht regulär.

Fragen Fragen?

Minimalautomaten

Beispiel Folgende DFAs akzeptieren die gleiche Sprache:, z z z 4 z 2 z 2 z z z 3, z 3 Frage: Was ist der kleinste DFA, der diese Sprache akzeptiert?

Minimalautomat: Definition Definition Ein Minimalautomat für eine reguläre Sprache L ist ein DFA M = (Z, Σ, δ, z, E) mit L(M) = L und einer minimalen Anzahl von Zuständen. Das heisst, es gibt keinen DFA M = (Z, Σ, δ, z, E ) mit L(M) = L(M ) und Z < Z.

Minimalautomat: Definition Definition Ein Minimalautomat für eine reguläre Sprache L ist ein DFA M = (Z, Σ, δ, z, E) mit L(M) = L und einer minimalen Anzahl von Zuständen. Das heisst, es gibt keinen DFA M = (Z, Σ, δ, z, E ) mit L(M) = L(M ) und Z < Z. Wie findet man einen Minimalautomaten? Idee: Beginne mit irgendeinem DFA, der die Sprache akzeptiert. Verschmelze Zustände, von denen aus die gleichen Wörter in Endzustand führen.

Minimalautomat: Algorithmus Eingabe: DFA M Eingabe: (ohne vom Startzustand aus unerreichbare Zustände) Ausgabe: Angabe, welche Zustände man verschmelzen muss, Ausgabe: um äquivalenten Minimalautomaten zu erhalten Stelle Tabelle aller Zustandspaare {z, z } mit z z auf. 2 Markiere alle Paare {z, z } mit z E und z E. 3 Falls für ein unmarkiertes Paar {z, z } gilt, dass {δ(z, a), δ(z, a)} für ein a Σ bereits markiert ist, markiere auch {z, z }. 4 Wiederhole den letzten Schritt, bis sich keine Änderung mehr ergibt. 5 Alle jetzt noch unmarkierten Paare können jeweils zu einem Zustand verschmolzen werden.

Minimalautomat: Beispiel z z z 4, z 2 z 3

Minimalautomat: Beispiel z z z 4, z z 2 z 3 z 2 z 4 z z z 2 z 3 z 3

Minimalautomat: Beispiel z z z 4, z z 2 z 3 z 2 z 4 z z z 2 z 3 z 3

Minimalautomat: Beispiel z z z 4, z z 2 z 3 z 2 z 4 z z z 2 z 3 z 3

Minimalautomat: Beispiel z z z 4, z z 2 z 2 z 3 z 4 z z z 2 z 3 z 3

Minimalautomat: Beispiel z z z 2 z 4, z z 2 z 3 z 4 z z z 2 z 3 z 3

Minimalautomat: Beispiel z z z 2 z 3 z 4, z z 2 z 3 z 4 z z z 2 z 3 Zustände z, z 2 und z, z 3 können jeweils zu einem Zustand verschmolzen werden.

Minimalautomat: Beispiel z z z 2 z 3 z 4, z z 2 z 3 z 4 z z z 2 z 3 Zustände z, z 2 und z, z 3 können jeweils zu einem Zustand verschmolzen werden. Ergebnis: z z 2 z z 3 z 4,

Eindeutigkeit von Minimalautomaten Satz Alle Minimalautomaten für eine Sprache L sind bis auf Isomorphie (d.h. Umbenennnen der Zustände) identisch. Ohne Beweis.

Fragen Fragen?

Abschlusseigenschaften

Abschlusseigenschaften Wie kann man reguläre Sprachen kombinieren, so dass man wieder eine reguläre Sprache erhält? Foto mit freundlicher Genehmigung von stockimages / FreeDigitalPhotos.net

Abschlusseigenschaften: Operationen Seien L und L reguläre Sprachen über Σ bzw. Σ. Wir betrachten folgende Operationen: Vereinigung L L = {w w L oder w L } über Σ Σ Schnitt L L = {w w L und w L } über Σ Σ Komplement L = {w w L} über Σ Produkt LL = {uv u L und v L } über Σ Σ Spezialfall: L n = L n L, wobei L = {ε} Stern L = k Lk über Σ

Abschlusseigenschaften Definition (Abgeschlossenheit) Sei K eine Klasse von Sprachen. Dann ist K abgeschlossen unter Vereinigung (Schnitt, Komplement, Produkt, Stern), falls aus L K und L K folgt, dass L L K (bzw. L L K, L K, LL K, L K). Satz Die regulären Sprachen sind abgeschlossen unter: Vereinigung Schnitt Komplement Produkt Stern

Abschlusseigenschaften Definition (Abgeschlossenheit) Sei K eine Klasse von Sprachen. Dann ist K abgeschlossen unter Vereinigung (Schnitt, Komplement, Produkt, Stern), falls aus L K und L K folgt, dass L L K (bzw. L L K, L K, LL K, L K). Satz Die regulären Sprachen sind abgeschlossen unter: Vereinigung Schnitt Komplement Produkt Stern

Abschlusseigenschaften Beweis. Abschluss unter Vereinigung, Produkt und Stern folgt daraus, dass für reguläre Ausdrücke α und β auch (α β), (αβ) und (α ) reguläre Ausdrücke sind. Komplement: Sei M = (Z, Σ, δ, z, E) ein DFA mit L(M) = L. Dann ist M = (Z, Σ, δ, z, Z \ E) ein DFA mit L(M ) = L. akzeptiert. Schnitt: Seien M = (Z, Σ, δ, z, E ) und M 2 = (Z 2, Σ 2, δ 2, z 2, E 2 ) DFAs. Der Kreuzproduktautomat M = (Z Z 2, Σ Σ 2, δ, (z, z 2 ), E E 2 ) mit δ((z, z 2 ), a) = (δ (z, a), δ 2 (z 2, a)) akzeptiert L(M) = L(M ) L(M 2 ).

Abschlusseigenschaften Beweis. Abschluss unter Vereinigung, Produkt und Stern folgt daraus, dass für reguläre Ausdrücke α und β auch (α β), (αβ) und (α ) reguläre Ausdrücke sind. Komplement: Sei M = (Z, Σ, δ, z, E) ein DFA mit L(M) = L. Dann ist M = (Z, Σ, δ, z, Z \ E) ein DFA mit L(M ) = L. akzeptiert. Schnitt: Seien M = (Z, Σ, δ, z, E ) und M 2 = (Z 2, Σ 2, δ 2, z 2, E 2 ) DFAs. Der Kreuzproduktautomat M = (Z Z 2, Σ Σ 2, δ, (z, z 2 ), E E 2 ) mit δ((z, z 2 ), a) = (δ (z, a), δ 2 (z 2, a)) akzeptiert L(M) = L(M ) L(M 2 ).

Abschlusseigenschaften Beweis. Abschluss unter Vereinigung, Produkt und Stern folgt daraus, dass für reguläre Ausdrücke α und β auch (α β), (αβ) und (α ) reguläre Ausdrücke sind. Komplement: Sei M = (Z, Σ, δ, z, E) ein DFA mit L(M) = L. Dann ist M = (Z, Σ, δ, z, Z \ E) ein DFA mit L(M ) = L. akzeptiert. Schnitt: Seien M = (Z, Σ, δ, z, E ) und M 2 = (Z 2, Σ 2, δ 2, z 2, E 2 ) DFAs. Der Kreuzproduktautomat M = (Z Z 2, Σ Σ 2, δ, (z, z 2 ), E E 2 ) mit δ((z, z 2 ), a) = (δ (z, a), δ 2 (z 2, a)) akzeptiert L(M) = L(M ) L(M 2 ).

Fragen Fragen?

Entscheidbarkeit

Entscheidbarkeit Definition (Entscheidbarkeit (intuitiv)) Eine Sprache L über Σ heisst entscheidbar, wenn es einen Algorithmus gibt, der bei jeder Eingabe eines Wortes w Σ terminiert und ausgibt, ob w L oder nicht.

Probleme als Sprachen Beispiel (Leerheitsproblem) Das Leerheitsproblem P ist folgendes Problem: Gegeben: Reguläre Grammatik G Gefragt: Ist L(G) =? Oder alternativ als Sprache formuliert: P = {w w kodiert eine Grammatik G mit L(G) = }

Gegeben-Gefragt-Notation vs. Definition als Menge Definition (neues Problem P) Gegeben: Instanz I Gefragt: Hat I eine bestimmte Eigenschaft?

Gegeben-Gefragt-Notation vs. Definition als Menge Definition (neues Problem P) Gegeben: Gefragt: entspricht der Definition Instanz I Hat I eine bestimmte Eigenschaft? Definition (neues Problem P) Das Problem P ist die Sprache P = {w w kodiert eine Instanz I mit der gefragten Eigenschaft}.

Entscheidbarkeit: Wortproblem Satz (Wortproblem ist entscheidbar) Das Wortproblem P für reguläre Sprachen ist: Gegeben: Gefragt: Reguläre Grammatik G mit Terminalalphabet Σ und Wort w Σ Ist w L(G)? Das Wortproblem ist entscheidbar. Beweis. Konstruiere einen DFA M mit L(M) = L(G) (die Beweise aus dem vorherigen Kapitel beschreiben ein geeignetes Verfahren). Simuliere M auf Eingabe w. Die Simulation endet nach w Schritten. Der DFA M ist dann in einem Endzustand gdw. w L(G).

Entscheidbarkeit: Leerheitsproblem Satz (Leerheitsproblem ist entscheidbar) Das Leerheitsproblem P für reguläre Sprachen ist: Gegeben: Reguläre Grammatik G Gefragt: Ist L(G) =? Das Leerheitsproblem ist entscheidbar. Beweis. Konstruiere einen DFA M mit L(M) = L(G). Im Zustandsdiagramm von M gibt es keinen Pfad vom Startzustand zu einem Endzustand gdw. L(G) =.

Entscheidbarkeit: Endlichkeitsproblem Satz (Endlichkeitsproblem ist entscheidbar) Das Endlichkeitsproblem P für reguläre Sprachen ist: Gegeben: Reguläre Grammatik G Gefragt: Ist L(G) <? Das Endlichkeitsproblem ist entscheidbar. Beweis. Konstruiere einen DFA M mit L(M) = L(G). Im Zustandsdiagramm von M gibt es einen Zyklus, der vom Startzustand aus erreichbar ist und von dem aus ein Endzustand erreichbar ist, gdw. L(G) =.

Entscheidbarkeit: Schnittproblem Satz (Schnittproblem ist entscheidbar) Das Schnittproblem P für reguläre Sprachen ist: Gegeben: Reguläre Grammatiken G und G Gefragt: Ist L(G) L(G ) =? Das Schnittproblem ist entscheidbar. Beweis. Da die regulären Sprachen unter Schnitt abgeschlossen sind, konstruieren wir (z.b. über den Zwischenschritt eines Kreuzproduktautomaten) eine Grammatik G mit L(G ) = L(G) L(G ) und verwenden das Entscheidungsverfahren für das Leerheitsproblem P.

Entscheidbarkeit: Äquivalenzproblem Satz (Äquivalenzproblem ist entscheidbar) Das Äquivalenzproblem P = für reguläre Sprachen ist: Gegeben: Reguläre Grammatiken G und G Gefragt: Ist L(G) = L(G )? Das Äquivalenzproblem ist entscheidbar. Beweis. Es gilt allgemein für Sprachen L und L, dass L = L gdw. (L L ) ( L L ) =. Die regulären Sprachen sind unter Schnitt, Vereinigung und Komplement abgeschlossen. Wir können eine entsprechende Grammatik konstruieren und das Entscheidungsverfahren für das Leerheitsproblem P verwenden.

Fragen Fragen?

Zusammenfassung

Zusammenfassung Mit dem Pumping Lemma kann man zeigen, dass eine Sprache nicht regulär ist. Minimalautomaten sind kleinste mögliche DFAs für eine Sprache und für jede Sprache eindeutig. Die regulären Sprachen sind unter allen gängigen Operationen abgeschlossen. Die gängigen Probleme sind für die regulären Sprachen entscheidbar.