Eher ein erweiterter Kommentar mit einer Vermutung, aber hier ist eine Bedingung, die das Problem zu erfassen scheint, im Kontext von regulärem für S ( L ) kontextfrei zu sein.LS(L)
Bedingung
In der minimalen DFA für L enthält jeder akzeptierende Pfad höchstens eine Schleife.AL
Ausnahme: Zwei Schleifen sind zulässig, wenn ihre Bezeichnungen und die Bezeichnung des Präfixes vor der ersten Schleife alle pendeln und das Suffix nach der zweiten Schleife leer ist. Zum Beispiel ist ok.aa∗b(aa)∗
Erinnern Sie sich, dass zwei Wörter und v pendeln, wenn sie Potenzen desselben Wortes t sind . Wir können annehmen, dass das Suffix leer ist, da es nicht leer sein darf und mit dem Label der zweiten Schleife in einem DFA pendelt.uvt
Ausreichend
Angenommen, Sie erstellen einen PDA für indem Sie jedes Akzeptanzmuster x u y von A behandeln, wobei u eine einfache Schleife bezeichnet. Wir wollen Wörter der Form x u n y x u n y akzeptieren . Wir lesen x , drücken ein Symbol für jedes Vorkommen von u , lesen y x , dann platzieren wir ein Symbol für jedes Vorkommen von u und lesen schließlich y .LxuyAuxunyxunyxuyxuy
Wenn wir uns in diesem Fall in der Ausnahme befinden, hat ein grundlegender Akzeptanzpfad die Form wobei u , v die Beschriftungen der Schleifen sind. Wir akzeptieren Wörter der Form x u n y v m x u n y v m , aber unter der Annahme ( x , u , v pendeln) ist es dasselbe wie u n x y u n v m x y v m , was kann von einem PDA erledigt werden: Taste n drückenxuyvu,vxunyvmxunyvmx,u,vunxyunvmxyvmnmal (für Vorkommen von ), lese x y , pop n mal, drücke m mal (für v ), lese x y , pop m mal.uxynmvxym
Der endgültige PDA ist die Vereinigung der PDAs für jedes Muster.
Notwendig
(Handwinken) Wenn es einen Pfad mit zwei Schleifen gibt, müssen Sie sich auch im einfachsten Fall, in dem Sie eine als die andere nehmen müssen (z. B. ), daran erinnern, wie oft jede genommen wird, aber an die Stapelstruktur verhindert, dass Sie sie in der gleichen Reihenfolge wiederholen. Beachten Sie, dass die Tatsache, dass der DFA minimal ist, bei der Charakterisierung wichtig ist, um die Verwendung von zwei Schleifen zu vermeiden, wenn eine ausreichen könnte.a∗b∗
Im Moment ist der notwendige Teil nur eine Vermutung und es könnten weitere Ausnahmen erforderlich sein, um die genaue Bedingung zu erhalten. Ich würde mich für Gegenbeispiele interessieren.