Automatentheorie und formale Sprachen

Ähnliche Dokumente
Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen

Automatentheorie und Formale Sprachen

Zusammenfassung der letzten LVA. Endliche Automaten mit Epsilon-Übergängen. Inhalte der Lehrveranstaltung (cont d)

Induktive Definition

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

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

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

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

Diskrete Mathematik. Anna-Lena Rädler Christina Kohl Georg Moser Christian Sternagel Vincent van Oostrom

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

Theoretische Grundlagen der Informatik

Berechenbarkeitstheorie 1. Vorlesung

Automatentheorie und formale Sprachen

Einführung in die Computerlinguistik Satz von Kleene

1 Eliminieren von ɛ-übergängen

Kapitel 2: Formale Sprachen Gliederung

Satz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2

Automaten und formale Sprachen Klausurvorbereitung

Formale Sprachen und endliche Automaten

Einführung in die Computerlinguistik Satz von Kleene

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

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

Das Pumping Lemma: Ein Anwendungsbeispiel

Theoretische Informatik für Medieninformatiker

Satz (Abschluß unter der Stern-Operation)

Homomorphismen. Defnition: Σ und Γ seien zwei endliche Alphabete, und h sei eine Abbildung h : Σ Γ. Wir definieren die folgenden Sprachen:

Automaten und Formale Sprachen SoSe 2013 in Trier

Kapitel 1 Automaten: Die Grundlagen und Methoden... 23

Übersicht. 3 3 Kontextfreie Sprachen

c) {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}}

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

Beispiel Produktautomat

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

Automaten und Formale Sprachen SoSe 2013 in Trier

3.0 VU Formale Modellierung

Automatentheorie und formale Sprachen

Die Nerode-Relation und der Index einer Sprache L

Grundbegriffe der Informatik Tutorium 33

Reguläre Sprachen und endliche Automaten

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

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

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

ist ein regulärer Ausdruck.

Einführung in die Theoretische Informatik

Grundlagen der Theoretischen Informatik

Lexikalische Analyse, Tokenizer, Scanner

5.2 Endliche Automaten

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

Software Engineering Ergänzung zur Vorlesung

THIA - Übungsblatt 2.

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Es gibt drei unterschiedliche Automaten:

DisMod-Repetitorium Tag 4

Formale Sprachen und Automaten

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

Theoretische Grundlagen der Informatik

Das Pumping-Lemma Formulierung

Einführung in die Theoretische Informatik

Theoretische Informatik I

Endliche Automaten Jörg Roth 101

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

Theoretische Informatik I

2.2 Reguläre Sprachen Endliche Automaten

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 19.

Kurz-Skript zur Theoretischen Informatik I

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

Grundlagen der theoretischen Informatik

Automatentheorie und formale Sprachen rechtslineare Grammatiken

Proseminar Automatentheorie. Thema: Berry Sethi Algorithmus. Von Christopher Haas

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

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

FORMALE SYSTEME. Wiederholung. Beispiel: NFA. Wiederholung: NFA. 4. Vorlesung: Nichtdeterministische Endliche Automaten. TU Dresden, 20.

Grundlagen der Theoretischen Informatik, SoSe 2008

Theoretische Grundlagen der Informatik

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

Einführung in die Computerlinguistik Satz von Kleene

Typ-0-Sprachen und Turingmaschinen

Automaten, Spiele, und Logik

Theoretische Informatik I

Kontextfreie Sprachen werden von PDAs akzeptiert

Automatentheorie und Formale Sprachen

Transkript:

Automatentheorie und formale Sprachen VL 4 Reguläre Ausdrücke und reguläre Sprachen Kathrin Hoffmann 10. April 2012 Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 114

Aufgabe 13: Gegeben Σ = {0, 1} und der folgende NEA: Konstruieren Sie bitte den DEA, der dieselbe Sprache erkennt. Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 115

Lösung von Aufgabe 13 Teilmengenkonstruktion ergibt: 0 1 {q0} {q0, q1, q3} {q0} {q0, q1, q3} {q0, q1, q2, q3} {q0} {q0, q1, q2, q3} {q0, q1, q2, q3} {q0} und als Diagramm: Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 116

