Reguläre Sprache

Reguläre Sprache

In der theoretischen Informatik ist eine reguläre Sprache eine formale Sprache, die einigen Einschränkungen unterliegt. Reguläre Sprachen können von endlichen Automaten erkannt werden und von regulären Ausdrücken beschrieben werden.

Inhaltsverzeichnis

Eigenschaften

Ob eine Sprache mehr oder weniger eingeschränkt ist, ergibt sich aus ihrer Stellung innerhalb der Chomsky-Hierarchie. Die Klasse der regulären Sprachen entspricht innerhalb der Chomsky-Hierarchie der am meisten eingeschränkten Sprachklasse vom Typ 3. Sie bildet eine echte Teilmenge der kontextfreien Sprachen. Sie hat in der Informatik sowie auch bei der Konstruktion mechanischer Geräte eine hohe praktische Bedeutung.

Definition

Eine Sprache L über einem Alphabet Σ, das heißt eine Menge von Wörtern L\subseteq \Sigma^{*}, heißt dann regulär, wenn sie eine der folgenden äquivalenten Bedingungen erfüllt:

Nachweis der Regularität einer Sprache

Will man für eine gegebene Sprache nachweisen, dass sie regulär ist, so muss man sie demnach auf eine reguläre Grammatik, einen endlichen Automaten (z. B. einen Moore-Automaten) oder einen regulären Ausdruck oder auf bereits bekannte reguläre Sprachen zurückführen. Für einen Nachweis, dass eine Sprache L nicht regulär ist, ist es meistens zweckmäßig, das Pumping-Lemma (= Pumplemma) für reguläre Sprachen zu benutzen oder in schwierigeren Fällen nachzuweisen, dass der Index von RL nicht endlich ist.

Beispiele

Sei Σ ein Alphabet.

  • Alle endlichen Sprachen L über Σ, d. h. \left| L \right|\in\mathbb{N}, sind regulär.
  • Alle kontextfreien Sprachen über einem unären Alphabet, d. h. \left|\Sigma\right|=1, sind regulär.

Abschlusseigenschaften

Die Klasse der regulären Sprachen ist abgeschlossen unter den gewöhnlichen Mengenoperationen Vereinigung, Durchschnitt und Komplement. Darüber hinaus gilt die Abgeschlossenheit auch für die Konkatenation und den sogenannten Kleene-Stern. Im einzelnen gilt also:

  • Die Vereinigung L = L_1 \cup L_2 zweier regulärer Sprachen L1 und L2 ist regulär.
  • Der Durchschnitt L = L_1\cap L_2 zweier regulärer Sprachen L1 und L2 ist regulär.
  • Das Komplement \bar L einer regulären Sprache L ist regulär.
  • Die Konkatenation \{uv \mid u\in L_1 \and v\in L_2\} zweier regulärer Sprachen L1 und L2 ist regulär.
  • Der Kleene-Stern L * einer regulären Sprache L, d. h. die beliebig häufige Konkatenation von Wörtern aus der Sprache L vereinigt mit dem leeren Wort, ist regulär.

Typische Entscheidungsprobleme

Seien L, L1 und L2 gegebene reguläre Sprachen über dem Alphabet Σ. Dann ergeben sich folgende typische Problemstellungen:

Alle diese Probleme sind entscheidbar. Bis auf das Äquivalenzproblem und das Inklusionsproblem sind die genannten Probleme auch bei kontextfreien Sprachen (der nach der Chomsky-Hierarchie nächsthöheren Sprachklasse) entscheidbar.

Literatur

  • Michael Sipser: Introduction to the Theory of Computation. PWS Publishing, Boston u. a. 1997, ISBN 0-534-94728-X, Chapter 1: Regular Languages.
  • Uwe Schöning: Theoretische Informatik – kurzgefasst. 4. Auflage. Spektrum, Heidelberg u. a. 2001, ISBN 3-8274-1099-1, (Spektrum-Hochschultaschenbuch), Kapitel 1.2: Reguläre Sprachen.
  • John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman: Einführung in die Automatentheorie. Formale Sprachen und Komplexitätstheorie. 2. überarbeitete Auflage. Pearson Studium, München 2002, ISBN 3-8273-7020-5, (i - Informatik).
  • Dag Hovland: The Inclusion Problem for Regular Expressions. In: LNCS Language and Automata Theory and Applications. Bd. 6031, 2010, S. 309–320, doi:10.1007/978-3-642-13089-2_26 (PDF).

