Монотонна арифметична складність ланцюга елементарних симетричних многочленів?


14

-м елементарному симетричному поліноміальний є сумою всіх продуктів K різних змінних. Мене цікавить монотонна арифметична (+, \ рази) складність ланцюга цього многочлена. Простий алгоритм динамічного програмування (як і рис. 1 нижче) дає схему (+, \ раз) з воротами O (kn) .kSkn(x1,,xn)(nk)k(+,×)(+,×)O(kn)

Питання: Чи відома нижня межа Ω(kn) ?

(+,×) ланцюга перекіс , якщо принаймні один з двох входів кожного затвора продукту є змінною. Така схема насправді така сама, як мережа комутації та випрямлення (спрямований ациклічний графік з деякими краями, позначеними змінними; кожен st шлях дає добуток своїх міток, а вихід - сума всіх усіх шляхів). Вже 40 років тому Марков виявив напрочуд жорсткий результат: мінімальна монотонна арифметична косою схемою для Skn має рівно k(nk+1) вироби. Верхня оцінка випливає з фіг.1 .: введіть тут опис зображення

Але я не бачив жодної спроби довести таку нижню межу для схем, що не мають перекосу. Це лише наша "зарозумілість", чи є якісь властиві труднощі, які спостерігаються на цьому шляху?

PS Я знаю, що ворота необхідні для одночасного обчислення всіх . Це випливає з нижньої межі розміру монотонних булевих схем, сортуючи вхід 0-1; див. сторінку 158 книги Інго Вегенера . Мережа сортування AKS також передбачає, що в цьому (булевому) випадку браки є достатніми. Власне, Баур і Страссен довели щільну зв'язаність щодо розміру немонотонної арифметичної схеми для . А як щодо монотонних арифметичних схем?Ω(nlogn)S1n,,SnnΘ ( n log n ) S n n / 2O(nlogn)Θ(nlogn)Sn/2n

Відповіді:


6

Одна з проблем в тому , що якщо прибрати «монотонний» обмеження, ми дійсно знаємо , як ефективно обчислювати такі речі. Ви можете обчислити значення всіх (оцінити всі елементарних симетричних многочленів) за час , використовуючи множення поліномів на основі FFT. Таким чином, доведення нижньої межі в монотонній схемі вимагає доведення нижньої межі на множення поліномів. n + 1 O ( n log 2 n ) Ω ( n k ) Ω ( n 2 )S0n,,Snnn+1O(nlog2n)Ω(nk)Ω(n2)

Ось як. Введіть формальну невідомість та розглянемо поліномy

P(y)=i=1n(1+xiy).

Зауважимо, що оскільки відомі константи, це односхилий многочлен з невідомим та зі ступенем . Тепер ви можете відзначити, що коефіцієнт у рівно , тому для оцінки всіх достатньо обчислити . y n y k P ( y ) S n k S n 0 , , S n n P ( y )xiynykP(y)SknS0n,,SnnP(y)

Це дає можливість обчислити за час : побудувати збалансоване двійкове дерево многочленів з 'на листках і помножити многочлени. Помноження двох многочленів градуса займає час за допомогою методів FFT, тому ми отримуємо рецидив , який вирішує . Для зручності я ігнорую фактори.O ( n lg 2 n ) ( 1 + x i y ) d O ( d lg d ) T ( n ) = 2 T ( n / 2 ) + O ( n lg n ) T ( n ) = O ( n lg 2 n ) poly ( lg lgP(y)O(nlg2n)(1+xiy)dO(dlgd)T(n)=2T(n/2)+O(nlgn)T(n)=O(nlg2n)poly(lglgn)

Якщо ви дбаєте про випадок, коли дуже малий, ви можете обчислити за час використовуючи подібні трюки, маючи на увазі, що ви дбаєте лише про (тобто, викидаючи всі доданки або вищі сили ).S n 0 , , S n k O ( n lg 2 k ) P ( x ) mod y k + 1 y k + 1 ykS0n,,SknO(nlg2k)P(x)modyk+1yk+1y

Звичайно, FFT використовує віднімання, тому наївно це не виражається в монотонному контурі. Я не знаю, чи є якийсь інший спосіб ефективного множення поліномів монотонними арифметичними схемами, але будь-який ефективний монотонний метод множення поліномів негайно призводить до створення алгоритму для вашої проблеми. Отже, нижні межі вашої проблеми вимагають / мають на увазі нижчі межі для множення поліномів.


2
DW, дякую за нагадування про цю конструкцію! Зазвичай його приписують Бен-Ор, і я повинен був це згадати. Конструкція також дає <i> формулу </i> розміру і глибиною лише (!), оператора (шляхом оцінки деякого бал). Це було використано для розділення однорідних та неоднорідних формул малої глибини. Але, як ви згадуєте, конструкція значною мірою використовує віднімання. Отже, моє запитання запитує: наскільки "суттєвим" є це використання насправді? Це може бути цікаво і в сценарії з обмеженою глибиною. 3 S n 0 , , S n n P ( y ) n + 1O(n2)3S0n,,SnnP(y)n+1
Стасіс

3
@Stasys: Я думаю, віднімання є досить важливим. Віз. нижня межа Нісана-Вігдерсона на глибині 3 однорідних ланцюгів; У однорідних глибинах 3 ланцюгів справа в тому, що марно обчислювати терміни, градуси яких відрізняються від ступеня виходу. Таким чином, це обмежує види скасування, які можуть статися. Тоді як у конструкції Бен-Ор для обчислення потрібно обчислити поліном ступеня (навіть якщо вихід має ступінь ), а потім вирішально використовувати скасування, щоб позбутися термінів градусів . Це не доказ, лише якась інтуїція ... n k < n > kSknnk<n>k
Джошуа Грохов

@ Джошуа: так, ми знаємо, що коефіцієнти змінної в многочлени це саме поліноми . Але нам потрібен Гаусс (і так - віднімання), щоб отримати ці коефіцієнти з значень на різних точок. Моє питання стосується чи не має «монотонне слово» немає Гаусса дійсно , в цьому випадку. (З здогаданоюсь відповіддю - НІ.) Я не впевнений, що для цього достатньо позбутися термінів ступенів . Ми повинні знайти ці перші коефіцієнти. yP(y,x)Skn(x)n+1P(y)n+1>kk
Стасіс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.