1
大学数学基礎解説
文献あり

PCP定理とその証明 (準備編)

343
0

この記事は計算量理論における偉大な定理の一つであるPCP定理の紹介とDinur[3]による証明を解説する一連の記事のうちの二つ目です. 前回 の続きで, PCP定理の証明をするための準備をします. 具体的には以下の定理を証明するのが全体の目標です.

PCP定理の別の形

ある定数c>0,kN, 多項式p:NN, 有限集合Σ0と, 与えられた2-CSPのインスタンスCを以下の性質を満たす別のk-CSPのインスタンスCに変換する多公式時間アルゴリズムが存在する: 任意の2-CSPインスタンスCに対し,

  • UNSAT(C)=0UNSAT(C)=0
  • UNSAT(C)>0UNSAT(C)c
  • Cの変数の個数をnとすると, Cの変数の個数は高々p(n).
  • CのアルファベットはΣ0.

CSPやUNSATについて 前回の記事 にも述べてありますが, 本記事でも改めて以下の章で定義します.

1. 準備

まず, 簡単に記号を述べておきます.

  • 自然数nNに対し[n]={1,,n}とする.
  • グラフの頂点集合はVと書き, 辺集合はEで表す. 頂点には番号(順序)があり, V={v1,,vn}と表せるとする.
  • {u,v}uvと略記する. 基本的に無向グラフを考えるのでuv=vuである. なお, 多重辺や自己ループも考えうる. 特に断りのない限り, 辺uvまたは{u,v}と書いたとき, V上の順序の意味でuvより前にあるとする (例えば{v1,v3},{v2,v5}など).
  • 有限集合Sに対し, xSによって, xS上一様ランダムに選ばれることを表す. 例えばPrxS[],ExS[]と書くとxSにおける確率や期待値を表す.

1.1. グラフの基礎用語とエクスパンダー性

グラフの次数, d-正則, エクスパンダーという用語に関しては こちらの記事 を参照してください. なお, 自己ループの辺の次数は2としてカウントします. ここでは正則グラフのエクスパンダー性を使うので, 以下の定義と性質だけ知っていれば大丈夫です:

正則グラフのエクスパンダー性

d-正則グラフG=(V,E)の隣接行列Aに対し, P=1dAを遷移確率行列と呼ぶ. 1=λ1λn1Pの固有値とする (必ず実固有値を持つことが示せる). グラフGmax{λ2,|λn|}λを満たすとき, λ-エクスパンダーであるという.

任意のnNに対してn頂点エクスパンダーグラフはpoly(n)時間で決定的に構成できることが知られています.

エクスパンダーグラフの存在性

ある定数d0N,λ0<1と多項式時間アルゴリズムAが存在して次が成り立つ:
nNに対してApoly(n)時間でn頂点d0-正則λ0-エクスパンダーグラフを出力する.

例えばn頂点d-正則グラフを一様ランダムに生成すると, Friedmanの定理[1]により確率1on(1)2/d-エクスパンダーになります (漸近的にラマヌジャングラフになります) 決定的に構成する場合はReingold, Vadhan, Wigderson[2]の方法などをうまく使うと構成できます. 気になる方は元論文[3]のLemma 2.2などを参照してください.

エクスパンダーグラフの性質として, 以下のエクスパンダー混交補題と呼ばれる有名な結果を使います.

エクスパンダー混交補題

G=(V,E)n頂点d-正則λ-エクスパンダーとすると, 任意のS,TVに対して
|E(S,T)dn|S||T||λdn|S||T||S||T|.
ここで, E(S,T)S,Tそれぞれに端点を持つ辺の集合, S,TはそれぞれS,Tの補集合を表す.

特に, |S|n2を満たす任意のSVに対して
|E(S,S)|1λ2d|S|.

エクスパンダー混交補題の直感などは
エクスパンダーグラフの紹介記事 を参照してください. 紹介記事で丁寧に示したエクスパンダー混交補題では右辺がλd|S||T|でしたが, 同様の証明によって上記の補題のように少し改善できます. 念のためその証明を簡潔に記載しておきます.

