Rekursiv aufzählbare Sprache

Rekursiv aufzählbare Sprache

In der theoretischen Informatik ist eine rekursiv aufzählbare Sprache oder semientscheidbare Sprache L dadurch definiert, dass es eine Turingmaschine gibt, die alle Wörter aus L akzeptiert, aber keine Wörter, die nicht in L liegen. Im Unterschied zu rekursiven Sprachen oder entscheidbaren Sprachen muss bei den rekursiv aufzählbaren Sprachen die Turingmaschine nicht halten, wenn ein Wort nicht in L liegt. Das heißt, unter Umständen muss man auf die Lösung unendlich lange warten. Alle rekursiven Sprachen sind deshalb auch rekursiv aufzählbar.

Rekursiv aufzählbare Sprachen bilden die oberste Stufe der Chomsky-Hierarchie und heißen deshalb auch Typ-0-Sprachen; die entsprechenden Grammatiken sind die Typ-0-Grammatiken. Sie können somit auch als all die Sprachen definiert werden, deren Wörter sich durch eine beliebige formale Grammatik ableiten lassen.

Eines der wichtigsten Probleme, die rekursiv aufzählbar sind, aber nicht rekursiv, ist das so genannte Halteproblem.

Ein nicht semi-entscheidbares Problem ist die so genannte Diagonalsprache D: die Menge der Codierungen all derjenigen Turingmaschinen, die auf ihrer eigenen Codierung als Eingabe nicht halten.

D = {<M> | M hält nicht auf <M>}

Auch das Komplement des (semi-entscheidbaren) Halteproblems ist nicht semi-entscheidbar, während das Komplement der Diagonalsprache semi-entscheidbar ist. In der Tat ist das Komplement des Halteproblems eine Erweiterung der Diagonalsprache und das Komplement der Diagonalsprache ein Spezialfall des Halteproblems.

Ein Beispiel für eine Sprache, für die weder sie selbst noch ihr Komplement semi-entscheidbar ist, ist das Äquivalenzproblem für Turingmaschinen (Eq): die Menge von Paaren von zwei Turingmaschinen, die dieselbe Sprache akzeptieren.

Eq = {<M1>#<M2> | L(M1) = L(M2)}

Diese Eigenschaft der Nicht-semi-entscheidbarkeit folgt leicht daraus, dass das Halteproblem auf dieses Problem und auch auf dessen Komplement reduzierbar ist. Sie gilt allerdings bereits für deterministische Kellerautomaten anstelle von allgemeinen Turingmaschinen.

Allgemein gilt für eine Sprache L und ihr Komplement K(L) stets genau eine der folgenden drei Eigenschaften:

  • L und K(L) sind rekursiv (und somit auch rekursiv aufzählbar).
  • L und K(L) sind nicht rekursiv aufzählbar.
  • Genau eine der Sprachen L und K(L) ist rekursiv aufzählbar (aber nicht rekursiv), die andere ist nicht rekursiv aufzählbar.

Abgeschlossenheit

Die Menge der rekursiv aufzählbaren Sprachen ist gegenüber Kleenescher Hüllenbildung, Konkatenation, Schnitt und Vereinigung abgeschlossen, nicht jedoch gegenüber dem Komplement[1].

Beweise (skizzenhaft)


Konkatenation: Gegeben die Sprachen L1, L2 betrachten wir die Aufzählfunktionen f1 und f2, welche jeweils turingberechenbar sind. Wir setzen f(i,j) = f1(i).f2(j) und haben damit eine surjektive Abbildung von einer abzählbaren Menge auf alle Konkatenation von einem Wort aus L1 und einem Wort aus L2. Somit haben wir eine Aufzählfunktion für L1.L2

Schnitt: Für die Sprachen L1 und L2 existiert jeweils eine Akzeptor-Turingmaschine. Wir konstruieren eine Turingmaschine, welche zuerst L1, und dann L2 simuliert. Diese hält für eine Eingabe genau dann, wenn diese Eingabe im Schnitt von L1 und L2 liegt.


Einzelnachweise

  1. Uwe Schöning: Theoretische Informatik – kurzgefasst. 5. Auflage. Spektrum, Heidelberg u. a. 2008, ISBN 978-3-8274-1824-1, (Spektrum-Hochschultaschenbuch), S. 81.

Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

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

  • Rekursiv aufzählbare Menge — Als semi entscheidbare Menge (auch halb entscheidbare Menge) wird in der Berechenbarkeitstheorie eine Menge A bezüglich einer Grundmenge M bezeichnet, wenn ihre partielle charakteristische Funktion definiert durch berechenbar ist. Die Menge M… …   Deutsch Wikipedia

  • Aufzählbare Menge — Die rekursive Aufzählbarkeit ist ein Begriff aus der Berechenbarkeitstheorie. Er gibt Aufschluss darüber, ob sich die Elemente einer vorgegebenen Menge schrittweise von einem Computer erzeugen lassen. Inhaltsverzeichnis 1 Definition 2… …   Deutsch Wikipedia

  • Rekursiv aufzählbar — Die rekursive Aufzählbarkeit ist ein Begriff aus der Berechenbarkeitstheorie. Er gibt Aufschluss darüber, ob sich die Elemente einer vorgegebenen Menge schrittweise von einem Computer erzeugen lassen. Inhaltsverzeichnis 1 Definition 2… …   Deutsch Wikipedia

  • Semi-entscheidbare Sprache — Eine rekursiv aufzählbare Sprache oder semientscheidbare Sprache L ist dadurch definiert, dass es eine Turingmaschine gibt, die alle Wörter aus L akzeptiert, aber keine Wörter, die nicht in L liegen. Im Unterschied zu rekursiven Sprachen oder… …   Deutsch Wikipedia

  • Semientscheidbare Sprache — Eine rekursiv aufzählbare Sprache oder semientscheidbare Sprache L ist dadurch definiert, dass es eine Turingmaschine gibt, die alle Wörter aus L akzeptiert, aber keine Wörter, die nicht in L liegen. Im Unterschied zu rekursiven Sprachen oder… …   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

  • Entscheidbare Sprache — Eine Formale Sprache heißt rekursiv (entscheidbar), wenn eine Turingmaschine M existiert, die auf alle Eingaben hält, d.h HM = L Die Nicht Rekursivität einer Sprache kann man mittels Satz von Rice nachweisen. Wenn es keine Turingmaschine gibt,… …   Deutsch Wikipedia

Share the article and excerpts

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