16

私が取っているCSコースには、規則的ではない言語の例があります。

{a^nb^n | n >= 0}

メモリコンポーネントがないため、この入力を検証して受け入れる有限状態オートマトン/マシンを記述できないため、これは定期的ではないことを理解できます。(間違っている場合は訂正してください)

正規言語のウィキペディアのエントリにもこの例がリストされていますが、正規ではない理由の(数学的な)証明は提供されていません。

誰かがこれについて私に教えて、これの証拠を提供することができますか、または私にあまりにも良いリソースを指摘することができますか?

4

6 に答える 6

18

あなたが探しているのは、正規言語のポンピング補題です

これがあなたの正確な問題の例です:

例:
L = {a m b m | m≥1}。
その場合、Lは規則的ではありません。
証明:nをPumpingLemmaのようにします。
w = a nbnします。
w=xyzをPumpingLemmaのようにします。
したがって、xy 2z∈Lです、xy2zにはbよりも多くのaが含まれています。

于 2010-02-22T08:53:54.837 に答える
8

「a」および「b」シンボルの同一シーケンスを「カウント」する有限状態マシンを作成できないためです。一言で言えば、FSM は「カウント」できません。このような FSM を想像してみてください: シンボル 'a' にいくつの状態を与えるでしょうか? 「b」はいくつ?入力シーケンスがさらにある場合はどうなりますか?

n <= X で X が整数値の場合、そのような FSM を準備できることに注意してください (多くの状態を持つが有限数の FSM を持つことによって)。そのような言語は規則的です。

于 2010-02-22T08:56:56.030 に答える
1

有限状態オートマトンにはデータ構造 (スタック) がありません - プッシュ ダウン オートマトンの場合のようにメモリです。ええ、いくつかの 'a' の後にいくつかの 'b' が続くことはできますが、正確な量の 'a' の後にその 'b' が続くわけではありません。

于 2015-02-26T06:16:25.520 に答える