決定問題
決定問題
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/01 16:46 UTC 版)
停止問題 - NP困難だがNPではない決定問題。なぜなら、停止問題は決定不可能という問題クラスに属しており、決定不可能はNPより困難で、かつ決定不可能とNPは互いに素だからである。具体的に示すには、NP困難であることは、例えば充足可能性問題を停止問題に容易に還元できることから言える(充足できる解を見付けたら停止し、そうでない場合は無限ループするようなチューリングマシンの停止問題を考えればよい)。NPでないことは、NPに属する問題は全て有限の手続きで決定可能だが、停止問題は一般には決定不可能であることによる。ただし、NP困難でありかつNP完全でない問題の全てが決定不可能というわけではない。例えばTQBF問題(en)はPSPACEで決定可能だが、多分NPではない。 ハミルトン閉路問題 - 巡回セールスマン問題の特殊ケース。NP困難かつNP完全な決定問題。 部分和問題 - ナップサック問題の特殊ケース。NP困難かつNP完全な決定問題。
※この「決定問題」の解説は、「NP困難」の解説の一部です。
「決定問題」を含む「NP困難」の記事については、「NP困難」の概要を参照ください。
決定問題
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/08/01 20:32 UTC 版)
計算複雑性理論で扱う計算問題の多くは決定問題である。決定問題とは、答えが「はい」か「いいえ」になる問題を指す。 決定問題を主に扱うのは、任意の計算問題を何らかの決定問題に還元することが常に可能だからである。例えば、HAS-FACTOR を与えられた整数 n と k(どちらも二進数で与えるとする)について、n が k より小さい素因数をもつかどうかに答える決定問題とする。すると、計算問題 FACTORIZE(素因数分解)の解法は、HAS-FACTOR を使って実現でき、その際に追加の資源はそれほど要しない。具体的には k について二分探索を行い、n の最小素因数を探索し、その値で n を割る。そして、商について再び同じ作業を繰り返していけばよい。このことは、HAS-FACTOR の解法をある計算資源量で実現できるか否かが分れば、FACTORIZE の解法についても分るということを意味する。 計算複雑性理論では、答えが「はい」かどうかを確認する問題と、答えが「いいえ」かどうかを確認する問題を区別する。「はい」と「いいえ」を逆転させた問題は、元の問題の補問題と呼ばれる。 例えば、決定問題 IS-PRIME(素数判定問題)は、入力が素数の場合に「はい」、そうでなければ「いいえ」を返す。一方、問題 IS-COMPOSITE は与えられた整数が素数でない(すなわち合成数である)ことを決定する。IS-PRIME が「はい」を返すなら、IS-COMPOSITE は「いいえ」を返す。逆も成り立つ。したがって IS-COMPOSITE は IS-PRIME の補問題であり、同様に IS-PRIME は IS-COMPOSITE の補問題である。 ある問題の解を求める計算量とその補問題の解を求める計算量は同じであるが、問題のあるインスタンスについて「はい」となる証拠を与えられて、その証拠が正しいかを判定する計算量は同じとは限らない。例えば、IS-COMPOSITE問題で、ある整数について、証拠として素因子を一つ与えられれば、除算を行うことで検算することができる。しかし、IS-PRIME問題では、どのような証拠を与えればよいかは、しばらくの間、自明ではなかった。補問題を区別することは、後述する複雑性クラスNPとco-NPなどで重要となる。 計算複雑性理論の重要な成果の1つとして、ある難しい問題があったとき(それがいかに大量の時間資源や空間資源を要したとしても)、それよりさらに難しい問題が必ず存在するという事実がある。時間計算量については時間階層定理(英語版)によってこれが証明されている。同様に領域階層定理(英語版)も導かれる。
※この「決定問題」の解説は、「計算複雑性理論」の解説の一部です。
「決定問題」を含む「計算複雑性理論」の記事については、「計算複雑性理論」の概要を参照ください。
- 決定問題のページへのリンク