後半の「特に, ...」の部分は前半の主張にT=Sを代入して|S|n2を用いれば簡単に示せるので, 以後, 前半の主張を証明します.

Gの隣接行列をA{0,1}V×V, S,TVの支持ベクトルをそれぞれ1S,1T{0,1}Vとします. Gは正則グラフなので, 唯一の第一固有ベクトルは1=1Vであり, それ以降の固有ベクトルは全て1に直交します. ここで, 二つのベクトルx:=1S|S|n1,y:=1T|T|n1はどちらも1に直交するので,
|E(S,T)|=1SA1T=(1S|S|n1)A(1T|T|n1)+|S||T|n21A1=xAy+dn|S||T|.
従って
||E(S,T)|dn|S||T||=|xAy|dλxy=dλn|S||T||S||T|
より主張を得ます.

1.2. 2-CSPの再定義と制約グラフ

3彩色問題のNP完全性より, PCP定理を示す際は2-CSPのみを考えれば良いことになります. 一般にk-CSPとは高々k個の変数に依存する制約の集合として定義されましたが, ここでは2-CSPのインスタンスを 頂点を変数として各辺がそれぞれ一つの制約に対応するグラフとみなします.

2-CSPの制約グラフ

以下を満たすG=((V,E),Σ,C)制約グラフと呼ぶ:

  • (V,E)構造グラフと呼ばれる無向グラフであり, Vは変数の集合に対応する. 頂点集合VV={v1,,vn}などと番号付けされており, それに基づいて順序が定まっている.
  • Σは有限集合であり, アルファベットと呼ばれる. 変数にはΣの要素が代入される.
  • 各辺eEには制約と呼ばれる集合c(e)Σ×Σが対応しており, (a,b)Σ×Σ(a,b)c(e)を満たすとき, (a,b)は制約c(e)を満たすという.

関数σ:VΣ割当といい,
UNSAT(G,σ)=|{uvE:(σ(u),σ(v))c(uv)}||E|
を割当σによって充足されない制約の割合とし, UNSAT(G)=min{UNSAT(G,σ):σΣV}とする. ここで{u,v}uvよりも(V上の順序の意味で)前にあり(σ(u),σ(v))を順序対として扱っている.

構造グラフという用語は元論文ではunderlying graphと呼ばれているため適切な和訳ではないのですが, 意味合いとしては適当かと思いこのように読んでいます.

上で定義したUNSATは2-CSPに限ると 前回の記事 で定義したUNSATと一致します. 例えばUNSAT(G)=0ならばその2-CSPインスタンスは充足可能です. なお, 一般のk-CSPに対しても同様にして制約"ハイパー"グラフを定義できますが, ここではそれは扱いません.

例えば3彩色問題の制約グラフはインスタンスのグラフそのものになります. 2-CSPの制約グラフはその構造を表す離散構造です. 基本的にはCSPの制約の内容よりもその構造を重要視します.

2. 証明の概要

定理1は, 与えられた2-CSPのインスタンスの制約グラフを主張を満たす別の2-CSPの制約グラフに変換する方法(=アルゴリズム)を与えることによって証明されます. この変換は複数のステップからなります.

ステップ1. 構造グラフをスパースかつエクスパンダーにする

「スパース(疎)」というのはグラフの用語で, 一般に辺数が少ないことを指し, 文脈によって意味が異なってきますがここでは辺数が頂点数の線形オーダーになっていることを意味します.

ステップ1では, 任意に与えられた制約グラフを"良い"構造をもつ構造グラフに変形します. ある定数d0Nに対して(d0+1)-正則グラフに変換します. その後, ある定数λ<1に対してλ-エクスパンダーに変換します.

この変換によってUNSATの値は高々定数倍しか変化しないようにします.

ステップ2. UNSATの増幅

