• Keine Ergebnisse gefunden

∆ ≡ ε δ GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI TeilIII Determiniert/indeterminiert Dank

N/A
N/A
Protected

Academic year: 2021

Aktie "∆ ≡ ε δ GrundlagenderTheoretischenInformatik/EinführungindieTheoretischeInformatikI TeilIII Determiniert/indeterminiert Dank"

Copied!
5
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vorlesung

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

Bernhard Beckert

Institut für Informatik

Sommersemester 2007

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 1 / 219

Dank

Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen von

Katrin Erk (gehalten an der Universität Koblenz-Landau) Jürgen Dix (gehalten an der TU Clausthal)

Ihnen beiden gilt mein herzlicher Dank.

– Bernhard Beckert, April 2007

B. Beckert – Grundlagen d. Theoretischen Informatik: SS 2007 2 / 219

Teil III

1 Determinierte endliche Automaten (DEAs)

2 Indetermnierte endliche Automaten (NDEAs)

3 Automaten mitε-Kanten

4 Endliche Automaten≡Typ-3-Sprachen

5 Pumping Lemma

6 Wortprobleme

7 Rational = Regulär

Determiniert / indeterminiert

Determinierter endliche Automat

Für einen Zustandqund eine Eingabea genau ein einzigerNachfolgezustand festgelegt durch Übergangsfunktionδ

Indeterminierter endlicher Automat Für einen Zustandqund eine Eingabea

evtl.mehrere Nachfolgezustände– odergar keiner festgelegt durch Übergangsrelation∆

(2)

Indeterminierter endlicher Automat

Definition 12.1 (Indeterminierter endlicher Automat) Einindeterminierterendlicher Automat (NDEA) ist ein Tupel

A

= (

K,Σ,∆,I,F

)

Dabei ist

K eine endliche Menge von Zuständen, Σein endliches Alphabet,

∆⊆

(

K×Σ)×K eine Übergangsrelation, I⊆KeineMenge von Startzuständen, F⊆K eine Menge von finalen Zuständen.

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 137 / 219

Indeterminierter endlicher Automat: Übergangsrelation

Definition 12.2 (Erweiterung vonzu)

(

K×Σ

)

×K

ist definiert durch:

( (

q,ε),q0

)

gdw q0

=

q

( (

q,wa

),

q0

)

gdw ∃q00∈K ∆

( (

q,w

),

q00

)

∧ ∆( (q00,a

),

q0

)

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 138 / 219

NDEA: Akzeptierte Sprache

Wann akzeptiert ein indeterminierter Automat ein Wort?

Ein indeterminierter endlicher AutomatAakzeptiert ein Wortw, wenn esmindestens einenWeg mit derBeschriftungwdurchAgibt, der in einemfinalenZustand endet.

Definition 12.3 (Von einem NDEA akzeptierte Sprache)

Die von einem indeterminierten endlichen AutomatenAakzeptierteSprache ist

L

(

A

)

:= {w∈Σ | ∃s0∈I∃q∈F ∆

( (

s0,w

),

q

)}

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 139 / 219

NDEA: Beispiel

Beispiel 12.4

Der Automat

A

= ({

S0,S1,S2},{a,b},∆,{S0},{S0}) mit

∆(S0,a

) =

{S1}

∆(S1,b

) =

{S0,S2}

(

S2,a

) =

{S0}

akzeptiert die Sprache

L

=

{ab,aba}

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 140 / 219

(3)

NDEA: Graphische Darstellung

Der indeterminierte Automat aus Beispiel 12.4

A : s

>

0

b

a a

b

s

s

1

2

Akzeptiert: {ab,aba}

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 141 / 219

Indeterminierter endlicher Automat

Vom indeterminierten Automaten zum Algorithmus?

Vom Automaten zum Algorithmus (für das Wortproblem):

DEA = Algorithmus

NDEA+Suchstrategie = Algorithmus

Zwei Sichtweisen auf indeterminierte Automaten Der Automat durchläuftalleWege

(paralleloder mittelsBacktracking)

Der Automaträt, welcher von mehreren möglichen Folgezuständen der richtige ist

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 142 / 219

NDEA und DEA: Beispiel

Beispiel 12.5 (DEA für gleiche Sprache wie NDEA aus Bsp. 12.4) a

>

a b a

b

b a b

a b

A:

Akzeptiert: {ab,aba}

NDEA und DEA

Vergleich NDEA / DEA

NDEA:

A : > s0

b

a a

b

s

s

1

2 DEA:

a

> a b a

b

b a b

a b

A:

DEA hat mehr Zustände, komplizierter DEA muss nicht „raten“

