Das Kefk Network Wiki befindet sich im Testbetrieb.


Wort (Theoretische Informatik)

Aus Kefk.

Wechseln zu: Navigation, Suche
Bild:Disambig-dark.svg Dieser Artikel befasst sich mit dem Wort in der theoretischen Informatik. Für die Bedeutung des Begriffs in der technischen Informatik siehe Datenwort.

In der theoretischen Informatik ist ein Wort eine endliche Folge von Symbolen (Zeichenkette) aus einem Alphabet. Die Anzahl der Symbole eines Wortes w ist ihre Länge und wird mit | w | bezeichnet. Ein besonderes Wort ist das leere Wort, welches die Länge 0 besitzt (aus keinem Symbol besteht) und meist mit dem griechischen Buchstaben ε dargestellt wird.

Formal lässt sich die Menge der Wörter über einem Alphabet Σ als das freie Monoid \langle \Sigma \rangle mit Basis Σ definieren. Die Verknüpfung des Monoids ist die Verkettung und das leere Wort ist das neutrale Element. Die Länge eines Worts ist ein Monoidmorphismus in die additive Gruppe der ganzen Zahlen, der mit Hilfe der universellen Eigenschaft des freien Monoids durch \forall \alpha \in \Sigma: |\alpha|=1 definiert werden kann.

Die Menge aller Wörter, welche man aus einem Alphabet Σ bilden kann, wird die Kleenesche Hülle über dieses Alphabet genannt und mit Parser-Fehler (Unbekannter Fehler\ast): \Sigma^\ast

bezeichnet. Wörter bilden außerdem die Elemente einer formalen Sprache, welche als die Teilmenge der Kleeneschen Hülle über ein gegebenes Alphabet definiert ist.

Inhaltsverzeichnis

Formale Definition

Es sei Σ ein gegebenes Alphabet und n eine natürliche Zahl mit n\in\mathbb{N}_{0}, wobei \mathbb{N}_{0} die Menge der natürlichen Zahlen einschließlich der Null bezeichnet (\mathbb{N}_{0} = \lbrace 0, 1, 2, ... \rbrace). Ein Wort w ist eine endliche Folge (x_{1},\, x_{2},\, x_{3}, ...\, x_{n}) mit x_{i} \in \Sigma für alle i \in \lbrack 1, k \rbrack. Bei der Definition eines Wortes, wird diese Folge von Symbolen oft vereinfacht angegeben, indem die Schreibweise w=x_{1} x_{2} x_{3} ...\, x_{n} benutzt wird. Wie bereits erwähnt ist die natürliche Zahl n die Länge des Wortes w.

Beispiele

Es seien mit Σ1 und Σ1 zwei Alphabete gegeben, wobei Σ1 das Alphabet der lateinischen Buchstaben und \Sigma_{2} := \lbrace \diamondsuit,\, \heartsuit,\, \spadesuit,\, \clubsuit \rbrace ist. Dann sind zum Beispiel w1 = haus und w2 = xyzzy Wörter über Σ1 und w_{3} = \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit ist ein Wort über Σ2. Man erkennt, dass | w1 | = 4 und | w2 | = | w3 | = 5 ist.

Rechenoperationen

Konkatenation

Die Konkatenation oder Verkettung ist eine Verknüpfung zweier Wörter zu einen neuem Wort, welche sich aus dem Aneinanderhängen der beiden Symbolfolgen ergibt. Die Konkatenation der beiden Wörter x und y über ein Alphabet Σ (Parser-Fehler (Unbekannter Fehler\ast): x,y \in \Sigma^\ast ) wird mit xy oder x \circ y angegeben und ist definiert durch:

xy = x \circ y := (x_{1},\, x_{2},\, x_{3}, ...\, x_{n},\, y_{1},\, y_{2},\, y_{3}, ...\, y_{k})

Dabei ist nach der Definition des Wortes x=(x_{1},\, x_{2},\, x_{3}, ...\, x_{n}) und y=(y_{1},\, y_{2},\, y_{3}, ...\, y_{k}) mit n,k \in \mathbb{N}_{0} und x_{i},y_{j} \in \Sigma für alle i \in \lbrack 1, n \rbrack und j \in \lbrack 1, k \rbrack.

Das neutrale Element der Konkatenation ist das leere Wort, da für jedes beliebige Wort w gilt, dass:

w \circ \epsilon = \epsilon \circ w = w

Die Konkatenation ist assoziativ, aber nicht kommutativ. So ist zum Beispiel:

(haus \circ \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit) \circ xyzzy = haus \circ( \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit \circ xyzzy) = haus \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit xyzzy

aber:

haus \circ \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit = haus \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit \not= \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit haus = \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit \circ haus

Potenz

Die Potenz eines Wortes wn ist definiert als eine n-fache Konkatenation dieses Wortes mit sich selber. Die Definition der Potenz wird meist rekursiv angegeben:

w0: = ε
w^{n+1} := w^{n} \circ w

So sind zum Beispiel:

haus^3=haus^2 \,\circ\, haus = (haus^1 \,\circ\, haus) \,\circ\, haus = ((\epsilon \,\circ\, haus) \,\circ\, haus) \,\circ\, haus = haushaushaus
\heartsuit \clubsuit \clubsuit \heartsuit \spadesuit^1 = \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit^0 \,\circ\, \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit = \epsilon \,\circ\, \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit = \heartsuit \clubsuit \clubsuit \heartsuit \spadesuit
xyzzy0 = ε

Literatur

  • U. Hedtstück: Einführung in die Theoretische Informatik - Formale Sprachen und Automatentheorie. Oldenbourg Verlag, München 2000, ISBN 3-486-25515-0
Wikipedia
Dieses Dokument entstammt in seiner ersten oder einer späteren Version der deutschsprachigen Wikipedia. Es ist dort zu finden unter dem Stichwort Wort_%28Theoretische_Informatik%29, die Liste der bisherigen Autoren befindet sich in der Versionsliste; die Originalfassung kann dort auch bearbeitet werden. Alle Texte der Wikipedia und ihre Derivate stehen unter der GNU-Lizenz für freie Dokumentation.
Persönliche Werkzeuge