ステップ1後の制約グラフG1

  • 充足可能UNSAT(G1)=0
  • 充足不可能UNSAT(G1)1/|E|

が成り立ちます. 一方で定理1では二番目の不等式の下界を入力サイズに依存しない定数にする必要があります。そこでUNSAT(G2)2UNSAT(G1)を満たすように制約グラフG2を構成します この増幅ステップで構造グラフのエクスパンダー性とスパース性が役に立ちます. Dinurの論文[3]の技術的貢献はこのステップにあります.

実は, ステップ2の変換ではUNSATの値を増大させる代わりにアルファベットΣのサイズが増大してしまいます. 従ってステップ2の変換をO(log|E|)回適用してしまうとアルファベットサイズが与えられたGに依存してしまうため, 定理1の主張は得られません.

アルファベットサイズの減少

ステップ2後の制約グラフG2G1よりもアルファベットサイズが増大してしまうという欠点がありました. そこで, UNSATの値をほどほどに保ちつつアルファベットサイズをΣ0にします.

全体の構成

与えられた制約グラフGに対し, まずステップ1を用いてスパースかつエクスパンダーな構造グラフをもつ制約グラフに変換します. その後, ステップ2と3をO(log|E|)回繰り返すことによってUNSATの値を1/|E|からcに増やします.

本記事ではステップ1のみ解説し, 次回の記事でステップ2と3を扱います.

3. ステップ1: 前処理

スパースかつエクスパンダーであるような制約グラフを持つ2-CSPを"良い"CSPであるとみなします. この節では, 任意の2-CSPのインスタンスCを別の良い2-CSPのインスタンスCに変形する方法を解説します.

ある定数λ<1,dN,c>0,β>0が存在して, 任意の制約グラフG=((V,E),Σ,C)が与えられたときに以下の性質を満たす制約グラフG=((V,E),Σ,C)を出力する決定的多項式時間アルゴリズムが存在する:

  • (V,E)は自己ループを持つd-正則なλ-エクスパンダー.
  • |V|c|E|.
  • UNSAT(G)UNSAT(G)βUNSAT(G).

この定理の証明は

  • 次数の削減
  • エクスパンダー化

の二つのステップからなります.

次数の削減

ある定数dNが存在して, 任意に与えられた制約グラフG=((V,E),Σ,C)を, 以下を満たす別の制約グラフG=((V,E),Σ,C)に変換する多項式時間アルゴリズムが存在する:

  • (V,E)d-正則
  • |V|=2|E|
  • cUNSAT(G)UNSAT(G)UNSAT(G)d

与えられた制約グラフをG=((V,E),Σ,C)とし, 変換後の制約グラフをG=((V,E),Σ,C)と書くことにします.

元のグラフの各頂点vVに対し, [v]={(v,e):ve}とします. すなわちvとそれに接続する辺eの組からなる集合です. 新しいグラフの頂点集合VV=vV[v]とします.

直感的には, 元のグラフの各頂点vに対しそれをdeg(v)個にコピーし, それぞれのコピーに接続辺eのラベルを一個ずつ付与したものを新たな頂点としています.
なお, 元の制約グラフが自己ループvvを含む場合, [v](v,vv)を二つ含む(つまり多重集合になる)とします. このようにすることによって, 各辺uvに対して二つの頂点(u,uv),(v,uv)が生成されるので, |V|=2|E|が成り立ちます (なお, 自己ループを一つの頂点として[v]を定義した場合でも同じ証明が回るので問題ありません).

次に新しいグラフの辺集合Eを次の定義します.

  1. 定理2を用いて各vVに対して[v]を頂点集合としたdeg(v)-頂点d0-正則λ0-エクスパンダーグラフXvを構成します. このステップで追加された辺を内部辺と呼び, 等号制約{(a,b)Σ2:a=b}を付与します.

  2. 同じ辺ラベルを持つ二つのVの頂点(u,uv),(v,uv)の間に辺を追加します. このステップで追加された辺{(u,uv),(v,uv)}を外部辺と呼び, 元の制約グラフの辺uvの制約c(uv)を付与します.

