計算理論・ラムダ計算の問題
とし、言語とは の部分集合のこととする。言語 の補集合を と書く。言語 について、 とは、多項式時間で計算できる全域関数 で、すべての について となるものが存在することとする。
いま、言語 について 、 であることだけがわかっている。次のア〜オの言語のうち、それぞれに書かれた条件だけから「 に属する」と必ず結論できるものをすべて選べ。
ア ある言語 について かつ をみたす言語
イ をみたす言語
ウ をみたす言語
エ をみたす言語
オ をみたす言語
この問題で使うもの
- 多項式時間多対一帰着の性質(説明と入口の問題)
この問題を解けるようになるまで(22 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
技能「多項式時間多対一帰着の性質」(推移性・補集合への移行・「帰着先が P や NP なら帰着元も P や NP」)を使います。それぞれの選択肢で、帰着の向きがどちらになっているかに注目しましょう。
ヒント 2
「 かつ なら 」は、わかっていない言語が の左側にあるときだけ使えます。また と を使うと、エの条件は書き換えられます。
ヒント 3
アは推移性で 、エは補集合への移行で と書き換えられます。ウとオは、 や を決定不能な言語へ帰着する例が作れないか考えましょう。
答えと解説
答えを見る
ア, イ, エ
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
使う性質は次の 3 つである。
- (1) 推移性: かつ なら (帰着関数の合成 も多項式時間で計算できるため)。
- (2) 補集合への移行: なら (同じ について となるため)。
- (3) 下方への閉包: かつ ()なら ()。注意すべきは、これは 帰着の向きが「 から へ」 のときだけ使えることである。
また である。
ア: (1) より 。 なので (3) より 。結論できる。
イ: 、 なので (3) より 。結論できる。
ウ: 向きが逆( が に帰着される)なので (3) は使えない。実際、 は 以外の任意の言語に帰着できる( かどうかを多項式時間で判定し、 なら の決まった元 、そうでなければ に属さない決まった列 を出力すればよい)。したがって として停止問題のような決定不能な言語をとっても が成り立ちうる。決定不能な言語は に属さないので、結論できない。
エ: (2) を に使うと 、すなわち 。 は補集合をとる操作で閉じている(判定結果を反転すればよい)ので 。よって (3) より 。結論できる。
オ: これも向きが逆である。たとえば停止問題を として とおくと、 は多項式時間で計算でき なので だが、 により でもあるので は決定不能であり に属さない。結論できない。
以上より、答えは ア, イ, エ である。
別解
基本事実: かつ なら 、 なら (多項式時間の関数 で を に写し、 を の判定器(または検証器)に渡す。 は の多項式で抑えられるので全体も多項式時間)。また多項式時間還元の合成は多項式時間還元である。
ア: より合成して 。 なので 。必ず結論できる。
イ: 、 より 。必ず結論できる。
ウ: は が より難しいことしか言わない。例えば のとき、( に属する固定の語)とすれば、 が決定不能な言語でも となる( が空集合でも空でない真部分集合でもよい、 を任意の非自明な言語に取れる)。よって とは限らない。結論できない。
エ: より 。P は補集合について閉じているので 。必ず結論できる。
オ: も の方が難しいことしか言わず、 は決定不能な言語でもよい(例えば かつ を非自明な任意の言語に取れる場合など)。結論できない。
以上より、ア、イ、エ。
検算: ウとオは、 や として自明な言語()を取ると、 は固定された語を含み、かつ固定された語を含まない非自明な任意の言語でよいことになり、決定不能な言語も取れるので NP に入るとは限らない。