密線形演算子のOR回路の複雑さ


14

次の単純なモノトーン回路モデルを考えてみましょう。各ゲートは単なるバイナリORです。関数の複雑さは何ですか?ここで、は 0のブール行列です?線形サイズのOR回路で計算できますか?f x = A x f(x)=AxA An × n n×nO n O(n)

より正式には、から関数であるまでビット。の番目の出力は(つまり、番目の行で与えられる入力ビットのサブセットのOR )です。F fN nN nI iF fN J = 1A I JX Jnj=1(Aijxj)、I iAA

0はの行を範囲(連続した要素で構成されるサブセット分割することに注意してください。これにより、既知の範囲クエリデータ構造を使用できます。たとえば、スパーステーブルデータ構造は、サイズ OR回路に変換できます。範囲セミグループ演算子クエリ用のYaoのアルゴリズムは、ほぼ線形の回路(サイズO(\ alpha(n)\ cdot n)に変換できます。ここで、\ alpha(n)はAckermannの逆です)O n O(n)A AO n O(n)[ n ] [n]O n log n O(nlogn)O α N N O(α(n)n)α N α(n)

特に、Aの各行にAA正確に2つのゼロが含まれる特別な場合に、線形サイズの回路を構築する方法すら知りません。一方、各行にゼロが1つだけある場合は簡単です。(各出力関数は、接頭辞[ 1 .. k 1 ][1..k1]と接尾辞[k + 1..n]の OR [ k + 1 .. n ][k+1..n]によって計算でき、2 n2n ORゲートによって事前計算できます。)


3
上限の1つは既知です。最大でrk(A)x nをlog nで割った値です。ここで、rk(A)はブール行列AのORランクです(= ORがAと一致するすべての1サブマトリックスの最小数)。この本の補題2.5を参照してください。それで、O(n)ゼロのnxn行列のブールランクは(最大で)どれくらい大きいのでしょうか?
Stasys

@Stasysありがとう、Stasys!対角ゼロの行列では、ORランクは線形です。
アレクサンダーS.クリコフ

2
マトリックスのORランク(対角ゼロ、その他1)は最大2 \ log n:長さ\ log nのバイナリ文字列で行/列にラベルを付け、長方形{(r、c):r(i)= a、c(i)= 1-a} a = 0,1に対して。また、補題2.5は上限であることに注意してください。の面で拘束またはランクはTHMに与えられています。3.20。また、ORランクの対数は、行列の非決定的な通信の複雑さです。
Stasys

@Stasysああ、そうだね!
アレクサンダーS.クリコフ

回答:


7

これは、すべての行またはすべての列のゼロの数に上限がある場合の部分的な(肯定的な)回答です。

矩形は 1全1部分行列からなり、他の場所のゼロを有するブール行列です。ブール行列のORランクは、がこれらの長方形の(コンポーネント単位の)ORとして記述できるように、長方形の最小数です。つまり、 1エントリはすべて、少なくとも1つの長方形の1エントリであり、の0エントリはすべての長方形の0エントリです。は、マトリックス(アリスが行を取得し、ボブの列を取得正確な非決定的な通信の複雑さであることに注意してください。OPが書いたように、すべてのブール行列はマッピングを定義しますRのK A R A A A ログのR K A A M × N A = I JY = A 、X 、Y 、I = N J = 1、I J、X jの iは= 1 ... mrk(A)rAAAlogrk(A)Am×nA=(ai,j)y=Ax、 ため。つまり、ブール半環上の行列とベクトルの積を取ります。 yi=nj=1ai,jxji=1,,m

次の補題は、PudlakとRödlによるものです。で命題10.1を参照してください。この論文 でまたは補題2.5 この本の直接の建設のために。

補題1:すべてのブール行列について、マッピングは、最大でワイヤを使用して、深さ3の無制限のファンインOR回路によって計算できます。 N × N Y = A X O R K A N /ログN n×nAy=AxO(rk(A)n/logn)

また、密行列のORランクには次の上限があります。議論はこの論文でアロンによって使用されたそれの簡単な変化です。

補題2:ブール行列すべての列またはすべての行が最大でゼロを含む場合、、ここで| A | A1の数です。 A d r k A = O d ln | A |Adrk(A)=O(dln|A|)|A|1A

証明:同じ確率p = 1 /d + 1 )で各行を個別に選択することにより 、ランダムなall- 1部分行列Rを構築します。してみましょう私は、行の取得ランダムなサブセットです。次に、R = I × Jとします。ここで、Jは、Iの行にゼロがないAのすべての列のセットです。 1Rp=1/(d+1)IR=I×JJAI

1つの -entry I J Aは、で覆われているR場合iは、で選択された Iおよび(せいぜいのいずれDを有する)行0J番目の列がで選択されなかったI。従って、エントリI Jは少なくとも確率で覆われたp 1 - P DP E - P D - P 2 D1(i,j)ARiId0jI(i,j)P / E。私たちは、この手順を適用した場合のR得るために時間を Rの長方形をし、確率というI jを超えていないこれらの長方形のどれで覆われている1 - P / E RE - R P / E。ユニオンの境界により、 Aの1エントリが発見される可能性は最大で | A | 電子- RのP / Ep(1p)dpepdp2dp/err(i,j)(1p/e)rerp/e1A|A|erp/e、未満である1ため、R = O D LN | A |1r=O(dln|A|)

結果:ブール行列Aのすべての列またはすべての行に最大でd個のゼロが含まれる場合、マッピングy = A xは、O d n ワイヤを使用して深さ3の無制限のファンインOR回路によって計算できます 。 Ady=AxO(dn)

dが列(または行)の1の平均数である場合、補題2と同様の上限も保持されると思います。これを見せることは面白いでしょう。d1


備考:(2018年4月1日に追加された)アナログのR K A = O D 2ログN とき補題2はまた、保持dはある最大平均数の部分行列におけるゼロのA平均数でゼロのR × S行列は、で割ったゼロの総数であり、S + R。これは、N。EatonおよびV.Rödlの定理2、小さな次元のグラフ、Combinatorica 16(1)(1996)59-85から得られます。わずかに悪い上限rk(A)=O(d2logn)dAr×ss+rr k A = O d 2 ln 2 n は、次のように補題2から直接導出できます。rk(A)=O(d2ln2n)

補題3:レッツのD 1。二部グラフのすべてのスパニングサブグラフ場合Gは平均次数有するdは、次にGは、組合のように書くことができるG = G 1G 2の最大左度、G 1との最大右度G 2があるDd1GdGG=G1G2G1G2d

証明:頂点の数nの帰納。基本ケースn = 1およびn = 2は明らかです。誘導ステップのために、我々は、青と赤の両方の部分グラフの最大程度であることを青と赤のように縁を着色しますD。頂点取りのu度のをD ; また、グラフ全体の平均程度がなければならないので、このような頂点マストが存在D。場合uは左側の部分に属し、その後にすべてのエッジの入射を着色U赤、青、他の色のすべてのこれらのエッジを。頂点uを削除した場合nn=1n=2dudduuu結果のグラフGの平均次数も最大でdであり、帰納法の仮説によってこのグラフのエッジに色を付けることができます。Gd

補題4:レッツのD 1。ブールn × n行列A = a i jのゼロの最大平均数が最大でdである場合、r k A = O d 2 ln 2 n です。 d1n×nA=(ai,j)drk(A)=O(d2ln2n)

証明:a i j = 0の場合i j がエッジである2部構成のn × nグラフGを考えます。この場合、Gの最大平均次数は最大でdです。補題3によって、我々は、書くことができるG = G 1G 2の左側部分に、頂点の最大次数をG 1、及び右部分に頂点の最大次数G 2があるD。させてn×nG(i,j)ai,j=0GdG=G1G2G1G2dA 1および A 2は、 G 1および G 2の隣接行列の補数です。したがって、 A = A 1A 2は、要素ごと、これらの行列です。A 1のすべての行および A 2のすべての列のゼロの最大数は、最大で dです。以降のR K A R K A 1R K A 2A1A2G1G2A=A1A2A1、補題2はr k A = O d 2 ln 2 n )を生成します。

