АБО складність ланцюга щільного лінійного оператора


14

Розглянемо наступну просту модель монотонної схеми: кожен хвірт - це лише двійковий АБО. Яка складність функції f ( x ) = A x,f(x)=Ax де AA булева матриця n × nn×n з O ( n )O(n) 0's? Чи можна обчислити це схеми АБО лінійного розміру?

Більш формально - функція від до біт. Вихід -го числа - (тобто АБО підмножини вхідних бітів, заданих -м рядком ).ffnnnniiffnj=1(Aijxj)нj = 1( Аi jxj)iiAА

Зауважимо, що 0 розбиває рядки на діапазони (підмножини, що складаються з послідовних елементів ). Це дає можливість використовувати відомі структури даних про запити діапазону. Наприклад, структуру даних з розрідженою таблицею можна перетворити на схему АБО розміром . Алгоритм Яо для запитів оператора напівгрупи діапазону може бути перетворений на майже лінійну схему (розміром де обернено Ackermann)O(n)O(n)AAO(n)O(n)[n][n]O(nlogn)O(nlogn)O(α(n)n)O(α(n)n)α(n)α(n)

Зокрема, я навіть не знаю, як побудувати ланцюг лінійних розмірів для особливого випадку, коли кожен рядок містить рівно дві нулі. Хоча випадок рівно одного нуля в кожному рядку простий. (Кожну функцію виведення можна обчислити АБО префікса та суфікса , який можна попередньо обчислити OR-шлюзами.)AA[1..k1][1..k1][k+1..n][k+1..n]2n2n


3
Відома одна верхня межа: вона щонайбільше rk (A) разів n ділиться на log n, де rk (A) - OR-ранг булевої матриці A (= мінімальна кількість всіх-1 підматриць, АБО збігається з A ). Дивіться лему 2.5 в цій книзі . Отже, наскільки великим може бути (максимум) булевий ранг nxn матриці з O (n) нулями?
Стасіс

@Stasys Дякую, Стасіс! Вже для матриці з нульовою діагоналлю OR-ранг є лінійним, правда?
Олександр Сергійович Куліков

2
АБО ранг вашої матриці (нульова діагональ та 1s в іншому місці) становить щонайбільше 2 \ log n: мітки рядків / стовпців двійковими рядками довжини \ log n та розгляньте прямокутники {(r, c): r (i) = a, c (i) = 1-a} при a = 0,1. Зауважимо також, що лема 2.5 є верхньою межею. Нижня межа в термінах або ранг дається в THM. 3.20. Крім того, журнал рейтингу АБО є саме недетермінованою складністю зв'язку матриць.
Стасіс

Відповіді:


7

Це часткова (ствердна) відповідь у тому випадку, коли ми маємо верхню межу щодо кількості нулів у кожному рядку чи в кожному стовпчику.

Прямокутник є булевої матрицею , що складається з одного все-1 подматріци і мають нулі в інших місцях. OR-ранг r k ( A ) булевої матриці - найменше число r прямокутників, таким чином, що A може бути записано у вигляді (складових) АБО цих прямокутників. Тобто кожен 1 запис A - це 1-запис у щонайменше одному з прямокутників, і кожен 0-запис A є 0-записом у всіх прямокутниках. Зауважимо, що log r k ( A ) - це саме недетермінована складність зв'язку матриці Ar k ( A )rАААжурналr k ( A )А(де Аліса отримує рядки та стовпці Боба). Як писав ОП, кожна булева m × n матриця A = ( a i , j ) визначає відображення y = A x , де y i = n j = 1 a i , j x j при i = 1 , , m . Тобто ми беремо матрично-векторний добуток за булевим семіруванням. m × nА = ( аi , j)у= А хуi= нj = 1аi , jхji = 1 , , m

Наступна лема пояснюється Пудлаком та Редлом; див. пропозицію 10.1 у цій роботі або лему 2.5 у цій книзі для прямої побудови.

Лемма 1: Для кожного булева п × п матриці А , відображення у = х може бути обчислено з допомогою необмеженої Fanin АБО-схеми глибини-3 з використанням не більше O ( г до ( ) н / увійти п ) провід. n × nАу= А хO ( r k ( A ) n /logn )

Маємо також наступну верхню межу на АБО-ранжирі щільних матриць. Аргумент є простою варіацією тієї, яку використав Алон у цій роботі .

Лема 2: Якщо кожен стовпчик або кожен рядок булевої матриці A містить максимум d нулів, то r k ( A ) = O ( d ln | A | ) , де | А | це число 1 з в A . Агrk(A)=O(dln|A|)|A|1A

Доведення: Побудуйте випадкову під- матрицю all- 1 R , вибравши кожен рядок незалежно з однаковою ймовірністю p = 1 / ( d + 1 ) . Нехай я отримана випадкова підмножина рядків. Тоді нехай R = I × J , де J є безліч всіх стовпців A , які не мають нулів в рядках в I . 1Rp=1/(d+1)IR=I×JJAI

