Chomsky-Hierarchien

Reguläre Sprachen

Eigentlich beschreibt ein regulärer AusdruckE\small Edie reguläre SpracheL(E)\small L(E).

Lreg (Σ)\mathcal{L}_{\text {reg }}(\Sigma) ist die kleinste Menge für die gilt

{},{aΣ}Lreg (Σ) \small\{\},\{a \in \Sigma \} \color{grey}\in \mathcal{L}_{\text {reg }}(\Sigma) 

A,BLreg(Σ)AB,AB,ALreg (Σ) \small A, B \textcolor{grey}{\in \mathcal{L}_{\mathrm{reg}}(\Sigma)} \implies A \cup B, ~~A \cdot B,~~ A^{*} \color{grey}\in \mathcal{L}_{\text {reg }}(\Sigma) 

Leerwort auch gültig da {}={ε}\small \{\} ^* = \{\varepsilon\}

Algebraische Notation

*hat höchste Priorität,++hat niedrigste Priorität

s\small s statt {s}\small \{s\} für s(Σε)\small s \in (\Sigma \cup \varepsilon)

\small \empty statt {}\small \{\}

L1+L2\small L_1+L_2 statt L1L2\small L_{1} \cup L_{2}

L1L2\small L_{1} L_{2} statt L1L2\small L_{1} \cdot L_{2}

L\small L^{*} bleibt L\small L^{*}


Abgeschlossenheit

A,BLreg(Σ) \small A, B \textcolor{grey}{ \in \mathcal{L}_{\mathrm{reg}}(\Sigma) }\implies 

AB,AB,ALreg (Σ) \small A \cup B, ~~A \cdot B,~~ A^{*} \color{grey} \in \mathcal{L}_{\text {reg }}(\Sigma) 

A+=AALreg (Σ) \small A^+ = A^* \cdot A \color{grey}\in \mathcal{L}_{\text {reg }}(\Sigma) 

AB=AˉBˉLreg (Σ) \small A \cap B=\overline{\bar{A} \cup \bar{B}}\color{grey}\in \mathcal{L}_{\text {reg }}(\Sigma) 

AB=ABˉLreg (Σ) \small A-B=A \cap \bar{B} \color{grey}\in \mathcal{L}_{\text {reg }}(\Sigma) 

Komplement über Σ\small \Sigma^*

DEA erzeugen wobei Endzustände und Nicht-Endzustände vertauscht wurden

Spiegelung

EA erzeugen, wobei Start und Endzustand vertauscht wurden

Homomorphismen

regulärer Ausdruck wo alle a\small a mit h(a)\small h(a) ersetzt wurden

Homomorphismus

h(L)={h(w)wL}\small h(L)=\{h(w) \mid w \in L\}

h:ΣΓ\small h: \Sigma \longmapsto \Gamma^{*}

h(ε)=ε\small h(\varepsilon)=\varepsilon

wΣ,aΣ:h(wa)=h(w)h(a) \small \forall w \in \Sigma^{*}, ~ a \in \Sigma:~ h(w a)=h(w) h(a) 

Reguläre Sprachen sind rekursive Probleme

P={wwL}\small P=\{w \mid w \in L\}(Wortproblem)

Gehört ww der Sprache L\small L an?

Lösung: DEA für L\small L erzeugen und δ(q0,w)F\small \delta^{*}(q_{0}, w) \in F prüfen.

P={ww{}}\small P=\{w \mid w \in \{\}\}

Ist w\small w leer?

Lösung: DEA für L\small L erzeugen und w:δ(q0,w)F \small \exists w: \delta^{*}\left(q_{0}, w\right) \in F  prüfen.

Ist L\small L endlich oder unendlich?

Lösung: Minimale DEA für L\small L erzeugen. Falls sie abgesehen von Falle einen Zyklus enthält ist sie unendlich.

Ist L=L\small L=L' ?

