タグ付けされた質問 「computability」

計算可能性理論、別名再帰理論に関する質問

9
状況依存(タイプ1)言語の重要性は何ですか?
Chomsky Hierarchyでは、タイプ3言語は外部メモリのない状態マシン(すなわち、有限オートマトン)によって認識され、タイプ2は単一スタックの状態マシン(すなわち、プッシュダウンオートマトン)およびタイプ0によって認識されます。2つのスタックを持つステートマシン(または、チューリングマシンの場合と同じように、テープ)、Type 1言語はこの図にどのように適合しますか?また、言語がタイプ0だけでなくタイプ1であると判断することにはどのような利点がありますか?

5
デッドコードがコンパイラによって検出できないことの証明
私はさまざまなトピックの冬のコースを教えることを計画しています。そのうちの1つはコンパイラーになります。今、私はこの問題に出くわしましたが、四半期を通じて与えるべき課題を考えていましたが、私は困惑しているので、代わりに例としてそれを使用するかもしれません。 public class DeadCode { public static void main(String[] args) { return; System.out.println("This line won't print."); } } 上記のプログラムでは、のためにprintステートメントが実行されないことは明らかですreturn。コンパイラーは、デッドコードに関する警告またはエラーを出すことがあります。たとえば、上記のコードはJavaでコンパイルされません。ただし、javacコンパイラは、すべてのプログラムでデッドコードのすべてのインスタンスを検出するわけではありません。コンパイラーがそれを実行できないことをどのように証明しますか?

2
停止ステータスが不明な非常に短いプログラムとは何ですか?
Binary Lambda Calculusのこの579ビットプログラムには、不明な停止ステータスがあります。 01001001000100010001000101100111101111001110010101000001110011101000000111001110 10010000011100111010000001110011101000000111001110100000000111000011100111110100 00101011000000000010111011100101011111000000111001011111101101011010000000100000 10000001011100000000001110010101010101010111100000011100101010110000000001110000 00000111100000000011110000000001100001010101100000001110000000110000000100000001 00000000010010111110111100000010101111110000001100000011100111110000101101101110 00110000101100010111001011111011110000001110010111111000011110011110011110101000 0010110101000011010 つまり、このプログラムが終了するかどうかはわかりません。それを決定するには、Collat​​zの予想を解く必要があります-少なくとも、2 ^ 256までのすべての数値に対して。このリポジトリには、このプログラムがどのように取得されたかの完全な説明があります。 また、停止ステータスが不明な短いBLCプログラムがありますか?


2
NPにはないが決定可能なNPハード問題
NP完全ではなく、決定不能ではない、理解しやすいNPハード問題の良い例があるのだろうか? たとえば、停止の問題はNP完全ではなくNPハードですが、決定できません。 これは、多項式時間ではなく、解決策を検証できる問題であることを意味すると考えています。(そうでない場合は、この文を修正してください)。

1
非意味的性質に関するライスの定理
ライスの定理は、チューリングマシンの唯一のセマンティックプロパティ(つまり、マシンによって計算される関数のプロパティ)が2つの自明なプロパティ(つまり、常にtrueと常にfalse)であることを示しています。 しかし、決定できないチューリングマシンの他のプロパティがあります。たとえば、特定のチューリングマシンに到達不能な状態があるというプロパティは決定不能です†。††^{\dagger} 同様の特性の決定可能性を分類するライスの定理に類似した定理はありますか?正確な定義がありません。私が挙げた例をカバーする既知の定理は、私にとって興味深いものです。 KleeneのRecursion / Fixed Point定理を使用して、このセットが決定不能であることを証明するのは簡単です。††^\dagger

2
量子TMと非決定的TMの違いは何ですか?
量子チューリングマシンを定義する方法の質問に関する議論を行っていた。そして、量子TMと非決定論的 TMは同じものだと感じています。他の質問への答えはそれに触れません。これらの2つのモデルは同じですか? いいえの場合、 量子TMとNDTMの違いは何ですか? NDTMがQuantum TMよりも速く計算する計算はありますか? この場合、quantum TMはDTMであり、なぜこのテクノロジーにそれほどファジーがあるのか​​、すでに非常に多くのDTMがあります。最後に新しいDTMを設計する理由は何ですか?

