Первая часть шестнадцатой проблемы Гильберта: перебираем схемы степени 8 с ограничениями

В этой статье я хочу рассказать об одной из многих тысяч нерешённых математических проблем.
Речь пойдёт о Шестнадцатой проблеме Гильберта.
Шестнадцатая проблема Ги́льберта — одна из 23 задач, которые Давид Гильберт предложил 8 августа 1900 года на II Международном конгрессе математиков.
Исходно называлась «Проблема топологии алгебраических кривых и поверхностей». Впоследствии фактически разделилась на две похожие проблемы в разных областях математики:
исследование взаимного расположения овалов вещественных алгебраических кривых степени n (и аналогичный вопрос для алгебраических поверхностей);
получение верхней оценки на число предельных циклов полиномиального векторного поля степени n (и исследование их взаимного расположения).
Источник:https://ru.wikipedia.org/wiki/Шестнадцатая_проблема_Гильберта
С тех пор над задачей работали многие выдающиеся учёные. В этой статье я остановлюсь только на первой части. Для начала введём определения, чтобы формулировка была понятной широкой аудитории:
Овал в 16 проблеме Гильберта — это замкнутая гладкая кривая на плоскости, топологически эквивалентная окружности. Не имеет самопересечений, не имеет концов. Овалы могут быть разных форм и размеров. Если один овал лежит строго внутри другого, такая конструкция называется вложенным овалом. Ниже — наглядное изображение:

Алгебраическая кривая, или плоская алгебраическая кривая, — это, в простейшем случае, множество нулей многочлена двух переменных. Степенью, или порядком, алгебраической кривой называется степень этого многочлена.
Источник: https://ru.wikipedia.org/wiki/Алгебраическая_кривая
Алгебраическая кривая называется вещественной, если все коэффициенты многочлена — действительные числа.
Алгебраическая кривая называется неособой (или гладкой), если в любой её точке градиент не обращается в ноль.
Если это условие нарушено, появляются особые точки:
самопересечение — кривая проходит через одну точку дважды (как лемниската, «восьмёрка»)
куспид (точка возврата) — кривая резко разворачивается назад, образуя остриё
двойная точка — кривая «слипается» сама с собой
Алгебраическая кривая называется неприводимой над вещественными числами, если соответствующий ей многочлен нельзя представить как произведение двух многочленов меньших степеней с вещественными коэффициентами. Следует добавить, что Гильберт в своей формулировке 16 проблемы неприводимость над R не требует.
Ниже — поясняющая картинка:

Для классификации взаимного расположения овалов на плоскости математиками Рохлиным [5] и Виро [3] была введена следующая нотация (линейная запись деревьев вложенности):
Символ | Что значит |
|---|---|
⟨0⟩ | Пустая схема — овалов нет (для чётной степени) |
⟨J⟩ | Одна псевдопрямая — незамкнутая ветвь, уходящая в бесконечность (для нечётной степени) |
⟨1⟩ | Один пустой овал (не содержащий других овалов) |
⟨k⟩ | k пустых овалов, лежащих отдельно |
⟨1⟨X⟩⟩ | Один овал, внутри которого расположена схема X |
⟨k⟨X⟩⟩ | k овалов, каждый из которых содержит схему X |
⟨X⊔Y⟩ | Схемы X и Y лежат раздельно (не вложены друг в друга) |
Таблица 1. Нотация Виро-Рохлина.
Разберём несколько примеров схем.
⟨1⟩ — один овал.
⟨1⟨1⟩⟩ — один овал, внутри которого ещё один овал.
⟨3⟩ — три отдельных овала, ни один не вложен в другой.
⟨1⟨2⟩⊔8⟩ — один овал, внутри которого два овала, плюс восемь отдельных овалов снаружи. Всего 11 овалов.
⟨J⊔1⊔2⟨1⟩⟩— псевдопрямая, один отдельный овал, и два овала, каждый из которых содержит по одному овалу внутри. Это схема нечётной степени (есть J).
⟨J⊔1⟨1⊔1⟨4⟩⟩⟩ — псевдопрямая, плюс один овал, внутри которого: один пустой овал и ещё один овал, содержащий 4 овала внутри.
Полный разбор нотации Виро-Рохлина есть в источнике:https://theses.hal.science/tel-04737045/document
Наглядно продемонстрируем различные типы схем:

После введения всех обозначений перейдём к уже известным систематическим результатам.
В 1876 году немецким математиком Акселем Гарнаком была сформулирована и доказана ключевая теорема:
Теорема Гарнака о кривых — утверждение алгебраической геометрии, дающее возможное число связных компонент, которое может иметь алгебраическая кривая в терминах степени кривой — для любой алгебраической кривой степени m на вещественной проективной плоскости число компонент c ограничено выражением:
Источник: https://ru.wikipedia.org/wiki/Теорема_Гарнака_о_кривых
Причём для любого целого c в этом диапазоне существует неособая кривая степени m, имеющая ровно c компонент.
Классификация по степеням:
Для степеней 1-5 полная классификация была известна ещё до выступления Гильберта- все возможные варианты очень легко перебирались вручную и рассуждения были тривиальными
Советский математик Дмитрий Гудков в 1969 году завершил классификацию кривых степени 6 — 56 вещественных схем. Среди них есть неожиданные: схема ⟨1⊔1⟨9⟩⟩ — один овал снаружи и один овал, содержащий внутри себя девять — Гильберт в 1900 году считал невозможной. Оказалось, что она реализуется. Эти 56 топологических типов распадаются на 64 класса жёсткой изотопии. Статью с полной систематизацией секстик можно найти по ссылке:https://arxiv.org/pdf/1703.01660
В ней авторы для каждого топологического типа и для каждого класса изотопии привели конкретные формулы полиномов в явном виде.
Олег Виро в 1980 году опубликовал полную классификацию кривых степени 7 — 121 вещественная схема (Источник [3] О. Я. Виро. Кривые степени 7 и склейка Виро // Успехи матем. наук. — 1980. — Т. 35, вып. 1. — С. 93–96.). Для этой работы Виро изобрёл новый метод — склейку (patchworking), позже ставшую основой тропической геометрии. Также он в другой своей статье (источник [4] О. Я. Виро. Плоские вещественные кривые степеней 7 и 8: новые запреты // Изв. АН СССР. Сер. матем. — 1983. — Т. 47, № 5. — С. 1135–1150.) вывел ключевые ограничения на кривые степени 8 и сформулировал новые запреты. Но полного списка схем, удовлетворяющего этим ограничениям, не привёл.
Позднее для кривых степени 7 (септики) построены 4 триангуляции, удовлетворяющие всем схемам, но таблицы явных полиномов приведены не были.(источник [7]: Z. Geiselmann, M. Joswig, L. Kastner et al. Limits of combinatorial patchworking // arXiv:2602.06888 . — 2026.) Там же было доказано, что существуют схемы степени 8, которые невозможно реализовать склейкой Виро. Такие схемы требуют принципиально нового подхода.
В недавнем препринте на arXiv от 2026 года (источник [9]:https://arxiv.org/pdf/2604.09221) группа из восьми авторов построила как минимум 2359 реализуемых схем T-кривых (позднее оценка увеличена до 2367 схем (Это наибольшая известная опубликованная нижняя оценка) в статье [7]). Авторы [7] прямо пишут, что вне максимального случая схемы систематически не изучались.
Для степеней, больших 8, всё намного сложнее и полных систематических результатов подавно нет.
В этой статье мы не будем изобретать каких-то новых методов — это крайне сложно даже для профессионалов. Вместо этого мы реализуем простой алгоритм полного перебора всех схем степени 8, с запретами из статьи Олега Виро 1983 года (Источник:https://www.researchgate.net/publication/230998196_REAL_PLANE_CURVES_OF_DEGREES_7_AND_8_NEW_PROHIBITIONS), рассортируем схемы по количеству овалов и возможным типам и получим их точное количество и явный список. Это задача по силам простому любителю без аффилиации. Она очень важна для полной систематизации и её решение по сути даёт верхнюю оценку числа T-кривых.
Описание моего алгоритма:
Список ограничений 2.2А-2.2F взят из оригинальной статьи Олега Виро 1983 года.
Обозначим за N общее число овалов. Для степени 8 по теореме Гарнака N может принимать значения от 0 до 22.
Семь типов схем (из ограничения 2.2.А)
Т1: ⟨α⟩ — α внешних овалов, нет вложений
Т2: ⟨α⊔1⟨β⟩⟩— один овал содержит β овалов
Т3: ⟨α⊔1⟨β⟩⊔1⟨γ⟩⟩ — два внешних овала с вложениями, β≤γ
Т4: ⟨α⊔1⟨β⟩⊔1⟨γ⟩⊔1⟨δ⟩⟩— три внешних овала с вложениями, β≤γ≤δ
Т5: ⟨4⟨1⟩⟩ — фиксированная схема, только при N=8
Т6: ⟨α⊔1⟨β⊔1⟨γ⟩⟩⟩— вложенное гнездо
Т7: ⟨1⟨1⟨1⟨1⟩⟩⟩⟩ — цепочка из четырёх вложенных овалов, только при N=4
Алгоритм перечисления:
Для каждого N=0,…,22 и каждого типа Ti i=1,…,7 генерируются все схемы, формально удовлетворяющие ограничению 2.2.А (следствие теоремы Безу — семь структурных типов).
Для N=22 и N=21 применяется фильтр 2.2.С (конгруэнция: p−n≡0(mod8) для N=22, p−n≡±1(mod8) для N=21).
Для N=22 применяется дополнительный фильтр 2.2.Е (все β,γ,δ нечётны в схемах типа Т4).
Для N=20 применяется фильтр 2.2.D (запрет схемы ⟨20⟩) и 2.2.F (в типе Т4 при β+γ+δ≡0(mod4) — два нечётных и одно чётное среди β,γ,δ).
Проверяется отсутствие дубликатов: внутри каждого типа, между типами для одного N, и между разными N.
Результаты сверяются с известными контрольными точками из литературы (104 M-схемы по Виро и Оревкову; 40 отброшенных 2.2.Е; 9 отброшенных 2.2.F).
Выводится полный список схем для каждого N, разделённый по типам и оформленный по шаблону, а также сводная таблица.
Например для N=3 результат работы алгоритма выглядит таким образом:
—Тип 1: ⟨α⟩ — α изолированных овалов — Формула подсчёта: α = 3
⟨3⟩
— Тип 2: ⟨α ⊔ 1⟨β⟩⟩ — α изолированных + 1 гнездо (1 внешний + β внутренних) — Формула подсчёта: α + 1 + β = 3, β ≥ 1
⟨1⟨2⟩⟩
⟨1 ⊔ 1⟨1⟩⟩
— Тип 3: ⟨α ⊔ 1⟨β⟩ ⊔ 1⟨γ⟩⟩ — α изолированных + 2 гнезда — Формула подсчёта: α + β + γ + 2 = 3, 1 ≤ β ≤ γ
(нет схем для данного n)
— Тип 4: ⟨α ⊔ 1⟨β⟩ ⊔ 1⟨γ⟩ ⊔ 1⟨δ⟩⟩ — α изолированных + 3 гнезда — Формула подсчёта: α + β + γ + δ + 3 = 3, 1 ≤ β ≤ γ ≤ δ
(нет схем для данного n)
— Тип 5: ⟨4⟨1⟩⟩ — 4 гнезда по 1 овалу (только для n=8) — Формула подсчёта: всегда 8 овалов
(нет схем для данного n)
— Тип 6: ⟨α ⊔ 1⟨β ⊔ 1⟨γ⟩⟩⟩ — α изолированных + 1 гнездо с вложенностью — Формула подсчёта: α + β + γ + 2 = 3, γ ≥ 1, β ≥ 0
⟨1⟨1⟨1⟩⟩⟩
— Тип 7: ⟨1⟨1⟨1⟨1⟩⟩⟩⟩ — 4 вложенных овала (только для n=4) — Формула подсчёта: всегда 4 овала
(нет схем для данного n)
============================================================ Всего схем: 4
После этого был написан скрипт на Python, реализующий полный перебор и выводящий полный список. Сам скрипт, полный список схем и ранжирование по количеству овалов выложены в публичном репозитории на GitVerse по ссылке: https://gitverse.ru/mshshukin2005/real-schemes-degree8
Результат перебора схем дал верхнюю оценку в 2926 формально допустимые схемы, причём число 104 для N=22 совпало со статьёй Олега Виро, что является серьёзным аргументом в пользу корректности алгоритма и правильности общего числа схем.
Важно! При переборе я учитывал только ограничения 2.2A- 2.2F и никакие больше. Я не вводил каких-то своих новых запретов и не использовал все возможные ограничения из работ более современных авторов. Поэтому мой результат — только верхняя оценка.
Вывод:
Таким образом, моя работа является чисто техническим вкладом. Она не претендует на серьёзную научную значимость. Все результаты, на которые она опиралась, известны ещё с 1983 года.
Сам алгоритм перебора довольно тривиален, понятен даже неспециалистам по 16 проблеме Гильберта и прост в исполнении. Его можно подать как учебную задачу по программированию вложенных деревьев и реализовать на любом языке. Все дополнительные подсчёты являются чисто арифметической или комбинаторной задачей.
Автор не имеет специального физико-математического образования и не является профессиональным математиком, а также не претендует на то, что этот результат уже был кем-то независимо получен, но в случае отсутствия более ранних публикаций перебора схем степени 8 фиксирует своё первенство в этом. Данная статья писалась в спешке, поэтому прошу прощения за корявое оформление библиографии и мелкие неточности.
Следующий шаг, который следует проделать для полной систематизации кривых 8 степени — это для каждой схемы из полученного списка либо построить явный полином, либо доказать, что она нереализуема. Это уже частично сделано в литературе (например, в работе [7]), но полной систематизации пока не получено.
Список литературы
[1] Д. Гильберт. Математические проблемы // Труды Международного конгресса математиков. — М.: Наука, 1901. — С. 253–297.
[2] Д. А. Гудков. Топология вещественных плоских алгебраических кривых шестой степени // Докл. АН СССР. — 1969. — Т. 188, № 1. — С. 27–30.
[3] О. Я. Виро. Кривые степени 7 и склейка Виро // Успехи матем. наук. — 1980. — Т. 35, вып. 1. — С. 93–96.
[4] О. Я. Виро. Плоские вещественные кривые степеней 7 и 8: новые запреты // Изв. АН СССР. Сер. матем. — 1983. — Т. 47, № 5. — С. 1135–1150.
[5] В. А. Рохлин. Сравнения по модулю 16 в 16-й проблеме Гильберта // Успехи матем. наук. — 1978. — Т. 33, вып. 5. — С. 77–89.
[6] S. Yu. Orevkov. Flexible M-curves of degree 8 // Geom. Funct. Anal. — 2002. — Vol. 12, no. 4. — P. 723–755.
[7] Z. Geiselmann, M. Joswig, L. Kastner et al. Limits of combinatorial patchworking // arXiv:2602.06888 [math.AG]. — 2026.
[8] OEIS Foundation Inc. Entry A001399: Number of partitions of n into at most 3 parts [Электронный ресурс] // The On-Line Encyclopedia of Integer Sequences.
[9] Z. Geiselmann, M. Joswig, L. Kastner et al. Fast isotopy computation for T-curves // arXiv:2604.09221 [math.AG]. — 2026. https://arxiv.org/pdf/2604.09221
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.