Meine Frage besteht im Wesentlichen aus drei Sprachen A, B und L, wobei L A und B miteinander verkettet sind und B nachweislich nicht regulär ist. Ist es möglich, ein A zu finden, das L regulär macht?
Meine Frage besteht im Wesentlichen aus drei Sprachen A, B und L, wobei L A und B miteinander verkettet sind und B nachweislich nicht regulär ist. Ist es möglich, ein A zu finden, das L regulär macht?
Antworten:
Wenn wir zulassen, dass die leere Sprache ist, die regulär ist, dann haben wir L = { w 1 w 2 | w 1 ∈ A , w 2 ∈ B } = ∅ = A .
Für das etwas interessantere Problem, bei dem A eine nicht leere reguläre Sprache sein muss, können wir ein so konstruieren, dass kein nicht leeres A zu einem regulären L führt
Sei . Sei A eine beliebige reguläre Sprache und betrachte L = { w 1 w 2 | w 1 ∈ A , w 2 ∈ B } . Beachten Sie, dass entgegen der Annahme in J.-E. Pins Antwort: B ist unregelmäßig, enthält aber kein leeres Wort.
Angenommen, S ' ist die Menge von Zuständen, die in allen möglichen akzeptierenden Durchquerungen irgendwann nach dem letzten b besucht wurden . Konstruiere M '
Ich behaupte, dass diese NFA die Sprache . Für jedes w ' ∈ C muss es eine gewisse Durchquerung von einem Element von Q zu einem Element von F geben , da M eine Zeichenfolge mit diesem als Suffix akzeptieren muss. Für jeden w ' ∈ & Sigma; * ∖ C , können wir eine Pick w ∈ A und das Wort bilden , w b w ' . Wenn M ' akzeptiert n > akzeptiert w '
Also akzeptiert C , aber diese Sprache ist nicht regulär, was zu einem Widerspruch führt.
Wenn also nicht leer ist, kann L nicht regulär sein.
Ja das ist möglich. Betrachten Sie das folgende Beispiel:
Sei wobei p eine Primzahl ist. Dies ist nicht regelmäßig. Sei A = 1 n, wobei n ∈ N ist . Das ist regelmäßig.
gibt uns einfach 1 n mit n > 2 und dies ist regulär, da jede Zahl größer als 2 als 2 + x dargestellt werden kann, wobei x > 0 ist
Sei ein nicht leeres Alphabet. Sei B.
Bei einer Sprache ist die Sprache ∅ B = ∅ regulär. Abgesehen von dieser trivialen Lösung ist es nicht immer möglich, eine nicht leere Sprache A zu finden, so dass A B = { u v ∣ u ∈ A ∧ v ∈ B } regulär ist. Es ist für viele nicht reguläre B möglich
Nehmen Sie wobei P die Menge der Primzahlen ist. Was auch immer A ist, wenn A nicht leer ist, dann A.
Um dies zu beweisen, sei (da wir angenommen haben, dass A nicht leer ist). Wenn A B regulär ist, ist L 1 = A B ∩ u c a ∗ , ebenso wie der linke Quotient von L 1 durch den Singleton { u c }, der L 2 = { w ∣ u c w ∈ A B ist ∧ u c w ∈ u c a
Während Ihre Frage nach einem existenziellen Beweis fragt, erinnert sie mich an den Zweig von comp. sci. genannt Regelmäßige Annäherungen.
Die Idee ist, eine nicht reguläre Sprache und dann eine reguläre Sprache A zu finden, so dass L ⊖ A → 0 unter einer Bedingung / Teilmenge von L (wobei ⊖ die symmetrische Differenz ist ), dh eine reguläre Sprache zu finden, die "willkürlich" ist nah "an L.
Sie können viele interessante Lesungen in Google Scholar finden, wenn Sie nach "regulärer Sprachnäherung ohne Kontext" suchen.