Ist { } nicht kontextfrei?


30

Ist die Sprache { } kontextfrei oder nicht?aibjck | ij,ik,jk

Mir wurde klar, dass ich fast alle Varianten dieser Frage mit unterschiedlichen Bedingungen über die Beziehung zwischen i, j und k kennengelernt habe, aber nicht diese.

Ich vermute, dass es nicht kontextfrei ist, aber haben Sie einen Beweis?


11
@Sariel: Ich hoffe, dass es kein Hausaufgabenproblem ist, weil ich nicht weiß, wie ich es lösen soll.
Tsuyoshi Ito

3
Es sieht aus wie ein Hausaufgabenproblem, da einige der anderen Varianten, die ich erwähne, leicht genug sind, um Hausaufgabenprobleme zu sein. Diese Variante ist aber kein Hausaufgabenproblem. Ich würde mich freuen, wenn mir jemand einen Link zu einer Kursseite geben könnte, auf der dieses spezielle Problem als Hausaufgabe vergeben wurde.
Cem Say

2
Können Sie erklären, warum die Standardtechniken nicht funktionieren?
Warren Schudy

3
@ Tsuyoshi ... Yeh. Du hast recht. Es ist schwieriger als es aussieht.
Sariel Har-Peled

3
Interessanterweise ist diese Sprache (und die Verwendung von Ogdens Lemma) in Beispiel 6.3 (S. 130) in der klassischen Version von Hopcroft und Ullmans "Introduction to Automata Theory, Languages ​​and Computation" zu finden.
Dominik D. Freydenberger

Antworten:


28

Ogdens Lemma sollte funktionieren:

Für ein gegebenes wähle und markiere alle (und sonst nichts).a i b p c k bpaibpckb

k b b i ki und werden so gewählt, dass es für jede Wahl, wie viele tatsächlich gepumpt werden, einen Pumpexponenten gibt, so dass die Anzahl von gleich und einer, bei dem es gleich .kbbik

Das heißt, und müssen aus der Menge .k 1 n p { p - n + m * n | m N 0 }ik1np{pn+mnmN0}

Ich bin mir ziemlich sicher, aber zu faul, um formal zu beweisen, dass dieses Set unendlich ist.


5
Unter der Annahme, dass IN_0 die Menge der nichtnegativen ganzen Zahlen bedeutet, ist die erwähnte Menge unendlich, da sie p + im für i = 0, 1, 2, ... enthält, wobei m das am wenigsten verbreitete Vielfache von {1, ..., p} ist.
Tsuyoshi Ito

11
Diejenigen, die Ogdens Lemma nicht kannten (wie ich), finden Wikipedia möglicherweise hilfreich.
Tsuyoshi Ito

2
@ Tsuyoshi: Ja, du hast recht. Ich habe diese einfache Darstellung gestern Abend nicht gesehen.
Frank Weinberg


Ein ähnlicher Beweis wird in dieser Antwort auf cs.se präsentiert.
Hsien-Chih Chang 張顯 張顯

-4

Wenn die Beziehung zwischen den drei Einschränkungen "ODER" ist, ist die Sprache CFL. Die Lösung nutzt die Tatsache, dass CFLs unter Union geschlossen sind. Offensichtlich sind die folgenden CFLs: , L 2 = { a i b j c k | i k , j 0 } , L 3 = { a i bL1={aibjckij, k0}L2={aibjckik, j0} (wenn man nicht überzeugt, kann man auf aussehen L i als Verkettung von CFL und regelmäßiger Sprache zum Beispiel. L 1 ist { a i b j | i j } verketteten zu { c } .L3={aibjckjk, i0}LiL1{aibjij}{c}

Die gewünschte Sprache ist die Vereinigung der obigen . Es ist also CFL.L=L1L2L3


5
Das ist falsch. Zum Beispiel und damit in Ihrem L , aber ein a b c c { a i b j c k | i j , i k , j k } . aabccL1Laabcc{aibjck | ij,ik,jk}
Dave Clarke

4
Sie nehmen an, dass »die Beziehung zwischen den drei Einschränkungen" ODER "ist«, aber dies ist nicht die beabsichtigte Bedeutung. Alle Einschränkungen müssen gelten (vgl. Dave Clarkes Gegenbeispiel), und dann ist die Sprache nicht kontextfrei (vgl. Die Antwort oben).
DaniCL
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.