Spontanität Weitere Modellierungshilfe: ɛ-übergänge ɛ kennzeichnet die leere Zeichenreihe ɛ = 0 Σ 0 = {ɛ} Σ = Σ 0 Σ 1 Σ 2 Σ 3... Σ = Σ + {ɛ} ɛ Übergang bedeutet: Wechsel des Zustands ohne Konsumierung eines Zeichens Wie der Nicht-Determinismus eine Art zusätzlicher Freiheitsgrad wird beim NEA eingesetzt: ɛ-nea Auch ɛ-neas sind äquivalent zu DEAs Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 117

ɛ-nea Definition Ein nicht-deterministischer, endlicher ɛ-automat E = (Q E, Σ E, δ E, q 0, F E ) besteht aus einer nichtleeren, endlichen Zustandsmenge Q E einem endlichen Eingabealphabet Σ E einer Übergangsfunktion δ E : Q E (Σ E {ɛ}) P(Q E ) einem Startzustand q 0 und einer Menge von (akzeptierenden) Endzuständen F E Q E Bemerkung ɛ-übergänge sind Übergänge ohne explizite Eingabe, so genannte spontane Übergänge. Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 118

Beispiel Welche Sprache erkennt dieser ɛ-nea A? Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 119

Beispiel Welche Sprache erkennt dieser ɛ-nea A? Lösung L(A) = {ɛ, b} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 119

ɛ-hülle Definition Gegeben ɛ-nea E = (Q, Σ, δ, q 0, F) dann ist die ɛ-hülle eines Zustandes q Q rekursiv definiert durch: q ɛ-hülle(q) Ist p ɛ-hülle(q) und r δ(p, ɛ), dann ist auch r ɛ-hülle(q). BSP: ɛ-hülle(q0) = {q0, q1, q2, q3, q4} ɛ-hülle(q1) = {q1, q3, q4} ɛ-hülle(q2) = {q2} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 120

Aufgabe 14: Gegeben der ɛ-nea E. Geben Sie bitte L(E) an. Berechnen Sie bitte die ɛ-hüllen der Zustände. Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 121

Aufgabe 14: Gegeben der ɛ-nea E. Geben Sie bitte L(E) an. Berechnen Sie bitte die ɛ-hüllen der Zustände. Lösung L(E) = {b n n 0} ɛ-hülle(q0) = {q0, q2, q4, q3} ɛ-hülle(q1) = {q1} ɛ-hülle(q2) = {q2, q4} ɛ-hülle(q3) = {q2, q3, q4} ɛ-hülle(q4) = {q4} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 121

Erweiterte Übergangsfunktion Die erweiterte Übergangfunktion δ : Q Σ P(Q) des ɛ-nea E = (Q, Σ, q 0, δ, F) ist die sequentielle Anwendung von δ auf ein Wort wx mit w Σ und x Σ und ist rekursiv definiert durch: δ(q, ɛ) = ɛ-hülle(q) δ(q, wx) = ɛ-hülle( δ(q, x)) q δ(q,w) wobei ɛ-hülle(s) = ɛ-hülle(q) mit S Q q S Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 122

Beispiel: Berechnung von δ(q0, bba) δ(q0, ɛ) = ɛ-hülle(q0) = {q0, q3} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 123

Beispiel: Berechnung von δ(q0, bba) δ(q0, ɛ) = ɛ-hülle(q0) = {q0, q3} δ(q0, b) = ɛ-hülle( δ(q, b)) q δ(q0,ɛ) = ɛ-hülle(δ(q0, b) δ(q3, b)) = ɛ-hülle({q0, q4}) = {q0, q3, q4} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 123

Beispiel: Berechnung von δ(q0, bba) δ(q0, b) = {q0, q3, q4} δ(q0, bb) = ɛ-hülle( q δ(q0,b) δ(q, b)) = ɛ-hülle(δ(q0, b) δ(q3, b) δ(q4, b)) = ɛ-hülle({q0, q4}) = {q0, q3, q4} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 123

