Полное доказательство: весь маршрут
Это самая честная версия для школьника: все десять шагов настоящего доказательства, в правильном порядке и с настоящими вычислениями - таблицу совпадений в шаге 5 сервер считает прямо сейчас, а не рисует для красоты. Шаги 0-7 устроены так, чтобы ты мог воспроизвести их сам: спуск - алгеброй на листке, счёт точек - перебором, ряд формы - раскрытием скобок, дискриминант Фрея - теоремой Виета. Мы упрощаем только язык, а не логику; всё, что спрятано под капот, перечислено в конце страницы.
Карта маршрута
План таков: два лёгких шага закрывают простые случаи, затем мы строим два мира - кривые и формы, - наводим между ними мост, а потом показываем, что решение Ферма в этой картине просто не помещается.
Сводим всё к простым степеням
Степеней n бесконечно много, но проверять все не нужно. Если n составное, скажем n = m·k, то любое решение для n автоматически даёт решение для m:
amk + bmk = cmk ⇒ (ak)m + (bk)m = (ck)m
Каждое n ≥ 3 делится либо на 4, либо на нечётное простое число. Значит, достаточно победить всего два случая.
Остаются два фронта
Спуск Ферма: случай n = 4
Ферма, ~1640Единственное доказательство, которое Ферма записал полностью, - метод бесконечного спуска. И его можно воспроизвести на листке: понадобится только формула Евклида из раздела о Пифагоре. Докажем даже больше: у уравнения x⁴ + y⁴ = z² нет решений (контрпример Ферма x⁴ + y⁴ = c⁴ дал бы z = c²).
- Пусть решение есть. Возьмём то, у которого z наименьшее (x, y, z можно считать взаимно простыми).
- Перепишем: (x²)² + (y²)² = z². Это пифагорова тройка! По формуле Евклида найдутся m > k: x² = m² - k², y² = 2mk, z = m² + k².
- Первое равенство - снова тройка: x² + k² = m². Ещё раз Евклид: x = r² - s², k = 2rs, m = r² + s².
- Тогда y² = 2mk = 4rs(r² + s²). Числа r, s и r² + s² попарно взаимно просты, а их произведение - квадрат. Значит, каждое из них - квадрат: r = u², s = v², r² + s² = w².
- Подставим: u⁴ + v⁴ = (u²)² + (v²)² = r² + s² = w². Новое решение! И при этом w ≤ w² = m < m² + k² = z.
из решения с z построили решение с w < z, а z было наименьшим ∎
проверка взаимной простоты на каждом шаге - хорошее упражнение; ничего сложнее школьной алгебры здесь нет
Лестница, которой нет
каждое решение порождает меньшее - но ниже нуля спускаться некуда
Герои доказательства: эллиптические кривые
Дальше нечётные простые p ≥ 3, и тут начинается настоящая магия. Главный герой - эллиптическая кривая: график уравнения y² = x³ + ax + b.
Её суперспособность: точки кривой можно складывать как числа. Прямая через точки P и Q пересекает кривую в третьей точке; отражаем её - получаем P + Q. Со сложением кривая перестаёт быть просто картинкой и становится вычислительной машиной с богатой внутренней жизнью.
Стратегия доказательства: перевести уравнение Ферма на язык таких кривых, где инструментов гораздо больше. Конкретную кривую мы не возьмём с потолка - в шаге 6 построим её своими руками из чисел гипотетического решения.
Правило сложения выводится за пять строк - проверь
- Прямая через P = (x₁, y₁) и Q = (x₂, y₂): y = k(x - x₁) + y₁, где наклон k = (y₂ - y₁)/(x₂ - x₁).
- Подставь её в y² = x³ + ax + b и перенеси всё влево - получится кубическое уравнение x³ - k²x² + ... = 0.
- У него три корня, и два мы знаем: x₁ и x₂. Третий - искомое пересечение.
- Теорема Виета: сумма корней кубического уравнения равна минус коэффициенту при x², то есть k². Значит, x₃ = k² - x₁ - x₂.
- Осталось отразить: y₃ = k(x₃ - x₁) + y₁, и P + Q = (x₃, -y₃).
x₃ = k² - x₁ - x₂
y₃ = k(x₃ - x₁) + y₁
P + Q = (x₃, -y₃)
Именно этими формулами сервер построил картинку выше: взял P и Q на кривой, нашёл третью точку по Виету и отразил её. Никакой магии - школьная алгебра. Попробуй пересчитать координаты P + Q с картинки сам.
Паспорт кривой: считаем точки по модулю p
Как отличить одну кривую от другой? Математики заводят на каждую кривую «паспорт». Берём простое число p и переселяем кривую в крошечный мир остатков от деления на p: там всего p значений x и p значений y. Пересчитываем все решения уравнения - получаем число Np - и записываем в паспорт отклонение ap = p + 1 - Np. И так для каждого простого: паспорт бесконечный.
Кривая y² + y = x³ - x² в мире остатков mod 7
Запись в паспорте
Простое p = 11 в списке пропущено: по модулю 11 наша кривая «ломается» (становится сингулярной). Запомни это число - оно ещё выстрелит в шаге 7.
Проверь руками: p = 3 за две минуты
По модулю 3 всего девять пар (x, y). Посчитай обе части уравнения y² + y = x³ - x² (все числа - остатки от деления на 3) и отметь совпадения:
| x³ - x² \ y² + y | y = 0 → 0 | y = 1 → 2 | y = 2 → 0 |
|---|---|---|---|
| x = 0 → 0 | ✓ | ✓ | |
| x = 1 → 0 | ✓ | ✓ | |
| x = 2 → 1 |
Четыре галочки + бесконечно удалённая точка: N₃ = 5, поэтому a₃ = 3 + 1 - 5 = -1. Запомни эту минус единицу - она вернётся в шагах 4 и 5.
Второй мир: модулярные формы
Теперь совсем другая вселенная. Модулярная форма - функция на верхней полуплоскости, которая выдерживает бесконечный шквал симметрий: сдвиги, развороты через дроби, и всё это одновременно. Плоскость разбивается на бесконечную мозаику из копий одной «плитки» D, и форма на каждой копии обязана «звучать» одинаково.
Таких функций исчезающе мало - симметрия жестока. Но каждая выжившая раскладывается в ряд с целыми коэффициентами. Вот форма «уровня 11», посчитанная нашим сервером:
подсвечен коэффициент при q7 - для простого p, выбранного в шаге 3
Мозаика симметрий
каждая арка и каждая «плитка» - копия области D; модулярная форма обязана «звучать» одинаково во всех копиях сразу
Раскрой скобки сам
Откуда берётся ряд? Из чистого умножения скобок: (1 - qᵏ)² = 1 - 2qᵏ + q²ᵏ. Вот коэффициенты произведения после каждого множителя - строчку за строчкой можно повторить на листке. Скобки с k > 6 и все скобки с q¹¹ᵏ на степени до q⁶ уже не влияют, поэтому таблица быстро перестаёт меняться:
| умножили на | 1 | q | q² | q³ | q⁴ | q⁵ | q⁶ |
|---|---|---|---|---|---|---|---|
| (1 - q1)² | 1 | -2 | 1 | 0 | 0 | 0 | 0 |
| (1 - q2)² | 1 | -2 | -1 | 4 | -1 | -2 | 1 |
| (1 - q3)² | 1 | -2 | -1 | 2 | 3 | 0 | -6 |
| (1 - q4)² | 1 | -2 | -1 | 2 | 1 | 4 | -4 |
| (1 - q5)² | 1 | -2 | -1 | 2 | 1 | 2 | 0 |
| × q (сдвиг) = форма f | 0 | 1 | -2 | -1 | 2 | 1 | 2 |
последняя строка - это и есть f = q - 2q² - q³ + 2q⁴ + q⁵ + 2q⁶ - ...; коэффициент при q³ равен -1 - та самая минус единица, которую ты получил перебором точек в шаге 3. Два мира уже начали совпадать.
Чудо-совпадение: модулярность
Танияма и Симура, 1955А теперь положи два мира рядом. Слева - ap из паспорта кривой: мы пересчитывали точки на решётках. Справа - коэффициенты ряда формы уровня 11: мы раскрывали произведение q·∏(1-qⁿ)²(1-q¹¹ⁿ)². Два вычисления не имеют друг к другу никакого видимого отношения. Смотри, что получается:
| простое p | 2 | 3 | 5 | 7 | 13 | 17 | 19 | 23 | 29 | 31 |
|---|---|---|---|---|---|---|---|---|---|---|
| Np (точек на кривой) | 5 | 5 | 5 | 10 | 10 | 20 | 20 | 25 | 30 | 25 |
| ap кривой | -2 | -1 | 1 | -2 | 4 | -2 | 0 | -1 | 0 | 7 |
| ap формы | -2 | -1 | 1 | -2 | 4 | -2 | 0 | -1 | 0 | 7 |
| совпало? |
Кривая Фрея: слишком идеальный монстр
Фрей, 1984Вернёмся к Ферма. Предположим, вопреки теореме, что для простого p ≥ 5 нашлись целые a, b, c с ap + bp = cp. Идея Фрея проста: правая часть эллиптической кривой - кубический многочлен, а корни кубического многочлена можно выбрать самому. Возьмём корнями наши числа: 0, ap и -bp:
E: y² = x·(x - ap)·(x + bp)
У всякой кривой есть дискриминант - число, измеряющее, насколько кривая «помята». Для кривой с тремя корнями он считается школьной формулой: 16 умножить на произведение квадратов попарных разностей корней. Выпиши три разности - и смотри, где выстреливает уравнение Ферма:
- ap - 0 = ap
- 0 - (-bp) = bp
- ap - (-bp) = ap + bp = cp
Δ = 16·(apbpcp)² = 16·(abc)2p
стандартное приведение кривой к минимальному виду съедает степень двойки: минимальный дискриминант равен (abc)2p/2⁸; на дальнейшую логику это не влияет
Почему это подозрительно
Дискриминант - почти идеальная 2p-я степень! Для обычных кривых такого не бывает никогда: это как найти паспорт, где все цифры - девятки. Из-за этой аккуратности кривая Фрея была бы полустабильной (ломалась бы по каждому простому лишь самым безобидным способом), а её «уровень» - подозрительно маленьким.
Важно: кривая Фрея - гипотетический зверь. Мы не можем её нарисовать, потому что чисел a, b, c (как мы докажем) не существует. Мы изучаем, какими свойствами она обладала бы, если бы существовала.
Рибет: спуск по уровням до пустоты
Рибет, 1986У каждой модулярной формы есть уровень - целое число N, показывающее, насколько грубее её мозаика симметрий (наша форма из шага 4 имеет уровень 11). Если бы кривая Фрея была модулярной, её форма имела бы уровень, собранный из простых делителей abc. Кен Рибет доказал теорему «понижения уровня»: благодаря идеальному дискриминанту эти простые можно выбрасывать из уровня по одному, пока не останется голый уровень 2.
Лестница Рибета
- уровень N = 2·(простые из abc)
- выбрасываем простое → уровень меньше
- ещё одно → ещё меньше
- уровень 2
каждый шаг - строгая теорема: форма с «идеальным» дискриминантом внизу обязана существовать, если существует форма наверху
Почему простые выкидываются - проверь показатели сам:
Δ = 16·(abc)²ᵖ (мы вывели это в шаге 6)
показатель нечётного простого ℓ в Δ = 2p·(показатель ℓ в abc)
→ он всегда кратен p
условие теоремы Рибета - ровно «показатель ℓ в дискриминанте кратен p». Ему удовлетворяет каждое нечётное простое из уровня, поэтому лестница доезжает до самой двойки. Сравни с нашей кривой уровня 11: её минимальный дискриминант равен -11, показатель 1 ни на что не кратен - и уровень 11 не понижается. Всё сходится.
А что живёт на нижних уровнях?
Пространства форм веса 2 на каждом уровне имеют точно известный размер. Вот вся таблица малых уровней:
| уровень N | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| сколько форм | 0 | 0 ← | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
Уайлс: R = T и трюк 3-5
Уайлс и Тейлор, 1994Остался последний и самый тяжёлый рубеж: доказать, что каждая полустабильная кривая всё-таки модулярна, - тогда немодулярная кривая Фрея окажется невозможной. Именно на это у Уайлса ушло семь тайных лет и 130 страниц. Вот идея в три хода.
R Мир кандидатов
Паспорт кривой (все её ap) можно «читать по модулю»: сначала грубо, по модулю 3, потом точнее и точнее. Кольцо R описывает все мыслимые способы уточнить грубый паспорт до полного - всех кандидатов в кривые.
T Мир форм
Кольцо T описывает те паспорта, которые приходят от модулярных форм. Каждая форма честно выдаёт свой ряд коэффициентов, как наша форма уровня 11. Заведомо T - часть R: у формы паспорт всегда корректный.
R = T Теорема Уайлса
Уайлс доказал: эти кольца совпадают. Кандидатов ровно столько, сколько форм, - значит, каждый паспорт кривой приходит от формы, то есть каждая такая кривая модулярна. Для этого он изобрёл численный критерий и (с Тейлором) новую технику «систем Тейлора - Уайлса».
Трюк 3-5: как запустить машину
Чтобы уточнять паспорт, нужно с чего-то начать: доказать модулярность хотя бы «паспорта по модулю 3». Тут повезло: для тройки это следовало из старой теоремы Ленглендса и Таннелла. Но у некоторых кривых паспорт mod 3 вырожден и стартовать нельзя. Уайлс придумал пересадку:
- паспорт mod 3 хороший? → запускаем R = T с тройки
- плохой? → находим кривую-компаньона с тем же паспортом mod 5
- компаньон модулярен через свою тройку
- значит, и исходная кривая модулярна
Честно: почему этот шаг не повторить на листке
Шаги 0-7 ты можешь воспроизвести сам: алгеброй, перебором остатков и раскрытием скобок. Шаг 8 - нет, и вот где проходит граница. Чтобы построить кольца R и T, нужны представления Галуа, их деформации и алгебры Гекке - несколько лет университетской математики. Сама логика при этом остаётся честной и короткой: T заведомо сидит внутри R, а Уайлс численным критерием (сравнением двух «размеров») показывает, что места в R больше нет - кольца совпадают.
Дочитать до конца можно здесь: A. Wiles, «Modular elliptic curves and Fermat's Last Theorem» плюс приложение R. Taylor - A. Wiles, Annals of Mathematics 141 (1995). А самый человечный пересказ всей истории - книга Саймона Сингха «Великая теорема Ферма»: она читается как детектив и не требует формул.
Финал: цепочка захлопывается
достаточно n = 4 и простых p ≥ 3 (шаг 0)
n = 4: бесконечный спуск Ферма ∎ (шаг 1; p = 3 закрыл Эйлер тем же методом)
пусть для p ≥ 5 нашлись a, b, c: aᵖ + bᵖ = cᵖ
строим кривую Фрея E с дискриминантом (abc)²ᵖ/256 (шаг 6)
Рибет: E не может быть модулярной (шаг 7: на уровне 2 пусто)
Уайлс: E полустабильна ⇒ E модулярна (шаг 8: R = T)
E модулярна и не модулярна ⇒ a, b, c не существуют ∎∎
Что мы упростили (по-честному)
Что скрыто за словом «паспорт»?
На языке математики это представление Галуа: действие группы симметрий чисел на точках кривой. Числа ap - его «отпечатки» (следы Фробениусов). «Читать паспорт по модулю 3» - значит рассматривать представление на точках 3-кручения. Уточнение паспорта - деформация представления, а R - универсальное деформационное кольцо Мазура.
Что такое уровень и лестница Рибета точнее?
Уровень N - это то, для какой группы Γ₀(N) форма симметрична; «сколько форм» - размерность пространства параболических форм веса 2, она же род кривой X₀(N). Теорема Рибета - это «level lowering» для гипотезы Серра об эпсилон-факторах: из-за того что все показатели в дискриминанте кривой Фрея делятся на p, простые делители abc можно последовательно убирать из уровня, доходя до N = 2.
Что именно доказал Уайлс?
Модулярность всех полустабильных эллиптических кривых над ℚ (этого достаточно для Ферма, потому что кривая Фрея полустабильна). Полную гипотезу Таниямы - Симуры для всех кривых закрыли в 2001 году Брёй, Конрад, Даймонд и Тейлор - теперь она называется теоремой о модулярности. Оригинальные статьи: Wiles, «Modular elliptic curves and Fermat's Last Theorem» и Taylor - Wiles, «Ring-theoretic properties of certain Hecke algebras», Annals of Mathematics 141 (1995).
Насколько честна наша таблица из шага 5?
Полностью: сервер перебирает точки кривой y² + y = x³ - x² по каждому модулю и независимо раскрывает произведение q·∏(1-qⁿ)²(1-q¹¹ⁿ)² - знаменитый пример Эйхлера и Симуры, первая проверенная клетка гипотезы Таниямы - Симуры. Совпадение коэффициентов для этой пары - доказанная теорема, а наш код лишь демонстрирует её на конкретных числах. Исходники - в модуле Ferma.Math.Modularity.