update
BIN
Writerside/images/image_743.png
Normal file
After Width: | Height: | Size: 50 KiB |
BIN
Writerside/images/image_744.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
Writerside/images/image_745.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
Writerside/images/image_746.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
Writerside/images/image_747.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
Writerside/images/image_748.png
Normal file
After Width: | Height: | Size: 79 KiB |
BIN
Writerside/images/image_749.png
Normal file
After Width: | Height: | Size: 14 KiB |
@ -34,20 +34,24 @@
|
|||||||
### Sprache eines Automaten
|
### Sprache eines Automaten
|
||||||
> Sei $A=( Σ,Q,q_s,Q_a, δ)$ ein DEA. Die fortgesetzte Übergangsfunktion $ δ^*: Q x Σ^* →Q$ ist definiert durch
|
> Sei $A=( Σ,Q,q_s,Q_a, δ)$ ein DEA. Die fortgesetzte Übergangsfunktion $ δ^*: Q x Σ^* →Q$ ist definiert durch
|
||||||
>
|
>
|
||||||
> $ δ^*(q, ∈):=q$ und
|
> $ δ^*(q, ε):=q$ und
|
||||||
>
|
>
|
||||||
> $ δ^*(q,wx):= δ( δ^*(q,w),x)$ für $w ∈ Σ^* und x ∈ Σ$
|
> $ δ^*(q,wx):= δ( δ^*(q,w),x)$ für $w ∈ Σ^* und x ∈ Σ$
|
||||||
|
|
||||||
↑ ~_induktive Definition_
|
↑ ~_induktive Definition_
|
||||||
|
|
||||||
> Sei $A= ( Σ,Q, q_s, Q_A, δ) ein DEA.
|
> Sei $A= ( Σ,Q, q_s, Q_a, δ) ein DEA.
|
||||||
>
|
>
|
||||||
> (a) Wir sagen $A$ akzeptiert $w ∈ Σ^*$, wenn $ δ^*(q_s,w) ∈ Q_A$
|
> (a) Wir sagen $A$ akzeptiert $w ∈ Σ^*$, wenn $ δ^*(q_s,w) ∈ Q_a$
|
||||||
>
|
>
|
||||||
> (b) Die von $A$ akzeptierte Sprache ist $L(A) := \{w ∈ Σ^* \space| \space A\space akzeptiert \space w\}$
|
> (b) Die von $A$ akzeptierte Sprache ist $L(A) := \{w ∈ Σ^* \space| \space A\space akzeptiert \space w\}$
|
||||||
|
|
||||||
|
### Übung:
|
||||||
|
#### (a) $L_1 = \{a^nb^mc^k \space | \space n,m,k ≥ 1\}$
|
||||||
|

|
||||||
|
|
||||||
### Unvollständige Automaten
|
### Unvollständige Automaten
|
||||||
> Ein unvollständiger deterministischer Automat $A=( Σ, Q,Q_s, Q_A, δ)$ ist wie ein normaler DEA
|
> Ein unvollständiger deterministischer Automat $A=( Σ, Q,Q_s, Q_a, δ)$ ist wie ein normaler DEA
|
||||||
> mit folgenden Änderungen:
|
> mit folgenden Änderungen:
|
||||||
>
|
>
|
||||||
> (a) Die Übergangsfunktion $ δ$ darf partiell sein
|
> (a) Die Übergangsfunktion $ δ$ darf partiell sein
|
||||||
@ -83,6 +87,70 @@
|
|||||||
- wechsle in Folgezustand
|
- wechsle in Folgezustand
|
||||||
- ist akzeptierend? → `:)`
|
- ist akzeptierend? → `:)`
|
||||||
- sonst → verwerfe
|
- sonst → verwerfe
|
||||||
-
|
- > Goldene Regel: Akzeptiere Eingabe, wenn akzeptierende Berechnung existiert
|
||||||
#### Beispiel NEA
|
|
||||||
|
### Sprache eines NEA
|
||||||
|
> Sei $N=( Σ,Q,q_s,Q_a, δ)$ ein NEA. Die fortgesetzte Übergangsfunktion $ δ^*: Qx Σ^*→P(Q)$ ist definiert durch:
|
||||||
|
>
|
||||||
|
> $ δ^*(q, ε) := \{q\}$ und
|
||||||
|
>
|
||||||
|
> $ δ^*(q,wx) := ∪ δ(q', x)$ für $w ∈ Σ^*$ und $x ∈ Σ$
|
||||||
|
>
|
||||||
|
> _$q' ∈ δ^*(q,w)$_
|
||||||
|
|
||||||
|
### Beispiel NEA
|
||||||

|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## NEA vs DEA
|
||||||
|
- NEA scheinbar viel mächtiger als DEAs
|
||||||
|
- sehr viele Berechnungspfade (statt nur einem pro Wort)
|
||||||
|
- Alternativer Blick auf das Parsen eines NEAs
|
||||||
|
- für jede Stelle der Eingabe
|
||||||
|
- in welchen Zuständen könnte der NEA sein?
|
||||||
|
- akzeptiere, wenn finaler Metazustand Zustand aus $Q_a$ enthält
|
||||||
|
- 
|
||||||
|
|
||||||
|
|
||||||
|
## Potenzautomaten
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
### Konstruktion und Sprache eines Potenzautomaten
|
||||||
|
#### Konstruktion: Funktionstabelle für δ
|
||||||
|
- 1. Spalte: bisher entdeckte Metazustände
|
||||||
|
- restliche Spalten: Folge-Metazustand für jedes Zeichen $x ∈ Σ$
|
||||||
|
- solange unvollständige Zeile existiert: ausfüllen
|
||||||
|
- initial: nur $\{s\}$ sicher erreichbar → eine unvollständige Zeile
|
||||||
|
- je neu entdecktem Metazustand: lege neue Zeile an
|
||||||
|
|
||||||
|
> Der Potenzautomat $A_N$ eines NEA $N$ ist ein deterministischer endlicher Automat mit $L(A_N) = L(N)$
|
||||||
|
>
|
||||||
|
> 
|
||||||
|
>
|
||||||
|
> Beweis: 
|
||||||
|
|
||||||
|
## Mächtigkeit & Grenzen endlicher Automaten
|
||||||
|
- parsen einfacher Strukturen
|
||||||
|
- E-Mail
|
||||||
|
- XML-Tags
|
||||||
|
- Datumsformate
|
||||||
|
- ...
|
||||||
|
- können sich Dinge merken
|
||||||
|
- NEAs betrachten viele Berechnungswege "gleichzeitig"
|
||||||
|
- sind aber letztlich nur _Syntactic Sugar_
|
||||||
|
- _nur dafür da, dass es besser lesbar ist_
|
||||||
|
|
||||||
|
- können sich nur so viel merken, wie sie Zustände haben
|
||||||
|
- geht: das 17. Zeichen von w ist 0
|
||||||
|
- geht nicht: das |w|/2. Zeichen von w ist 0
|
||||||
|
- können keine komplexen Strukturen erkennen
|
||||||
|
- Palindrome
|
||||||
|
- _LAGERREGAL_
|
||||||
|
- arithmetische Ausdrücke
|
||||||
|
- $42*(x+y)-z$
|
||||||
|
- Hierarchien
|
||||||
|
- Verschachtelungen
|
||||||
|
- ...
|
||||||
|