Satz von Myhill-Nerode

Satz von Myhill-Nerode

Der Satz von Myhill-Nerode gibt im Fachgebiet Formale Sprachen der Theoretischen Informatik ein notwendiges und hinreichendes Kriterium dafür an, dass eine Formale Sprache regulär ist. Er wurde im Jahr 1957/1958 von John Myhill und Anil Nerode vorgestellt und bewiesen.

Umgangssprachlich ausgedrückt dient der Satz hauptsächlich dazu, herauszufinden, ob eine Formale Sprache so „gutartig“ oder „einfach gestrickt“ ist, dass ein Computer mit endlich begrenztem Speicher automatisch feststellen kann, ob eine Zeichenfolge ein Wort der Sprache ist oder nicht.

Inhaltsverzeichnis

Satz

Hinweis: Die nachfolgenden Fachbegriffe werden im Artikel Formale Sprache erläutert.

Gegeben sei eine Formale Sprache L über dem Alphabet Σ sowie die zugehörige Nerode-Relation ~. Dann gilt:

Es existiert genau dann ein deterministischer endlicher Automat, der L akzeptiert, wenn der Index der zugehörigen Nerode-Relation endlich ist.

Formal:

\exists A: \ L(A) = L \qquad \Longleftrightarrow \qquad |\Sigma^*/\sim| < \infty

wobei A ein deterministischer endlicher Automat ist und L(A) die Sprache, die er akzeptiert.

Anwendung

Die Existenz eines deterministischen endlichen Automaten, der L akzeptiert, ist notwendiges und hinreichendes Kriterium dafür, dass L eine reguläre Sprache ist. Die logische Äquivalenz des Satzes ermöglicht es also sowohl zu zeigen, dass eine formale Sprache regulär ist, als auch zu zeigen, dass sie es nicht ist. Da dies die wichtigste Anwendung des Satzes von Myhill-Nerode ist, wird er vielfach auch so gelesen:

Die Sprache L ist genau dann regulär, wenn der Index der zugehörigen Nerode-Relation endlich ist.

Weiter lässt sich folgern, dass die Anzahl der Zustände eines minimalen endlichen deterministischen Automats, der L akzeptiert, dem Index der zugehörigen Nerode-Relation entspricht.

Beispiele

Endliche Sprachen sind regulär

Die Sprache L über dem Alphabet Σ enthalte endlich viele Wörter. (Alle Wörter aus L haben endliche Länge.) Das heißt es existieren natürliche Zahlen m und n, so dass gilt:

  • | L | \leq m
  • | w | \leq n \quad \forall w \in L.

Da zu jedem Wort so viele Präfixe existieren, wie es Buchstaben enthält, und das leere Wort ε auch als Präfix zählt, hat die Sprache L insgesamt höchstens n·m+1 Präfixe und ebenso viele Äquivalenzklassen. Es gilt also:

ind(L) \leq n \cdot m + 1 < \infty.

Das heißt die Anzahl der Äquivalenzklassen ist endlich und aus dem Satz von Myhill-Nerode folgt, dass die Sprache L regulär ist. Man kann also verallgemeinernd sagen: Jede Sprache, die endlich viele Wörter enthält, ist regulär.

Die Sprache L := {\epsilon, a, aa, aaa, ...} ist regulär

Ein minimaler deterministischer endlicher Automat, der die Sprache {a} * akzeptiert.

Die Sprache L über dem Alphabet Σ := {a} sei definiert durch:

L: = {a} * .

Es ergibt sich genau eine Äquivalenzklasse bezüglich der Nerode-Relation, nämlich L selbst:

[ \epsilon ] = [a] = [aa] = [aaa] = \ldots = \{ \epsilon, a, aa, aaa, \ldots \} = \{a^{\star} \} = L.

Das heißt alle Präfixe der Sprache L lassen sich mit denselben Suffixen zu Wörtern aus L ergänzen. Damit ist der Index der Nerode-Relation endlich:

ind(L) = 1 < \infty.

Aus dem Satz von Myhill-Nerode folgt schließlich, dass die Sprache L regulär ist.

Die Sprache L := {ab, aabb, aaabbb, ...} ist nicht regulär

Ausschnitt eines nicht-endlichen, deterministischen Automaten, der die Formale Sprache L akzeptiert. Jedes der unendlich vielen Wörter aus L benötigt einen eigenen Pfad zum Endzustand, der Automat müsste also unendlich groß sein.

Die Sprache L über dem Alphabet Σ := {a, b} sei definiert durch:

L:=\{a^{n}b^{n}|n \in \mathbb{N}, n > 0 \}.

