Перейти к содержанию

Алгебраическая сложность

Материал из Мегавики — свободной энциклопедии

Алгебраическая сложность — раздел теории сложности вычислений, имеющий дело с полиномами. Был создан в основном благодаря работам Ф. Штрассена[1][2][3].

Алгебраическая сложность полинома[править]

Определение[править]

Алгебраической сложностью полинома f, которую обозначают через L(f), называется длина кратчайшей неветвящейся программы, вычисляющей f[4]. Неветвящейся программой называется последовательность функций f1,...,fi,..., определённая следующим образом:

f1=A1(x1,...,xk)B1(x1,...,xk),
fi=Ai(x1,...,xk,f1,...,fi1)Bi(x1,...,xk,f1,...,fi1),

где A и B — полиномы первой степени. Длиной неветвящейся программы называется число членов в последовательности f1,...,fi,.... Неветвящаяся программа длиной m вычисляет полином p, если fm=p.

Свойства[править]

  • Существует полином степени n от одной переменной, алгебраическая сложность которого не меньше Ω(n).

Нерешённые проблемы[править]

  • Неизвестны нетривиальные нижние и верхние оценки алгебраической сложности частичных сумм разложения функции в ряд ex1+x+x22++xnn!. Существует гипотеза, что для вычисления первых n слагаемых этого ряда требуется выполнить Ω(n) умножений[5].
  • Неизвестны нетривиальные нижние и верхние оценки алгебраической сложности частичных сумм разложения функции в ряд ln(1x)xx22xnn!.

Аддитивная сложность матрицы[править]

Определение[править]

Рассмотрим операцию умножения квадратной матрицы с постоянными элементами: (a11a12...a1n............an1an2...ann) на вектор x=(x1,...,xn).

Аддитивной сложностью квадратной матрицы A называется длина самой короткой последовательности функций f1,...,fi,..., вычисляющих произведение вектора x на j строку таблицы A и определённых следующим образом: f1=α1u1+β1v1, ...,fi=αiui+βivi, ... где ui,vi{x1,...,xn,f1,...,fi1}, а αi,βi являются постоянными.

Свойства[править]

Класс VP[править]

Классом VP называется множество всех семейств полиномов fn, для которых L(fn)p(n). Например, задача вычисления детерминанта матрицы принадлежит классу VP. Класс сложности вычислений VP является алгебраическим аналогом класса P из теории сложности вычислений[6].

Класс VNP[править]

Класс VNP включает в себя семейство полиномов fn(x1,...,xm(n)), если для него найдется семейство полиномов {gn(x1,...,xm(n),y1,...,yk(n))} из класса VP такое, что выполнено равенство fn(x1,...,xm(n))=e{0,1}k(n)gn(x1,...,xm(n),e1,...,ek(n)). Суммирование ведется по всем векторам e из нулей и единиц длины k(n), а ei равно значению i-й координаты вектора e. Например, задача вычисления перманента матрицы принадлежит классу VNP. Класс сложности вычислений VNP является алгебраическим аналогом класса NP из теории сложности вычислений.

Примечания[править]

  1. Strassen, V., Vermeidung von Divisionen, Crelles J.Reine Angew. Math 264, 1973, 184-202.
  2. Strassen V. Algebraic Complexity Theory // Handbook of theoretical computer science. — Amsterdam: Elsevier, 1990. — PP. 633—672.
  3. Разборов, 2016, с. 3.
  4. Разборов, 2016, с. 8.
  5. Разборов, 2016, с. 9.
  6. Разборов, 2016, с. 22.

Литература[править]