Skip to main content
QUICK REVIEW

[論文レビュー] Most Programs Stop Quickly or Never Halt

Cristian S. Calude, Michael Stay|ArXiv.org|Oct 26, 2006
Computability, Logic, AI Algorithms参考文献 11被引用数 4
ひとこと要約

本稿は、プログラム空間と時間の両方にわたる確率空間を拡張し、事前的に計算可能な実行時間分布を用いることで、停止問題に対する確率的分析を提案する。任意の k > 0 に対して、T が有効に計算可能であり、T よりも後に停止する N ビットプログラムの確率が、T までに停止していないという条件下で 2^{-k} 未満であることを示している。これは、長時間の実行時間が実質的にまれであることを示している。

ABSTRACT

Since many real-world problems arising in the fields of compiler optimisation, automated software engineering, formal proof systems, and so forth are equivalent to the Halting Problem--the most notorious undecidable problem--there is a growing interest, not only academically, in understanding the problem better and in providing alternative solutions. Halting computations can be recognised by simply running them; the main difficulty is to detect non-halting programs. Our approach is to have the probability space extend over both space and time and to consider the probability that a random $N$-bit program has halted by a random time. We postulate an a priori computable probability distribution on all possible runtimes and we prove that given an integer k>0, we can effectively compute a time bound T such that the probability that an N-bit program will eventually halt given that it has not halted by T is smaller than 2^{-k}. We also show that the set of halting programs (which is computably enumerable, but not computable) can be written as a disjoint union of a computable set and a set of effectively vanishing probability. Finally, we show that ``long'' runtimes are effectively rare. More formally, the set of times at which an N-bit program can stop after the time 2^{N+constant} has effectively zero density.

研究の動機と目的

  • プログラムと時間の両方にわたる確率を拡張することで、量子的でない確率的分析を提供すること。
  • 任意の k > 0 に対して、T が有効に計算可能であり、T までに停止していないという条件下で、T よりも後に停止する確率が 2^{-k} 未満であることを示すこと。
  • 停止するプログラムの集合が、計算可能集合と、実質的に確率が消える集合の直和に分解できることを示すこと。
  • N ビットプログラムにおいて、2^{N+constant} よりもはるかに長い実行時間は、実質的に密度がゼロであると主張すること。

提案手法

  • すべての可能な実行時間に対する事前的に計算可能な確率分布を仮定し、プログラムと時間の両方の結合確率空間を定義する。
  • 一様なプログラム分布と選択された実行時間分布の積測度を用いて、条件付き停止確率を計算する。
  • T までに停止していないという条件下で、T よりも後に停止する確率が、有効に計算可能な T に対して 2^{-k} 以下であることを確立する。
  • アルゴリズム的ランダムネスを活用し、非ランダムで長時間の実行時間が実質的にまれであることを示す。
  • 停止するプログラムの集合が、計算可能集合と確率が 2^{-k} よりも実質的に小さい集合の直和に分解されることを証明する。
  • 2^{N+constant} よりも後に停止していないプログラムは、後にアルゴリズム的に非ランダムな時間に停止することはできないことを示す。

実験結果

リサーチクエスチョン

  • RQ1k > 0 に対して、非停止の N ビットプログラムが T より後に停止する確率が 2^{-k} 未満であるような有効に計算可能な時間境界 T を計算できるか?
  • RQ2停止するプログラムの集合を、計算可能部分と確率が実質的に消える部分に分解できるか?
  • RQ3N ビットプログラムにおいて、2^{N+constant} よりもはるかに長い実行時間は実質的にまれか?
  • RQ4計算可能分布がすべて同様に長時間のまれさを示す限り、実行時間分布の選択が極限において重要かどうか?

主な発見

  • 任意の k > 0 に対して、T が有効に計算可能であり、T までに停止していないという条件下で、T よりも後に停止する条件付き確率が 2^{-k} 未満である。
  • 停止するプログラムの集合は、任意の k > 0 に対して、計算可能集合と確率が実質的に 2^{-k} 未満の集合の直和として表せる。
  • N ビットプログラムにおいて、2^{N+constant} よりも長い実行時間は、計算可能実行時間分布の選択にかかわらず、実質的に密度がゼロである。
  • N ビットプログラムが収束するチューリングマシン上で永遠に停止しない確率は、N が増加するにつれて 1 に近づく。
  • 2^{N+constant} よりも後に停止していないプログラムは、後にアルゴリズム的に非ランダムな時間に停止することはできない。
  • 特定の計算可能実行時間分布の選択にかかわらず、結果は成り立つ。長時間の実行時間が実質的にまれである限り、成り立つ。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。