コンピューター理論で「無限」言語または「有限」言語というフレーズを使用するかどうかはわかりません。
私は、トラブルの根本は似た言語ということだと思うである無限のそれは無限(ただし可算)文字列の数を生成することができることを意味しました。しかし、それはまだ有限状態オートマトンによって認識できます。
また、Sipser本が実際にこの区別を行わないことも助けにはなりません(少なくとも私が知る限り)。無限/有限言語とそれらの通常言語との関係についての質問がサンプル試験で出されました。
コンピューター理論で「無限」言語または「有限」言語というフレーズを使用するかどうかはわかりません。
私は、トラブルの根本は似た言語ということだと思うである無限のそれは無限(ただし可算)文字列の数を生成することができることを意味しました。しかし、それはまだ有限状態オートマトンによって認識できます。
また、Sipser本が実際にこの区別を行わないことも助けにはなりません(少なくとも私が知る限り)。無限/有限言語とそれらの通常言語との関係についての質問がサンプル試験で出されました。
回答:
ああ。これは、今日では「通常の言語」として知られているものの同義語である「有限状態言語」の(古い学校の)用語によって引き起こされた混乱のようです。
とにかく、最近受け入れられた有限/無限の標準定義は、言語のサイズのみを考慮します。
有限常に規則的です。
無限は、レギュラー(「有限状態」と呼ばれることもあります)、決定可能(「再帰」と呼ばれることもあります)、非レギュラー(非有限状態)、決定不能などです。
言語は文字列のセットです。有限数の文字列が含まれている場合、有限です。
コンピューター理論で「無限」言語または「有限」言語というフレーズを使用するかどうかはわかりません。
トラブルの根源は、ような言語は、無限の(しかし可算の)文字列を生成できるという意味で無限だと思います。しかし、それはまだ有限状態オートマトンによって認識できます。
もう1つの問題は、正式な言語理論が「言語」という用語の使用方法にかなり特有であることです。
正式な言語理論の人々を除くこの世界のすべての人にとって、言語はコミュニケーションに使用される発話のシステムであるため、各発話には形式(構文)と何らかの意味(意味)があります。少なくともコンピューターサイエンスで使用されている形式言語理論は、言語の構文を正式に定義する最適な方法の問題に専念しています。それは、言語の構文(発話がどのように見えるか)と言語の構文を定義するために使用される正規表現などの形式(言語!)との関係に関するすべてです。
したがって、形式言語理論では、「言語」は単に「文字列のセット」として定義されます。通常、言語の文字列に意味を割り当てません。
同時に、正規表現などの言語の記述に使用される形式もこの意味で言語を形成します。たとえば、すべての正規表現は文字列であるため、正規表現のセットは言語です。しかし、これらの形式主義のために、言語の文字列は、やる意味があります。例えば、すべての正規表現の意味は、それが表す言語です。
ab*
(Kleene star)は文字列の0個以上の組み合わせを持つことができることを意味するため、無限ですab
。これには、潜在的な無限数の文字列が含まれます:{""、ab ^ 1、ab ^ 2、ab ^ 3、... 。、ab ^ n}。ただし、実際には無限の文字列を生成する方法はないため、この言語を認識するFSMを構築できます。マシンで処理する場合、すべての文字列は有限である必要がありますが、言語自体を有限にすることはできません。言語の無限性は理論的です。