Beispiel: Berechnung von δ(q0, bba) δ(q0, bb) = {q0, q3, q4} δ(q0, bba) = ɛ-hülle( q δ(q0,bb) δ(q, a)) = ɛ-hülle(δ(q0, a) δ(q3, a) δ(q4, a)) = ɛ-hülle({q1, q2, q4}) = {q1, q2, q4} weil {q1, q2, q4} F = {q2} ist also bba L(A) Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 123

Äquivalenz DEA und ɛ-nea DEA konstruieren ähnlich wie beim NEA: Teilmengenkonstruktion modifiziert Satz 2.22 aus [HMU02]: Eine Sprache L wird genau dann von einem ɛ-nea akzeptiert, wenn L von einem DEA akzeptiert wird. Beweisidee: Wie NEA, also Nachweis, dass Übergangsfunktionen sich entsprechen Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 124

DEA aus ɛ-nea konstruieren Sei ɛ-nea E = (Q E, Σ E, δ E, q 0, F E ) gegeben, dann gibt es den DEA D = (Q D, Σ D, δ D, q D, F D ) mit Q D = {S S Q und S = ɛ-hülle(s)} die Menge aller abgeschlossenen ɛ-hüllen Σ D = Σ N dasselbe Alphabet q D = ɛ-hülle(q 0 ) die ɛ-hülle des Startzustandes δ D : P(Q D ) Σ P(Q D ) mit δ D (S, x) = ɛ-hülle( q S δ E (q, x)) für S P(Q D ) und x Σ D die Übergangsfunktion, die jeder Menge von Zuständen, die im NEA möglich sind, genau die ɛ-hülle der Menge der möglichen Folgezustände im NEA zuordnet F D = {S S Q D und S F E } die Teilmengen von Q D mit mindestens einem Endzustand Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 125

Aufgabe 15: Konstruieren Sie bitte einen äquivalenten DEA. Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 126

Aufgabe 15: Konstruieren Sie bitte einen äquivalenten DEA. Lösung b {q0, q2, q3, q4} {q1, q2, q4} {q1, q2, q4} {q1, q2, q4} Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 126

Zusammenfassung: Endliche Automaten Endliche Automaten bilden ein simples Berechnungsmodell. Es gibt DEAs, NEAs und ɛ-neas. Sie sich gleich ausdrucksmächtig. Ein endlicher Automat ist zustandsorientiert und arbeitet ein Wort von links nach rechts Zeichen für Zeichen ab. Das wird durch Konfigurationen oder die erweiterte Übergangsfunktion beschrieben. Endliche Automaten akzeptieren Sprachen. Diese Sprachen nennt man regulär. Hoffmann (HAW Hamburg) Automatentheorie und formale Sprachen 10.4. 2012 127

Thema 4 Reguläre Ausdrücke und reguläre Sprachen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 128

Übersicht Praktische Anwendung regulärer Ausdrücke Syntax und Semantik Rechenregeln Äquivalenz zu endlichen Automaten Pumping Lemma für reguläre Sprachen Abschlusseigenschaften regulärer Sprachen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 129

Was sind reguläre Ausdrücke? Notation zur deklarativen Definition einer Sprache Beispiel: 01 + 10 Erforderliche Operationen: Vereinigung Verkettung Unendliche Verkettung in UNIX-Tools, in Programmiersprachen wie Perl, PHP, Javascript, in Editoren wie UltraEdit, jedit verschiedene Dialekte, aber gleiche Grundstruktur (hier wie [HMU]) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 130

Reguläre Ausdrücke in der Praxis Beschreibung von Datentypen in XML Schema <xsd:simpletype name="usstate"> <xsd:restriction base="xsd:string"> <xsd:pattern value="ak AL AR"/> <!-- and so on... --> </xsd:restriction> </xsd:simpletype> <!-- Stock Keeping Unit: a product identifier- <xsd:simpletype name="sku"> <xsd:restriction base="xsd:string"> <xsd:pattern value="\d{3}-[a-z]{2}"/> </xsd:restriction> </xsd:simpletype> Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 131