Lösung: Überprüfen ob LL=LL=\small L-L' = L-L' = \empty

Endlicher Automat zur regulären Sprache

Zu jeder regulären Sprache LL gibt es einen endlichen Automaten A\mathcal A , sodass L=L(A)L = L(\mathcal A) .

Minimalautomat

Reguläre Sprache \mapsto eindeutiger DEA mit minimaler Anzahl an Zuständen

Kann mit dem Minimierungsalgorithmus von Brozozowski erhalten werden.

Pumping Lemma für reguläre Sprachen

Nicht-reguläre Sprachen

Wenn es keine DEA für L\small L gibt.

Wenn die Sprache unbeschränkten Speicher braucht.

zb wenn wir unbegrenzt viele Zustände brauchen um eine Anzahl zu merken.

L={0n1nn0}\small L=\left\{0^{n} 1^{n} \mid n \geq 0\right\}

A={ww entha¨lt gleich viele 0 wie 1} \small A=\{w \mid w \text { enthält gleich viele } 0 \text { wie } 1\} 

Schubfachprinzip (Pigeonhole principle)

(Teil des Beweises dass Sprache nicht regulär ist)

n+1\small n+1 Gegenstände auf n\small n Schubfächer \Rarr in einem Schubfach müssten 2 Gegenstände sein.


DEA A\mathcal A hat mm Zustände, Wort aus ww Sprache hat mehr: wm|w| \geq m

Ein Zustand muss mehrfach durchlaufen werden.

Algorithmus:

Zerlege ww in xyzxyz (Abschnitt-1, Schleife, Abschnitt-2)

Alle wörter xyizx y^{i} z werden ebenfalls von A\mathcal A akzeptiert.

Pumping Lemma für reguläre Sprachen

In unendlichen regulären Sprachen LL enthält jedes Wort wLw \in L ab einer bestimmten Länge wm|w|\geq m einen Abschnitt, dass beliebig wiederholt werden kann und trotzdem von der Sprache akzeptiert wenn:

w=xyzw = xyz

xym|xy| \leq m

y>0|y| > 0

Dann gilt:

i0:wi=xyizL\forall i \geq 0:~ w_i = xy^iz \in L

Beispiel: Beweis dass Sprache nicht regulär ist

L={anbnn0}L=\left\{a^{n} b^{n} \mid n \geq 0\right\}

Beweis durch widerspruch:

Angenommen LL sei regulär.

Wir wählen irgendein beliebiges mm und wLw \in L sodass ambm=wa^mb^m =w

Daraus folgt wm\small |w|\geq m da w=2m\small |w| = 2\cdot m

Wir wählen irgendeine beliebige Zerlegung xyz=wxyz = w unter den Bedingungen

xym\small |xy| \leq m(für dasm\small mdass vorher bestimmt wurde)

y>0\small |y| > 0

xy\small xy kann nur aus Symbol a\small a bestehen.

Wir wählen ein einziges beliebiges ii

zB i=2\small i = 2

Dann müsste wenn LL regulär wäre, auch xy2z=am+ybmLx y^{2} z=a^{m+|y|} b^{m} \in L

Das ist nicht der Fall.

Kontextfreie Sprachen

Kontextfrei bedeutet dass die Ableitungs-Art keine Rolle spielt und man immer mit der kontextfreien Grammatik die selbe Sprache erzeugt.

Beispiele

Wohlgeformte Klammerausdrücke WKA

G={A},{(,)},{Aε(A)AA},A G=\langle\{A\},\{(,)\},\{A \rightarrow \varepsilon|(A)| A A\}, A\rangle 

Palindrome über {a,b}\small \{a, b\}

G=S,{a,b}{SεabaSabSb},S \begin{aligned} G=&\lang S,\{a, b\}\\ &\{S \rightarrow \varepsilon|a| b|a S a| b S b\}, S\rangle \end{aligned} 

Wichtig:

{wwrw{a,b}}\{ww^r \mid w \in \{a,b\}^* \} ist nicht dasselbe wie

{w{a,b}w=wr}\{w \in \{a,b\}^* \mid w = w^r\}

(Entscheidungs-)Probleme die über kontextfreie SprachenLLdefiniert werden:

Rekursiv

Ist LL leer / endlich / unendlich?

wLw\in L ? (Wortproblem)

Nicht rekursiv

L=ΣL=\Sigma^* ?

L1=L2L_1=L_2 ? (Äquivalenzproblem)

L1L2L_{1} \subseteq L_{2} ?

L1L2={}L_{1} \cap L_{2}=\{\} ?

Ist LL regulär?

Ist L1L2L_{1} \cap L_{2} kontextfrei?

Ist ΣL\Sigma^{*}-L kontextfrei?

Satz von Chomsky-Schützenberger

Dyck-Sprachen

Alphabet bestehend aus den Klammerpaaren 1\small 1 bis n\small n :

Γn={(1,)1,,(n,)n}\Gamma_{n}=\left\{(_1,)_{1}, \ldots,(_n,)_{n}\right\}

DnD_{n} über das Alphabet Γn\Gamma_{n} ist die kleinste Menge für die gilt:

εDn\varepsilon \in D_{n}

vDn(iv)iDn,1in v \in D_{n} \implies \textcolor{pink}{(_{i}} v \textcolor{pink}{)_{i}} \in D_{n}, 1 \leq i \leq n 

v1,v2Dnv1v2Dn v_{1}, v_{2} \in D_{n} \implies v_{1}\cdot v_{2} \in D_{n} 

Satz von Chomsky-Schützenberger

Jede kontextfreie Sprache ist ein homomorphes Bild von dem Durschschnitt

von einer regulären Sprache mit einer Dyck-Sprache


Sprache LL ist kontextfrei wenn zu einem n0n\geq 0 es ein h:ΓnΣh: \Gamma_{n}^{*} \longmapsto\Sigma^{*} gibt, sodass:

L=h(DnR)L=h\left(D_{n} \cap R\right)

Wobei RR eine reguläre Sprache und DnD_n eine Dyck-Sprache über Γn\Gamma_n ist.


Beispiel

L={anbnn0}L=\left\{a^{n} b^{n} \mid n \geq 0\right\} ist kontextfrei

L=h(D1{(}{)}) L=h\left(D_{1} \cap\left\{\textcolor{pink}(\}^{*}\{\textcolor{pink})\right\}^{*}\right) 

Wir haben als Definitionsmenge für die Homomorphismus-Funktion den Durchschnitt zwischen D1=()D_1=\textcolor{pink}(\textcolor{pink}) und {(}{)}\{\textcolor{pink}(\}^{*}\{\textcolor{pink})\}^* .

Die Dyck-Sprache beinhaltet nicht nur nested brackets sondern auch die Konkatenation wie ()()\color{pink}()() .

Kontextfreie Sprachen über 1-Element-Alphabet

Jede kontexfreie Sprache über einem einelementigen Alphabet ist regulär.

Pumping Lemma für kontextfreie Sprachen

Lemma

Sei LL eine unendliche kontextfreie Sprache.

wL:\forall w \in L: wenn wm>0|w| \geq m >0 dann existiert eine Zerlegung

w=uvxyzw = uvxyz

vxym|v x y| \leq m

vy1|v y| \geq 1

Und i0:\forall i \geq 0:

wi=uvixyizLw_{i}=u v^{i} x y^{i} z \in L

Beweis

Wir wollen beweisen, dass das obige Lemma für kontextfreie Sprachen gilt.

Bei regulären Sprachen argumentiert man mit Zuständen in Pfaden von DEA, hier mit Anzahl der Nonterminale in Pfaden von binären Ableitungsbäumen (in der Chomsky NF).


Sei GG eine kontextfreie Grammatik in Chomsky NF.

