言語与えられた場合、この言語は規則的でないと、プロダクションルールを調べずに直接どのように言えますか?
ポンピングレンマを使用することもできますが、これは通常の文法ではないと文法を見ているだけの人もいます。どのようにして可能ですか?
言語与えられた場合、この言語は規則的でないと、プロダクションルールを調べずに直接どのように言えますか?
ポンピングレンマを使用することもできますが、これは通常の文法ではないと文法を見ているだけの人もいます。どのようにして可能ですか?
回答:
DFA / NFAの主な特性は、無限のメモリがないことです。言語と唯一のアルゴリズム(後で有限オートマトンに翻訳する必要があります)を見ると、このプロパティが必要であると考えることができます。つまり、それを認識するアルゴリズムは、任意の多数のものを覚えておく必要があると感じます。 (例のように)その言語はおそらく規則的ではありません。
もちろん、あなたは常に数学的直観が間違っている可能性があることを覚えておく必要があり、あなたの直感を確認する唯一の方法はそれを証明することです。
編集:スペースが足りないため、ここのコメントの最後の質問に回答します。
あなたはそれが規則的でない理由であるあなたが意味する無限のメモリについて話している しかし、a ^ nb ^ mには、必要に応じて無制限のメモリを含めることもできますか?これはまだ私に平和を与えていません。
の。これには無制限のメモリが必要です。私が言語を見て、私が考えることができるアルゴリズムが無限のメモリを必要とするのを見るとき、その言語は規則的ではないという私の直感がより強くなります。「スマート」アルゴリズム(一定量のメモリを必要とするアルゴリズム)が妥当な時間内に見つからない場合(妥当な時間はあなた次第です)、言語が規則的でないことを証明してみます。
これが少し明確になることを願っています。
完全な証明を行うのではなく、かなり単純な計算を使用して、言語が正規であるかどうかを実際に決定できます。非常に強力な基準を1つ適用するだけで済みます。言語の商が有限である場合に限り、その言語は正規です。