
数学において、計算可能数とは、有限で終了するアルゴリズムによって任意の精度で計算できる実数である。計算可能数は、再帰数[1]、実効数[2]、 [計算可能実数] 、[3]、再帰実数[4]とも呼ばれる。計算可能実数の概念は、当時利用可能であった計算可能性の直感的な概念を使用して、1912年にエミール・ボレルによって導入された。 [5]
アルゴリズムの形式的表現として、μ-再帰関数、チューリングマシン、またはλ-計算を使用して同等の定義を与えることができます。計算可能な数は実閉体を形成し、多くの数学的目的(すべてではない)で実数の代わりに使用できます。[引用が必要]
非公式の定義
以下では、マービン・ミンスキーは、 1936年にアラン・チューリングが定義したものと同様の方法で計算される数値を定義しています。[6]つまり、0から1までの「小数として解釈される数字のシーケンス」です。[7]
計算可能な数とは、最初のテープにnが与えられ、その数(テープにエンコードされている)のn番目の桁で終了するチューリング マシンが存在する数です。
定義における重要な概念は、(1)開始時に何らかのnが指定されること、(2)任意のnに対して計算には有限数のステップしかかからず、その後マシンは目的の出力を生成して終了することです。
(2) の別の形式、つまりマシンがテープ上のn桁すべてを連続的に印刷し、n番目を印刷した後に停止するという形式は、ミンスキーの観察を強調しています。(3) チューリングマシンを使用することで、マシンの状態表の形での有限の定義が、潜在的に無限の 10 進桁の文字列を定義するために使用されています。
しかし、これは、結果が所定の精度の範囲内で正確であることのみを要求する現代の定義ではありません。上記の非公式の定義は、テーブル作成者のジレンマと呼ばれる丸めの問題の影響を受けますが、現代の定義はそうではありません。
正式な定義
実数a は、次 の方法で計算可能な関数によって近似できる場合、計算可能です。任意の正の整数nが与えられた場合、関数は次のような整数f ( n ) を生成します。
複素数は、実数部と虚数部が計算可能な場合、計算可能と呼ばれます。
同等の定義
同等の類似した定義が 2 つあります。
- 任意の正の有理数誤差境界 が与えられたときに、有理数rを生成する計算可能な関数が存在し、
- 各iに対してとなるような、に収束する計算可能な有理数列が存在する。
計算可能デデキント切断による計算可能数の同等の定義がもう 1 つあります。計算可能デデキント切断とは、有理数を入力として与えられたときに、次の条件を満たす または を返す 計算可能関数です。
3 の3 乗根を定義するプログラムDの例を示します。これは次のように定義されます。
実数は、それに対応する計算可能なデデキント切断Dが存在する場合にのみ計算可能です。関数Dは、計算可能な数ごとに一意です (もちろん、2 つの異なるプログラムが同じ関数を提供する場合もあります)。
プロパティ
計算的に列挙できない
各チューリングマシン定義にゲーデル数を割り当てると、計算可能数に対応する自然数のサブセットが生成され、から計算可能数への全射が識別されます。チューリングマシンは可算個しかないため、計算可能数は部分可算であることがわかります。ただし、これらのゲーデル数の集合は計算可能列挙可能ではありません(したがって、それに関して定義されている のサブセットも計算可能列挙可能ではありません)。これは、どのゲーデル数が計算可能実数を生成するチューリングマシンに対応するかを決定するアルゴリズムがないためです。計算可能実数を生成するために、チューリングマシンは全関数を計算する必要がありますが、対応する決定問題はチューリング次数0′′です。したがって、自然数から計算可能実数を表すマシンの集合への全射の計算可能関数は存在せず、カントールの対角論法を使用してそれらの数が非可算であることを示す ことはできません。
実数の集合は非可算ですが、計算可能数の集合は古典的に可算であり、したがってほとんどすべての実数は計算可能ではありません。ここで、任意の計算可能数に対して、整列原理により、に対応する最小の元が存在するため、最小の元で構成されるサブセットが存在し、その上ではマップが全単射になります。この全単射の逆は、計算可能数の自然数への単射であり、それらが可算であることを証明します。しかし、この場合も、計算可能実数自体が順序付けられているにもかかわらず、このサブセットは計算可能ではありません。
フィールドとしてのプロパティ
計算可能数に対する算術演算は、実数aとbが計算可能であるときはいつでも、次の実数も計算可能であるという意味で、それ自体が計算可能である: a + b、a - b、ab、およびbがゼロでない場合はa/b。これらの演算は、実際には一様に計算可能である。たとえば、入力 ( A、B、) に対して出力r を生成するチューリングマシンがあり、ここでAはa を近似するチューリングマシンの記述、Bはbを近似するチューリングマシンの記述、r はa + bの近似である。
計算可能な実数が体を形成するという事実は、1954年にヘンリー・ゴードン・ライスによって初めて証明されました。[8]
ただし、計算可能実数は計算可能体を形成しません。計算可能体の定義には有効な等式が必要であるためです。
順序の計算不可能性
計算可能数に関する順序関係は計算可能ではありません。Aを数 を近似するチューリングマシンの記述とします。すると、入力Aに対して、 の場合に「YES」を出力し、 の場合に「NO」を出力するチューリングマシンは存在しません。理由を確認するために、 Aで記述されたマシンが近似値として 0 を出力し続けると仮定します。マシンがa を正にするような近似値を出力しないと判断するまでに、どれくらい待てばよいかは明らかではありません。したがって、マシンは最終的に、出力を生成するために、数が 0 に等しいと推測する必要があります。シーケンスは後で 0 と異なる可能性があります。この考え方は、マシンが全関数を計算する場合、一部のシーケンスで間違っていることを示すために使用できます。同様の問題は、計算可能実数がデデキント切断として表される場合に発生します。同じことが等式関係にも当てはまります。つまり、等式テストは計算可能ではありません。
完全な順序関係は計算不可能だが、不等数のペアへの制限は計算可能である。つまり、2つのチューリングマシンAとBを入力として受け取り、数とを近似するプログラムがあり、ここで、またはを出力する。近似値を使用するだけで十分であり、したがって、を徐々に小さく(0に近づく)とることで、最終的にまたはを決定できる。
その他のプロパティ
計算可能実数は、解析で使用される実数のすべての特性を共有するわけではありません。たとえば、計算可能実数の有界増加する計算可能列の最小上限は、計算可能実数である必要はありません。[9]この特性を持つ列は、 1949年にエルンスト・スペッカーによって最初に構築されたため、スペッカー列として知られています。 [10]このような反例が存在するにもかかわらず、計算可能数の分野で微積分と実解析の一部を展開することができ、計算可能解析の研究につながっています。
すべての計算可能な数は算術的に定義可能ですが、その逆は成り立ちません。算術的に定義可能で計算不可能な実数は多数あり、その一部を以下に示します。
- 選択されたエンコード方式に従って停止問題(またはその他の決定不可能な問題)の解をエンコードする任意の数値。
- チャイティン定数 は、停止問題とチューリング等価な実数の一種です。
これら 2 つの例は、実際には、定義可能で計算不可能な数の無限集合を、各汎用チューリング マシンごとに 1 つずつ定義しています。実数は、それが表す自然数の集合 (2 進数で記述され、特性関数として表示された場合) が計算可能である場合にのみ計算可能です。
計算可能な実数の集合(および計算可能な実数の無限に密に順序付けられたすべての可算な部分集合)は、有理数の集合と 順序同型です。
数字列とカントール空間とベール空間
チューリングの元の論文では、計算可能な数は次のように定義されています。
実数は、その数字のシーケンスが何らかのアルゴリズムまたはチューリング マシンによって生成できる場合、計算可能です。アルゴリズムは整数を入力として受け取り、実数の 10 進展開の - 番目の桁を出力として生成します。
( aの小数点展開は小数点以下の数字のみを参照します。)
チューリングは、この定義が上記の -近似定義と同等であることを認識していました。議論は次のように進みます。ある数がチューリングの意味で計算可能であれば、その数は次の意味でも計算可能です。 の場合、 a の10 進展開の最初のn桁はaの近似値を提供します。逆に、計算可能な実数a を選び、小数点以下のn番目の桁が確実になるまで、精度の高い近似値を生成します。これにより、常にaに等しい 10 進展開が生成されますが、不適切に 9 の無限シーケンスで終了する可能性があり、その場合は有限の (したがって計算可能な) 適切な 10 進展開を持つ必要があります。
実数の特定の位相的性質が関係しない限り、の実数ではなく、(合計 0,1 値関数)の元を扱う方が便利な場合がよくあります。 の要素は2 進小数展開と同一視できますが、 の 10 進展開と は同じ実数を表すため、区間は、すべて 1 で終わらない の部分集合とのみ全単射的に(および部分集合位相の下で同相的に)同一視できます。
10進展開のこの特性は、10進展開で定義された計算可能な実数と近似の意味で定義された計算可能な実数を効果的に識別することが不可能であることを意味することに留意されたい。ハーストは、計算可能数aの近似値を生成するチューリングマシンの記述を入力として受け取り、チューリングの定義の意味でaの桁を列挙するチューリングマシンを出力するアルゴリズムは存在しないことを示した。 [11]同様に、これは、計算可能な実数に対する算術演算が、10進数を加算するときのように10進表現では有効ではないことを意味する。1桁を生成するために、現在の位置への繰り上がりがあるかどうかを判断するために、任意に右に遠くを見る必要があるかもしれない。この統一性の欠如は、計算可能数の現在の定義が10進展開ではなく近似値を使用する理由の1つである。
しかし、計算可能性理論や測度理論の観点から見ると、2 つの構造と は本質的に同一です。したがって、計算可能性理論家は の要素を実数と呼ぶことがよくあります。 はと完全に切り離されていますが、クラスやランダム性に関する質問についてはで作業する方が簡単です。
の元は実数とも呼ばれ、の同相像を含んでいますが、は局所的にコンパクトでもありません(完全に分離されていることに加えて)。これにより、計算特性に真の差異が生じます。たとえば、量指定子のない を満たす は計算可能でなければなりませんが、普遍式を満たす唯一の は、超算術階層で任意の高い位置を占めることができます。
実数の代わりに使用する
計算可能数には、すべての実代数的数やe、π、その他多くの超越数など、実際に現れる特定の実数が含まれる。計算可能実数には計算または近似できる実数が網羅されているが、すべての実数が計算可能であると仮定すると、実数について実質的に異なる結論が導かれる。当然、実数をすべて処分して数学のすべてに計算可能数を使用することが可能かどうかという疑問が生じる。この考えは構成主義の観点から魅力的であり、ロシアの構成数学学派によって追求されてきた。[12]
計算可能数に対する解析を実際に展開するには、いくつかの注意が必要です。たとえば、数列の古典的な定義を使用する場合、計算可能数の集合は、有界数列の上限を取るという基本操作の下では閉じられません(たとえば、スペッカー数列を考えてみましょう。上のセクションを参照してください)。この問題は、計算可能な収束係数を持つ数列のみを考慮することで解決されます。結果として得られる数学理論は、計算可能解析と呼ばれます。
正確な算術演算の実装
実数を近似値を計算するプログラムとして表現するコンピュータパッケージは、1985年に「正確な算術」という名前で提案されました。[13]最近の例としては、CoRNライブラリ(Coq)[14]やRealLibパッケージ(C++)などがあります。[15]関連する研究は、実数RAMプログラムを取得し、十分な精度の有理数または浮動小数点数でそれを実行することに基づいています。たとえば、iRRAMパッケージです。[16]
参照
注記
- ^ マズル、スタニスワフ(1963)。グジェゴルチク, アンジェイ;ラシオワ、ヘレナ(編)。計算可能な分析。ロズプラウィ・マテマティチュネ。 Vol. 33.ポーランド科学アカデミー数学研究所。 p. 4.
- ^ ファン・デル・ホーヴェン(2006年)。
- ^ Pour-El, Marian Boykan ; Richards, Ian (1983). 「解析学と物理学における非計算可能性: 非計算可能線形演算子のクラスの完全な決定」. Advances in Mathematics . 48 (1): 44–74. doi : 10.1016/0001-8708(83)90004-X . MR 0697614.
- ^ Rogers, Hartley, Jr. (1959). 「チューリングマシンの計算可能性に関する現在の理論」. Journal of the Society for Industrial and Applied Mathematics . 7 : 114–130. doi :10.1137/0107009. MR 0099923.
{{cite journal}}: CS1 maint: multiple names: authors list (link) - ^ P. Odifreddi,古典的再帰理論(1989)、p.8。ノースホランド、0-444-87295-7
- ^ チューリング(1936年)。
- ^ ミンスキー(1967年)。
- ^ ライス(1954年)。
- ^ ブリッジズ&リッチマン(1987)、58ページ。
- ^ スペッカー(1949年)。
- ^ ハースト(2007年)。
- ^ クシュナー、ボリス A. ( 2006)。「AA マルコフの構成的数学」。アメリカ数学月刊誌。113 (6): 559–566。doi : 10.2307/27641983。JSTOR 27641983。MR 2231143 。
- ^ Boehm, Hans-J.; Cartwright, Robert; Riggle, Mark; O'Donnell, Michael J. (1986 年 8 月 8 日)。「正確な実数演算: 高階プログラミングのケース スタディ」( PDF)。1986 ACM LISP および関数型プログラミング カンファレンス - LFP '86 の議事録。pp. 162–173。doi : 10.1145 /319838.319860。ISBN 0897912004. S2CID 12934546。2020年9月24日にオリジナルからアーカイブ(PDF)されました。
- ^ O'Connor, Russell ( 2008). 「Coq での認定された正確な超越実数計算」。高階論理における定理証明。コンピュータサイエンスの講義ノート。第 5170 巻。pp. 246–261。arXiv : 0805.2438。doi : 10.1007 / 978-3-540-71067-7_21。ISBN 978-3-540-71065-3. S2CID 17959745。
- ^ ランボフ (2015).
- ^ Gowland , Paul; Lester, David (2001). 「正確な算術実装の調査」(PDF) .解析における計算可能性と複雑性. コンピュータサイエンスの講義ノート。第 2064 巻。Springer。pp. 30–47。doi :10.1007/ 3-540-45335-0_3。ISBN 978-3-540-42197-92022年3月24日時点のオリジナルよりアーカイブ(PDF)されました。
参考文献
- ブリッジズ、ダグラス、リッチマン、フレッド(1987)。構成的数学の多様性。ケンブリッジ大学出版局。ISBN 978-0-521-31802-0。
- Hirst, Jeffry L. (2007). 「逆数学における実数の表現」.ポーランド科学アカデミー紀要、数学. 55 (4): 303–316. doi : 10.4064/ba55-4-2 .
- ランボフ、ブラニミール(2015 年 4 月 5 日)。 「リアルリブ」。 GitHub。
- ミンスキー、マービン(1967)。「9. 計算可能な実数」。計算: 有限マシンと無限マシン。プレンティス ホール。ISBN 0-13-165563-9. OCLC 0131655639.
- ライス、ヘンリー・ゴードン (1954)。「再帰的実数」。アメリカ数学会紀要。5 (5): 784–791。doi : 10.1090/S0002-9939-1954-0063328-5。JSTOR 2031867 。
- スペッカー、E. (1949)。 「Nicht konstruktiv beweisbare Sätze der Analysis」(PDF)。記号論理学ジャーナル。14 (3): 145–158。土井:10.2307/2267043。JSTOR 2267043。S2CID 11382421。2018年 7 月 21 日にオリジナルから アーカイブ(PDF) 。
- チューリング、AM (1936)。「計算可能数について、その計算問題への応用」。ロンドン数学会の議事録。シリーズ2。42 (1) (1937 年発行): 230–65。doi :10.1112/ plms /s2-42.1.230。S2CID 73712 。
チューリング、AM (1938)。「計算可能数について、その計算問題への応用:訂正」。ロンドン数学会紀要。シリーズ2。43 (6) (1937 年発行): 544–6。doi :10.1112/plms/s2-43.6.544 。この論文では計算可能数 (およびチューリングの a-マシン) が紹介されました。計算可能数の定義には無限の 10 進数列が使用されます。 - ファン・デル・ホーヴェン、ジョリス(2006年)。「実効実数による計算」。理論計算機科学。351 (1):52-60。doi :10.1016/ j.tcs.2005.09.060。
さらに読む
- アバース、オリバー(1968)。「計算可能数体における解析」。計算機協会誌。15 (2): 276–299。doi : 10.1145/321450.321460。S2CID 18135005 。この論文では、計算可能数体上の計算法の開発について説明します。
- ビショップ、エレット、ブリッジス、ダグラス(1985)。構成的分析。シュプリンガー。ISBN 0-387-15066-8。
- Stoltenberg-Hansen, V.; Tucker, JV (1999)。「計算可能な環と体」。Griffor, ER (編)。計算可能性理論ハンドブック。Elsevier。pp. 363–448。ISBN 978-0-08-053304-9。
- ヴァイラウフ、クラウス (2000)。計算可能な分析。理論的なコンピューターサイエンスのテキスト。スプリンガー。ISBN 3-540-66817-9。§1.3.2 では、単一の実数に収束する区間のネストされたシーケンスによる定義を紹介します。その他の表現については、§4.1 で説明します。
- ヴァイラウフ、クラウス (1995)。計算可能な解析についての簡単な入門書。フェルヌニブ、Fachbereich Informatik。