Der längste Pfad im Ableitungsbaum von GG hat kkNonterminale .

Wähle beliebiges wL(G)w \in L(G) mit w2k=m|w| \geq 2^k = m

Die Konkatenation von allen Terminalen, die an der Front erreicht wurden ist das abgeleitete Wort

Daraus folgt:

Baum muss 2k\geq 2^kLeafs haben.

Die leafs bestimmen die depth von log2(2k)=k\log_2(2^k) = k .

Es muss einen Pfad der Längek+1\geq k+1 (inklusive Startsymbol) geben.

Es müssen sich am Pfad k+1\geq k+1 Nonterminale befinden (obwohl wir nur kk Nonterminale haben.)

Ein Nonterminal muss mindestens doppelt vorkommen.

Es werden Abschnitte im Baum wiederverwendet.

Binärbaum + letzter Ableitungsschritt.

Wir betrachten die Teilwörter für die, die Node / das Nonterminal AA mehrfach im Pfad vorkommt.

Wir wählen 2 sich wiederholende Abschnitte.

w=uvxundefined1yundefined2zw = u\underbrace{v\underbrace{x}_{1}y}_{2}z

Da das obere AA , zuständig für Abschnitt 2 nicht leer sein kann, dürfen v,yv, y nicht leer sein.

  • Alternative Möglichkeiten

    uxz=uv0xy0zL(G)u x z=u v^{0} x y^{0} z \in L(G)

    uvvxyyz=uv2xy2zL(G)u v v x y y z=u v^{2} x y^{2} z \in L(G)

Allgemein gilt für jeden Baum

i0:uvixyizL(G)\forall i \geq 0: u v^{i} x y^{i} z \in L(G)

Folgerung: Pumping Lemma Kollorar

Für alle Sprachen

L{a}L \subseteq\{a\}^{*}

L={af(n)n0}L=\left\{a^{f(n)} \mid n \geq 0\right\}

mit streng monoton wachsender Funktion ff in N\N und bijektiver Abbildung n(k)n(k) für jedes kk sodass

f(n(k+1))f(n(k))kf(n(k+1))-f(n(k)) \geq k

gilt, LL ist nicht kontextfrei.

  • Beispiele

    {app ist eine Primzahl } \left\{a^{p} \mid p \text { ist eine Primzahl }\right\} 

    {a2nn0}\left\{a^{2^{n}} \mid n \geq 0\right\}

Pumping Lemma - Beispiel

L={anbncnn0}L=\left\{a^{n} b^{n} c^{n} \mid n \geq 0\right\} ist nicht kontextfrei.

Beweis

Angenommen LL wäre kontextfrei, wählen wir mm :

w=ambmcmw = a^mb^mc^m

wL:wa=wb=wc\forall w\in L: |w|_{a}=|w|_{b}=|w|_{c}

w=3m>m|w|=3 m>m

Wir zerlegen ww in:

w=uvxyzw=u v x y z

uu muss immer das Symbol aa enthalten, zz immer das Symbol cc

vxym|v x y| \leq m

Wir stellen uns diesen Abschnitt wie einen Rahmen vor, den wir über Teilwörter von ww schieben können.

vy1|v y| \geq 1

Daraus folgt, dass vxyvxy nicht gleichzeitig alle 3 Symbole a,b,ca,b,c umfassen kann.

Entweder vxya=0|v x y|_{a}=0 oder vxyc=0|v x y|_{c}=0 weil sie zu weit auseinander liegen.


Wir untersuchen alle möglichen Fälle:

Fall 1:vxyc=0|v x y|_{c}=0

vxyc=0vy1vya+vyb>0 |v x y|_{\textcolor{pink}{c}}=0 \wedge |v y| \geq 1 \implies|v y|_{\textcolor{pink}{a}}+|v y|_{\textcolor{pink}{b}}>0 

Wir wählen ein beliebiges i=0i=0 .

