Ja, der Unterschied zwischen lehnen und erkennbaren Sprachen ist vollkommen klar. Die Unterscheidung liegt im Verhalten einer Turing Machine (TM), die versucht, die Mitgliedschaft zu bestimmen:
* LEISTUNGSPRAGE (rekursiv Eine Sprache L ist enttäuscht, wenn es eine Turing -Maschine gibt, die für * jede * Eingangszeichenfolge W, an der w ∈ L und "Nein" annimmt und korrekt antwortet. Dies bedeutet, dass der TM immer anhält, unabhängig davon, ob die Eingabe in der Sprache liegt oder nicht.
* erkennbare Sprache (rekursiv aufzählbare Sprache): Eine Sprache L ist erkennbar, wenn es eine Turing -Maschine gibt, die für * jede * Eingangszeichenfolge W, die "Ja" anhält und antwortet, wenn w ∈ L. Wenn W ∉ L jedoch "nein" anhalten und antwortet, oder es für immer läuft (auf unbestimmte Zeit). Der Schlüssel ist, dass es * immer * die richtige Antwort gibt ("Ja"), wenn sich die Zeichenfolge in der Sprache befindet; Es darf nur nicht deterministisch sein oder keine Antwort geben, wenn die Zeichenfolge * nicht * in der Sprache ist.
In einfacher Begriffen:
* entschlossen: Der TM gibt in endlicher Zeit immer eine endgültige Antwort (Ja oder Nein).
* erkennbar: Das TM gibt eine "Ja" -Anantwortung in endlicher Zeit, wenn sich die Eingabe in der Sprache befindet, aber möglicherweise keine Antwort gibt (indem sie für immer schleifen), wenn sich die Eingabe nicht in der Sprache befindet.
Jede lehnte Sprache ist ebenfalls erkennbar. Das Gegenteil ist jedoch nicht wahr; Es gibt erkennbare Sprachen, die nicht lehnte. Das stillende Problem ist ein klassisches Beispiel für eine Sprache, die erkennbar, aber nicht lehnte. Es kann ein TM erstellt werden, das Zeichenketten erkennt, die anhielten Turing -Maschinen darstellen (es simuliert die Maschine und antwortet "Ja", wenn es anhält), aber kein TM kann entscheiden, ob eine willkürliche Turing -Maschine eine bestimmte Eingabe anhält (da das Anstaltproblem selbst lösen würde).
Die Differenz läuft darauf hinaus, ob der TM die Kündigung für alle Eingaben garantiert (entschlossen) oder nur eine "Ja" -Anantwortung in endlicher Zeit für Inputs in der Sprache (erkennbar) garantiert. Der Unterschied ist in der Computerbarkeitstheorie von grundlegender Bedeutung.