DEA braucht genauso viele Schritte

(4)

NDEA und DEA

Wir zeigen später:

Für jeden indeterminierten AutomatenANDEA gibt es einen determinierten AutomatenADEAmit

L

(

ANDEA

) =

L

(

ADEA

)

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 145 / 219

NDEA und DEA: Weiteres Beispiel

Beispiel 12.6

DeterminierterAutomat für die Sprache

L

=

{a,b}{a}{a,b}

(die Sprache aller Wörter über{a,b}, deren zweitletzter Buchstabe einaist)

>

s A:

b b a

a

a b

b

a

0

s s

s

1

2

3

Idee: Im Zustand jeweils die letzten zwei Buchstaben merken

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 146 / 219

NDEA und DEA: Weiteres Beispiel

Beispiel 12.7

IndeterminierterAutomat für die Sprache

L

=

{a,b}{a}{a,b}

(die Sprache aller Wörter über{a,b}, deren zweitletzter Buchstabe einaist)

A : >

a,b

a a,b

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 147 / 219

NDEA und DEA: Größenvergleich

Größenvergleich (Worst case)

Sprache über{a,b}der Wörter, derennt-letzter Buchstabe einaist

Determinierter Automat: 2nZustände

(einen für jede Buchstabenkombination der Längen) Indeterminierter Automat: n

+

1Zustände

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 148 / 219

(5)

Gleichmächtigkeit von DEA und NDEA

Theorem 12.8 (DEA gleich mächtig wie NDEA) Eine Sprache ist rational

(es gibt einendeterminiertenendlichen Automaten, der sie akzeptiert) gdw

es gibt einenindeterminiertenendlichen Automaten, der sie akzeptiert.

Beweis.

“:

SeiLeine rationale Sprache.

Dann gibt es laut Definition einen

determinierten endlichen AutomatenADEAmitL

=

L

(

ADEA

)

.

Jeder determinierte endliche Automat ist aber insbesondere auch ein (besonderer) indeterminierter endlicher Automat.

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 149 / 219

Gleichmächtigkeit von DEA und NDEA

Beweis (Forsetzung)

“:

Sei

ANDEA

= (

K,Σ,∆,I,F

)

ein (beliebiger) indeterminierter endlicher Automat.

Er akzeptiert die SpracheL

(

ANDEA

)

.

Beweisidee:

Konstruiere ausANDEAeinen determinierten AutomatenADEAmit L

(

ANDEA

) =

L

(

ADEA

)

mit Hilfe einer Potenzmengenkonstruktion . . .

B. Beckert – Grundlagen d. Theoretischen Informatik: Indetermnierte endliche Automaten (NDEAs) SS 2007 150 / 219

Gleichmächtigkeit von DEA und NDEA

Beweis (Forsetzung) Fortsetzung . . .

Zustände inADEAbestehen aus Mengen von Zuständen vonANDEA

Wenn man inANDEAmitwnachq1, . . . ,qngelangt, dann gelangt man inADEAmitwnachq0

=

{q1, . . . ,qn}. Initialer Zustand vonADEA:

Menge aller initialen Zustände vonANDEA

Finale Zustände vonADEA:

Jede Menge von Zustände, die einen finalen Zustand vonANDEAenthält

Referenzen

ÄHNLICHE DOKUMENTE

Übung: Schreiben Sie eine Prologtheorie, über die Personen Hans, Marie, Otto, Lisa und Klaus.. Hans und Marie sind die Eltern

Auÿerdem können Grammatiken auch für die Analyse (Erkennung) formaler Sprachen und endliche Automaten für ihre Erzeugung genutzt werden... Formale Sprachen Reguläre Ausdrücke

Man zeichnet alle Kanten ein, die benötigt werden, damit sich die von dem Automaten akzeptierte Sprache nicht ändert, wenn man die -Kante wegläÿt. Hierzu kann man sich überlegen,

head: left hand side of a rule body: right hand side of a rule clause: rule or fact.. predicate: collection of clauses with

Zeichne alle Kanten ein, die benötigt werden, damit sich die von dem Automaten akzeptierte Sprache nicht ändert, wenn man die -Kante wegläÿt... deterministische

head: left hand side of a rule body: right hand side of a rule clause: rule or fact.. predicate: collection of clauses with

Automaten akzeptiert wird, gibt es eine rechts- lineare Grammatik, die diese Sprache erzeugt und umgekehrt8. A=

zeigt (formal durch Induktion ¨ uber die regul¨ aren Ausdr¨ ucke), dass alle regul¨ aren Spra- chen von endlichen Automaten erkannt werden.. Korollar 2.2.16 Jede regul¨ are Sprache