w0=uv0xy0z=uxzw_{0}=u v^{0} x y^{0} z=u x z

Dem pumping Lemma zufolge müsste w0Lw_0 \in L

Für uxzuxz gilt:

uxza<wa |u x z|_{\textcolor{pink}{a}}<|w|_{\textcolor{pink}{a}} 

uxzb<wb |u x z|_{\textcolor{pink}{b}}<|w|_{\textcolor{pink}{b}} 

uxzc=uvxyzc=wc |u xz|_{\textcolor{pink}{c}}=|u v x y z|_{\textcolor{pink}{c}}=|w|_{\textcolor{pink}{c}} 

Das widerspricht uxza=uxzb=uxzc |u x z|_{\textcolor{pink}{a}}=|u x z|_{\textcolor{pink}{b}}=|u x z|_{\color{pink}c}  und daraus folgt uxz=w0Lu x z = w_0\notin L .

Fall 2:vxyc>0|v x y|_{c}>0

vxyc>0vy1vxya=0vyb+vyc>0 |v x y|_{\color{pink}c}>0 \wedge |v y| \geq 1\implies |v x y|_{\color{pink}a}=0 \wedge |v y|_{\color{pink}b}+|v y|_{\color{pink}c}>0 

Wir wählen ein beliebiges i=0i=0 .

w0=uv0xy0z=uxzw_{0}=u v^{0} x y^{0} z=u x z

Für uxzuxz gilt:

uxza=uvxyza=wa |u x z|_{\color{pink}a}=|u v x y z|_{\color{pink}a}=|w|_{\color{pink}a} 

uxzb<wb|u x z|_{\color{pink}b}<|w|_{\color{pink}b}

uxzc<wc|u x z|_{\color{pink}c}<|w|_{\color{pink}c}

Das widerspricht uxza=uxzb=uxzc |u x z|_{\color{pink}a}=|u x z|_{\color{pink}b}=|u x z|_{\color{pink}c}  und daraus folgt uxzLu x z \notin L .

Sprachfamilien

Sprachfamilien

Die Menge aller formalen Sprachen LΣL \subseteq \Sigma^{*} die von einer Typ- i{0,1,2,3}i \in\{0,1,2,3\} Grammatik erzeugt werden können nennt man Li(Σ)\mathcal{L}_{i}(\Sigma) .

Die Familie nennt man Li\mathcal{L}_i .

Typ-0:A→b,A→BC,AD→BC,b∈T∪{ε}Typ-1:A→b,A→BC,AD→BC,b∈TTyp-2:A→b,A→BC,b∈TTyp-3:A→b,A→bC,b∈T\begin{array}{lll} \text { Typ-0: } & A \rightarrow b, \quad A \rightarrow B C, \quad A D \rightarrow B C, & b \in T \cup\{\varepsilon\} \\ \text { Typ-1: } & A \rightarrow b, \quad A \rightarrow B C, \quad A D \rightarrow B C, & b \in T \\ \text { Typ-2: } & A \rightarrow b, \quad A \rightarrow B C, & b \in T \\ \text { Typ-3: } & A \rightarrow b, \quad A \rightarrow b C, & b \in T \end{array}Typ-0:Typ-1:Typ-2:Typ-3:​A→b,A→BC,AD→BC,A→b,A→BC,AD→BC,A→b,A→BC,A→b,A→bC,​b∈T∪{ε}b∈Tb∈Tb∈T​

Für 1,2,3\small 1,2,3 ist SεS \rarr \varepsilon erlaubt wenn SS nicht auf rechten Seite der Produktion ist.

L0\mathcal L_0 rekursiv aufzählbar

L1\mathcal L_1 kontextsensitiv

L2\mathcal L_2 kontextfrei

L3\mathcal L_3 regulär

Rekursive SprachenLrec (Σ)\mathcal{L}_{\text {rec }}(\Sigma)

LL0(Σ)L \in \mathcal{L}_{0}(\Sigma) ist rekursiv,

