計算とは正確には何ですか?


20

あいまいな意味での計算(コンピューターが行うこと)は知っていますが、より厳密な定義が必要です。

Dictionary.comの計算、計算、計算、計算の定義は循環的であるため、役に立ちません。

Wikipedia計算を「明確に定義されたモデルに従う任意のタイプの計算」と定義します。これは、計算を「変数を変更して、1つ以上の入力を1つ以上の結果に変換する意図的なプロセス」と定義しています。しかし、この定義には、通常は計算とは考えられていませんが、多くのアクションが計算として含まれているようです。

たとえば、これは、たとえば爆弾の爆発は計算であり、入力は点灯し、出力は爆発であるということを意味しませんか?

では、計算とは正確には何ですか?


それは素晴らしい、古典的な質問です。
ランG.


@Raphael私の知る限り、計算!=アルゴリズムです。おそらく、アルゴリズムの実行は計算です。
ケルミクラ

私にとって、「Pは計算可能」==「Pを解くアルゴリズムがあります」(Pの問題)。ただし、これは私のTCSの観点からの結果かもしれません。
ラファエル

@Raphaelこれは、Pが計算可能であることの意味ではなく、計算とは何かを尋ねています。
ケルミクラ

回答:


6

おそらくここでの問題は、非常に一般的な概念の非常に具体的な定義を探していることでしょう。事実上すべてを計算として見る問題は見当たりません。私たちはそれについて考えていませんが、私たちがすることはすべて、少なくともクォークがぶらぶらするまで、コンポーネントの物理学の観点から表現できます。計算に関しても同じ状況があります。入力、出力、およびプロセスがあります(これらはすべて些細なことです)。計算または計算のモデルとして興味深い有用かは、非常に異なる質問です。

私たちが持っている最も強力な定義は、物理的に実現可能すべての計算モデルがチューリングマシンほど強力ではないと述べている(強力な)チャーチチューリングテーゼです。これが真実だと信じるなら、物事を表現する方法はたくさんあるかもしれませんが、最終的にはすべての計算をチューリングマシンに減らすことができます。したがって、計算の定義を「チューリングマシンに減らすことができるもの」とします。

