Це часткова (ствердна) відповідь у тому випадку, коли ми маємо верхню межу щодо кількості нулів у кожному рядку чи в кожному стовпчику.
Прямокутник є булевої матрицею , що складається з одного все-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 ) d ≥ p e - p d - p 2 d ≥1(i,j)ARiId0jI(i,j)р / е . Якщо ми застосуємо цю процедуру r разів для отримання r прямокутників, то ймовірність того, що ( i , j ) покривається жодним із цих прямокутників, не перевищує ( 1 - p / e ) r ≤ e - r p / e . За зв'язком об'єднання ймовірність того, що деяка 1- атрибута A залишається незакритою, є щонайбільше
| А | ⋅ е - г р / еp(1−p)d≥pe−pd−p2d≥p/err(i,j)(1−p/e)r≤e−rp/e1A|A|⋅e−rp/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 1 ∪ G 2 , де максимальні лівої ступінь G 1 і максимальну правильної ступінь G 2 є ≤ d .
d≥1G≤dGG=G1∪G2G1G2≤d
Доведення: індукція на число n вершин. Базові випадки n = 1 і n = 2 очевидні. Для індукційного кроку ми пофарбуємо ребра в синій та червоний кольори, щоб максимальний ступінь у синіх та червоних підграфах був ≤ d . Візьміть вершину u ступеня ≤ d ; така вершина повинна існувати, оскільки також середній ступінь усього графа повинен бути ≤ d . Якщо u належить лівій частині, то пофарбуйте всі краї, що впадають на u, в синій колір, а інше пофарбуйте всі ці краї в червоний колір. Якщо ми видалимо вершину unn=1n=2≤du≤d≤duuuто середня ступінь отриманого графа G також становить не більше d , і ми можемо забарвити краї цього графа за гіпотезою індукції. ◻Gd□
Лемма 4: Нехай d ≥ 1 . Якщо максимальна середня кількість нулів у булевій матриці n × n A = ( a i , j ) становить максимум d , то r k ( A ) = O ( d 2 ln 2 n ) .
d≥1n×nA=(ai,j)drk(A)=O(d2ln2n)
Доведення: Розглянемо двосторонній n × n графік G з ( i , j ) ребром iff a i , j = 0 . Тоді максимальний середній ступінь G становить максимум d . За лемою 3 ми можемо записати G = G 1 ∪ G 2 , де максимальний ступінь вершин у лівій частині G 1 , а максимальний ступінь вершин у правій частині G 2 - ≤ d . Дозволятиn×nG(i,j)ai,j=0GdG=G1∪G2G1G2≤dA 1 і A 2 - це доповнення матриць суміжності G 1 і G 2 . Отже, A = A 1 ∧ A 2 є складовою І цих матриць. Максимальна кількість нулів у кожному рядку A 1 та в кожному стовпчику A 2 не більше d . Оскільки r k ( A ) ≤ r k ( A 1 ) ⋅ r k ( A 2 )A1A2G1G2A=A1∧A2A1A2drk(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=n−−√m×mAd(A)≤m2/2n<1rk(A)≥mln|A|O(n)can yield much better upper bounds on the OR complexity of dense matrices.