wenn ΣL=LˉL0(Σ)\Sigma^{*}-L= \bar{L} \in \mathcal{L}_{0}(\Sigma) ist.

Wortproblem

Das Problem wLw \in L ist für rekursive Sprachen entscheidbar.

Beweis

Berechne schrittweise alle möglichen Wörter in nn Ableitungsschritten in Grammatik GG bzw GG' für das Komplement der Sprache.

Abschlusseigenschaften

L3L2L1L0VereinigungjajajajaKonkatenationjajajajaKleenescher SternjajajajaKomplementjaneinjaneinDurchschnittjaneinjajaDurchschnitt mit reg. MengenjajajajaHomomorphismenjajaneinjaε-freie Homomorphismenjajajajainverse Homomorphismenjajajajagsm-Abbildungenjajaneinjaε-freie gsm-Abbildungenjajajaja\small \begin{array}{|l|l|l|l|l|}\hline & \mathcal{L}_{3} & \mathcal{L}_{2} & \mathcal{L}_{1} & \mathcal{L}_{0} \\\hline \text { Vereinigung } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { Konkatenation } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { Kleenescher Stern } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { Komplement } & \text { ja } & \text { nein } & \text { ja } & \text { nein } \\\hline \text { Durchschnitt } & \text { ja } & \text { nein } & \text { ja } & \text { ja } \\\hline \text { Durchschnitt mit reg. Mengen } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { Homomorphismen } & \text { ja } & \text { ja } & \text { nein } & \text { ja } \\\hline \varepsilon \text {-freie Homomorphismen } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { inverse Homomorphismen } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline \text { gsm-Abbildungen } & \text { ja } & \text { ja } & \text { nein } & \text { ja } \\\hline \varepsilon \text {-freie gsm-Abbildungen } & \text { ja } & \text { ja } & \text { ja } & \text { ja } \\\hline\end{array}VereinigungKonkatenationKleenescher SternKomplementDurchschnittDurchschnitt mit reg. MengenHomomorphismenε-freie Homomorphismeninverse Homomorphismengsm-Abbildungenε-freie gsm-Abbildungen​L3​jajajajajajajajajajaja​L2​jajajaneinneinjajajajajaja​L1​jajajajajajaneinjajaneinja​L0​jajajaneinjajajajajajaja​​

Chomsky-Hierarchie

SprachfamilieGrammatiktypMaschinenmodellL0unbeschra¨nktTuringmaschine (TM)L1kontextsensitiv / monotonLinear besch. Aut. (LBA)L2kontextfreiKellerautomat (KA)L3regula¨rEndlicher Automat (EA)\small \begin{array}{l|l|l}\text { Sprachfamilie } & \text { Grammatiktyp } & \text { Maschinenmodell } \\\\\hline \hline \begin{array}{l} \mathcal{L}_{0} \end{array} & \color{grey}\text { unbeschränkt } & \begin{array}{l}\text { Turingmaschine (TM)}\end{array} \\\hline \begin{array}{l}\mathcal{L}_{1} \end{array} & \text { kontextsensitiv / monoton} & \begin{array}{l}\text { Linear besch. Aut. (LBA)}\end{array} \\\hline \begin{array}{l}\mathcal{L}_{2} \end{array} & \text { kontextfrei } & \begin{array}{l}\text { Kellerautomat (KA)}\end{array} \\\hline \begin{array}{l}\mathcal{L}_{3} \end{array} & \text { regulär } & \begin{array}{l}\text { Endlicher Automat (EA)}\end{array} \end{array}SprachfamilieL0​​L1​​L2​​L3​​​Grammatiktypunbeschra¨nktkontextsensitiv / monotonkontextfreiregula¨r​MaschinenmodellTuringmaschine (TM)​Linear besch. Aut. (LBA)​Kellerautomat (KA)​Endlicher Automat (EA)​​​

