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

Материал из testwiki
Перейти к навигации Перейти к поиску

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

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

Определение

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

f1=A1(x1,...,xk)B1(x1,...,xk),
…
fi=Ai(x1,...,xk,f1,...,fi−1)Bi(x1,...,xk,f1,...,fi−1),
…

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

Свойства

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

Нерешённые проблемы

  • Неизвестны нетривиальные нижние и верхние оценки алгебраической сложности частичных сумм разложения функции в ряд ex∼1+x+x22+…+xnn!. Существует гипотеза, что для вычисления первых n слагаемых этого ряда требуется выполнить Ω(n) умноженийШаблон:Sfn.
  • Неизвестны нетривиальные нижние и верхние оценки алгебраической сложности частичных сумм разложения функции в ряд ln⁡(1−x)∼−x−x22−…−xnn.

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

Определение

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

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

Свойства

Класс VP

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

Класс 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.