Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Графики функций, обычно используемых при анализе алгоритмов, показывающие количество операций в зависимости от размера ввода для каждой функции

В следующих таблицах приведена вычислительная сложность различных алгоритмов для общих математических операций .

Здесь под сложностью понимается временная сложность выполнения вычислений на многоленточной машине Тьюринга . [1] См. Большую нотацию O для объяснения используемых обозначений.

Примечание. Из-за разнообразия алгоритмов умножения ниже обозначена сложность выбранного алгоритма умножения.

Арифметические функции [ править ]

Алгебраические функции [ править ]

Специальные функции [ править ]

Многие методы в этом разделе приведены в Borwein & Borwein. [8]

Элементарные функции [ править ]

Эти элементарные функции строятся путем составления арифметических операций, то экспоненциальная функция ( ), то натуральный логарифм ( ), тригонометрические функции ( ), и их обратные. Сложность элементарной функции эквивалентна сложности ее обратной, поскольку все элементарные функции аналитичны и, следовательно, обратимы с помощью метода Ньютона. В частности, если любая или в комплексной области может быть вычислена с некоторой сложностью, то эта сложность достижима для всех других элементарных функций.

Ниже размер относится к количеству цифр точности, с которой должна оцениваться функция.

Неизвестно, является ли оптимальная сложность для элементарных функций. Самая известная нижняя оценка - тривиальная оценка . Ω {\displaystyle \Omega }

Неэлементарные функции [ править ]

Математические константы [ править ]

В этой таблице указана сложность вычисления приближений к заданным константам для правильных цифр.

Теория чисел [ править ]

Алгоритмы теоретико-числовых вычислений изучаются в вычислительной теории чисел .

Матричная алгебра [ править ]

На следующих рисунках сложности предполагается, что арифметика с отдельными элементами имеет сложность O (1), как и в случае с арифметикой с плавающей запятой фиксированной точности или операциями с конечным полем .

В 2005 году Генри Кон , Роберт Кляйнберг , Балаж Сегеди и Крис Уманс показали, что любая из двух различных гипотез подразумевает, что показатель умножения матриц равен 2. [33]

^ * Из-за возможностипоблочного инвертирования матрицы, когда инверсияматрицы требует инверсии двух матриц половинного размера и шести умножений между двумя матрицами половинного размера, а также поскольку умножение матриц имеет нижнюю границу операций(), [ 34] можно показать, чтоалгоритм «разделяй и властвуй»,который использует поблочное обращение для инвертирования матрицы, работает с той же временной сложностью, что и алгоритм умножения матриц, который используется внутренне. [35] Ω {\displaystyle \Omega }

Преобразует [ править ]

Алгоритмы вычисления преобразований функций (особенно интегральных преобразований ) широко используются во всех областях математики, особенно в анализе и обработке сигналов .

Заметки [ править ]

  1. ^ Эта форма субэкспоненциального времени действительна для всех. Более точная форма сложности может быть дана как

