Definieren Sie die Nerode-Äquivalenz über eine Sprache als iff für jedes . U ~ L v u w ∈ L ⇔ v w ∈ L w ∈ & Sigma; *
Die Nerode-Äquivalenz hat genau dann viele Äquivalenzklassen, wenn von einem Automaten mit endlichen Zuständen erkannt werden kann. Dies ist der Myhill-Nerode-Satz . L.
Gibt es eine ähnliche Charakterisierung kontextfreier Sprachen?
Motivation:
Die Nerode-Äquivalenzklassen entsprechen jeweils einem bestimmten Zustand in jedem Automaten, der erkennt . Jede CFL kann von einer NPDA erkannt werden, die eine endliche Anzahl von Zuständen, aber auch einen potenziell unbegrenzten Stapel von Alphabetsymbolen aufweist. Der Stapel verfolgt eine Möglichkeit, wie eine Zeichenfolge analysiert werden kann. Die Anzahl der Äquivalenzklassen kann unendlich sein, da der Stapel eine unbegrenzte Anzahl von Symbolen speichern kann.
Ich frage: Gibt es immer eine Möglichkeit, Äquivalenzklassen so zusammenzufassen, dass jeder Klumpen einen Zustand des PDA darstellt, wobei jede Klasse innerhalb des Klumpens äquivalente Zustände des Stapels für diesen PDA-Zustand darstellt?
Zum Beispiel muss die Sprache richtig verschachtelt Klammern nur Zustände Griff pop
und push
, wie der Stapel Spur des aktuellen Schachtelungstiefe halten. Wenn eine solche Verklumpung immer möglich ist, bestimmt die Frage, ob die Anzahl der Verklumpungen endlich ist, ob die Sprache kontextfrei ist.
Wie von @sdcvvc in einem Kommentar hervorgehoben, wurde eine Form dieser Frage als /math/118362 gestellt, obwohl Yuval Filmus auf die verwandte Frage am Beispiel einer nicht kontextfreien Sprache antwortete, die dies dennoch tat KANN gepumpt werden? ist relevanter.