2014年10月27日月曜日

サーキットの計算量の様々なクラス その8

おはようございます。いかに失うものもないタコのようなふにゃふにゃのしている私でも、いろいろ悲しいことはあります。しかし、生きているだけで必要にして十分であるはず。ええ、すでに何を言っているか自分でも分りませんが、さて、今回のことをきちんと説明できるのでしょうか。


前回クラスγ/F

   γ/F={L⊆{0,1}*|∃B∈γ,h∈F,L={x|<x,h(|x|)>∈B}     ①

と定義するとき、γ=PF=Polyの場合すなわちP/Polyが重要であるというお話をしました。今回は、以下の定理を説明します。

【定理】 L∈P/Polyの必要十分条件は
  
fn(1)^-1=L∩{0,1}^n




で定義されるブール関数の列fnが多項式サイズのサーキットで計算されることである。

すなわち、P/Polyがノンユニフォーム多項式サイズのサーキットの表わすクラスである

【証明】
(i)L∈P/Polyを仮定する

このときPに属するB(①式での∃B∈γの部分)とPolyに属するh(①式でのh∈Fの部分)で

    L={x|<x,h(|x|)>∈B} 

を満たすものがあるという事になります。以下n=|x|と表わすこととし、

    m=|<x,h(n)>|

と定義すれば、多項式サイズのサーキットCm


    <x,h(|x|)>∈B iff Cm<x,h(|x|)>に対して1を計算する
 
     ※iffは同値関係をあらわす


を満たすものが存在するという事になります。なぜなら、定義から「<x,y>O(|x|+|y|)の時間でx,yが計算される」からです。(前回の記事を参照して下さい)

また、Cm以外のリーフがm個のサーキット全体C'nを考えても、mnで押さえられており、かつ仮定からLはクラスPであり、Pであれば、前々回説明したように 多項式サイズのサーキットによって計算可能となるからです。従って、まず必要条件の証明が終わりました。


(ii)Lが多項式サイズのサーキットCnで決定されると仮定する

このCnをコーティングするようなh(n)があり、|h(n)|nの多項式p(n)によって押さえられる、すなわち

   |h(n)|≦p(n)

であるとします。このことは、すなわち、h∈Polyである事を意味しますね。(前回のPolyの定義を参照して下さい)

一方仮定より、入力xと与えられたCnから出力が10かというのは多項式時間により決定できますから、クラスPであることは明らかです。このことをBとすると、

   x∈L iff <x,|h(x)|>∈B

となりますので、L∈P/Polyが導かれ、十分条件が証明されました


単にPをユニフォームな多項式サイズのサーキットであると見なせる観点から、P/PolyをノンユニフォームPと呼ばれるとテキストにはあります。

次回はもう少し補足説明をして、今回のクラスの話を終えたいと思っています。しかし、もう少し説明することもあるかなとも考えていますので、現在少し悩んでいるところです。

0 件のコメント:

コメントを投稿

Etsuro.Honda@futarisizuka.org