L3L2L1LrecL0 \small \mathcal{L}_{3} \varsubsetneqq \mathcal{L}_{2} \varsubsetneqq \mathcal{L}_{1} \varsubsetneqq \mathcal{L}_{r e c} \varsubsetneqq \mathcal{L}_{0} 

L0\mathcal L_0 rekursiv aufzählbar

Lrec\mathcal L_{rec} rekursiv

L1\mathcal L_1 kontextsensitiv

L2\mathcal L_2 kontextfrei

L3\mathcal L_3 regulär

Homomorphismen

Alphabete: Σ,Γ\Sigma, \Gamma

Homomorphismus: h:ΣΓh: \Sigma \mapsto \Gamma^{*}

h(ε)=εh(\varepsilon)=\varepsilon(wennaΣ:h(a)ε\forall a \in \Sigma: h(a) \neq \varepsilondann nennt man ihnε\varepsilon-frei)

h(wa)=h(w)h(a)h(w a)=h(w) h(a)

Anwendung auf jedes Wort der Sprache

h(L)={h(w)wL}h(L)=\{h(w) \mid w \in L\}

Inverser Homomorphismus

h1(L):={wΣh(w)L}h^{-1}(L):=\left\{w \in \Sigma^{*} \mid h(w) \in L\right\}

Abgeschlossenheit unterh(L)h(L)

Sprachfamilien 0,2,3\small 0,2,3 sind gegenüber beliebigen Homomorphismen abgeschlossen.

Familie der monotonen, kontextsensitiven Sprachen ist nur gegenüber ε\varepsilon -freien Homomorphismen abgeschlossen.

Abgeschlossenheit unterh1(L)h^{-1}(L)

Sprachfamilien 0,1,2,3\small 0,1,2,3 gegenüber inversen Homomorphismen abgeschlossen.

GSM-Abbildungen

Generalized sequential machines GSM

endlicher Automat mit Ausgabe

M=Q,Σ,Γ,δ,q0,F M=\left\langle Q, \Sigma, \Gamma, \delta, q_{0}, F\right\rangle 

QQ Zustände

Σ\Sigma Eingabealphabet

Γ\Gamma Ausgabealphabet

δ:Q×ΣQ×Γ\delta: Q \times \Sigma \rightarrow Q \times \Gamma^{*}

Beispiel für Übergang

δ(q,a)=(p,w)\delta(q, a)=(p, w)

Zustandswechsel qaq \mapsto a und es wird ww ausgegeben.

GSM Abbildungen

fM:ΣP(Γ) f_{M}: \Sigma^{*} \rightarrow \mathcal{P}\left(\Gamma^{*}\right) 

fM(L):={vΓvfM(w) fu¨r ein wL} f_{M}(L):=\left\{v \in \Gamma^{*} \mid v \in f_{M}(w) \text { für ein } w \in L\right\} 


Mann nennt MM und fMf_M

ε\varepsilon -frei

wenn δ:Q×ΣQ×Γ+ \delta: Q \times \Sigma \rightarrow Q \times \Gamma^{+} 

deterministisch

wenn für jedes (q,a)(q, a) höchstens ein (q,a;p,v)δ(q, a ; p, v) \in \delta existiert.

Homomorphismus vs. GSM-Abbildung

Homomorphismen = GSM-Abbildungen mit 1 Zustand.

Mh=({q},Σ,Γ,δ,q,{q})M_{h}=(\{q\}, \Sigma, \Gamma, \delta, q,\{q\})

aΣ:δ(q,a)=(q,h(a))\forall a \in \Sigma: \delta(q, a)=(q, h(a))

Abschluss von FamilienLi\mathcal L_igegenüber GSM

Sprachfamilien 0,2,3\small 0,2,3 sind gegenüber beliebigen GSM-Abbildungen abgeschlossen.

Kontextsensitive Sprachen nur gegenüber ε\varepsilon -freien GSM-Abbildungen.