EssayAI
Блог
Блог
Математика и алгоритмы

Лемма Гензеля: поднятие корня от mod p к p-адическим целым

10 февраля 2026Время чтения: 10 минут
#теория чисел#p-адические числа#лемма Гензеля#алгебра#арифметическая геометрия
Лемма Гензеля: поднятие корня от mod p к p-адическим целым

Лемма Гензеля - это рабочий мост между арифметикой по модулю простого pp и арифметикой p-адических целых Zp\mathbb{Z}_p. Если у многочлена f(x)Z[x]f(x) \in \mathbb{Z}[x] нашёлся «гладкий» корень по модулю pp - то есть f(a0)0(modp)f(a_0) \equiv 0 \pmod p и производная f(a0)≢0(modp)f'(a_0) \not\equiv 0 \pmod p, - то этот корень однозначно поднимается до настоящего корня αZp\alpha \in \mathbb{Z}_p. Доказательство - двадцать строк, инструмент - p-адическая версия метода Ньютона. Курт Гензель сформулировал лемму около 1900 года как часть программы переноса аналитических методов в теорию чисел; сегодня она лежит в основе локально-глобальных принципов, счёта точек на схемах и постановки задач арифметической геометрии.

Постановка

Зафиксируем простое число pp и многочлен с целыми коэффициентами

f(x)=cnxn+cn1xn1++c1x+c0,ciZ.f(x) = c_n x^n + c_{n-1} x^{n-1} + \dots + c_1 x + c_0, \qquad c_i \in \mathbb{Z}.

Будем называть редукцией ff многочлен fˉFp[x]\bar f \in \mathbb{F}_p[x], полученный взятием всех коэффициентов по модулю pp. Корни fˉ\bar f ищутся перебором среди {0,1,,p1}\{0, 1, \dots, p-1\} - это конечная задача.

Вопрос: можно ли по корню aˉ0\bar a_0 многочлена fˉ\bar f восстановить корень самого ff в более тонкой структуре - в Zp\mathbb{Z}_p, кольце p-адических целых? Ответ: при условии гладкости - да, причём единственным образом.

Лемма Гензеля (классическая формулировка). Пусть fZp[x]f \in \mathbb{Z}_p[x] и существует a0Zpa_0 \in \mathbb{Z}_p такое, что

f(a0)0(modp),f(a0)≢0(modp).f(a_0) \equiv 0 \pmod p, \qquad f'(a_0) \not\equiv 0 \pmod p.

Тогда существует единственный αZp\alpha \in \mathbb{Z}_p такой, что f(α)=0f(\alpha) = 0 и αa0(modp)\alpha \equiv a_0 \pmod p.

Два условия читаются так: a0a_0 - корень редукции fˉ\bar f в Fp\mathbb{F}_p (существование начального приближения) и эта редукция в точке простая, не кратная (гладкость в точке). Гладкость и обеспечивает единственное поднятие.

Хочешь увидеть, как поднимается конкретный корень - выбери многочлен, простое pp и получи p-адические шаги Ньютона до точности p4p^4 с проверкой условий леммы.

Итерация p-адического Ньютона

Конструкция корня α\alpha повторяет обычный метод Ньютона:

an+1=anf(an)f(an).a_{n+1} = a_n - \frac{f(a_n)}{f'(a_n)}.

Только всё происходит в Zp\mathbb{Z}_p, и сходимость измеряется не евклидовой, а p-адической нормой. Напомню: xp=pvp(x)|x|_p = p^{-v_p(x)}, где vp(x)v_p(x) - степень pp в каноническом разложении xx; чем больше pp делит xx, тем меньше его p-адическая «длина».

Стартуем с a0a_0 - нашего начального корня по модулю pp. На каждом шаге деление f(an)/f(an)f(a_n)/f'(a_n) корректно в Zp\mathbb{Z}_p, потому что f(an)≢0(modp)f'(a_n) \not\equiv 0 \pmod p - значит, f(an)f'(a_n) обратим в Zp\mathbb{Z}_p (единицы Zp\mathbb{Z}_p - это в точности элементы, не делящиеся на pp). Условие невырожденности сохраняется по индукции, так как an+1an(modpn+1)a_{n+1} \equiv a_n \pmod{p^{n+1}}.

Ключевая оценка - квадратичная сходимость: если f(an)0(modp2n)f(a_n) \equiv 0 \pmod{p^{2^n}}, то f(an+1)0(modp2n+1)f(a_{n+1}) \equiv 0 \pmod{p^{2^{n+1}}}. Доказательство - разложение Тейлора:

f(an+1)=f(an)+f(an)(an+1an)+12f(an)(an+1an)2+f(a_{n+1}) = f(a_n) + f'(a_n)(a_{n+1} - a_n) + \tfrac{1}{2} f''(a_n)(a_{n+1} - a_n)^2 + \dots

Первые два слагаемых сокращаются по построению an+1a_{n+1}, остаётся остаток порядка an+1anp2=f(an)/f(an)p2=f(an)p2|a_{n+1} - a_n|_p^2 = |f(a_n)/f'(a_n)|_p^2 = |f(a_n)|_p^2. То есть p-адическая «погрешность» квадратично уменьшается на каждом шаге.

Последовательность {an}\{a_n\} фундаментальна в Zp\mathbb{Z}_p (метрика полна), значит сходится к αZp\alpha \in \mathbb{Z}_p со свойством f(α)=0f(\alpha) = 0 и αa0(modp)\alpha \equiv a_0 \pmod p.

Пример: 2Z7\sqrt{2} \in \mathbb{Z}_7

Решим уравнение x22(mod7)x^2 \equiv 2 \pmod 7 и поднимем его до корня в Z7\mathbb{Z}_7.

Шаг 0. Перебираем a{0,1,,6}a \in \{0, 1, \dots, 6\}: 32=92(mod7)3^2 = 9 \equiv 2 \pmod 7 - корень. Берём a0=3a_0 = 3. Производная f(x)=2xf'(x) = 2x, f(3)=6≢0(mod7)f'(3) = 6 \not\equiv 0 \pmod 7 - гладкость есть. Лемма Гензеля применима.

Шаг 1. f(a0)=92=7f(a_0) = 9 - 2 = 7. Делим в Z7\mathbb{Z}_7: f(a0)/f(a0)=7/6f(a_0)/f'(a_0) = 7/6. Нужно найти обратный к 66 по модулю 72=497^2 = 49: 641=246=549+16 \cdot 41 = 246 = 5 \cdot 49 + 1, значит 6141(mod49)6^{-1} \equiv 41 \pmod{49}. Тогда

a1=3741(mod49)=3287(mod49)=3287+649=3287+294=10.a_1 = 3 - 7 \cdot 41 \pmod{49} = 3 - 287 \pmod{49} = 3 - 287 + 6 \cdot 49 = 3 - 287 + 294 = 10.

Проверка: a12=100=249+2a_1^2 = 100 = 2 \cdot 49 + 2, значит a122(mod49)a_1^2 \equiv 2 \pmod{49}. Идём дальше.

Шаг 2. f(a1)=1002=98=249f(a_1) = 100 - 2 = 98 = 2 \cdot 49. f(a1)=20f'(a_1) = 20. Обратный к 2020 по модулю 74=24017^4 = 2401 можно посчитать расширенным алгоритмом Евклида, но проще остаться в нужной точности: a2=a198/20(mod74)a_2 = a_1 - 98/20 \pmod{7^4}. По индукции a222(mod74)a_2^2 \equiv 2 \pmod{7^4}.

Численно a2=108a_2 = 108 и 1082=11664=42401+2060108^2 = 11664 = 4 \cdot 2401 + 2060, на самом деле тут проще задать a2a1(mod49)a_2 \equiv a_1 \pmod{49} и подобрать a2=10+49ka_2 = 10 + 49 k так, чтобы a222(mod343)a_2^2 \equiv 2 \pmod{343}. Получится k=2k = 2, a2=108a_2 = 108. Дальше - a3=108+343ka_3 = 108 + 343 \cdot k', и так далее.

В записи p-адического разложения α=3+17+272+\alpha = 3 + 1 \cdot 7 + 2 \cdot 7^2 + \dots - это и есть «2\sqrt{2}» в Z7\mathbb{Z}_7, второй корень - α-\alpha. В вещественных 2\sqrt{2} иррационально, в Z7\mathbb{Z}_7 - вполне себе p-адическое целое. Разные нормы - разные геометрии.

Когда лемма Гензеля не работает

Все три обязательные клетки:

  • f(a0)≢0(modp)f(a_0) \not\equiv 0 \pmod p - нет начального корня. Например, x22(mod5)x^2 \equiv 2 \pmod 5: квадраты в F5\mathbb{F}_5 - {0,1,4}\{0, 1, 4\}, двойки нет. 2\sqrt{2} в Z5\mathbb{Z}_5 не существует.
  • f(a0)0(modp)f'(a_0) \equiv 0 \pmod p - корень кратный, нет гладкости. Классический случай: x20(mod2)x^2 \equiv 0 \pmod 2 с a0=0a_0 = 0. Здесь f(0)=0f(0) = 0, f(0)=0f'(0) = 0 - лемма в классической форме молчит. Корни x2=0x^2 = 0 в Z2\mathbb{Z}_2 всё равно есть (само x=0x = 0), но единственность поднятия рушится.
  • fZp[x]f \notin \mathbb{Z}_p[x] - лемма требует p-адически целых коэффициентов. На дробях из QpZp\mathbb{Q}_p \setminus \mathbb{Z}_p нужна аккуратная переформулировка.

Есть усиленная (общая) форма Гензеля: если f(a0)p<f(a0)p2|f(a_0)|_p < |f'(a_0)|_p^2, корень поднимается без условия f(a0)≢0(modp)f'(a_0) \not\equiv 0 \pmod p. Условие читается как «ff в точке a0a_0 значительно меньше, чем квадрат производной» - этого хватает для квадратичной сходимости Ньютона. На практике общая форма - основной рабочий инструмент в арифметической геометрии: классическая версия слишком жёсткая в характеристике 2.

Геометрический смысл

Уравнение f(x)=0f(x) = 0 задаёт нульмерную схему X=SpecZ[x]/(f)X = \mathrm{Spec}\, \mathbb{Z}[x]/(f). Простое pp даёт редукцию Xˉ=XFp\bar X = X \otimes \mathbb{F}_p, а лемма Гензеля говорит, что гладкие точки Xˉ(Fp)\bar X(\mathbb{F}_p) единственным образом поднимаются до точек X(Zp)X(\mathbb{Z}_p).

В этой постановке лемма обобщается на произвольные гладкие схемы конечного типа над Zp\mathbb{Z}_p (или, шире, над любым полным локальным кольцом): множества X(Zp)X(\mathbb{Z}_p) и X(Fp)X(\mathbb{F}_p) совпадают как множества гладких точек. Поэтому для гладких многообразий счёт Fp\mathbb{F}_p-точек эквивалентен счёту Zp\mathbb{Z}_p-точек - без леммы Гензеля этот переход был бы нетривиален.

Метафора: $\mathbb{F}_p$ - это «тень» $\mathbb{Z}_p$ при проекции $\pmod p$. Лемма Гензеля - теорема о том, что у гладкой точки тени есть единственный «исходник», а у особой может быть несколько прообразов или ни одного.

Применения

  • Поиск корней многочленов в Qp\mathbb{Q}_p. Стандартный алгоритм: ищем корни по модулю pp перебором, проверяем гладкость, поднимаем Ньютоном до нужной точности. Скорость - логарифмическая по требуемой точности.
  • Локально-глобальные принципы. Принцип Хассе-Минковского для квадратичных форм решает задачи в Q\mathbb{Q} через одновременную разрешимость в каждом Qp\mathbb{Q}_p и в R\mathbb{R} - а внутри каждого Qp\mathbb{Q}_p работает Гензель. Сам переход «от глобального к локальному» формализуется через локализацию кольца по простому идеалу (p)(p).
  • Счёт точек схем. X(Fq)|X(\mathbb{F}_q)| для гладких XX через дзета-функции и формулу Лефшеца упирается в эквивалентность X(Zp)X(Fp)X(\mathbb{Z}_p) \to X(\mathbb{F}_p) - следствие леммы.
  • Криптография. Алгоритм Зассенхауса факторизации многочленов в Z[x]\mathbb{Z}[x]: факторизуем по модулю pp (быстро, конечное поле), поднимаем Гензелем до факторизации по модулю pNp^N, дальше восстанавливаем целые делители.
  • Якобиевы матрицы и многомерное обобщение. Многомерная лемма Гензеля: для системы F:ZpnZpnF: \mathbb{Z}_p^n \to \mathbb{Z}_p^n условие detJF(a0)≢0(modp)\det J_F(a_0) \not\equiv 0 \pmod p заменяет f(a0)≢0f'(a_0) \not\equiv 0, итерация - an+1=anJF(an)1F(an)a_{n+1} = a_n - J_F(a_n)^{-1} F(a_n).

Частые ошибки

  • Применяют лемму к p=2p = 2 автоматически. В характеристике 2 много корней кратные («дискриминант чётный»), и классическая форма требует усиленной. Простой случай - x2+1x^2 + 1 при p=2p = 2: f(1)=20(mod2)f(1) = 2 \equiv 0 \pmod 2, но f(1)=20(mod2)f'(1) = 2 \equiv 0 \pmod 2 - лемма Гензеля молчит, и корень действительно не поднимается в Z2\mathbb{Z}_2.
  • Считают, что лемма гарантирует корень в Q\mathbb{Q} или Z\mathbb{Z}. Нет, только в Zp\mathbb{Z}_p. У многочлена x22x^2 - 2 есть корень в Z7\mathbb{Z}_7, но не в Q\mathbb{Q} - это разные кольца с разными нормами.
  • Путают условие f(a0)0(modp)f(a_0) \equiv 0 \pmod p и f(a0)0(modp2)f(a_0) \equiv 0 \pmod{p^2}. Классике хватает первого, но для быстрой сходимости часто стартуют со «второго приближения». На квадратичную сходимость это не влияет, только сдвигает счётчик шагов.
  • Применяют только к одномерным многочленам. Лемма работает для систем - нужно лишь следить за невырожденностью якобиана, а не отдельной производной.

FAQ

Чем лемма Гензеля отличается от обычного метода Ньютона? Сама итерация an+1=anf(an)/f(an)a_{n+1} = a_n - f(a_n)/f'(a_n) совпадает, разница - в норме. Обычный Ньютон сходится в вещественных по архимедовой норме и требует выпуклости / достаточно близкого старта. P-адический Ньютон сходится по неархимедовой норме автоматически, как только начальное приближение лежит в окрестности гладкого корня по модулю pp. Сходимость гарантирована теоремой, а не численным экспериментом.

Что такое Zp\mathbb{Z}_p и зачем оно нужно? Zp\mathbb{Z}_p - пополнение целых чисел по p-адической норме. Элементы - формальные ряды i0cipi\sum_{i \ge 0} c_i p^i с ci{0,,p1}c_i \in \{0, \dots, p-1\}. Это кольцо позволяет решать диофантовы задачи «локально в простом pp» - отдельно от вещественных и других простых, - а потом собирать ответы через локально-глобальные принципы вроде квадратичного закона взаимности.

Существует ли многомерная лемма Гензеля? Да. Формулировка: пусть F:ZpnZpnF: \mathbb{Z}_p^n \to \mathbb{Z}_p^n - система p-адически аналитических функций, F(a0)0(modp)F(a_0) \equiv 0 \pmod p, якобиан detJF(a0)≢0(modp)\det J_F(a_0) \not\equiv 0 \pmod p. Тогда существует единственный αZpn\alpha \in \mathbb{Z}_p^n с F(α)=0F(\alpha) = 0 и αa0(modp)\alpha \equiv a_0 \pmod p. Доказательство - то же самое: p-адический Ньютон на векторах с матричной обратной к якобиану.

Коротко

Лемма Гензеля: если многочлен fZp[x]f \in \mathbb{Z}_p[x] имеет корень a0(modp)a_0 \pmod p и f(a0)≢0(modp)f'(a_0) \not\equiv 0 \pmod p, то существует единственный αZp\alpha \in \mathbb{Z}_p с f(α)=0f(\alpha) = 0 и αa0(modp)\alpha \equiv a_0 \pmod p. Алгоритм поднятия - p-адический метод Ньютона an+1=anf(an)/f(an)a_{n+1} = a_n - f(a_n)/f'(a_n), сходящийся квадратично по p-адической норме. Геометрически: гладкие точки редукции Xˉ(Fp)\bar X(\mathbb{F}_p) однозначно поднимаются до X(Zp)X(\mathbb{Z}_p). Применения - от корней многочленов в Qp\mathbb{Q}_p и алгоритма Зассенхауса до счёта точек гладких схем и принципа Хассе-Минковского.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также