読書メモ: スパンプログラム
Karchmer and Wegderson は 1993 年にブール関数を計算する興味深い線形代数モデルスパンプログラム (span program) を発表した。ある関数
このモデルは非常に強力なようだ: スイッチングネットワークやド・モルガンの公式といったブール関数を計算するための古典的なモデルは、サイズを増加させることなくスパンプログラムによってシミュレートすることができる。したがって単調スパンプログラムであってもサイズの下限を証明することは困難な作業である。
Table of Contents
16.1 モデル
行列の列はサイズには数えない。スパンプログラムが計算する関数を変更せずにプログラムの行列を線形独立列の集合に制限することは常に可能である。従って行よりも多くの列を使用する必要はない。ただ、通常は多くの列を含むスパンプログラムを設計する方が簡単である。列の多くは線形に依存するかもしれない。
16.2 スパンプログラムとスイッチングネットワーク
ブール関数を計算する最も古いモデルの一つはスイッチングネットワークである。このモデルはド・モルガンの公式も含んでおり、50 年前に C.E. Shannon が導入して以来、集中的に研究されてきた。
スイッチングネットワークは 2 つの頂点
定理 16.1 (Karchmer-Wigderson 1993) . ブール関数がサイズ のスイッチングネットワークで計算可能な場合、任意の体上で最大でもサイズ でスパンプログラムを計算可能である。
証明. ある頂点
スパンプログラム
16.3 単調スパンプログラム
行のラベルが正のリテラル
これまでに知られている (非単調) スパンプログラムサイズの最大の下限は
単調スパンプログラムでの状況はこれより遙かに良い: ここで我々は超多項式の下限を証明することができる。
これらの証明はすべて Beimel, Gál, and Paterson (1996) によって発見されたこのようなプログラムの一般的な組み合わせの下限に基づいている。これらの証明の興味深い点は、単調スパンプログラムのサイズの下限問題を、特定のベクトル集合が線形独立であるという証明に縮小させていることである。この基準は、明示的なブール関数への適用とともに、最近の計算機科学における線形代数法の最も興味深い応用の一つである。これらの結果の力を認識するために、まず、一見難しい関数が驚くほど小さな単調スパンプログラムによって計算できることを示す。
16.3.1 しきい値関数
命題 16.2 (Karchmer-Wigderson 1993) . を少なくとも の要素を持つ体とする。このとき任意の に対して関数 はサイズ の 上の単調スパンプログラムによって計算することができる。
証明. (省略) ∎
16.3.2 非二部グラフ
頂点集合を 2 つの独立した集合に分離できる場合、グラフは二部 (bipartite) である; それらの間に辺が存在しなければ頂点集合は独立している。異なる部の 2 つの頂点すべてが辺で結合されているとき二部グラフは完全である。
可能な辺ごとに一つの
定理 16.3 (Beimel-Gál-Paterson 1996) . 関数 はサイズ の単調スパンプログラムによって体 上で計算することができる。
証明. (省略) ∎
16.3.3 奇数因数
グラフ
グラフ内の奇数因数は、すべての次数が奇数であるスパニング部分グラフである。奇数因数は次のような特性を必要とする。
補題 16.4 . もしグラフが接続されているなら、頂点の数が偶数の場合にのみグラフは奇数因数を持つ。
証明. (省略) ∎
ここで
定理 16.5 (Babai-Gál-Wigderson 1996) . はサイズ の単調スパンプログラムによって体 上で計算することができる。
証明. (省略) ∎
全ての完全マッチングは奇数因数であり受け入れられるべきであることに注意。拒否されたグラフの場合は、すべての単調辺のグラフで
このように、いくつかの明示的なファミリーが大きな単調スパンプログラムを必要とすることを証明することは、単調ブーリアン回路の場合よりも困難な作業である。この課題 (スパンプログラムのサイズの大きな下限) は最近線形代数のアーギュメントを用いて Beimel ら (1996), Babai ら (1996), Babai ら (1999) および Gál (1998) によって解決された。
しかし、これらの美しい結果に話を進める前にしきい値関数のもう 1 つの直接的な議論を説明する。
16.3.4 しきい値関数の下限
しきい値関数
定理 16.6 (Karchmer-Wigderson 1993) . 体 上で を計算する任意の単調スパンプログラムは少なくとも のサイズを持つ。
証明. (省略) ∎
16.4 一般的な下限
スペルナーシステム (Sperner system; または antichain) は集合のファミリーであり、そのどれもが他のファミリーのメンバーを含まないことをを思い出せ。フィルタとは上向きに閉じられたファミリである:
スペルナーシステムと単調ブール関数の間には 1 対 1 の対応がある。単調ブール関数の最小項は値 1 が割り当てられた場合、残りの変数に割り当てられた値に関係なく、関数に値 1 を強制する最小の変数集合である。1 のすべての最小項の集合がスペルナーシステムを形成し、すべてのスペルナーシステムが単調ブール関数を (一意に) 定義することは明らかである。
定義 16.7. スペルナーシステム
は、以下のように のコアと呼ばれるそれぞれの に集合 を関連付けることができるのであれば自己回避 (self-avoiding) である。
-
がファミリ内の を決定する。つまり、ファミリ 内の他の集合がいずれも部分集合として を含んでいない。 - 全ての
と部分集合 に対して、集合 は の広がり (spread) と呼ばれ、 のどのようなメンバーも含んでいない。
スパンプログラムのサイズには、次の一般的な組み合わせの下限がある。
定理 16.8 (Beimel-Gál-Paterson 1996) . を単調ブール関数とし をその最小項のファミリとする。もし が自己回避的であれば、すべての体 において、 を計算する 上のすべての単調スパンプログラムは最低でも のサイズを持つ。
証明. (省略) ∎
16.5 明示的な自己回避ファミリ
定理 16.8 が単調スパンプログラムのサイズに大きな下限を与えるためには、自己回避的で多くの集合を持つ明示的なスペルナーシステムが必要である。Gál (1998) は二部ぺーリーグラフ (bipartite Paley graph) の特定の特性に基づいた、このようなシステム非常にエレガントな構造を発見した。我々はこの特性をすでにセクション 15.2.2 で使用しており、これを "孤立隣接条件" (isolated neighbor condition) と呼んだ (定義 11.7 参照)。ここでこの条件を再掲する。
補題 16.10 (Gál 1998) . グラフ が に対して孤立隣接条件を満たすのであれば、ファミリ は自己回避的である。
証明. (省略) ∎
我々はすでに
ここでこの関数が単調スパンプログラムにとっても難しいことを示すことができる: 定理 11.9 で与えられた境界は
Babai, Gál および Wigderson (1999) が定式化したスパンプログラムに関する 4 つの未解決問題でこの章を終える:
- 指数サイズの自己回避スペルナーシステムは存在するか?
- 指数サイズの単調回路を必要とする多項式サイズの単調スパンプログラムを許容する関数は存在するか?
- 超多項式サイズの単調スパンプログラムを必要とする多項式サイズの単調回路を許容する関数は存在するか?
- 単調スパンプログラムは非単調スパンプログラムよりどれほど弱いか?
演習
16.1-.
16.2.
16.3. 互いに疎な行列 (disjointness matrix)
16.4. 交差行列
参考文献
- Jukna, Dr. Stasys, Span Program. In Extremal Combinatorics. page 205-218. Springer 2001
- M. Karchmer, A. Wigderson. On Span Programs, Proc. 8-th Annual Structure in Complexity Theory Conference, San Diego, California, 18-21 May 1993. IEEE Computer Society Press, pp. 102-111. (日本語訳)