次の演習を行いました。
させて
が計算可能であることを証明します。
これはどのように可能ですか?天気を私の知る限りでは、我々は知らない数字(またはその)のすべての配列を含み、アルゴリズムは、確かにいくつかの手順がされていることを決めることができないではないに発生します。したがって、根本的な問題は半決定的であるため、fは計算可能ではないと思います。
次の演習を行いました。
させて
が計算可能であることを証明します。
これはどのように可能ですか?天気を私の知る限りでは、我々は知らない数字(またはその)のすべての配列を含み、アルゴリズムは、確かにいくつかの手順がされていることを決めることができないではないに発生します。したがって、根本的な問題は半決定的であるため、fは計算可能ではないと思います。
回答:
考慮すべき可能性は2つだけです。
Zeros-in-pi(n):
if (n > N) then return 0 else return 1
gallaisが提案した次の証明スケッチとの微妙な違いに注意してください。
- ランダムなチューリングマシンとランダムな入力を受け取ります。
- 計算は永遠に続くか、ある時点で停止し、これらの振る舞いのそれぞれを記述する(一定の)計算可能な関数があります。
- ???
- 利益!
アレックス・テン・ブリンクは説明します:
Halting theoremの状態に注意してください。特定のプログラムが停止するかどうかを決定できる単一のプログラムは存在しないと言われています。特定のプログラムが停止するかどうかを計算するように、2つのプログラムを簡単に作成できます。最初のプログラムは常に「停止する」、2番目のプログラムは「停止しない」と言います。そのうちの!
sepp2kの追加:
アレックスの例の場合、どちらのアルゴリズムもすべての入力に対して正しい結果を返しません。この質問の場合、そのうちの一人がそうします。すべての入力に対して正しい結果を生成するアルゴリズムがあることを知っているため、問題が決定可能であると主張できます。そのアルゴリズムがどれであるかを知っているかどうかは関係ありません。10
JeffEの回答について少し詳しく説明してください。
関数f(n)を計算できる2つの関数/ケースが存在することがわかります。
これらの関数の1つだけが正しい場合があります。私たちはどちらを知りませんが、答えが存在することは確かに知っています。計算可能性は、有限量のステップ内で答えを決定できる関数が存在することを必要とします。
ケース1のステップ数は、1を返すだけです。
2つのケースから選択することは不可能かもしれませんが(一方は別のケースよりも可能性が高いように見えますが)、そのうちの1つが正確でなければならないことがわかります。
サイドノートとして:私たちのソリューションは、どの関数が正しい値を引き出すかを決定することはできませんが、計算可能性の本質は証明の構成可能性に依存しないと仮定します。純粋な存在で十分です。
次の証明の試みのステップ5は不当であり、実際は間違っています -反例はここにあります。(ありがとう、ユヴァル。それはスケッチの最もスケッチの部分のように感じました)。間違いは有益だと思うので、ここに答えを残しました。
まず、JeffEの回答ペアで十分です。fはどちらの方法でも計算可能です。