Reguläre Ausdrücke in der Praxis XML Dokument Typ Definitionen: Inhaltsmodelle <!ELEMENT chapter (title, subtitle?, (graphic table), sectio Unix grep grep a1* datei Suche nach Zeichenketten, die a, a1, a11, a11...1 lauten grep ˆ[0-9][0-9]*$ datei Suche nach Zeilen in datei, die nur Ziffern enthalten oder leer sind grep a[bc]+d datei Suche in datei nach Zeichenketten, die mit a anfangen, danach mindestens ein b oder c haben und mit d aufhören Generatoren für lexikalische Analysekomponenten: lex, flex, jflex Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 132

WDH: Operationen auf Sprachen Verkettung von Sprachen: V W = {vw v V, w W } rekursive Verkettung von Sprachen (auch Potenz von Sprachen): V 0 = {ɛ} und V n+1 = V n V für n 0 (Kleene-)Stern von V ist V = i 0 V i Vereinigung, Schnitt, Komplement und Differenz von Sprachen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 133

Reguläre Ausdrücke Definition Sei Σ ein Alphabet. Dann sind, ɛ und x für jedes x Σ reguläre Ausdrücke über Σ. Sind r und s reguläre Ausdrücke über Σ, dann auch (r s), (r + s) und r. Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 134

Reguläre Ausdrücke Definition Sei Σ ein Alphabet. Dann sind, ɛ und x für jedes x Σ reguläre Ausdrücke über Σ. Sind r und s reguläre Ausdrücke über Σ, dann auch (r s), (r + s) und r. BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): (ɛ + (a b)) = ɛ + ab (a + b ) (a + b) (b (a (cb) )) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 134

Reguläre Ausdrücke Definition Sei Σ ein Alphabet. Dann sind, ɛ und x für jedes x Σ reguläre Ausdrücke über Σ. Sind r und s reguläre Ausdrücke über Σ, dann auch (r s), (r + s) und r. BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): (ɛ + (a b)) = ɛ + ab (a + b ) (a + b) (b (a (cb) )) Klammerregeln bindet stärker als stärker als +. Gleichrangige von links nach rechts. Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 134

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): L(ɛ + ab) = {ɛ, ab} L(a + b ) = {a, ɛ, b, bb, bbb,...} L((a + b) ) = {ɛ, a, b, aa, ab, bb, abb,...} L(b a(bc) ) = {a, ba, abc, bbabcbcb,...} Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): L(ɛ + ab) = {ɛ, ab} L(a + b ) = {a, ɛ, b, bb, bbb,...} L((a + b) ) = {ɛ, a, b, aa, ab, bb, abb,...} L(b a(bc) ) = {a, ba, abc, bbabcbcb,...} Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): L(ɛ + ab) = {ɛ, ab} L(a + b ) = {a, ɛ, b, bb, bbb,...} L((a + b) ) = {ɛ, a, b, aa, ab, bb, abb,...} L(b a(bc) ) = {a, ba, abc, bbabcbcb,...} Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Rekursive Definition der Sematik Sprachen regulärer Ausdrücke Definition Für jeden regulären Ausdruck r über Σ definieren wir eine reguläre Sprache L(r) Σ : L( ) = L(ɛ) = {ɛ} L(x) = {x} für x Σ L(r s) = L(r) L(s) L(r + s) = L(r) L(s) L(r ) = L(r) BSP: für Σ = {a, b, c} Reguläre Ausdrücke (RA): L(ɛ + ab) = {ɛ, ab} L(a + b ) = {a, ɛ, b, bb, bbb,...} L((a + b) ) = {ɛ, a, b, aa, ab, bb, abb,...} L(b a(bc) ) = {a, ba, abc, bbabcbcb,...} Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 135

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Beispiel: Bildung eines regulären Ausdrucks Regulärer Ausdruck für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten: L(0) = {0} und L(1) = {1} Verkettung: L(0 1) = L(01) = L(0) L(1) = {01} Kleenesche Hülle: L((01) ) = (L(01)) = {ɛ, 01, 0101, 010101,...} Vereinigung: L((01) + (10) ) = L((01) ) + L((10) ) = {ɛ, 01, 10, 0101, 1010,...} Die Wörter mit ungerader Anzahl von Zeichen: L((01) + (10) + 1(01) + 0(10) ) Bemerkung: Übliche Vereinfachung ist (01) + (10) + 1(01) + 0(10), obwohl L((01) + (10) + 1(01) + 0(10) ) gemeint ist. Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 136

