Докази того, що матричне множення не є в


39

Поширена думка, що для всіх можна помножити дві матриць уϵ>0н×нО(н2+ϵ) . Деяке обговорення тут .

Я запитав деяких людей, більш знайомих з дослідженням, чи вважають вони, що існує незалежно від , що існує алгоритм для матричного множення, і вони, здавалося б, мають інтуїція, що відповідь "ні", але не могла пояснити, чому. Тобто вони вважають, що ми можемо це зробити в час , але не в .к>0нО(н2журналкн)О(н2.001)О(н2журнал100н)

Які причини існують для того, щоб вважати, що в фіксованому не існує алгоритмуО(н2журналкн)к>0 ?

Відповіді:


29

Там же алгоритм для множення N×N0,172 матриці з N0,172×N матрицями в N2полілог(N) арифметичні операції. Основна ідентичність використовується для цього приходить з паперу мідника в «Бистрому множенні прямокутних матриць», але пояснення того , чому це призводить до N2полілог(N) замість N2+ϵ знаходиться в додатку Вільямс паперу , «Нових алгоритми і нижні межі для схем з лінійними пороговими воротами ".

Це працює лише тому, що особистість Coppersmith має деяку додаткову структуру, якою ви можете скористатися, а новітні алгоритми ММ, схоже, не мають такої структури. З цього приводу я не впевнений, чому не можна сподіватися на поширення такого підходу на множення матриць на N×N×N


11

Ну, одне - я думаю, що всі споруди, про які ми знаємо, - і навіть родини потенційних конструкцій, які люди запропонували (наприклад, підходи Кон-Умана, узагальнення Копперсміта-Винограда) - "просто" створили б сімейство алгоритмів Аϵ працює в часі О(н2+ϵ) . Отже, щоб мати єдиний алгоритм, який працював в О(н2pолу(журналн)) , він повинен був би бути не просто божевільним асимптотично кращим, ніж сучасні підходи, але повинен був виглядати справді інакше.

Великий застереження: Я думаю. Я ніколи не надто важко замислювався над тим, скільки потрібно буде змінювати / доповнювати до існуючих підходів, щоб вони могли правдоподібно створити єдиний алгоритм, що працює в часі О(н2pолу(журналн)) .


3
Я не впевнений, як наявність сім’ї правдоподібно не призводить до O (n ^ 2poly (log n)), оскільки якщо можна було б досить добре описати сім’ю, то можна було б вибрати більші та більш ефективні члени сім’ї для більшої n. Єдиною причиною того, що це не правдоподібно O (n ^ 2poly (log N)), є те, що задіяні константи, ймовірно, будуть дуже великими, але очевидно, що це обов'язково так.
ДжошуаЗ

1
О(н2+х)ε>0О(н2+ε)

1
@JoshuaZ Я вважаю, що інший, більш дивний спосіб цього може бути невдалим, якби якимось вибором / побудовою члена сім'ї знадобилося більше, ніж часу O (n ^ 2 poly (log n)) - наприклад, можливо, O (1 / e) код потрібен реалізувати алгоритм O (n ^ (2 + e)) або щось подібне. Хіба це не було б диким ??
Даніель Вагнер

10

Джош Алман показав кілька класних результатів нижньої межі ММ, які виграли нагороду CCC 2019 за найкращий студентський папір! http://drops.dagstuhl.de/opus/volltexte/2019/10834/pdf/LIPIcs-CCC-2019-12.pdf


6
О(н2pолу(логн))

4
@JoshuaGrochow Дякуємо, що вказали на це питання.
Рупей Сюй
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.