Kleenesche und positive Hülle

Die kleenesche Hülle (auch endlicher Abschluss, Kleene-*-Abschluss, Verkettungshülle oder Sternhülle genannt) eines Alphabets \Sigma oder einer formalen Sprache L ist die Menge aller Wörter die durch beliebige Konkatenation (Verknüpfung) von Symbolen des Alphabets \Sigma bzw. von Wörtern der Sprache L gebildet werden können, wobei das leere Wort \varepsilon inbegriffen ist. Sie ist nach dem US-amerikanischen Mathematiker und Logiker Stephen Cole Kleene benannt. Demgegenüber ist die positive Hülle (auch Kleene-+-Abschluss genannt) eines Alphabets \Sigma oder einer formalen Sprache L die Menge aller Wörter, die aus den Symbolen von \Sigma beziehungsweise aus Wörtern von L gebildet werden können und die nur dann das leere Wort enthält, wenn die positive Hülle auf eine Sprache angewandt wird, die selbst das leere Wort als Element enthält.

Der Operator der kleeneschen Hülle ist der Kleene-Stern^{*}“. So ist die Darstellung der kleeneschen Hülle eines Alphabets \Sigma gleich \Sigma ^{*} und einer Sprache L gleich L^{*}. Demgegenüber ist der Operator der positiven Hülle das Pluszeichen „^{+}“, sodass die positive Hülle eines Alphabets \Sigma mit \Sigma ^{+} und einer Sprache L mit L^{+} dargestellt wird.

In Anlehnung an den Kleene-*-Operator über Sprachen wird der *-Operator bei regulären Ausdrücken ebenfalls Kleene-*-Operator genannt. Die Anzahl verschachtelter Kleene-*-Operatoren bestimmt die Sternhöhe eines regulären Ausdrucks.

Definition

Hüllenoperator für Alphabete

Die kleenesche Hülle \Sigma ^{*} eines Alphabets \Sigma ist eine Sprache, die alle Wörter über dem Alphabet enthält. Sie lässt sich mit Hilfe der strukturellen Induktion definieren. Im Induktionsanfang definiert man zunächst, dass das leere Wort \varepsilon in der kleeneschen Hülle enthalten ist, und im Induktionsschritt wird definiert, dass für jedes Wort w, das Element der kleeneschen Hülle ist, auch die Konkatenationen w\circ a für alle Symbole a\in \Sigma Elemente der Kleeneschen Hülle sind:

Die positive Hülle \Sigma ^{+} eines Alphabets \Sigma ist definiert als die kleenesche Hülle dieses Alphabets ohne das leere Wort:

\Sigma ^{+}:=\Sigma ^{*}\setminus \{\varepsilon \}

Ausgehend von der kleeneschen Hülle lassen sich Teilmengen der Wörter mit fester Länge n definieren.

\Sigma ^{n}:=\{w\mid w\in \Sigma ^{*}\land \left|w\right|=n\}

Alternativ kann \Sigma ^{n} als das n-fache kartesische Produkt des Alphabets definiert werden, also

{\displaystyle \Sigma ^{n}=\prod _{i=1}^{n}\Sigma =\underbrace {\Sigma \times \dotsb \times \Sigma } _{n{\text{-mal}}}} mit \Sigma ^{0}=\{\varepsilon \}.

Dann gilt:

\Sigma ^{*}=\bigcup _{{i\in {\mathbb  N}_{0}}}\Sigma ^{i} und
\Sigma ^{+}=\bigcup _{{i\in {\mathbb  N}}}\Sigma ^{i}

Hüllenoperator für Sprachen

Die kleenesche Hülle L^{*} einer Sprache L ist die Vereinigung all ihrer Potenzsprachen (wiederholte Konkatenation der Sprachen):

L^{*}:=\bigcup _{{i\in {\mathbb  N}_{0}}}L^{i}

Dabei gilt L^{0}=\{\varepsilon \} und L^{{n+1}}=L^{n}\circ L.

Die positive Hülle L^{+} einer Sprache L ist ähnlich definiert, sie ist die Vereinigung aller Potenzen von L größer gleich 1:

L^{+}:=\bigcup _{{i\in {\mathbb  N}}}L^{i}

Beispiele

Alphabete

Die kleenesche Hülle des Alphabets \Sigma =\{a\} enthält das leere Wort \varepsilon , das Wort \varepsilon \circ a=a und daher auch das Wort a\circ a=aa und so weiter. Damit ist

\Sigma ^{*}=\{\varepsilon ,a,aa,\dotsc \}.

Für das Alphabet \Sigma =\{a,b\} gilt \Sigma ^{2}=\{aa,ab,ba,bb\}, \Sigma ^{3}=\{aaa,aab,aba,abb,baa,bab,bba,bbb\} und so weiter. Damit ist

\Sigma ^{*}=\{\varepsilon ,a,b,aa,ab,ba,bb,aaa,aab,aba,\dotsc \}.

Sprachen

Die kleenesche Hülle der Sprache L=\{aa,bb\} ist die Menge aller Wörter, die sich aus aa und bb zusammensetzen, sowie dem leeren Wort:

L^{*}=\{\varepsilon ,aa,bb,aaaa,aabb,bbbb,bbaa,bbaabb,aabbaa,\dotsc \}

Die positive Hülle ist entsprechend:

L^{+}=\{aa,bb,aaaa,aabb,bbbb,bbaa,bbaabb,aabbaa,\dotsc \}

Die kleenesche Hülle der leeren Sprache und der Sprache des leeren Wortes enthält nur das leere Wort:

\{\}^{*}=\{\varepsilon \}^{*}=\{\varepsilon \}

Die positive Hülle der leeren Sprache ist leer, die der Sprache des leeren Wortes enthält nur das leere Wort:

\{\}^{+}=\{\}
\{\varepsilon \}^{+}=\{\varepsilon \}

Merkmale

L\notin \{\{\},\{\varepsilon \}\}\Rightarrow |L^{*}|=|{\mathbb  {N}}|
L\notin \{\{\},\{\varepsilon \}\}\Rightarrow |L^{+}|=|{\mathbb  {N}}|
\varepsilon \in L\Leftrightarrow L^{*}=L^{+}

Verallgemeinerungen

Die abzählbar unendlichen Folgen von Zeichen aus den Alphabet \Sigma werden mit \Sigma ^{\omega } bezeichnet, siehe: \omega = \aleph _{0}.
{\displaystyle \Sigma ^{\infty }} bezeichnet die gesamte Menge {\displaystyle \Sigma ^{\ast }\cup \Sigma ^{\omega }} der endlichen Sequenzen und unendlichen Folgen von Zeichen aus \Sigma .

Literatur

Trenner
Basierend auf einem Artikel in: Wikipedia.de
Seitenende
Seite zurück
©  biancahoegel.de
Datum der letzten Änderung: Jena, den: 22.07. 2022