Математические байки – Telegram
Математические байки
4.3K subscribers
1.44K photos
15 videos
27 files
914 links
Рассказы про разную математику.

Архив: http://dev.mccme.ru/~merzon/mirror/mathtabletalks/
Download Telegram
Давайте я начну обещанный рассказ про степени отображений и про теорему Штурма.

Вот допустим, нам задан какой-нибудь многочлен. С явными — целыми или рациональными — коэффициентами, но не второй-третьей-ну допустим, четвёртой степени, а выше, так что никакой формулы для корней нет. Как можно узнать, сколько у него вещественных корней? Или — сколько у него корней на конкретном отрезке [a,b]?

Собственно, вот конкретный пример: рассмотрим многочлен
P(x) = 2 x^5 - 5 x^4 - 4 x^3 + 22 x^2 - 21 x + 6.
Сколько у него вещественных корней?

Так сразу не скажешь. Даже если построить график — точнее, попросить компьютер это сделать — тоже ответ не то, чтобы сразу очевиден:
Похоже, конечно, что корней три — а может, всё-таки пять, если где-то между 0 и 1.5 корней будет четыре, а не два?
Если сильно увеличить — то становится видно, что корней на том интервале всё-таки два (а всего тем самым три):
Но, скажем, если представить себе прописывание алгоритма для компьютера — то станет немного тоскливо. Потому что надо — выбрать мелкую сетку значений, посмотреть, сколько между ними перемен знака, проконтролировать, знаем ли мы, что на тех отрезках, где перемены знака нет, многочлен с разумной оценкой на производную (или на вторую производную) "не успевает" добежать до нуля и вернуться. А если может успеть — то подразбить интервал на более мелкие шаги, и так повторять "до победы".
И, кстати, на тех, где есть — тоже нужно быть уверенными, что там корень один, а не, скажем, три.
(И я тут ещё пропустил начальный шаг — проверку через алгоритма Евклида для вычисления НОД(P,P'), что у многочлена нет кратных корней; а если вдруг есть — то ещё и это нужно обрабатывать...)

Не то, чтобы написать было совсем неподъёмно — но как-то никакого энтузиазма не возникает. А главное, в таком виде это не получится "подружить" с разными другими применениями из алгебраической геометрии... (Забегая вперёд — с образами полуалгебраических множеств и теоремой об элиминации кванторов.)
Так вот — а нет ли какого-нибудь красивого способа это самое число вещественных корней найти? Оказывается, что есть, и именно это и есть теорема Штурма; и мы на неё сейчас посмотрим — с чуть более топологической точки зрения, чем её обычно рассказывают.
Но сначала — мне понадобится понятие степени отображения.
В простейшем варианте — если у нас есть отображение f:S^1\to S^1 из окружности в окружность, то можно спросить, какое число оборотов (с учётом знака) делает f(x) вдоль окружности-образа, когда x один раз пробегает окружность-прообраз. Это и есть степень deg f.

И как всегда, с ней есть общий принцип из топологии: "если что-то меняется непрерывно и принимает целые значения, то эта величина — константа". В данном случае — степень сохраняется, если отображение f непрерывно менять.
Представьте себе теперь, что вдоль круглого стадиона бежит атлет. А мы должны сказать, сколько кругов он сделал. Понятно, что бежать за ним весьма трудозатратно; гораздо проще встать в одной точке и считать, сколько раз он мимо нас пробежал.

Но считать надо с учётом знака, по или против хода он мимо нас движется. Потому что если атлет пробежит мимо нас, остановится, сделает пять шагов назад, пройдя мимо нас второй раз, а потом побежит опять вперёд, пройдя третий раз, то не надо говорить, что он уже сделал три круга (иначе остальные бегуны могут сильно удивиться).
А с учётом знака всё получается правильно. А именно — если f:S^1\to S^1 это гладкое отображение, а точка p такова, что во всех её прообразах производная f ненулевая (в частности, таких прообразов тогда конечное число), то
deg(f) = \sum_{x: f(x)=p} sign f'(x).
Вот, например, отображение степени 2. У отмеченной на оси ординат точки 4 прообраза, в трёх из них f'>0, в одной f'<0, поэтому степень равна
1+1-1+1=2.
Кстати, у точки, которой отвечает начало отрезка на оси ординат (склеенное с концом этого же отрезка — это же окружность), два прообраза, оба с плюсом. И мы опять получаем 1+1=2 — что логично: мы же находим одну и ту же величину deg f, которую уже определили как "число оборотов".
Математические байки
А с учётом знака всё получается правильно. А именно — если f:S^1\to S^1 это гладкое отображение, а точка p такова, что во всех её прообразах производная f ненулевая (в частности, таких прообразов тогда конечное число), то deg(f) = \sum_{x: f(x)=p} sign…
С другой стороны, я мог бы не говорить про "число оборотов", а сразу определить степень как число прообразов с учётом знака. И тогда была бы нужна "проверка корректности": во-первых, почему такая точка p есть (у которой все прообразы с ненулевой производной), а во-вторых, почему две разные точки будут приводить к одному и тому же результату.

И тогда для первой части корректности нужно было бы сказать, что множество тех p, у которых хотя бы в одном прообразе производная f нулевая — иными словами, множество критических значений f — имеет меру ноль.
В некоторых кавычках — потому что его мера оценивается сверху интегралом от |f'| по множеству критических точек — но интегрируем-то мы ноль!
А чуть более аккуратно — покрываем множество критических точек маленькими интервалами с суммой длин, близкой к его мере; когда мы применяем f — длина образа каждого интервала оценивается по теореме Лагранжа, как длина самого интервала * что-то очень маленькое (потому что где-то там f'=0). Так что сумма длин образов оказывается сколь угодно малой — и вот и мера ноль.
А для второй (для совпадения того, что дадут две разные точки p_1 и p_2) — чуть-чуть возмутить f, чтобы прообразы p_1 и p_2 остались почти такими же (в частности — с теми же знаками производной), но все минимумы и максимумы у f стали бы невырожденными и на разных уровнях. И тогда, когда мы "поведём" точку p от p_1 к p_2, всё, что мы будем наблюдать, это как два прообраза с разными знаками производной сливаются и исчезают — или, наоборот, из пустоты появляются два прообраза с разными знаками. И при этом наша сумма не изменяется.
Математические байки
С другой стороны, я мог бы не говорить про "число оборотов", а сразу определить степень как число прообразов с учётом знака. И тогда была бы нужна "проверка корректности": во-первых, почему такая точка p есть (у которой все прообразы с ненулевой производной)…
И вот это определение обобщается сразу на любую размерность. А именно: пусть у нас есть два ориентированных (ориентация уже выбрана) замкнутых (компактных без края) гладких многообразия M и N одной размерности, и гладкое отображение f:M\to N. Тогда степень deg f отображения f определяется так:
- берём точку p на N, у которой для каждого её прообраза x дифференциал df|_x (линейная часть f в точке x) невырожден.
- для каждого её прообраза пишем +1 или -1 в зависимости от того, сохраняет или меняет f рядом с ним ориентацию (иными словами, пишем sign det df|_x)
- складываем всё, что написано.

Опять же, нужна проверка корректности: что такая точка p есть, и что результат не зависит от её выбора. Первое делается аналогично тому, что мы делали на окружности, только с поправкой на многомерность, и называется леммой Сарда : множество критических значений (достаточно) гладкой функции имеет меру ноль.
И вторая часть тоже проверяется более-менее так же как и для окружности: соединить две точки p_1 и p_2 типичным путём и если надо, чуть-чуть пошевелить отображение f. Тогда при движении от p_1 к p_2 по типичному пути для типичной f всё, что нам может встретиться, это "вырождения коразмерности 1". А это только слияние двух прообразов с разным сохранением-изменением ориентации и их исчезновение (или, наоборот, рождение двух с разными знаками из ничего).