の違いは何ですかアルゴリズム、言語の問題なのか。
質問
ここのサイトでは、人々が正しいその他たく"のアルゴリズム"と"の問題を抱えていますから。" その差がみられます。アウトについて思考えアルゴリズムの問題を考える?どのようなこれらに関連のコンセプト言語形式言語理論?
解決
簡単のため、まずみを考慮し"決定"の問題を、yes/no回答。機能の問題作のほぼ同じ道を除くの有無が特定出力の単語にはそれぞれ入力します。
言語:言語は単なるセットの文字列です。またアルファベット大文字、小文字など $\Sigma$,し$\Sigma^*$はセットのすべてを含む語のみのシンボルを$\Sigma$.例えば、, $\{0,1 \}^*$ は、すべてのバイナリの配列の長さです。アルファベットである必要はありませんのバイナリあります。できる単項,三元系など。
言語以上の英字$\Sigma$は任意のサブセット$\Sigma^*$.
問題:問題は一部について質問を入力してい答えいたします。具体的には、決定問題の質問を求めて、当社の指定された入力履性$X$?
言語の形式的実現の問題です。いたい場合はその理由を理論的に約決定問題に対してよく検討し、対応する言語です。こ$X$に対応する言語:
$L=\{w\中w$はエンコードの入力$y$問題が$X$, の答えを入力$y$問題が$X$は"Yes"$\}$
いるかどうかを判断する回答のための入力を決定する問題は"あり"と同等かどうかの判断は、当該エンコードの入力の上にアルファベットは対応する言語です。
アルゴリズム:アルゴリズムは段階的な解決の問題です。ございますのでご注意アルゴリズムで表現することができるので多くの、多くの言語、多くの異なるアルゴリズム解決のずれが問題です。
チューリング機:Aチューリング機械のアナログのアルゴリズムです。Aチューリング機械のために一定アルファベット大文字、小文字をそれぞれの単語には"ノイズなんか気にならない"の下げ止まりを受入れます。このように各コンピュータの実$M$あり、対応言語:
$L(M)=\{w\中M$止を受け入れ状態で入力$w\}$.
あの微妙な違いチューリング機械の停止のすべての入力および中止あり、入力の定義の違いを主な計算量クラスの階層$\mathsf{R}$と$\mathsf{再}$.)
の関係言語チューリング機器として以下の
各コンピュータの受け入れを正確に一言語
いは複数回答が可能であるコンピュータの受け入れる指定言語
なうことがあってはならないコンピュータを受け入れるた言語です。
ということができまほぼ同じことを約アルゴリズムの問題毎アルゴリズムを解決問題がある場合は、0、または多くのアルゴリズムが解決される。
時間計算量:一ほどの混乱とアルゴリズムの問題についての複雑さい。正しい配分は以下のように整理できます:
- アルゴリズム は 時間の複雑性
- 問題 所属 る複雑性クラス
アルゴリズムである。しいアルゴリズムは、最悪の場合は上限の複雑さ $f(n)$の場合アルゴリズムを停止で最も$f(n)$手順入力の$n$.
問題なく実行時から問題ない結びつくという特定のアルゴリズムを実際に運行しています。その代わりに、という問題に所属する複雑性クラスが存在する場合 一部の アルゴリズムその問題解決が与えられた。
$\mathsf{P},\mathsf{NP},\mathsf{PSPACE},\mathsf{EXPTIME}$等すべての複雑さい。つまり、これらの問題があり、アルゴリズムアルゴリズムができるものではないで$\mathsf{P}$がる場合が多項式時間アルゴリズムで解決される問題が$X$,し$X$は$\mathsf{P}$.あることとするバンチの指数関数時間アルゴリズムを受け入れ$X$がで存在する単一の多項式時間アルゴリズムを受け入れ$X$が$\mathsf{P}$.