Reguläre Sprachen: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Automaten und formale Sprachen
 
Keine Bearbeitungszusammenfassung
 
(16 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Automaten und formale Sprachen]]
='''Reguläre Sprache'''=
='''Reguläre Sprache'''=
Reguläre Sprachen, werden durch reguläre Grammatiken, reguläre Ausdrücke und endliche Automaten (DFA bzw. NFA) erzeugt.
Seien <math> T\ , A\  </math> Nichtterminale
und sei <math> a\ </math> ein Terminale, so gelten folgende Bildungsvorschriften:<br/>
<math> T \rightarrow aA </math> Rechtsrekursion, <br/>
<math> T \rightarrow Aa </math> Linksrekursion, <br/>
<math> A \rightarrow a </math>
Überführungsfunktion für einen DFA: <br/>
<math>L(M) = \{  x_1 ... x_n \in {\Sigma^*} \vert \exists q_1 ... q_{n-1} \in Z , q_n \in E\ : \delta (q_i,x_{i+1}) = q_{i+1} </math> für<math>\ i = 0, ... , n-1 \} </math>
<b>Abgeschlossen bzgl:</b>
<ul>
<li><math> \cup\ </math> Vereinigung</li>
<li><math> \cap\ </math> Schnitt</li>
<li><math> ^- </math>  Komplement</li>
<li><math> \circ\ </math> Verknüpfung</li>
<li><math> *\ </math> Sternhülle</li>
</ul>
<b>Komplement</b>
Bei einem Automat, der das Komplement akzeptiert, werden alle Nicht-Endzustände zu Endzuständen und umgekehrt.
<math> M = ( Z\ , \Sigma , \delta, q_0 , Z\ \backslash E\ ) </math> <br/>
<b>Schnitt</b> <br/>
<math>M = ( Z\ , \Sigma , \delta , p_0 , E\ ) </math> <br/>
<math>N = ( Z\ , \Sigma , \delta , q_0 , E\ ) </math> <br/>
<math> M\ \bigcap N\ = ( \Z_M \times \Z_N , \Sigma , \delta^* , (p_0, q_0) , E_M\ \times E_N\ ) </math> <br/>
<math> \delta^*( ( p,q ), a )  = (  \delta_M (p,a),  \delta_N (q,a)  )\ </math>
<b>Vereinigung</b> <br/>
<math> M \bigcup N = \overline{ \overline{M\ } \bigcap \overline{N\ } }  </math> ( de Morgansche Regel ) <br/>
<b>Verknüpfung</b> <br/>
<math> M \circ N = ( Z_1 \cup Z_2 , \Sigma , \delta , Q_1 , E ) </math>
<math> \delta ( p , a ) = \begin{cases} \delta_M( p ,a ) , p \in Z_1 \backslash E_1 \\ \delta_M ( p , a ) \cup \bigcup_{q \in Q_2} \delta_N ( q , a ) , p \in E_1  \\ \delta_N ( p , a ) , sonst \end{cases} </math>
<math>  E\ = \begin{cases}  E_1 \bigcup E_2 , Q_2 \bigcap E_2  \neq \emptyset  \\ E_2 , sonst \end{cases} </math> <br/>
<b>Kleensche Hülle </b>
<math> N^* = ( Z_1 \cup \{q_{neu}\} , \Sigma , \delta^* , Q_1 \cup \{q_{neu}\} , E_1 \cup \{q_{neu}\} ) </math><br/>
<math> \delta^*( p , a ) = \begin{cases}  \delta(p , a) \cup \bigcup_{q \in Q} \delta(q, a) , p \in E_1  \\ \delta( p , a ) , sonst \end{cases} </math> <br/>

Aktuelle Version vom 30. März 2008, 16:47 Uhr


Reguläre Sprache

[Bearbeiten | Quelltext bearbeiten]

Reguläre Sprachen, werden durch reguläre Grammatiken, reguläre Ausdrücke und endliche Automaten (DFA bzw. NFA) erzeugt.

Seien $ T\ ,A\ $ Nichtterminale und sei $ a\ $ ein Terminale, so gelten folgende Bildungsvorschriften:

$ T\rightarrow aA $ Rechtsrekursion,
$ T\rightarrow Aa $ Linksrekursion,
$ A\rightarrow a $

Überführungsfunktion für einen DFA:

$ L(M)=\{x_{1}...x_{n}\in {\Sigma ^{*}}\vert \exists q_{1}...q_{n-1}\in Z,q_{n}\in E\ :\delta (q_{i},x_{i+1})=q_{i+1} $ für$ \ i=0,...,n-1\} $


Abgeschlossen bzgl:

  • $ \cup \ $ Vereinigung
  • $ \cap \ $ Schnitt
  • $ ^{-} $ Komplement
  • $ \circ \ $ Verknüpfung
  • $ *\ $ Sternhülle

Komplement

Bei einem Automat, der das Komplement akzeptiert, werden alle Nicht-Endzustände zu Endzuständen und umgekehrt.

$ M=(Z\ ,\Sigma ,\delta ,q_{0},Z\ \backslash E\ ) $


Schnitt

$ M=(Z\ ,\Sigma ,\delta ,p_{0},E\ ) $
$ N=(Z\ ,\Sigma ,\delta ,q_{0},E\ ) $
$ M\ \bigcap N\ =(\mathbb {Z} _{M}\times \mathbb {Z} _{N},\Sigma ,\delta ^{*},(p_{0},q_{0}),E_{M}\ \times E_{N}\ ) $

$ \delta ^{*}((p,q),a)=(\delta _{M}(p,a),\delta _{N}(q,a))\ $

Vereinigung

$ M\bigcup N={\overline {{\overline {M\ }}\bigcap {\overline {N\ }}}} $ ( de Morgansche Regel )


Verknüpfung

$ M\circ N=(Z_{1}\cup Z_{2},\Sigma ,\delta ,Q_{1},E) $

$ \delta (p,a)={\begin{cases}\delta _{M}(p,a),p\in Z_{1}\backslash E_{1}\\\delta _{M}(p,a)\cup \bigcup _{q\in Q_{2}}\delta _{N}(q,a),p\in E_{1}\\\delta _{N}(p,a),sonst\end{cases}} $

$ E\ ={\begin{cases}E_{1}\bigcup E_{2},Q_{2}\bigcap E_{2}\neq \emptyset \\E_{2},sonst\end{cases}} $

Kleensche Hülle

$ N^{*}=(Z_{1}\cup \{q_{neu}\},\Sigma ,\delta ^{*},Q_{1}\cup \{q_{neu}\},E_{1}\cup \{q_{neu}\}) $
$ \delta ^{*}(p,a)={\begin{cases}\delta (p,a)\cup \bigcup _{q\in Q}\delta (q,a),p\in E_{1}\\\delta (p,a),sonst\end{cases}} $