Проблема полягає в обчисленні многочлена . Припустимо, що всі коефіцієнти містяться в машинному слові, тобто ними можна керувати за одиницю часу.
Ви можете зробити час, застосувавши FFT деревом. Чи можете ви зробити O ( n log n ) ?
Проблема полягає в обчисленні многочлена . Припустимо, що всі коефіцієнти містяться в машинному слові, тобто ними можна керувати за одиницю часу.
Ви можете зробити час, застосувавши FFT деревом. Чи можете ви зробити O ( n log n ) ?
Відповіді:
Попередження: Це ще не повна відповідь. Якщо аргументи правдоподібності роблять вам незручно, перестаньте читати.
Я розгляну варіант, де ми хочемо перемножити (x - a_1) ... (x - a_n) на складні числа.
Проблема є подвійною для оцінки полінома в n точках. Ми знаємо, що це може бути зроблено розумно в O (n log n) час, коли точки стають n-ю коренями єдності. Це має істотну перевагу симетрії регулярних багатокутників, які лежать в основі швидкої трансформації Фур'є. Це перетворення відбувається у двох формах, умовно званих децимацією за часом та децимацією за частотою. У радіксі другому вони покладаються на подвійну пару симетрій рівномірних регулярних багатокутників: симетричну замикаючу (правильний шестикутник складається з двох з’єднуються рівносторонніх трикутників) і симетричну розгортання вентилятора (розрізати правильний шестикутник навпіл і розгорнути шматочки, як вентилятори на рівносторонні трикутники).
З цієї точки зору видається дуже неправдоподібним існування алгоритму O (n log n) для довільного набору з n точок без особливих симетрій. Це означало б, що немає нічого алгоритмічно виняткового щодо регулярних багатокутників порівняно зі випадковими множинами точок у складній площині.