Aufgabe 16: 1 Bitte beschreiben Sie mit einem regulären Ausdruck, die Sprache über dem Alphabet {a, b, c}, deren Wörter mindestens ein a und ein b enthalten. 2 Bitte beschreiben Sie folgende Sprache: (1 + ɛ)(00 1) 0 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 137

Aufgabe 16: 1 Bitte beschreiben Sie mit einem regulären Ausdruck, die Sprache über dem Alphabet {a, b, c}, deren Wörter mindestens ein a und ein b enthalten. 2 Bitte beschreiben Sie folgende Sprache: (1 + ɛ)(00 1) 0 Lösung 1 c a(a + c) b(a + b + c) + c b(b + c) a(a + b + c) 2 L((1 + ɛ)(00 1) 0 ) = {w w {u11v u, v {0, 1} }} also die Sprache, deren Wörte keine zwei aufeinander folgende 1 en enthalten Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 137

Hausaufgabe 17: Bitte beschreiben Sie mit einem regulären Ausdruck, die Sprache über dem Alphabet {0, 1}, so dass in den Wörter alle direkt aufeinander folgender Nullen (Nuller-Folgen) vor allen Einser-Folgen stehen. BSP: 00011, 10100011110, 10010111011011 Anders ausgedrückt: anfangs nur einzelne 1 en, dann nur einzelne 0 en Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 138

Hausaufgabe 17: Bitte beschreiben Sie mit einem regulären Ausdruck, die Sprache über dem Alphabet {0, 1}, so dass in den Wörter alle direkt aufeinander folgender Nullen (Nuller-Folgen) vor allen Einser-Folgen stehen. BSP: 00011, 10100011110, 10010111011011 Anders ausgedrückt: anfangs nur einzelne 1 en, dann nur einzelne 0 en Lösung (10 + 0) (ɛ + 1)(01 + 1) (ɛ + 0) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 138

Alternative RA für dieselbe Sprache RA für die Sprache L, die aus Wörtern besteht, die abwechselnd 0 s und 1 s enthalten (01) + (10) + 0(10) + 1(01) (ɛ + 1)(01) (ɛ + 0) Äquivalenz regulärer Ausdrücke Zwei reguläre Ausdrücke sind äquivalent, wenn sie dieselbe Sprache beschreiben Welche Äquivalenzumformungen gibt es? Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 139