7
対角化よりも停止する問題の決定不能性のより直感的な証拠はありますか?
対角化に基づいて、停止問題の決定不能性の証拠を理解します(たとえば、Papadimitriouの教科書で与えられます)。 証明は説得力がありますが(各ステップを理解しています)、問題だけから始めて誰かがそれを導き出す方法がわからないという意味で、私には直感的ではありません。 本の中で、証拠はこのように書きます:「仮定入力上の停止問題解決、つまり、チューリングマシンかどうかを決定し入力のための停止。チューリングマシンの構築チューリングマシンとる入力としての、を実行し、出力を逆にします。」次に、が満足のいく出力を生成できないことを示します。 M ; x M x D M M H(M ; M )D (D )MHMHM_HM; バツM;xM;xMMMバツxxDDDMMMMH(M; M)MH(M;M)M_H(M;M)D (D )D(D)D(D) 一見arbitrary意的な構成、特にを自分自身に送り、次にを自分自身に送り込むという考えが、直観を持ちたいと思っています。そもそもなぜこれらの構成要素と手順を定義するようになったのですか?M DDDDMMMDDD そもそもそのタイプの議論を知らなかった場合、誰かが対角化議論(または他の証拠)にどのように推論するかについての説明はありますか? 回答の最初のラウンドを与えられた補遺: したがって、最初の答えは、停止問題の決定不能性を証明することは、カンターとラッセルの以前の仕事と対角化問題の開発に基づくものであり、「ゼロから」開始することは単にその議論を再発見することを意味することを指摘しています。 けっこうだ。しかし、対角化の議論を十分に理解されているものとして受け入れたとしても、それから停止する問題への「直観のギャップ」があることがわかります。実数の数え難さのカンターの証明私は実際にかなり直感的だと思う。ラッセルの逆説はさらにそうです。 私がまだ見ていないのは、誰かがの「自己適用」に基づいてを定義し、それからを自分自身に適用する動機付けになることです。これは対角化とはあまり関係がないようです(Cantorの議論にはそのようなものがなかったという意味で)。M M ; M DD (M)D(M)D(M)MMMM; MM;MM;MDDD PS @babouは、自分よりも私を悩ませていることを要約しました。「証明の多くのバージョンの問題は、構造が魔法の帽子から引っ張られているように見えることです。」

2
チャーチチューリングテーゼとニューラルネットワークの計算能力
Church-Turing論文では、物理的に計算できるすべてのものをチューリングマシンで計算できると述べています。論文「ニューラルネットワークによるアナログ計算」(Siegelmannn and Sontag、Theoretical Computer Science、131:331–360、1994; PDF)は、特定の形式のニューラルネット(設定は論文で提示されている)がより強力であると主張しています。著者は、指数関数的な時間で、彼らのモデルがチューリング機械モデルで計算できない言語を認識することができると言います。 これは教会とチューリングのテーゼと矛盾しないのですか?

4
「機械は驚きを引き起こすことができない」と言ったとき、チューリングは何を意味したのですか?
私はここでアラン・M・チューリング による以下の声明に遭遇しました: 「機械が驚きを引き起こすことはできないという見方は、哲学者や数学者が特に受けやすい誤acyによるものだと思います。これは、事実が心に提示されるとすぐに、その事実のすべての結果が生じるという仮定ですそれと同時に心。それは多くの状況で非常に有用な仮定ですが、それが間違っていることを簡単に忘れてしまいます。」 私は英語のネイティブスピーカーではありません。誰もがそれを平易な英語で説明できますか?