Ссылки [ править ]

  1. ^ a b A. Schönhage, AFW Grotefeld, E. Vetter: Fast Algorithms - A Multitape Machine Implementation , BI Wissenschafts-Verlag, Mannheim, 1994
  2. ^ Д. Кнут. Искусство программирования , Том 2. Третье издание, Addison-Wesley 1997.
  3. ^ Мартин Фюрер. Более быстрое целочисленное умножение [https://web.archive.org/web/20130425232048/http://www.cse.psu.edu/~furer/Papers/mult.pdf Архивировано 25 апреля 2013 г. в Wayback Machine . Материалы 39-го ежегодного симпозиума ACM по теории вычислений , Сан-Диего, Калифорния, США, 11–13 июня 2007 г., стр. 55–67.
  4. ^ Дэвид Харви, Джорис ван дер Хувен Целочисленное умножение за время O (n log n) . (2019).
  5. ^ Эрика Кларрайх. 2019. Умножение достигает предела скорости. Commun. ACM 63, 1 (декабрь 2019 г.), 11–13. DOI : 10,1145 / 3371387
  6. ^ Christoph Burnikel и Иоахим Циглер Fast Рекурсивный Division Im Stadtwald, D- Саарбрюккен 1998.
  7. ^ http://planetmath.org/fasteuclideanalgorithm
  8. J. Borwein и P. Borwein. Пи и AGM: исследование аналитической теории чисел и вычислительной сложности . Джон Вили 1987.
  9. Дэвид и Григорий Чудновские. Приближения и комплексное умножение по Рамануджану. Возвращение к Рамануджану , Academic Press, 1988, стр. 375–472.
  10. ^ Ричард П. Брент, Методы определения нуля с высокой точностью и сложность вычисления элементарных функций , в: Analytic Computational Complexity (JF Traub, ed.), Academic Press, New York, 1975, 151–176.
  11. ^ Б Ричард П. Брент (2020), The Borwein Brothers, Pi и AGM , Springer Труды по математике и статистике, 313 , Arxiv : 1802,07558 , DOI : 10.1007 / 978-3-030-36568-4 , ISBN 978-3-030-36567-7, S2CID  214742997
  12. ^ Дж. Соренсон. (1994). «Два быстрых алгоритма НОД». Журнал алгоритмов . 16 (1): 110–144. DOI : 10.1006 / jagm.1994.1006 .
  13. ^ Р. Крэндалл и К. Померанс. Простые числа - вычислительная перспектива . Второе издание, Springer 2005.
  14. Перейти ↑ Möller N (2008). «Об алгоритме Шёнхаге и вычислении субквадратичного целочисленного НОД» (PDF) . Математика вычислений . 77 (261): 589–607. Bibcode : 2008MaCom..77..589M . DOI : 10.1090 / S0025-5718-07-02017-0 .
  15. ^ Бернштейн Д. Дж. "Более быстрые алгоритмы для поиска неквадратов по модулю наихудшего случая целых чисел" .
  16. ^ Ричард П. Брент; Пол Циммерманн (2010). « Алгоритм для символа Якоби». arXiv : 1004.2091 [ cs.DS ].
  17. ^ Borwein, P. (1985). «О сложности вычисления факториалов». Журнал алгоритмов . 6 (3): 376–380. DOI : 10.1016 / 0196-6774 (85) 90006-9 .
  18. HW Lenstra Jr. и Карл Померанс, « Тестирование первичности с гауссовскими периодами », предварительная версия от 20 июля 2005 г.
  19. ^ HW Lenstra мл. и Померанс, « проверки простоты чисел с периодами гауссовых Архивные 2012-02-25 в Wayback Machine », версия от 12 апреля 2011 года.
  20. ^ Тао, Теренс (2010). «1.11 Тест на простоту AKS» . Эпсилон комнаты, II: страницы третьего года математического блога . Аспирантура по математике. 117 . Провиденс, Род-Айленд: Американское математическое общество. С. 82–86. DOI : 10,1090 / г / м2 / 117 . ISBN 978-0-8218-5280-4. Руководство по ремонту  2780010 .
  21. ^ Ленстра младший, HW ; Померанс, Карл (11 декабря 2016 г.). «Проверка на простоту с гауссовскими периодами» (PDF) . Cite journal requires |journal= (help)
  22. ^ Морейн, Ф. (2007). «Реализация асимптотически быстрой версии алгоритма доказательства простоты эллиптической кривой». Математика вычислений . 76 (257): 493–505. arXiv : math / 0502097 . Bibcode : 2007MaCom..76..493M . DOI : 10.1090 / S0025-5718-06-01890-4 . Руководство по ремонту 2261033 . S2CID 133193 .  
  23. ^ Карл Померанс ; Джон Л. Селфридж ; Сэмюэл С. Вагстафф младший (июль 1980 г.). «Псевдопреступности до 25 · 10 9 » (PDF) . Математика вычислений . 35 (151): 1003–1026. DOI : 10.1090 / S0025-5718-1980-0572872-7 . JSTOR 2006 210 .  
  24. ^ Роберт Бэйли; Сэмюэл С. Вагстафф-младший (октябрь 1980 г.). "Лукас Псевдопреступления" (PDF) . Математика вычислений . 35 (152): 1391–1417. DOI : 10.1090 / S0025-5718-1980-0583518-6 . JSTOR 2006 406 . Руководство по ремонту 0583518 .   
  25. ^ a b Монье, Луи (1980). «Оценка и сравнение двух эффективных алгоритмов вероятностного тестирования простоты». Теоретическая информатика . 12 (1): 97–108. DOI : 10.1016 / 0304-3975 (80) 90007-9 . Руководство по ремонту 0582244 . 
  26. ^ Дэви, AM; Stothers, AJ (2013), "Улучшенная оценка сложности умножения матриц", Труды Королевского общества Эдинбурга , 143а (2): 351-370, DOI : 10,1017 / S0308210511001648
  27. ^ Vassilevska Williams, Virginia (2011), Разорвать барьер Медник-Винограда (PDF)
  28. ^ Ле Галл, Франсуа (2014), «Силы тензоров и быстрое умножение матриц», Труды 39-го Международного симпозиума по символьным и алгебраическим вычислениям (ISSAC 2014) , arXiv : 1401.7714 , Bibcode : 2014arXiv1401.7714L
  29. ^ а б Ле Галль, Франсуа; Уррутия, Флорен (2018). "Улучшенное умножение прямоугольной матрицы с использованием тензора Медника-Винограда". В Czumaj, Артур (ред.). Материалы двадцать девятого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам . Общество промышленной и прикладной математики (SIAM). DOI : 10.1137 / 1.9781611975031.67 . ISBN 978-1-61197-503-1. S2CID  33396059 .
  30. ^ http://page.mi.fu-berlin.de/rote/Papers/pdf/Division-free+algorithms.pdf
  31. ^ Ахо, Альфред В .; Хопкрофт, Джон Э .; Ульман, Джеффри Д. (1974), Разработка и анализ компьютерных алгоритмов , Аддисон-Уэсли, теорема 6.6, с. 241
  32. ^ JB Fraleigh и RA Beauregard, "Linear Algebra", Addison-Wesley Publishing Company, 1987, p 95.
  33. Генри Кон, Роберт Кляйнберг, Балаш Сегеди и Крис Уманс. Теоретико-групповые алгоритмы умножения матриц. arXiv : math.GR/0511460 . Материалы 46-го ежегодного симпозиума по основам компьютерных наук , 23–25 октября 2005 г., Питтсбург, Пенсильвания, IEEE Computer Society, стр. 379–388.
  34. Ran Raz . О сложности матричного произведения. В материалах тридцать четвертого ежегодного симпозиума ACM по теории вычислений. ACM Press, 2002. DOI : 10,1145 / 509907,509932 .
  35. ^ TH Cormen, CE Leiserson, RL Rivest, C. Stein, Введение в алгоритмы , 3-е изд., MIT Press, Кембридж, Массачусетс, 2009, § 28.2.

Дальнейшее чтение [ править ]

  • Брент, Ричард П .; Циммерманн, Пол (2010). Современная компьютерная арифметика . Издательство Кембриджского университета. ISBN 978-0-521-19469-3.
  • Кнут, Дональд Эрвин (1997). Искусство программирования. Том 2: получисловые алгоритмы (3-е изд.). Эддисон-Уэсли. ISBN 978-0-201-89684-8.