1 -Відвідання ( я , J ) з А покривається R , якщо я не був вибраний в I , і жоден з (не більше г ) рядків з 0 в J -й стовпець був обраний в I . Отже, запис ( i , j ) покривається ймовірністю щонайменше p ( 1 - p ) dp e - p d - p 2 d1(i,j)ARiId0jI(i,j)р / е . Якщо ми застосуємо цю процедуру r разів для отримання r прямокутників, то ймовірність того, що ( i , j ) покривається жодним із цих прямокутників, не перевищує ( 1 - p / e ) re - r p / e . За зв'язком об'єднання ймовірність того, що деяка 1- атрибута A залишається незакритою, є щонайбільше | А | е - г р / еp(1p)dpepdp2dp/err(i,j)(1p/e)rerp/e1A|A|erp/e, Який менше , ніж 1 для г = Про ( д пер | | ) . 1r=O(dln|A|)

Висновок: Якщо кожен стовпець або кожен рядок булевої матриці A містить максимум d нулів, то відображення y = A x може бути обчислено необмеженою фариновою ланкою OR або глибиною 3 за допомогою проводів O ( d n ) . Ady=AxO(dn)

Я здогадуюсь, що аналогічна верхня межа, як у леммі 2, повинна також дотримуватися, коли d - середня кількість 1 с у стовпці (або в ряд). Це було б цікаво показати.d1


Зауваження: (додано 04.01.2018) Аналог r k ( A ) = O ( d 2 log n ) леми 2 також має місце, коли d - максимальна середня кількість нулів у підматриці A , де середня кількість нулів у давав R × сек матрицею є загальним числом нулів , розділених на s + г . Це випливає з теореми 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 є d . d1GdGG=G1G2G1G2d

Доведення: індукція на число n вершин. Базові випадки n = 1 і n = 2 очевидні. Для індукційного кроку ми пофарбуємо ребра в синій та червоний кольори, щоб максимальний ступінь у синіх та червоних підграфах був d . Візьміть вершину u ступеня d ; така вершина повинна існувати, оскільки також середній ступінь усього графа повинен бути d . Якщо u належить лівій частині, то пофарбуйте всі краї, що впадають на u, в синій колір, а інше пофарбуйте всі ці краї в червоний колір. Якщо ми видалимо вершину unn=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)

Доведення: Розглянемо двосторонній n × n графік G з ( i , j ) ребром iff a i , j = 0 . Тоді максимальний середній ступінь 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 1 ) r k ( A 2 )A1A2G1G2A=A1A2A1A2drk(A)rk(A1)rk(A2), Лема 2 дає r k ( A ) = O ( d 2 ln 2 n ) . rk(A)=O(d2ln2n)

NB . Наступний простий приклад (вказаний на Ігоря Сергєєва) показує, що моя "здогадка" в кінці відповіді була абсолютно помилковою: якщо ми візьмемо d = d ( A ) за середню кількість нулів у всій матриці A (не максимум середніх показників для всіх підматриць), тоді лема 2 може сильно вийти з ладу. Нехай m = d=d(A)An , і покладітьматрицютотожностіm×mу, скажімо, лівий верхній кутA, а інші записи заповніть ними. Тодід()м2/2п<1алегдо()м, якаекспоненціальнобільшеніжLN| А| . Зауважимо, однак, що АБО складність цієї матриці дуже мала, становитьO(n). Отже,пряміаргументи (не через ранг)m=nm×mAd(A)m2/2n<1rk(A)mln|A|O(n)can yield much better upper bounds on the OR complexity of dense matrices.


Thanks a lot, Stasys! This is nice! In the meantime, Ivan Mihajlin came with another proof. I've posted it below.
Alexander S. Kulikov

2

(I tried to post this as a comment to Stasys' answer above, but this text is too long for a comment, so posting it as an answer.) Ivan Mihajlin (@ivmihajlin) came up with the following construction. Similarly to Stasys' proof, it works for the case when the maximum (rather than average) number of 0’s in each row is bounded.

First, consider the case when every row contains exactly two zeros. Consider the following undirected graph: the set of vertices is [n][n]; two nodes ii and jj are joined by an edge, if there is a row having zeros in columns ii and jj. The graph has nn edges and hence it contains a cut (L,R)(L,R) of size at least n/2n/2. This cut splits the columns of the matrix into two parts (L and R). Let now also split the rows into two parts: the top part T contains all columns that have exactly one zero in both L and R; the bottom part B contains all the remaining rows. What is nice about the top part of the matrix (T×(LR)) is that it can be computed by O(n) gates. For the bottom part, let’s cut all-1 columns out of it and make a recursive call. The corresponding recurrence relation is C(n)an+C(n/2) implying C(n)=O(n).

Now, generalize it to the case of at most d zeros in every row. Let Cd(n) be the complexity of an n×(dn) matrix with at most d zeros per row (if there are more than dn columns, then some of them are all-1). Partition the columns into two parts L and R such that at least n(12d) rows (call them T) satisfy the following property: if there are exactly d zeroes in a row, then not all of them belong to the same part (denote the remaining rows by B). Then make three recursive calls: T×L, T×R, and B×(LR). This gives a recurrence relation Cd(n)an+2Cd1(n(12d))+Cd(2dn). 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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.