2
計算可能な関数よりも計算できない関数の方が多いのはなぜですか?
現在、アルゴリズムと複雑さに関する本を読んでいます。現時点では、計算可能および計算不可能な機能について読んでおり、私の本は、計算可能よりも計算不可能な機能がはるかに多いと述べています。実際、大半は計算不可能です。ある意味では、私はそれを直感的に受け入れることができますが、この本は正式な証拠を与えておらず、トピックについて詳しく説明していません。 ここで誰かがそれについて詳しく説明したり、計算可能な関数よりも計算できない関数が多い理由をより厳密に理解したりすることを望みました。

2
合計関数が列挙できないのはなぜですか?
関数の列挙の概念について学びました。実際には、プログラミング言語に対応しています。 教授は、発言の中で、すべての合計関数(つまり、すべての入力に対して常に終了する関数)のクラスは列挙できないと述べました。つまり、すべての全機能を記述できるプログラミング言語を考案することはできませんが、他の機能は一切実現できません。 それで、まともな計算能力が必要な場合、どうやら(明らかに)非終了の可能性を受け入れなければならないのでしょうか?

2
Cのvoid型がempty / bottom型と類似していないのはなぜですか?
ウィキペディアと私が見つけた他のソースはvoid、空のタイプではなくユニットタイプとしてリストCのタイプを見つけました。void空の/下の型の定義によりよく適合するように思えるので、この混乱を見つけます。 void私が知る限り、値は存在しません。 戻り値の型がvoidの関数は、関数が何も返さないため、何らかの副作用しか実行できないことを指定します。 タイプのポインターvoid*は、他のすべてのポインタータイプのサブタイプです。また、void*C との間の変換は暗黙的です。 最後の点voidに、空の型であることの引数としてのメリットがあるかどうかはわかりvoid*ませんvoid。 一方、voidそれ自体は他のすべてのタイプのサブタイプではありません。これは、タイプがボトムタイプであるための要件であると言えます。
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

6
2つの言語間でソースコードを「翻訳」できるプログラムはありますか?
2つの言語間でソースコードを「翻訳」できるプログラムはありますか(翻訳者が必要なライブラリにアクセスできると仮定します)? ある場合、それらはどのように機能しますか(使用される技術、必要な知識など)?それらはどのように実行可能に構築されますか? そうでない場合、開発を妨げる制限は何ですか?これはAIの完全な問題ですか(自然言語の翻訳は1つとしてリストされています)? EDIT 変換は、言語に同じ表現力があり、同じ種類の問題を解決でき、変換されるコードが宛先言語で表現できる場合にのみ予想されます。(たとえば、シェルスクリプトからMATLABへの変換は想定されていません)。

2
対角化、自己参照、または還元性以外の理由で決定できないことがわかっている特定の問題はありますか?
私が知っている決定できない問題はすべて、次のカテゴリのいずれかに該当します。 対角化のために決定できない問題(間接的な自己参照)。これらの問題は、停止する問題のように、言語の意図された決定者を使用して、動作が矛盾につながるTMを構築できるため、決定できません。また、コルモゴロフの複雑さに関する多くの未決定の問題をこのキャンプにまとめることもできます。 直接的な自己参照のために決定できない問題。たとえば、ユニバーサル言語は、次の理由で決定不能であることが示されます:決定可能であれば、Kleeneの再帰定理を使用して、独自のエンコーディングを取得するTMを構築し、独自の入力を受け入れるかどうかを尋ねることができます、その後、逆を行います。 既存の未決定の問題からの削減のために決定できない問題。ここでの良い例には、通信後問題(停止問題からの削減)とEntscheidungsproblemが含まれます。 計算可能性理論を生徒に教えるとき、多くの生徒もこれを取り上げて、最終的に何らかの自己参照の策略にさかのぼることなく決定できない問題があるかどうかを尋ねます。TMの数を言語の数に関連付ける単純なカーディナリティの議論によって、決定的でない問題が無限に多いことを非構造的に証明できますが、これは決定できない言語の具体例を示していません。 上記にリストされていない理由で決定できない言語がありますか?もしそうなら、それらは何であり、どのような技術がそれらの決定不能性を示すために使用されましたか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.