Введение
Алгоритмическая топология, или вычислительная топология, — это подраздел топологии, тесно связанный с областями информатики, в частности, с вычислительной геометрией и теорией вычислительной сложности. Главная задача алгоритмической топологии, как следует из её названия, — разработка эффективных алгоритмов для решения задач, возникающих в таких областях, как вычислительная геометрия, графика, робототехника, социальные науки, структурная биология и химия, с применением методов вычислимой топологии.
Алгоритмическая теория 3-многообразия
Большое семейство алгоритмов, связанных с 3-многообразиями, строится вокруг теории нормальных поверхностей, которая объединяет несколько методов сведения задач теории 3-многообразий к задачам целочисленного линейного программирования. Алгоритм распознавания 3-сферы Рубинштейна и Томпсона – это алгоритм, принимающий на вход триангулированное 3-многообразие и определяющий, гомеоморфно ли оно 3-сфере. Его время работы экспоненциально зависит от числа тетраэдрических симплексов в исходном 3-многообразии, а также имеет экспоненциальный объем используемой памяти. Кроме того, он реализован в программном пакете Regina. Саул Шлеймер показал, что эта задача принадлежит классу сложности NP. Рафаэль Зентнер, в свою очередь, доказал, что задача принадлежит классу сложности coNP при условии справедливости обобщенной гипотезы Римана. В своей работе он использует инстантную калибровочную теорию, теорему геометризации 3-многообразий и последующие работы Грега Куперберга о сложности определения заузленности. Разложение на связную сумму 3-многообразий также реализовано в Regina, имеет экспоненциальное время работы и основано на алгоритме, аналогичном алгоритму распознавания 3-сферы. Алгоритмическая реализация определения отсутствия несжимаемой поверхности в 3-многообразии Зейферта-Вебера была выполнена Бертоном, Рубинштейном и Тиллманом на основе теории нормальных поверхностей. Алгоритм Мэннинга предназначен для поиска гиперболических структур на 3-многообразиях, фундаментальная группа которых имеет решение задачи о слове. В настоящее время алгоритмическая реализация разложения JSJ и разложения на тела сжатия в компьютерном программном обеспечении отсутствует. Однако существуют весьма популярные и эффективные эвристики, такие как SnapPea, успешно вычисляющие приближенные гиперболические структуры на триангулированных 3-многообразиях. Известно, что полная классификация 3-многообразий может быть выполнена алгоритмически, и, более того, известно, что определение эквивалентности (гомеоморфности) двух замкнутых ориентированных 3-многообразий, заданных триангуляциями (симплексными комплексами), является элементарно рекурсивной задачей. Это обобщает результат о распознавании 3-сферы.
Алгоритмы преобразования
SnapPea реализует алгоритм для преобразования плоской схемы узла или зацепления в куспидную триангуляцию. Этот алгоритм имеет приблизительно линейное время работы в зависимости от числа пересечений на схеме и характеризуется небольшим объемом используемой памяти. Алгоритм аналогичен алгоритму Виртингера для построения презентаций фундаментальной группы дополнений зацеплений, заданных плоскими схемами. Аналогично, SnapPea может преобразовывать хирургические презентации 3-многообразий в триангуляции представленных 3-многообразий. Д. Терстон и Ф. Костандино разработали процедуру построения триангулированного 4-многообразия из триангулированного 3-многообразия. Аналогичным образом, её можно использовать для построения хирургических презентаций триангулированных 3-многообразий, хотя процедура явно не оформлена в виде алгоритма, но в принципе должна иметь полиномиальное время работы в зависимости от числа тетраэдров заданной триангуляции 3-многообразия. С. Шлеймер разработал алгоритм, который генерирует триангулированное 3-многообразие, принимая на вход слово (в генераторах скрутки Дена) для группы класса отображений поверхности. 3-многообразие определяется словом, используемым в качестве прикрепляющей карты для расщепления Хигарда этого 3-многообразия. Алгоритм основан на концепции слоистой триангуляции.
Теория алгоритмических узлов
Определение того, является ли узел тривиальным, известно как принадлежащее классам сложности NP и co NP. Задача определения рода узла имеет класс сложности PSPACE. Полином Джонса, полином HOMFLY и инварианты Решетихина–Тураева допускают отслеживание с фиксированными параметрами, при этом полином Джонса также известен как #P-трудный. Вычисление первого коэффициента полинома HOMFLYPT и полинома Кауфмана находится в классе P. Аппроксимация полинома Джонса с суммированием является BQP-полной, то есть по сложности эквивалентна квантовым алгоритмам с полиномиальным временем работы. Установление эквивалентности двух (управляемых) узлов по их диаграммам связей является задачей класса ER. Это устанавливается путем сведения задачи эквивалентности узлов (изотопии) к задаче эквивалентности (гомеоморфизма) соответствующих узловых дополнений, которые являются трехмерными многообразиями и могут быть закодированы триангуляциями. Поскольку эти узловые дополнения являются многообразиями Хакена, используется результат о том, что задача эквивалентности этих многообразий принадлежит классу ER. Кажется, не существует общедоступной ссылки на этот результат; эти результаты разбросаны по литературе в данной области, но хорошо известны специалистам.
Additive approximation of the Jones polynomial is BQP complete, i. e., equivalently hard as polynomial time quantum algorithms. Given two (tame) knots by link diagrams deciding whether they are equivalent is ER. This is established by reducing knot equivalence (isotopy) to equivalence (homeomorphy) of the associated knot complements which are 3 manifolds which in turn can be encoded by triangulations. Since these knot complements are Haken manifolds one then uses a result that the equivalence problem of these manifolds is in ER. There does not seem to be a good reference for this, these results are scattered across the literature in the field, but well known by the community.
Вычислительная гомотопия
Вычислительные методы для гомотопических групп сфер. Вычислительные методы решения систем полиномиальных уравнений. У Брауна есть алгоритм вычисления гомотопических групп пространств, являющихся конечными комплексами Постникова, однако он не считается практически реализуемым.
Вычислительная гомология
Вычисление гомологических групп клеточных комплексов сводится к приведению граничных матриц к нормальной форме Смита. Хотя это алгоритмически полностью решенная задача, существуют различные технические препятствия для эффективных вычислений с большими комплексами. Существует два основных препятствия. Во-первых, базовая версия алгоритма приведения к нормальной форме Смита имеет кубическую сложность относительно размера матрицы, поскольку использует элементарные преобразования строк и столбцов, что делает его непригодным для работы с большими клеточными комплексами. Во-вторых, промежуточные матрицы, возникающие в процессе применения алгоритма приведения к нормальной форме Смита, становятся плотными, даже если исходные и конечные матрицы являются разреженными. Эффективные и вероятностные алгоритмы приведения к нормальной форме Смита доступны в библиотеке LinBox. Простые гомотопические редукции для предварительной обработки при вычислении гомологий, реализованные в программном пакете Perseus. Алгоритмы для вычисления устойчивой гомологии фильтрованных комплексов, реализованные в пакете TDAstats для R.