このモデルでは、爆発する爆弾は計算です。それは広く適用できるものではありません(; また、爆発する爆弾モデルがチューリング完全である可能性は低いと思われるため、一般的な計算の良いモデルでもありません。


2
むしろトピックから外れていますが、爆発する爆弾モデルはチューリング完了です!爆発は他の爆発を引き起こす可能性があり、これを使用して信号を伝播し、ORゲートを作成できます。爆弾bは、デバイスを介して特定の時間に爆発するように設定できますが、近くの爆弾は、bを爆発させずにデバイスを無効にすることができます。
ケルミクラ

@ Kyth'Py1kはドミノゲートのようですか?「計算」は常にマシン/地雷原のサイズに基づいて停止するため、無限にループすることはできないため、完全にチューリングするとは思わない
ラチェットフリーク

1
@ratchetfreak爆弾遺体は...それらにナノボットを経て、新たな爆弾とした後、再配置されているわけではない場合を除き
Kelmikra

4

これは、チューリングが1936年の有名な計算可能な数値についての論文で、Entscheidungsproblem適用して解決するために設定した質問です。特にセクション9を参照してください。

チューリングの仕事は、計算可能な数値のコンテキストにあります。他の種類の構造の計算に適した計算の他の概念があり、それらの研究は計算理論(再帰理論とも呼ばれます)の一部を形成します。

計算の一般的な概念と例(爆発する爆弾)の主な違いは、計算されるものです。爆発する爆弾によって何が計算されていますか?別の違いは計算手段ですが、爆弾を使用してより正当なものを計算する機械的な仕掛けを想像することができます。

もう1つのポイントは、計算の古典的な概念が、今日の計算、つまりコンピューターとユーザー間の双方向の相互作用として認識されているものに適用されるかどうかです。これは、計算理論のツールを使用して相互作用をモデル化することができますが、古典的な計算可能性の概念に対するレベルの一般的な批判です(クラスで学んだことではありません)。


もちろん、爆発は計算です。爆発を記述するユニタリ変換を正確に「計算」します。ところで、私が出会った物理学者は、(たとえば)量子ゲートが進化するのではなく、ユニタリを計算する、またはそれに応じて物理システムを変換すると言うとき、「動揺」しました(ゲートはペンと紙を取り、ユニタリ "?):)
ランG.

「計算可能な数値について、Entscheidungsproblemに適用して」のセクション9を読みましたが、実際には役に立たなかったようです。私はそれをあまり徹底的に読んでいませんでしたが、チューリング機械の基礎を築いているように見えました。計算は、チューリングマシンによって実行されるアクションとしてモデル化できるものだと言っていますか?もしそうなら、ほとんどすべてが計算ではないでしょうか?たとえば、爆弾の爆発はチューリングマシンとしてモデル化され、周囲の粒子の量子粒子の位置、速度、およびタイプがバイナリとしてエンコードされます。
ケルミクラ

「爆発する爆弾によって何が計算されているのですか?」物理法則に従って爆弾を取り巻く粒子の状態の変化が計算されています。
ケルミクラ

「もう1つのポイントは、計算の古典的な概念が、今日私たちが計算と考えるものに適用されるかどうか、つまり、コンピューターとユーザーの間の双方向の相互作用です。」私はこれが計算と見なされるものとはまったく思わない。自律ロボットは、ユーザーと対話する必要がない場合でも、計算を行うと考えられています。
ケルミクラ

ここにアイデアがあります:コンピューティングは、オプティマイザー(人やロボットなど)によって行われる推論を支援するために出力を生成するプロセスです。どのようだ?
ケルミクラ

1

ABバツAyBバツAバツ

バツバツyバツy

t=0t=1

結論:マッピングは計算を定義します。入力を対応する出力に変換する「デバイス」は、その特定の計算を実行(「計算」)します。



(1)これらのタイプの計算に議論を広げることができます。これは、再帰的ではないファンシトンについて考えるときに意味がありますが、私はそこに行きたくないのです。


この定義の問題は、「計算」という言葉が実際に使用されている方法に対応していないことです。PCは計算を行うものと考えられていますが、爆発物はそうではありません。
ケルミクラ

私見マッピングはまさに計算ではありません。構文とセマンティクスを混同していると思います。明らかに、マッピングは入出力関係として理解されていますが、定義されています。私のすべての本で、それはセマンティクスです。計算は、一連のステップを介して入力に対応する出力を実際に取得するために使用される手段です。どんな計算でもマッピングを定義すると言うかもしれませんが(構文上の場合のみ)、マッピングを定義することを考えるのは間違っていると思います。
babou

私の答えの精神を明確にする必要があります(そのように表現されていないことに気付きます):マッピング自体は計算ではありません。プロセス出力への入力の変換は、その特定の写像(関数)の計算です。私が伝えようとしたのは、特定のプロセスが関連しており、そのようなプロセスはすべて計算であるということです(非常に抽象的なもの、たとえば「オラクル」)。
ランG.

1

計算が何であるかを定義しようとはしません。これは、ルーク・マティソンとユヴァル・フィルマスによってかなりうまく行われました。

ただし、爆発するデバイスを計算として考えると、重要な副次的な問題が発生します。爆発が計算である場合、何を計算するのでしょうか。爆発後のデバイスの表現以外。

私が目指しているのは、計算とみなすものをかなり正確に定義でき、さらには何を1つと見なすことができるか(考えられますか?)です。計算を記述することができます。しかし、コンピューティングが何であるかを伝えることはできますか?

一般的に定義されているように、計算は純粋に構文的なゲームです。これは、正確なルールに従って変換される物理構造のゲームです。物理構造を表現するための唯一のツール(標準的な変換まで)は最終的にシンボルの文字列であるため、計算はシンボルの文字列に対する何らかの形式的な変換として定義されます。これは、チューリングマシン、ラムダ計算、部分再帰関数、およびその他のあまり人気のないモデルに当てはまります。ラテン語では結石は表現に使用される小さな石であるため、微積分(ラムダ計算など)という言葉は実際にこの見解を反映しています。

しかし、これが伝えていないのは、この構文にどのような意味を付加するか、それが表すものです。私はそのような問題の専門家ではないので、私が理解していると思うことはほとんどありません(再確認してください)。問題はモデル理論でカバーされています。

論理(公理と推論規則)または計算システム(変換規則)に関連付けられている可能性のある表現の形式システムを考えると、形式理論のモデルは、これらの規則に従うコンポーネントを持つ数学的構造です。

同じ計算、より正確には同じ計算の記述は、実際には非常に異なるエンティティに対応する多くのモデルを持つことができます。

たとえば、GCDアルゴリズムは計算を記述します。ただし、自然数または多項式で解釈される場合があります。

これはBertrand Russell'quoteを思い出させます:

数学は、私たちが何について話しているのか、また私たちが言っていることが真実かどうかを決して知らない主題として定義されるかもしれません。

計算の状況はほとんど同じです。これは正式なゲームであり、さまざまな方法で動きを理解できます。しかし実際には、公理システムによって公式に定義された数学と計算理論の間には深いつながりがあります。

計算、アルゴリズムは数学の問題を解決するために定義され、現代の概念の多くは、公理から推論規則を適用して定理を証明できるメカニズムを理解しようとする論理学者によって考えられました。

したがって、爆発装置に戻るために、それは確かに表現の操作、すなわち計算として解釈することができます。しかし、それ以外の意味をそれに関連付けることは一般的にかなり困難です。

ただし、これは常に正しいとは限りません。アナログ計算の原理は、異なる表現システムを何らかの正確な方法で関連する計算に使用できるという考えに依存しています。次に、1つのシステムで計算して、対応する設定で他のシステム(実際には使用するには扱いにくい、たとえばユニバース:)が何を計算するかを考えます。


0

用語に関するこの種の質問には、語源的な用語で答えたいと思います。

したがって、計算は文字通り「計算」を意味するラテン語compŭtusから来ます。

フランス語、イタリア語、スペイン語、ポルトガル語(特に)などのラテン語では、この語源はスペイン語のコンタ/コンテのフランス語のコンテ/コンテの「物語」(物語)と共有されています。

したがって、計算とは、この計算がどのように行われたかを計算し、説明することです。

したがって、計算は数学的および論理的なルールを使用して特定の情報を処理するプロセスであるため、新しい意味のある情報が元のデータから推定され、この新しい情報の生成方法(プロセッサ、メモリ、入力および出力が関係する基本です)


フランス語では、物語はスペイン語で「conte」、「cuento」です。「compte」は計算または請求書ですが、スペイン語では「cuenta」です。同音異義語「compte」と「conte」が共通の語源を共有していることはわかりませんが(「h」afaikはありません)、この一般的な語源はWebで確認されているようです。したがって、この計算可能性ビジネス全体は単なる物語に過ぎませんか?
babou

Je l'aicorrigé。私はこの種の間違いを
犯さ

または、物語は単なる計算であるかもしれません。いくつかの初期条件で特定の人格を持つキャラクターの束を取り、ストーリーの残りの部分が計算されます
ルイスシエイラ

「この新しい情報がどのように生成されたかを追跡します(プロセッサ、メモリ、入力および出力が基礎となります)。」これは、実行中にメモリ使用量を追跡しない限り、何かが計算ではないということを意味しませんか?それは
正しく聞こえ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.