上記の二つのステップで構成された辺集合をEと定めます.

!FORMULA[185][1141952][0]の構造グラフのイメージ図. Gの構造グラフのイメージ図.

図からすぐわかるように, ステップ2で追加された辺はV上のマッチングになっています. 図ではd0=2としたときの例になっていますが, 定理2のd0の値によっては, 例えば6-正則3頂点グラフなどを考えることもありますが, その際は多重辺や自己ループを適当につけることにします.

定義より構造グラフ(V,E)(d0+1)-正則グラフになっています. 頂点数は|V|=2|E|で, 辺数は|E|=|V|(d0+1)2=(d0+1)|E|です. 次にUNSAT(G)の値を評価します.

UNSAT(G,σ)=UNSAT(G)を達成する割当をσΣVとします. Gの割当σ:VΣσ(v,e)=σ(v)で定めます.
σは内部辺の等号制約を全て満たすので, 充足されない辺の本数はσのそれと一致します. よって
UNSAT(G)UNSAT(G,σ)=|E|UNSAT(G,σ)(d0+1)|E|=1d0+1UNSAT(G)
を得ます.

次にUNSAT(G)の下界, すなわち, ある(Gに依存しない)定数c>0に対してUNSAT(G,σ)cUNSAT(G,σ)を満たすことを示します.
σ:VΣUNSAT(G,σ)=UNSAT(G)を達成するGの割当とし, 各vVに対してσ(v)=Wv内のσ()の値の中での多数決」, すなわち
σ(v)=argmaxaΣ{PriWv[σ(i)=a]}
とします. FEを, Gの辺であってσによって充足されないものの集合とし, FEを同様にGの辺であってσによって充足されないものの集合とします. つまりUNSAT(G,σ)=|F||E|, UNSAT(G,σ)=|F||E|です.
SVを多数決によって意見が採用されなかった頂点の集合, すなわち
S={(v,e)V:σ(v,e)σ(v)}
とします.

ここで, 以下の二つのケースを考えます:

ケース1. |S|UNSAT(G,σ)2|E|の場合.

vV,aΣに対してSv=[v]S, Sav={(v,e)Sv:σ(v,e)=a}とします. なお, 意見aが多数決で採用されている場合(つまりσ(v)=aの場合)はSav=であり, そうでない場合は過半数をとれていないはずなので|Sav||[v]|2が成り立ちます.

!FORMULA[232][36074054][0]内の各頂点!FORMULA[233][-1154055162][0]は意見!FORMULA[234][567036092][0]を持ち, その多数決によって!FORMULA[235][-122423082][0]を定める. 多数決にならなかった頂点!FORMULA[236][-1154055162][0]の集合(=青い領域)を!FORMULA[237][37205][0]とする. [v]内の各頂点(v,e)は意見σ(v,e)を持ち, その多数決によってσ(v)を定める. 多数決にならなかった頂点(v,e)の集合(=青い領域)をSとする.

そこで[v]内部のグラフXvとその頂点部分集合Savに対して定理3(エクスパンダー混交補題)を適用することによって,
|E(Sav,[v]Sav)|(1λ)d02|Sav|
を得ます. この式の左辺はSavとその外側をつなぐ内部辺の本数を意味しますが, これらの辺はGにおいて, 内部辺の等号制約を満たしていないはずであり, すなわちFに属すので
|F|12v,a|E(Sav,[v]Sav)|(1λ0)d04|S|
により, |S|の仮定から
UNSAT(G)(1λ0)d08(d0+1)UNSAT(G)
を得ます.

ケース2. |S|<UNSAT(G,σ)2|E|の場合.

