Rekursive Sprache

Im Mathematik, Logik und Informatik, a formelle Sprache (a einstellen von endlichen Sequenzen von Symbole von einem festgenommen Alphabet) wird genannt rekursiv Wenn es a ist rekursive Teilmenge der Menge aller möglichen endlichen Sequenzen über das Alphabet der Sprache. Äquivalent ist eine formale Sprache rekursiv, wenn es a Total Turing Machine (a Turing Maschine Dies hält für jede gegebene Eingabe an), dass es bei einer endlichen Abfolge von Symbolen als Eingabe akzeptiert wird, wenn sie zur Sprache gehört und es sonst abgelehnt. Rekursive Sprachen werden auch genannt entschlossen.

Das Konzept von Dekidabilität kann auf andere ausgedehnt werden Berechnungsmodelle. Zum Beispiel kann man von Sprachen sprechen, die auf a enttäuscht werden können Nichtdeterministische Turing-Maschine. Daher ist das Synonym, das für "rekursive Sprache" verwendet wird, wenn eine Unklarheit möglich ist Turing-entscheidbare Spracheeher als einfach entschlossen.

Die Klasse aller rekursiven Sprachen wird oft genannt R, obwohl dieser Name auch für die Klasse verwendet wird RP.

Diese Art von Sprache wurde in der nicht definiert Chomsky -Hierarchie von (Chomsky 1959). Alle rekursiven Sprachen sind auch rekursiv aufgezählt. Alle regulär, kontextfrei und Kontextempfindlich Sprachen sind rekursiv.

Definitionen

Es gibt zwei äquivalente Hauptdefinitionen für das Konzept einer rekursiven Sprache:

  1. Eine rekursive formale Sprache ist a rekursiv Teilmenge in dem einstellen von allen möglichen Wörtern über die Alphabet des Sprache.
  2. Eine rekursive Sprache ist eine formale Sprache, für die es a Turing Maschine Dies, wenn sie endliche Eingaben präsentiert haben Saite, hält an und akzeptiert, ob sich die Zeichenfolge in der Sprache befindet, und hält etwas anderes an und lehnt es ab. Die Turing -Maschine hält immer an: Sie ist als a bekannt entschlossen und soll gesagt sich entscheiden die rekursive Sprache.

Nach der zweiten Definition jeder Entscheidungsproblem kann gezeigt werden, dass sie dadurch enttäuscht werden, indem Sie eine zeigen Algorithmus dafür, dass alle Eingaben endet. Ein unentschlossenes Problem ist ein Problem, das nicht lehnte.

Beispiele

Wie oben erwähnt, ist jede kontextempfindliche Sprache rekursiv. Ein einfaches Beispiel für eine rekursive Sprache ist daher der Satz L = {ABC, AABBCC, AAABBBCCC, ...}; formell formell der Satz

ist kontextempfindlich und daher rekursiv.

Beispiele für lehende Sprachen, die nicht kontextempfindlich sind, sind schwieriger zu beschreiben. Zum Beispiel einige Vertrautheit mit Mathematische Logik ist nötig: Presburger -Arithmetik ist die Theorie erster Ordnung der natürlichen Zahlen mit Addition (jedoch ohne Multiplikation). Während der Satz von gut geformte Formeln In Presburger Arithmetic ist kontextfrei, hat jede deterministische Turing-Maschine, die die Menge der echten Aussagen in der Presburger-Arithmetik akzeptiert für einige Konstante c> 0 (Fischer & Rabin 1974). Hier, n bezeichnet die Länge der angegebenen Formel. Da jede kontextempfindliche Sprache von a akzeptiert werden kann linear begrenzter Automatenund ein solcher Automaten kann durch eine deterministische Turing-Maschine mit höchsten Fall-Laufzeit simuliert werden für einige Konstante cDer Satz gültiger Formeln in der Presburger-Arithmetik ist nicht kontextempfindlich. Positiv zu vermerken ist bekannt, dass eine deterministische Turing -Maschine zum größten exponentiellen in der Zeit läuft n Das entscheidet die Menge der echten Formeln in der Presburger -Arithmetik (Oppen 1978). Dies ist daher ein Beispiel für eine Sprache, die lehnte, aber nicht kontextempfindlich ist.

Verschlusseigenschaften

Rekursive Sprachen sind abgeschlossen unter den folgenden Operationen. Das heißt, wenn L und P sind zwei rekursive Sprachen, dann sind auch die folgenden Sprachen rekursiv:

  • Das Kleene Star
  • Das Bild φ (l) unter einem E-freier Homomorphismus φ
  • Die Verkettung
  • Die Union
  • Der Schnittpunkt
  • Die Ergänzung von
  • Der festgelegte Unterschied

Die letzte Eigenschaft ergibt sich aus der Tatsache, dass der festgelegte Unterschied in Bezug auf Schnittpunkt und Komplement ausgedrückt werden kann.

Siehe auch

Verweise

  • Michael Sipser (1997). "Dekidabilität". Introduction to the Theory of Computation. PWS Publishing. pp.151–170. ISBN 978-0-534-94728-6.
  • Chomsky, Noam (1959). "Auf bestimmten formalen Eigenschaften von Grammatik". Informationen und Kontrolle. 2 (2): 137–167. doi:10.1016/s0019-9958 (59) 90362-6.
  • Fischer, Michael J.; Rabin, Michael O. (1974). "Superexponentiale Komplexität der Presburger-Arithmetik". Verfahren des Siam-Ams-Symposiums in angewandter Mathematik. 7: 27–41.
  • Oppen, Derek C. (1978). "A 222pn Obergrenze zur Komplexität der Presburger -Arithmetik ". J. Comput. System. Sci. 16 (3): 323–332. doi:10.1016/0022-0000 (78) 90021-1.