Почему у 2 окружностей 4 точки пересечения?
К сожалению, линейная алгебра не пользуется той популярностью, которую она заслужила. Многие из моих знакомых не уделяют ей должного внимания на первых курсах полагая, что больше она им не пригодиться, и на самом деле очень зря. Многие алгоритмы заимствуют линейно-алгебраические идеи, и я надеюсь, что когда-нибудь я сделаю такую подборку, но в этот раз я расскажу о теме, с информатикой никак не связанной - теореме Безу.
Начнем мы издалека, с определения матрицы Сильвестра и результанта. Пусть есть два многочлена P(x)
и Q(x)
.
Тогда их матрицей Сильвестра называется матрица размера nm
То-есть в ее верхней строчке стоят коэфициенты P, а на следующих m-1 строках они сдвигаются на одну позицию вправо. На m+1-й строке записаны коэфициенты Q, которые тоже сдвигаются вправо на следующих n-1-й строках.
Матрица Сильвестра замечательна тем, что она позволяет найти, есть ли у P и Q общий множитель. Несложно показать, что
Докажем следствие влево. Пусть НОД P и Q равен 1. Тогда
И в другую сторону
Попробуем найти эти S и T методом неопределенных коэфициентов:
Тогда посчитаем, чему равны коэфициенты PS
Если присмотреться к этим выражениям, можно заметить, что их можно записать в матричном виде
То-есть строка коэфициентов S умножается на верхнюю часть матрицы Сильвестра. Значит строку коэфициентов PS+QT можно выразить как
Значит матрицу Сильвестра можно рассматривать как транспонированную матрицу линейного уравнения. Так как мы хотим, чтобы PS+QT=0, уравнение это однородно, а значит имеет ненулевое решение если и только если матрица вырождена, т.е. ее определитель не равен 0.
Определитель матрицы Сильвестра называется результантом двух многочленов. Теперь мы можем перейти к самой теореме Безу.
Пусть на плоскости даны две кривые, которые задаются многочленами P и Q степеней m и n. Тогда либо у этих двух многочленов есть общий множитель, и кривые пересекаются по бесконечному числу точек, либо у них не больше nm точек перечечения.
Рассмотрим наши кривые на проективной плоскости. Тогда пусть P', Q' - однородные многочлены от 3 переменных, которые задают наши кривые. Вынесем z за скобки
Теперь мы можем записать матрицу Сильвестра над полем рациональных функций от 2 переменных. Не сложно показать, что ее определитель - тоже однородный многочлен от x и y, причем его степень - в точности mn или 0. Но если результант P' и Q' - нулевой многочлен, то у них есть общий множитель. В противном случае, у их результанта ровно nm решений с учетом кратности над полем комплексных чисел, с точностью до пропорциональности. (Нетрудно доказать, что над алгебраически замкнутым полем однородный многочлен степени n от двух переменных имеет ровно n пар решений, с учетом пропорциональности).
Вот так, получается, что любые 2 окружности действительно пересекаются по 4 точкам, правда на комплексной проективной плоскости.
P.S. Это доказательство - всего лишь несколько более подробно расписанное доказательство из Википедии, но моей целью было продемонстрировать два красивых метода - рассмотрение определителя матрицы из рациональных функций и переход от афинного пространства к проективному. На самом деле эта тема неразрывно связана с конечными проективными плоскостями, и в следующий раз я расскажу о том, как считать число направлений, задаваемых на них набором точек.
Даже если вы ничего не поняли из второй части, матрица Сильвестра - очень полезный инструмент, о котором стоит помнить, так что я надеюсь, что моя статья все же была полезной.