Weblinks

  • REG. In: Complexity Zoo. (englisch)

Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

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

  • Ω-reguläre Sprache — In der theoretischen Informatik bezeichnet eine ω reguläre Sprache eine Menge unendlicher Wörter über einem gemeinsamen Alphabet, die gewissen Gesetzmäßigkeiten genügt. Im Fall von endlichen Wörtern heißt das Äquivalent reguläre Sprache. Häufig… …   Deutsch Wikipedia

  • Reguläre Ausdrücke — In der Informatik ist ein Regulärer Ausdruck (engl. regular expression, Abk. RegExp oder Regex) eine Zeichenkette, die der Beschreibung von Mengen beziehungsweise Untermengen von Zeichenketten mit Hilfe bestimmter syntaktischer Regeln dient.… …   Deutsch Wikipedia

  • Reguläre Grammatik — Eine reguläre Grammatik ist eine formale Grammatik vom Typ 3 der Chomsky Hierarchie. Die von solchen Grammatiken erzeugte Sprachen heißen reguläre Sprachen.[1] Inhaltsverzeichnis 1 Definition 1.1 Rechtsreguläre Grammatiken …   Deutsch Wikipedia

  • Reguläre Halbgruppe — Halbgruppe (Axiome EA) berührt die Spezialgebiete Mathematik Abstrakte Algebra Gruppentheorie ist Spezialfall von Magma (Axiom E) …   Deutsch Wikipedia

  • Typ-0-Sprache — Chomsky Hierarchie, gelegentlich Chomsky–Schützenberger Hierarchie, (benannt nach dem Linguisten Noam Chomsky und dem Mathematiker Marcel Schützenberger) ist ein Begriff aus der Theoretischen Informatik und bezeichnet eine Hierarchie von Klassen… …   Deutsch Wikipedia

  • Typ-1-Sprache — Chomsky Hierarchie, gelegentlich Chomsky–Schützenberger Hierarchie, (benannt nach dem Linguisten Noam Chomsky und dem Mathematiker Marcel Schützenberger) ist ein Begriff aus der Theoretischen Informatik und bezeichnet eine Hierarchie von Klassen… …   Deutsch Wikipedia

  • Typ-2-Sprache — Chomsky Hierarchie, gelegentlich Chomsky–Schützenberger Hierarchie, (benannt nach dem Linguisten Noam Chomsky und dem Mathematiker Marcel Schützenberger) ist ein Begriff aus der Theoretischen Informatik und bezeichnet eine Hierarchie von Klassen… …   Deutsch Wikipedia

  • Typ-3-Sprache — Chomsky Hierarchie, gelegentlich Chomsky–Schützenberger Hierarchie, (benannt nach dem Linguisten Noam Chomsky und dem Mathematiker Marcel Schützenberger) ist ein Begriff aus der Theoretischen Informatik und bezeichnet eine Hierarchie von Klassen… …   Deutsch Wikipedia

  • Kontextfreie Sprache — In der Theoretischen Informatik ist eine kontextfreie Sprache (engl. context free language, CFL) eine formale Sprache, die durch eine kontextfreie Grammatik beschrieben werden kann. Eine kontextfreie Grammatik erlaubt einen definierten… …   Deutsch Wikipedia

  • Lineare Sprache — Die Linearen Sprachen (engl. linear languages, LIN) sind ein Fachbegriff aus der Theoretischen Informatik. So sind sie hier speziell eine Klasse formaler Sprachen und stellen dabei eine echte Teilmenge der Typ 2 Sprachen der Chomsky Hierarchie… …   Deutsch Wikipedia

Share the article and excerpts

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