この言語が文脈自由でないことをどのように証明できますか?


11

次の言語があります

{0i1j2k0ijk}

私はどのチョムスキー言語クラスに適合するかを決定しようとしています。文脈依存の文法を使用してそれがどのように作成されるかを確認できるので、少なくとも文脈依存であることがわかります。文脈自由文法では作成できないようですが、それを証明するのに問題があります。

がすべての単語の3番目の部分(2つのsのすべてを含むセクション)に配置されている場合、フォークポンピングレンマを通過するようです。vxを必要なだけポンプでき、言語のままです。私が間違っている場合、なぜ私が正しい場合でも、この言語は文脈自由ではないと思うので、なぜそれを証明できますか?uvwxy2vx


正式な証明にする方法はわかりませんが、i <= j <= kを保証するにはコンテキスト(前の変数の値)が必要です。
Kevin


@Raphael、私はこの投稿の前にその投稿を読みましたが、抽象的なため、私の例にそれを適用する方法を知りませんでした。各文字の関係が> =以前の文字数であるため、uxyzvを単語に分割してオグデンの補題を使用する方法がわかりませんでした。BlueMagisterとjmadは、私の例で明確にするために、他の投稿で拡張されました。
justausr 2012年

@Raphael私はこれが一般的なケースの些細な適用であることには同意しません。使用する方法とそれを適用する例を選択することはそれほど簡単ではありません。
Gilles「SO-悪をやめる」

回答:


7

たとえば、すべての0をマークすることにより、オグデンの補題を使用して、ポンプを強制的に特定の場所に置くことができます。

それが文脈自由であると仮定すると、オグデンの補題はあなたにを与え、あなたはそれに言語であるw = 0 p 1 p 2 pを与え、そしてあなたはすべての0に「印を付ける」。その後、任意の因数分解W = U 、X 、Y 、ZのVが存在するようなものでなければならない0、XまたはZが。また、想定することができ、X = KおよびZ = bはMので、X 、X及びZ Zをp>0w=0p1p2pw=uxyzv0xzx=akz=bmxxzz あなたの言語の部分文字列でなければなりません。

  1. もし次に、W = U 、X 2、Y 、Z 2、vは 1個の以上の0を有していますz=0...0w=ux2yz2v

  2. もしおよびZ = 1..1次いでW = U 、X 2、Y 、Z 2、vはより1つの2のよりを有しています。x=0..0z=1..1w=ux2yz2v

  3. もしおよびZ = 2..2次いでW = U 、X 2、Y 、Z 2、vはより0の1のよりを有しています。x=0..0z=2..2w=ux2yz2v

したがって、はあなたの言語の言葉ではありません。したがって、コンテキストフリーではありません。ux2yz2v

他の手法については、ディスカッションを参照してください:言語が文脈自由ではないことを証明する方法は?


これは私の持っている言語と同じですか?これは、0と1と2がすべて同じ長さである同様の言語のようです。この言語には2の数> = 1の数> = 0の数があります
justausr

1
はい、ですが、すべてのポンピングレンマのいずれかを使用すると、単語を選択できます(そして、私はを選択しました)。オグデンのレンマは、それらすべてに対して機能するはずです。0p1p2p
jmad

おっと、オグデンの補題について聞いたことがないので、調べてみる必要があります。私はそれがポンプの補題に失敗したと言っているのは正しいですか?
justausr 2012年

@justausrも最近まで(そして私が言及した議論のおかげで)私もいません。そして、はい、あなたは正しかった:ポンピング補題はほとんど同じことを行いますが、どこにポンピングするかを選択しないと、ここでは役に立たなくなります。
jmad

5

ポンピングレンマは、単語の3番目の部分に関する問題を解決するはずです。を分割する場合、n = 0の場合も含めu v n w x n yの任意の組み合わせも言語に含まれることに注意してください。やってみて。z=uvwxyuvnwxnyn=0

編集:jmadが述べるように、Pumping Lemmaはゲームのようなものです。

  1. ポンピング補題はあなたにpを与えますp
  2. あなたは長さが少なくともpの言語の単語を与えるsp
  3. s=uvxyz|vxy|p|vy|1
  4. n0
  5. uvnxynzLL

n

s=uvxyzvxyvxyvxyvyn=0uvnxynz=uxz


uvwxyのすべてを2のセクションに入れると言いますか?
justausr 2012年

それが正しい言葉を与えられている場合。答えは詳しく説明します。
Blue Magister 2012年

ここで、今すぐお試しください。私のポンピングレンマがあなたのポンピングレンマと同じかどうかわからないので、ウィキペディアにアピールします。
Blue Magister
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.