Es ergeben sich insbesondere folgende Äquivalenzklassen bezüglich der Nerode-Relation (jedes Präfix eines Wortes dieser Sprache läßt nur ein Suffix zur Vervollständigung zu):


\begin{matrix}
& [ab] &=& L & \mathrm{Suffixe:} & \{ \epsilon \} \\
& [a^2b] &=& \{a^2b, a^3b^2, a^4b^3, \ldots \} & \mathrm{Suffixe:} & \{b\} \\
& [a^3b] &=& \{a^3b, a^4b^2, a^5b^3, \ldots \} & \mathrm{Suffix:} & \{bb\} \\
& \vdots & & \vdots \\
& [a^kb] &=& \{a^{k+i-1}b^{i} | k,i \geq 1 \in \mathbb{N} \} & \mathrm{Suffixe:} & \{b^{k-1}\} \\
& \vdots & & \vdots
\end{matrix}

Diese Äquivalenzklassen sind paarweise verschieden, das heißt es gilt:

[a^ib] \neq [a^jb] \quad \forall i,j \in \mathbb{N}: i \neq j.

Daraus folgt, dass bereits die Anzahl dieser Äquivalenzklassen unendlich ist und – da die Anzahl aller Äquivalenzklassen von L nochmals größer ist – damit auch der Index der Nerode-Relation bezüglich L unendlich ist. Aus dem Satz von Myhill-Nerode folgt schließlich, dass die Sprache L nicht regulär ist.

Bemerkung

Es ist nicht erforderlich, die Klassenstruktur der einer Sprache L zugeordneten Äquivalenzrelation vollständig aufzuklären, um die Nicht-Regularität dieser Sprache zu zeigen. Andernfalls müssten noch weitere Äquivalenzklassen aufgestellt werden, um der Forderung von Äquivalenzrelationen gerecht zu werden, eine bestimmte Grundmenge (hier: Σ * , also alle Wörter über dem Eingabealphabet Σ) vollständig in disjunkte Äquivalenzklassen aufzuteilen.

Die Suffixe

Prinzipiell kann als Suffix jedes Wort über dem Eingabealphabet Σ eingesetzt werden, also z.B. a, b, abab, aabbaba usw.. Hier wurde für jede Äquivalenzklasse nur der jeweils einzige Suffix angegeben, für welchen bei dessen Anfügung an die Elemente der jeweiligen Klasse alle auf diese Art entstandenen Wörter zu der Sprache L gehören. Für jeden anderen Suffix würden alle entstandenen Wörter nicht zur Sprache L gehören. Darauf beruht die Nerode-Relation.

Literatur

  • Uwe Schöning: Theoretische Informatik – kurzgefasst. 5. Auflage. Spektrum, Heidelberg 2008, ISBN 978-3-8274-1824-1, (HochschulTaschenbuch), S. 34–38.
  • A. Nerode: Linear automaton transformations. In: Proceedings of the American Mathematical Society 9, 1958, ISSN 0002-9939, S. 541–544.
  • J. Myhill: Finite automata and the representation of events. In: WADD TR 57-624, 1957, ZDB-ID 2518731-4, S. 112–137.

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Nerode Relation — Die Nerode Relation (auch: Nerode Kongruenz oder Nerode Rechtskongruenz) ist eine Äquivalenzrelation, die im Wissensgebiet Formale Sprachen der Theoretischen Informatik zum Einsatz kommt. Sie teilt die Präfixe von Wörtern einer formalen Sprache… …   Deutsch Wikipedia

  • Nerode-Relation — Die Nerode Relation (auch: Nerode Kongruenz oder Nerode Rechtskongruenz) ist eine Äquivalenzrelation, die im Wissensgebiet Formale Sprachen der Theoretischen Informatik zum Einsatz kommt. Sie teilt die Präfixe von Wörtern einer formalen Sprache… …   Deutsch Wikipedia

  • Liste von Sätzen der Informatik — Inhaltsverzeichnis A B C D E F G H I J K L M N O P Q R S T U V W X Y Z C Satz von Cook: Es existiert eine Teilmenge von …   Deutsch Wikipedia

  • PumpingLemma — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Pumping Lemma — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Pumpinglemma — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Pumplemma — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Schleifensatz — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Uvw-Theorem — Das Pumping Lemma bzw. Pumplemma beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache nicht regulär bzw. nicht… …   Deutsch Wikipedia

  • Pumping-Lemma — Das Pumping Lemma bzw. Pumplemma (auch Schleifensatz genannt) beschreibt in der theoretischen Informatik eine Eigenschaft bestimmter Klassen formaler Sprachen. In vielen Fällen lässt sich anhand des Lemmas nachweisen, dass eine formale Sprache… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”