Assoziativität und Kommutativität Satz mit Beweisidee Seien r, s und t reguläre Ausdrücke und R := L(r), S := L(s) und T := L(t) die dazugehörigen Sprachen, dann gelten: Kommutativgesetz der Vereinigung: r + s = s + r weil R S = S R Assoziativgesetz der Vereinigung: (r + s) + t = r + (s + t) weil (R S) T = R (S T ) Assoziativgesetz der Verkettung: (r s) t = r (s t) weil (R S) T = R (S T ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 140

Einheiten Die Einheit bezüglich eines Operators ist ein Wert, für den gilt, dass bei Anwendung des Operators auf die Einheit und auf einen anderen Wert der andere Wert das Ergebnis bildet: Identitätsgesetz der Vereinigung: ist Einheit bezüglich der Vereinigung: + r = r + = r weil R = R = R Identitätsgesetz der Verkettung: ɛ ist Einheit bezüglich der Verkettung: ɛr = rɛ = r weil {ɛ} R = R {ɛ} = R Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 141

Annihilatoren und Idempotenz Der Annihilator bezüglich eines Operators ist ein Wert, für den gilt, dass bei Anwendung des Operators auf den Annihilator und auf einen anderen Wert der Annihilator das Ergebnis bildet. ist Annihilator bezüglich der Verkettung: r = r = weil R = R = Ein Operator heißt idempotent, wenn seine Anwendung auf zwei Operanden mit demselben Wert eben diesen Wert als Ergebnis hat. Idempotenzgesetz der Vereinigung: r + r = r Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 142

Distributivgesetze Linkes Distributivgesetz der Verkettung bezüglich der Vereinigung: r(s + t) = rs + rt Rechtes Distributivgesetz der Verkettung bezüglich der Vereinigung: (s + t)r = sr + tr Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 143

Gesetze bezüglich Hüllenbildung (r ) = r = ɛ ɛ = ɛ r+ := rr = r r r = r + + ɛ r? := ɛ + r Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 144

Aufgabe 18: Bitte vereinfachen Sie die folgenden reguläre Ausdrücke: 1 (1 + ɛ) + (11 (10 ) + 1 + 0) 2 ((1010) + (10) )(1 + ) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 145

Aufgabe 18: Bitte vereinfachen Sie die folgenden reguläre Ausdrücke: 1 (1 + ɛ) + (11 (10 ) + 1 + 0) 2 ((1010) + (10) )(1 + ) Lösung 1 (1 + ɛ) + (11 (10 ) + 1 + 0) = 1 + ɛ + 1 + 0 = ɛ + 1 + 0 2 ((1010) + (10) )(1 + ) = ((1010) + (10) )1 = (10) 1 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 145

Endliche Automaten und reguläre Ausdrücke EAs und RAs beschreiben dieselben Sprachen: Beweisplan für die Äquivalenz: Reguläre Sprachen Noch zu zeigen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 146

DEA = RA: k-pfad Idee: Pfade in einem DEA auf Basis der Kantenbeschriftungen in RA überführen Zustände des DEA werden in 1, 2,..., n umbenannt Der k-pfad R (k) bezeichnet den RA, dessen Sprache ij genau die Wörter umfasst, die den Beschriftungen der Pfade von Zustand i nach Zustand j entsprechen, wobei kein Zustand mit einem Namen > k durchlaufen werden darf. Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 147

k-pfade durch den Automaten Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten Reguläre Ausdrücke ij k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 für direkten Weg von i nach j (über höchstens 0) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten Reguläre Ausdrücke ij k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 für direkten Weg von i nach j (über höchstens 0) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke ij für den Weg über höchstens 1 von i nach j k-pfad reg. Ausdruck 11 1 12 1 0 21 22 ɛ + 0 + 1 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke ij für den Weg über höchstens 1 von i nach j k-pfad reg. Ausdruck 11 1 12 1 0 21 22 ɛ + 0 + 1 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 k-pfad reg. Ausdruck 11 1 12 1 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke R (2) ij k-pfad reg. Ausdruck R (2) 11 1 R (2) 12 1 0(0 + 1) R (2) 21 R (2) 22 (0 + 1) für den Weg über 2 von i nach j Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 k-pfad reg. Ausdruck 11 1 12 1 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke R (2) für den Weg über 2 von i nach j ij k-pfad reg. Ausdruck R (2) 11 1 R (2) 12 1 0(0 + 1) Alle Wörter mit mind. einer 0 R (2) 21 R (2) 22 (0 + 1) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 148

Induktive Berechnung der Pfade R (k) ij lässt sich aus R (k 1) ij berechnen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 149

DEA = RA Zustände des DEA werden in 1, 2,..., n umbenannt R (k) bezeichnet den RA, dessen Sprache ij genau die Zeichenreihen umfasst, die den Beschriftungen der Pfade von Zustand i nach Zustand j entsprechen, wobei kein Zustand mit einem Namen > k durchlaufen werden darf. Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 150

DEA = RA Zustände des DEA werden in 1, 2,..., n umbenannt R (k) bezeichnet den RA, dessen Sprache ij genau die Zeichenreihen umfasst, die den Beschriftungen der Pfade von Zustand i nach Zustand j entsprechen, wobei kein Zustand mit einem Namen > k durchlaufen werden darf. R (k) ij lässt sich aus R (k 1) ij berechnen Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 150

DEA = RA Zustände des DEA werden in 1, 2,..., n umbenannt R (k) bezeichnet den RA, dessen Sprache ij genau die Zeichenreihen umfasst, die den Beschriftungen der Pfade von Zustand i nach Zustand j entsprechen, wobei kein Zustand mit einem Namen > k durchlaufen werden darf. R (k) ij lässt sich aus R (k 1) ij R (k) ij = R (k 1) ij berechnen + R (k 1) ik (R (k 1) ) R (k 1) kk kj RA ist die Summe aller R (k) mit 1 dem Startzustand und f F 1f einem Endzustand f F Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 150 R n 1f

k-pfade durch den Automaten Reguläre Ausdrücke ij k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 für direkten Weg von i nach j (über höchstens 0) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck reg. Ausdruck 11 11 + R(0) 11 (R(0) 11 ) 11 12 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 12 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 11 12 12 + R(0) 11 (R(0) 11 ) 12 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 21 + R(0) 21 (R(0) 11 ) 11 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 + (ɛ + 1) (ɛ + 1) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 + (ɛ + 1) (ɛ + 1) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 + (ɛ + 1) (ɛ + 1) 22 22 + R(0) 21 (R(0) 11 ) 12 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 + (ɛ + 1) (ɛ + 1) 22 ɛ + 0 + 1 + (ɛ + 1) 0 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck 11 ɛ + 1 12 0 21 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij = + ij ij i1 (R(0) 11 ) 1j k-pfad ind. Pfadausdruck vereinf. Ausdruck 11 ɛ + 1 + (ɛ + 1)(ɛ + 1) (ɛ + 1) 1 12 0 + (ɛ + 1)(ɛ + 1) 0 1 0 21 + (ɛ + 1) (ɛ + 1) 22 ɛ + 0 + 1 + (ɛ + 1) 0 ɛ + 0 + 1 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 11 + R(1) 12 (R(1) 22 ) 21 R (2) 12 R (2) 21 R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 R (2) 21 R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 11 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 12 + R(1) 12 (R(1) 22 ) 22 R (2) 21 R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 21 + R(1) 22 (R(1) 22 ) 21 R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 + (ɛ + 0 + 1)(ɛ + 0 + 1) R (2) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruck R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 + (ɛ + 0 + 1)(ɛ + 0 + 1) R (2) 22 22 + R(1) 22 (R(1) 22 ) 22 Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruc R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 + (ɛ + 0 + 1)(ɛ + 0 + 1) R (2) 22 (ɛ + 0 + 1) + (ɛ + 0 + 1)(ɛ + 0 + 1) (ɛ + 0 + 1) (0 + 1) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151

k-pfade durch den Automaten k-pfad reg. Ausdruck k-pfad vereinf. Ausdruck 1 11 11 1 1 0 12 12 1 0 21 21 ɛ + 0 + 1 22 22 ɛ + 0 + 1 Reguläre Ausdrücke für den Weg über höchstens 1 von i nach j: ij R (2) = + ij ij i2 (R(1) 22 ) 2j k-pfad ind. Pfadausdruck reg. Ausdruc R (2) 11 1 + 1 0(ɛ + 0 + 1) 1 R (2) 12 1 0 + 1 0(ɛ + 0 + 1) (ɛ + 0 + 1) 1 0(0 + 1) R (2) 21 + (ɛ + 0 + 1)(ɛ + 0 + 1) R (2) 22 (ɛ + 0 + 1) + (ɛ + 0 + 1)(ɛ + 0 + 1) (ɛ + 0 + 1) (0 + 1) Hoffmann (HAW Hamburg) Thema 4 Reguläre Ausdrücke und reguläre Sprachen 151