任意の辺e=uvFに対して, その両端点が多数決で意見が変わらなかったならば, Eの辺{(u,e),(v,e)}もまたFに属しているはずです. 一方でそうでなかったならば(u,e)または(v,e)の少なくとも一方がSに属します. すなわち
|F||F|+|S|
が成り立ちます. ここから
|F||F||S||E|UNSAT(G)UNSAT(G)2|E|=12(d0+1)UNSAT(G)|E|
を得ます.

以上より, c=min{(1λ0)d08(d0+1),12(d0+1)}に対してUNSAT(G)cUNSAT(G)を得ます.

エクスパンダー化

ある定数λ<1,d,d0Nが存在して, 構造グラフがd-正則であるような制約グラフG=((V,E),Σ,C)が与えられたとき, それを以下を満たす別の制約グラフG=((V,E),Σ,C)に変換する多項式時間アルゴリズムが存在する:

  • 構造グラフ(V,E)(d+d0+2)-正則λ-エクスパンダーであり, 各頂点は自己ループを持つ.
  • UNSAT(G)=dd+d0+2UNSAT(G)

与えられた制約グラフをG=((V,E),Σ,C)とし, 変換後の制約グラフをG=((V,E),Σ,C)と書くことにします.

Gの構成は簡単です.

  1. 頂点集合V上のd0-正則λ0エクスパンダーを構成してその辺集合をEに追加する (多重辺を許す).
  2. 各頂点に対して自己ループを付与する.
  3. ステップ1,2で追加された辺eには常に充足される自明な制約c(e)=Σ×Σを付与する.

元のグラフ(V,E)d-正則ならば, Gの構造グラフは(d+d0+2)-正則になります (自己ループの辺の次数は2つ分にカウントしている).

σ,σ,:VΣをそれぞれG,Gの割当とします. 追加された辺は全て自明な制約しか付与されていないので, 充足されなかった辺の本数はG,Gで一致します.
よって|E|UNSAT(G)=|E|UNSAT(G)なので
UNSAT(G)=|E||E|UNSAT(G)=dd+d0+2UNSAT(G)
を得ます.

最後に(V,E)のエクスパンダー性を示します.
A,Aをそれぞれ(V,E),(V,E)の隣接行列とし, Bをステップ1で追加したエクスパンダーグラフの隣接行列とし, Iを単位行列とします. (V,E)の定義よりA=A+B+2Iです (自己ループの次数が2としてカウントされているので2Iになっています). 対称行列Mの固有値がλ1λnのとき, λ(M)=max{λ2,|λn|}とします. 第二固有値に関するmin-max定理(Courant–Fischerの最大最小定理)より,
λ(A)maxx=1,x1=0|xAx|λ(A)+λ(B)+2λ(I)d+λ0d0+2
より, P=1d+d0+2A(V,E)の遷移確率行列とすると
λ(P)d+λ0d0+2d+d0+2
となります. すなわち, λ:=d+λ0d0+2d+d0+2<1に対して(V,E)λ-エクスパンダーです.

定理4の証明

G=((V,E),Σ,C)を与えられた制約グラフとします. 補題5のアルゴリズムを用いて構造グラフd-正則にし, さらに補題6のアルゴリズムを用いてλ-エクスパンダーにします. 最終的に得られるグラフは正則性やエクスパンダー性を満たしており, UNSATの値はそれぞれの補題で定数倍しか変化しません.

付録

(Courant–Fischerの最大最小定理)

n次対称行列ARn×nの固有値をλ1λnとすると, 任意のk=1,,nに対して
λk=maxS:dimS=kminxS{0}xAxx2.
ただし, SRnは次元kの任意の部分空間を動く.

参考文献

投稿日:2023820
更新日:2024815
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

knewknowl
knewknowl
22
6165
東工大助教. 理論計算機科学.

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. 1. 準備
  2. 1.1. グラフの基礎用語とエクスパンダー性
  3. 1.2. 2-CSPの再定義と制約グラフ
  4. 2. 証明の概要
  5. 3. ステップ1: 前処理
  6. 付録
  7. 参考文献