Меню

Главная
Случайная статья
Настройки
Лемма Шварца — Зиппеля
Материал из https://ru.wikipedia.org

Лемма Шварца — Зиппеля (также лемма Де Милло — Липтона — Шварца — Зиппеля) — результат, широко используемый в проверке равенства многочленов, то есть, в задаче проверки некоторого многочлена многих переменных на тождественное равенство нулю. Лемма была независимо открыта Джеком Шварцем[1], Ричардом Зиппелем[2], а также Ричардом Де Милло и Ричардом Липтоном, хотя версия Де Милло и Липтона появилась на год раньше результата Шварца и Зиппеля[3]. Версия леммы для конечных полей было доказана Ойстином Оре в 1922 году[4].

Содержание

Лемма

Входом задачи является многочлен от переменных над полем . Он может быть в задан в виде арифметической схемы или как определитель некоторой матрицы многочленов. На текущий момент нет известных детерминированных субэкспоненциальных алгоритмов, позволяющих проверить, что этот многочлен ненулевой. Однако, есть известные рандомизированные алгоритмы, решающие данную задачу за полиномиальное время. При их анализе обычно требуется оценить вероятность того, что ненулевой многочлен будет равен нулю в некоторой случайным образом выбранной точке. Лемма Шварца — Зиппеля формулируется так:

Пусть — ненулевой многочлен степени над полем . Пусть — конечное подмножество и пусть элементы были выбраны из равномерно и независимо друг от друга. Тогда .

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

Доказать лемму в общем виде можно математической индукцией по количеству переменных . Базовый случай был доказан выше.

Пусть теперь теорема верна для всех многочленов на переменных. Можно рассматривать как многочлен от , записав его в виде
.


Так как не равен нулю тождественно, существует некоторый номер такой что также не равен нулю. Пусть — наибольший из таких номеров. Тогда , так как степень не превосходит .

Пусть теперь выбраны случайно из . По предположению индукции, .

Если , то имеет степень (и потому не равен нулю тождественно), поэтому
.


Если обозначить событие как , событие как и дополнительное к событие как , то


Применения

Значимость леммы Шварца — Зиппеля и проверки равенства многочленов следует из алгоритмов, которые могут быть сведены к этой задаче.

Сравнение двух многочленов

Даны два многочлена и , верно ли, что


Данную задачу можно свести к проверке равенства многочленов, так как достаточно проверить, что


Таким образом, если возможно определить, что


где


то также можно определить, равны ли данные два многочлена.

Сравнение двух многочленов может быть использовано в анализе программ с ветвлением. Read-once программа с ветвлением может быть представлена в виде мультилинейного многочлена, который вычисляет (над некоторым полем) на входе из нулей и единиц ту же булеву функцию, что и программа с ветвлением. Таким образом, две программы с ветвлением вычисляют одну и ту же булеву функцию если и только если соответствующие многочлены равны. Значит, проверка равенства булевых функций, которые вычисляются read-once программами с ветвлением может быть сведена к проверке равенства многочленов.

Проверка простоты

Дано число , является ли простым числом?

Маниндра Аграваль и Соменат Бисвас разработали простой рандомизированный алгоритм, использующий проверки равенства многочленов для определения простоты числа .

Они показали, что все простые числа (и только простые числа) удовлетворяют следующему сравнению:


Указанный результат следует из эндоморфизма Фробениуса.

Пусть


Тогда если и только если является простым числом[5]. Однако так как может как быть, так и не быть простым числом, метод Шварца — Зиппеля здесь работать не будет. Аграваль и Бисвас используют более сложную технику, которая включает в себя деление на случайный приведённый многочлен небольшой степени.

Совершенное паросочетание

Дан граф на вершинах, где  — чётное число. Содержит ли совершенное паросочетание?

Определитель матрицы Татта не является тождественно нулевым многочленом если и только если в графе есть совершенное паросочетание.




Подмножество множества рёбер называется паросочетанием если каждая вершина из инцидентна не более, чем одному ребру из . Паросочетание называется совершенным если каждая вершина из инцидентна ровно одному ребру из . Матрица Татта это матрица:


где


Определитель матрицы Татта (как многочлен от ) задаётся как определитель этой кососимметричной матрицы, который равен квадрату пфаффиана матрицы и не равен нулю тождественно если и только если в графе есть совершенное паросочетание.

Таким образом, используя проверку равенства многочленов, можно проверить, содержит ли произвольный граф совершенное паросочетание.

В особом случае сбалансированного двудольного графа на вершинах матрица Татта принимает вид блочной матрицы


Первые строк (и, соответственно, столбцов) индексированы первой долей двудольного графа, а последние строк — второй долей. В данном случае пфаффиан (с точностью до знака) совпадает с обычным определителем матрицы размера . Матрица при этом является матрицей Эдмондса данного двудольного графа.

Примечания
  1. (Schwartz 1980)
  2. (Zippel 1979)
  3. (DeMillo & Lipton 1978)
  4. . Ore, ber hhere Kongruenzen. Norsk Mat. Forenings Skrifter Ser. I (1922), no. 7, 15 pages.
  5. (Agrawal 2003)


Литература

Ссылки
Downgrade Counter