パリフの定理:CFLの「含む」通常言語?


7

パリクの定理に関するウィキペディアの記事の最初の文は次のように述べています。

「理論的なコンピューターサイエンスにおけるパリクの定理は、順序に関係なく、文脈自由言語での終端記号の相対的な出現回数のみを見た場合、その言語は通常の言語と区別がつかないと述べています。」

この文を理解するのに問題があります。単項CFLは、有限数の算術シーケンスの結合として説明できることを理解しています。これは、いくつかのCFLモーフィズムを適用すると、たとえば、とを一部のとすべてのとにマッピングすることを意味しますか、次に、は単項正規言語ですか?誰かがこれについて詳しく説明できますか?hLa⟶ac⟶εa∈Σc∈Σc≠ah(L)

回答:


12

パリフのイメージ Ψ 単語のは、アルファベットの各文字の数を数えるベクトルです。たとえば、 Ψ(abbabaaca)=(5、3、1) アルファベットが {a、b、c}。

言語のパリックイメージは、その言語の文字列のパリックイメージのセットです。 Ψ({aんbんcん|ん≥0})={(ん、ん、ん)|ん≥0}。

定理は、例として、文脈自由言語のパリク画像は実際には通常の言語のパリク画像であると述べている Ψ({(ab)んcん|ん≥0})=Ψ((abc)∗)。

(前の編集で私は例がありました Ψ({aんbんcん|ん≥0})=Ψ((abc)∗)。技術的には正しいですが、読者は言語に文脈がないわけではないことに注意してください。)


5

ウィキペディアの表現があまり明確ではないことに同意しますが、次の関係を指していると思います。

文字の順序を無視する場合は、2つの単語を同等の文字と呼びます。つまり、辞書順で文字を並べ替えると(重複は保持されます)、同じ単語が生成されます。(言い換えれば、彼らのパリフのイメージは同じです。)

2つの言語を、それらの単語が同じであれば、同等の文字を呼び出します。つまり、辞書順に並べ替えて、同じ言語を生成します。(言い換えれば、彼らのパリフのイメージは同じです。)

定理は、すべての文脈自由言語が通常の言語と同等の文字であることを意味します。例えば、{aんbん|ん≥0} に相当する文字です (ab)∗。

(同等の表記文字は、J。Goldstine(1977)による、たとえば、パリキの定理の簡略化された証明にあります。)


回答への参照を追加できればさらに良いでしょう。
— John L.

ちなみに、「(重複を保持する)」を追加すると、明確化よりも混乱が増えると思います。重複を保持することは、普遍的に一般的なことだからです。明示的に要求されない限り、並べ替えは重複の削除を意味しません。要するに、デフォルトの動作は明示的に言及されるべきではありません(例外的な場合を除いて)。ちょうど私の2セント。これはとにかくここでの小さな問題です(もちろん、どこにでもあなたの習慣を適用するかどうかが気になるところです)と、とにかくここでは何も変更しないためです。
— ジョンL.

私もそれについて疑問に思っています。しかし、それらの文字はあいまいです。つまり、発生するそれぞれの異なる文字を意味するものと考えるかもしれません。
— reinierpost

OK、私はあなたの懸念を理解しています。合理的です。
— ジョン

1
参照を追加しましたが、それは答えを膨らませます。Hendrik Janの答えを複製したくありませんでした。
— reinierpost
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.