NBザ・答えの最後に、私の「推測」は完全に間違っていたという単純な例(イゴール・セルゲーエフが指す)を示し、以下:私たちが取る場合D = D Aのにゼロの平均数であるように、全体行列A(ではありませんすべての部分行列の平均の最大値)、補題2はひどく失敗する可能性があります。してみましょうメートル= n、およびAの左上隅に恒等m×m行列を配置し、残りのエントリを1で埋めます。次に、DAM2/2N<1が、RのKAMであり、指数関数よりも大きいLN| A| 。ただし、この行列のORの複雑さは非常に小さく、Onです。したがって、直接の引数(ランク経由ではありません)密行列のOR複雑度の上限を大幅に改善できます。


どうもありがとう、Stasys!これはいいね!その間、Ivan Mihajlinには別の証拠がありました。以下に掲載しました。
アレクサンダーS.クリコフ

2

(これを上記のStasysの回答に対するコメントとして投稿しようとしましたが、このテキストはコメントするには長すぎますので、回答として投稿します。)Ivan Mihajlin(@ivmihajlin)は次のような構成を思い付きました。Stasysの証明と同様に、各行の0(平均ではなく)の最大数が制限されている場合に機能します。

最初に、すべての行に正確に2つのゼロが含まれる場合を考えます。次の無向グラフを考えてみましょう。頂点のセットは[ n ]です。列iおよびjにゼロを持つ行がある場合、2つのノードiおよびjはエッジで結合されます。グラフにはn個のエッジがあるため、少なくともn / 2のサイズのカットL R が含まれます。このカットは、マトリックスの列を2つの部分(LおよびR)に分割します。また、行を2つの部分に分割します。上部TLRの両方にゼロが1つだけあるすべての列が含まれます。下部Bには、残りのすべての行が含まれています。マトリックス(の頂部の良いものですT × L Rは)、それがによって計算することができることであるO N のゲート。下部については、すべての列を1つ切り取り、再帰呼び出しを行ってみましょう。対応する漸化式であるC N N + C N / 2 意味C nは= O n

次に、すべての行で最大d個のゼロの場合に一般化します。LET CのDN の複雑さであるN × D N 高々と行列Dの行あたりゼロ(複数存在する場合、D N列は、次にそれらのいくつかは、すべて1です)。二つの部分の中に列を分割するLR少なくともそのようなN 1 - 2 - Dの行(それらを呼び出すT正確に存在する場合、次の特性を満たす)D行内のゼロは、すべてが同じ部分に属するわけではありません(残りの行をBで示します)。:次の3つの再帰呼び出しするT × LT × RB × L Rに。これは、漸化式が得られるCのDN N + 2 CのD - 1N 1 - 2 - D+ CとD2dn). This, in turn, implies that Cd(n)f(d)n. The function f(d) is exponential, but still.


A nice argument. But it seems to be tailor made for the case of d=2 zeros per row. What about d>2 zeros?
Stasys

@Stasys, it is doable if I'm not mistaken. I've updated the answer.
Alexander S. Kulikov
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.