The Jerusalem PostIsraeli extremist settlers use sheep farms, intimidation to expand West Bank control, CBS reportsESPNBills, Josh Allen outlast Rams in overtime on MNFESPN DeportesAllen, el héroe en un espectacular juego en Sofi StadiumBollywood HungamaSidharth Malhotra suffers leg injury, shares photo with a witty note!Daily MaverickSECOND CHANCE: Former Springbok coach Jake White will lead ‘best-prepared’ Fiji to RWC 2027RTP Desporto12h30 Ambiente difícil em Lens, Porto complicado diz PellegriniRTL BoulevardMan (27) stichtte bewust brand tijdens Pride en verheerlijkte ISAntara NewsIndonesia seeks land certainty to accelerate 3 million homes programVariety‘Death in Paradise’ Gets Its First International Adaptation in Croatia, Promises ‘Murder Mystery, Humor, Warmth and a Strong Sense of Place’ (EXCLUSIVE)ZDF heuteEntdecken Sie das ZDF-Nachrichtenstudio
The Daily Newsstand · Free, Always
Tuesday, October 13, 2026

Осень. Срочно дайте телефон Перельмана — я доказал гипотезу Римана

Translate

История о многомерных мирах, лестнице простых и том, что получилось после проверки собственного восторга.

Спойлер: телефон пока не понадобится. Доказательства гипотезы Римана здесь нет. Зато есть геометрическая модель, точный счётчик простых и алгоритм, который в воспроизводимом сравнении обогнал конкретное сегментное решето на Python. Расскажу, как одно привело к другому.

Спойлер 2: во второй части мы всё-таки кое-что доказали — небольшой, конкретный результат о следующем окне. До гипотезы Римана ещё далеко. Но всё же осень, дайте хоть email.

Спойлер 3: ИИ использовался — Astra Ultra. У него к алгебре нет ненависти, поэтому дальше не «я», а «мы».

Часть 1. От осей простых к точному счётчику

В привычной записи простые числа стоят на одной прямой: 2, 3, 5, 7, 11. Между ними возникают промежутки, размер которых меняется без очевидного ритма. Мне захотелось придать этой прямой глубину: представить простые направлениями пространства, а составные числа — адресами, которые возникают при движении по этим направлениям. За несколько дней вместе с ИИ мы превратили картинку в рисунки, программы и точные правила. Часть идей пришлось упростить, а часть — заново найти в собственных рассуждениях.

Координата по каждой простой оси — показатель степени соответствующего множителя. Шаг по оси 3 означает умножение на 3, по оси 5 — умножение на 5. В рисунках ниже ось 2 уже учтена: мы рассматриваем нечётные адреса. Новые слои произведений по следующей оси мы между собой называли блинами.

Рисунок 1

Рисунок 1

Рисунок 1. Число получает адрес. Слева — шаги по осям 3 и 5, справа — новые слои по оси 7. Это проекция первых направлений; другие простые сохраняют собственные оси. [5, 6]

Два шага по направлению 3 и один по направлению 5 приводят к 45. К 15 можно прийти через 3 \times 5 или через 5 \times 3. Порядок движения различается, адрес остаётся одним. Позже это простое наблюдение понадобилось нам для учёта пересечений.

Как тени оставили место для следующей опоры

Произведения оставляли на нечётной числовой прямой следы: 9, 15, 21, 25. Мы назвали их тенями. Там, куда попадала тень, находилось составное число. Несколько теней могли закрыть один адрес; считать его при этом нужно было только один раз.

Очевидно же: простое — это пустота между тенями. Но только если мы построили все необходимые тени. При неполном покрытии незакрашенное место может оказаться составным, до которого проверка ещё не добралась.

При простой опоре B мир строится из произведений qm: q — нечётное простое, m — нечётное целое, и оба множителя находятся между 3 и . Новый участок этого мира — нечётные адреса из окна (B,G(B)], где

G(B)=\min(B^2,\;3B+4).

В этой границе покрытие мира полно: каждое составное закрыто, поэтому оставшаяся пустота действительно означает простое число. Именно полнота покрытия превращает рисунок в правило вычисления. [5, теорема 1]

Рисунок 2

Рисунок 2

Рисунок 2. Мир 7 можно проверить глазами: G(7)=25. Четыре из девяти новых нечётных адресов закрыты, пять остаются пустотами. Крайняя пустота 23 становится следующей опорой. Справа от неё стоит только составное 25: закрытый хвост известен точно. [6]

Так появился способ идти вспышками. Следующей опорой мы выбирали крайнюю пустоту — наибольшее простое, не превосходящее G(B). Первые переходы получились такими: 3 \to 7 \to 23 \to 73. Это крупные шаги между опорами, а промежуточные простые сохраняются в счётчике. Строить отдельный вычислительный мир на каждом из них для такого маршрута не требуется.

Память вместо повторной работы

«Сколько прошлого действительно нужно знать, чтобы точно сделать следующий шаг?»

Этот вопрос постепенно стал главным. Сначала программа несла за собой сложное описание пройденного пути. Она переносила комплексные моменты — числовые характеристики набора точек старого окна, — а затем вычитала точки, вышедшие за его границу. После прыжка по крайней пустоте весь прежний локальный список оставался слева. Получалось, что мы сначала переносили груз, а потом сразу выгружали его.

Мы оставили сведения, которые продолжали работать: периоды теней, найденные адреса и свидетельство того, что участок справа от последней пустоты закрыт. Для нового короткого окна стали достраивать только необходимую часть базиса. Техническая поправка по трём полосам и их пересечениям учитывала приращение за переход; её описание сохранено в материалах метода. Комплексные моменты завершённого окна можно было отбросить, сохранив нужные целые адреса. [6, 7]

Затем прозвучал ещё более приземлённый вопрос: «Хранить эти адреса мы можем?» Проверка показала неожиданную вещь. Адреса хранились, однако программа не всегда обращалась к уже решённым окнам. Часть известных чисел снова проходила подготовку и извлечение. В одном профиле мы нашли четырнадцать таких повторов в четырёх вспомогательных окнах. Стало понятно, почему красивое преобразование само по себе ещё не делает вычисление быстрым. [7]

Следующие изменения были вполне материальными: прямой доступ к готовому ответу, передача уже подготовленного описания окна, отдельное расширение малого базиса. Универсальный запрос к собственной базе перестал быть обязательной частью каждого шага. Результат проверяли секундомером: упрощение интерфейса не во всяком опыте сокращало полное время расчёта.

Рядом с числами вырос мир правил

База постепенно стала хранить не только ответ, но и основание ответа: на каком участке покрытие полно, какой делитель закрыл адрес, где заканчивается проверенное окно. Так возник мир уточняющих правил. Правило описывало слой произведений, его наложение на другие слои или уже известную густоту теней. То, что в начале было рисунком, становилось памятью о выполненной работе.

Поглощение позволило ещё одно упрощение. Если все нужные адреса тени в данном окне уже закрыты другими тенями, её можно не строить отдельно. Мы применяли сохранённые закономерности к новому окну и готовили только необходимый остаток. Вместо слежения за всеми возвращениями слоёв проверяли, что действительно затронуто сейчас.

Здесь важно сохранять условия сокращения. Ненужность тени в одном окне не означает её исчезновения из арифметики. Для следующего шага достаточно состояния, которое точно описывает нужное покрытие и применимые правила; полный дневник прежних действий можно не переносить.

Что показал секундомер

Некоторые ранние варианты выглядели изящнее, чем работали. Короткое окно встречалось с длинным списком периодов, большая часть которых вообще в него не попадала. Программа тратила время на выяснение отсутствия работы. В конце концов постановка вернула нас к простой процедуре: идти по адресам справа налево, закрывать составное при первом найденном делителе и останавливаться на первом доказанном простом.

Именно эта кандидатная ветка, CandidatePrime, дала измеренный выигрыш. В её быстром ядре уже не было восстановления адресов из комплексных моментов. Сохранялся малый базис простых делителей, и программа расширяла его по необходимости. Геометрия помогла выбрать нужную работу, а быстрое выполнение оказалось гораздо проще первых исследовательских схем. [5, §4.1; 6]

Метод

Первый опыт

Повтор

CandidatePrime

263,506 мс

294,488 мс

Python сегментное решето

713,200 мс

826,170 мс

MR12

2,035 мс

2,219 мс

Таблица 1. Медианы времени полного маршрута по 12 прогонам каждого метода в каждой из двух серий. Задача — найти максимум и подтвердить закрытый суффикс в коротких окнах. Сохранённые измерения от 10 октября 2026 года. [5, 6]

Для сравнения скорости внутри каждого из 12 парных прогонов брали отношение времени решета ко времени CandidatePrime, затем находили медиану этих отношений. Получилось примерно 2,79 в первой серии и 2,76 в повторной. Это медианы парных отношений; они не обязаны совпадать с отношением двух медиан времени из таблицы.

Все методы самостоятельно проходили один маршрут: 28 вспышек и 31 окно. Создание и расширение базиса входили в таймер, готовые максимумы заранее не выдавались. В каждой серии совпали все 1 116 ответов окон: 3 метода × 12 прогонов × 31 окно.

Контрольный тест Миллера — Рабина с фиксированными основаниями, точный в выбранном диапазоне n<2^{64}, оказался ещё примерно в 144 раза быстрее CandidatePrime. Здесь использован тот же показатель: медиана 12 парных отношений времени, около 144,49 в первой серии и 143,80 в повторной. В таблице эта ветка обозначена MR12.

Так что выигрыш имеет вполне определённый смысл: поиск края короткого окна обогнал включённую в сравнение реализацию сегментного решета на Python. Этот опыт не сравнивал метод со всеми решётами на C/C++ и не проверял скорость полного перечисления простых.

Измерения отделили пользу хранения от красивого объяснения ускорения. В этом возрастающем маршруте окна не повторялись, поэтому кэш готовых ответов не давал повторных попаданий. Между шагами использовался уже построенный базис. Такие подробности мешают громкому заголовку, зато позволяют воспроизвести именно наш результат.

Опорные волны и алфавит растущих миров

У вспышек обнаружился свой ритм: следующая опора часто оказывалась недалеко от утроенной предыдущей. Часть этого масштаба заложена в правиле построения: при B \ge 5 граница мира равна 3B+4. Интерес представляли нерегулярные отступления крайнего простого от этой границы. Мы начали с последовательности от 3, затем проверили аналогичные семейства от 5, 7 и других простых.

Опорам дали буквенные имена. Сначала обозначения заслонили начало истории: казалось, будто ряд начинается где-то у миллионов. Пришлось вернуться к 3, 7, 23, 73 и выстроить общий алфавит до AA и дальше. График до AM показал две картины сразу: почти прямой рост в логарифмическом масштабе и неровные смещения под ним. Простое чередование отдельных поправок не выдерживало всего ряда. [8]

Рисунок 3

Рисунок 3

Рисунок 3. Опоры от A до AM. Сверху виден общий рост, снизу — реальные смещения. Гладкость крупного движения сосуществует с нерегулярностью небольших поправок. Изображение получено из сохранённого SVG без изменения данных. [8]

Затем мы стали рассматривать наложение волн. Новая ось уменьшала некоторые старые вклады и одновременно порождала смешанные пересечения. Мы проверили, не потерял ли их счётчик. Оказалось, полная программа уже учитывала эти части, а упрощённое объяснение — нет. Пришлось исправить объяснение; ещё одна поправка в коде была бы лишней.

Как умножение превратилось в поворот

На комплексной плоскости мы изображали адрес n точкой z_s(n)=n^{-s} при фиксированном комплексном параметре s. У числа появлялись длина и направление. Умножение адреса на один и тот же простой множитель означало одинаковый поворот и изменение масштаба. Так целый набор адресов можно было переносить одним законом, а рисунки на числовой прямой связывала логарифмическая спираль.

Рисунок 4

Рисунок 4

Рисунок 4. Связь шагов 7 \to 23 \to 73. Пустоты 11, 13, 17, 19 и 23, найденные на первом участке, после умножения на 3 дают тени на следующем. Рисунок сохраняет арифметику адресов и единый закон поворота с масштабированием. [8]

Здесь стало особенно наглядным наследование. После роста мира проверенный старый участок не менялся: составное сохраняло свидетельство составности, а простое не могло вдруг стать произведением. Сохранялись и веса, назначенные этим адресам. Это удалось сформулировать и доказать точно. [5, теорема 2]

Позднее мы перестали привязывать саму геометрию к прыжкам. Вспышки оставались удобным способом расчёта, а числовая ось и её комплексное изображение были общими для всех миров. Можно двигать границу непрерывно и отмечать рождения на каждом простом. При этом адресная спираль и сумма всех пройденных векторов — разные изображения: первая показывает расположение, вторая ещё и накопление.

Откуда взялось число 3P − 82

В какой-то момент захотелось проверить, насколько далеко можно унести небольшой набор правил. Для опыта мы взяли огромное простое P=2^{136\,279\,841}-1. Его десятичная запись содержит более сорока одного миллиона цифр. Строить весь мир около такого числа перебором было немыслимо. Но узкую полоску у его границы можно исследовать по точным остаткам от деления. [6]

Мы начали справа, от 3P+4, и шли по нечётным адресам с шагом два. Первые сорок три позиции удалось закрыть конкретными делителями. Следующий адрес оказался равен 3P+4-86=3P-82. Такое смещение возникло из последовательности проверок; ради красивой формулы его никто не выбирал.

Во всём исследованном окне было 1 500 адресов. Простые делители до миллиона закрыли 1 381 из них; 119 остались неразрешёнными. Среди них находился и 3P-82. Для него мы не нашли малого делителя, но полного доказательства простоты не получили. Результатом опыта стал кандидат с прозрачной историей появления.

Удалось доказать и отдельный результат обрезки: в этих полутора тысячах адресов следы всех старых осей до миллиона поглощались более поздними. Мы полностью выделили малые простые множители каждого адреса со всеми их степенями; эта часть занимала не больше восьмидесяти бит. Наличие заменяющих поздних осей удалось удостоверить, не вычисляя сами эти делители. Такой сертификат сокращал описание покрытия, но не разрешал вопрос о простоте оставшихся 119 кандидатов. [6]

Ограничения среды были конкретными: процессорная квота, эквивалентная восьми CPU, 8 ГиБ памяти, без доступного GPU. Сравнения скорости выполнялись на одном закреплённом логическом ядре Intel Xeon Platinum 8573C. Полное огромное P даже не требовалось создавать в памяти: расчёт использовал модульные степени. Сама двоичная запись заняла бы около 16,25 МиБ. Главный барьер заключался в объёме проверки, а не в хранении одной длинной записи.

Этот опыт показал, что далёкий участок можно исследовать по ограниченному набору сведений и получать строгие локальные ответы. Но отсутствие малого делителя ещё не делает адрес сертифицированной пустотой. Приходилось следить за тем, какую именно часть огромного мира освещает наш небольшой вычислительный фонарь.

Точная арифметика позволила заглянуть удивительно далеко. Одновременно выяснилось, какие вопросы не становятся дешёвыми только оттого, что их удаётся записать коротко.

Рябь между золотыми линиями

Когда пустоты начали складываться в общий счёт, внимание перешло к отклонению. Каждому простому мы назначили логарифмический вес \ln q. Через \theta(x) обозначим сумму этих весов по всем простым q\le x, включая 2, а через r=\lfloor\sqrt N\rfloor — движущуюся нижнюю границу. Исходная глобальная рябь в сохранённых расчётах определялась так:

R(N)=\theta(N)-\theta(r)-(N-r).

Это взвешенный счёт простых на участке (r,N] за вычетом длины участка.

Чтобы сравнивать отклонения при разных N, мы делили рябь на растущий масштаб:

\rho(N)=\frac{R(N)}{\sqrt N\,(\ln N)^2}.

Далее «нормированная рябь» означает именно \rho(N). Золотые линии на рисунке показывают выбранный коридор |\rho(N)|\le C; его поведение за пределами рассчитанного диапазона остаётся отдельным вопросом.

Рисунок 5

Рисунок 5

Рисунок 5. Те самые золотые линии. Сверху коридор расширяется вместе с масштабом, снизу после нормировки его границы горизонтальны. Проверены целые от 100 до миллиона; C=0{,}1 — выбранный ориентир рисунка. Продолжение за пределами расчёта выделено отдельно. [9]

На картинке колебания после нормировки казались прижатыми к нулю. Очень хотелось вывести из геометрии запрет на выход за золотые линии. Мы рассматривали крайние мыслимые миры: сплошное покрытие, одну пустоту, одни пустоты. Они помогали поставить вопрос о количестве простых, но ещё не давали нужной оценки.

Здесь постоянно приходилось различать три вещи: наследование уже проверенных адресов, поведение кривой на рассчитанном отрезке и общую границу для всех будущих . Первое можно доказать из устройства покрытия. Второе видно на графике. Третье требует отдельного доказательства; продление линии на рисунке его не заменяет.

Как мы снимали с ряби известную часть

Следующая идея была почти физической: если часть колебания имеет понятное происхождение, можно ли её снять? Мы искали связь остатков с опорными волнами, обсуждали сглаживание лестницы и пробовали отделить известный вклад ступенек от более крупного движения.

Рисунок 6

Рисунок 6

Рисунок 6. Выравнивание без подгонки по графику. Поправка вычисляется из малых простых и их степеней. На целых от 100 до миллиона среднеквадратичное значение нормированной ряби (RMS) уменьшилось в 5,11 раза. Внизу показано изменение комплексной суммы весов; это другой объект, чем адресная спираль рисунка 4. [9]

Получилась точная поправка, которая переводила исходную взвешенную рябь в классическую разность \psi(N)-N. Функция \psi учитывает простые и все их степени: каждая степень q^k\le N добавляет вес . После поправки мы использовали ту же нормировку:

\rho_{\mathrm{corr}}(N)=\frac{\psi(N)-N}{\sqrt N\,(\ln N)^2}.

Так из исходного отклонения выделился вклад, который мы уже умели вычислять.

RMS здесь — корень из среднего квадрата нормированной величины относительно нуля. Его считали с равными весами по всем 999 901 целым от 100 до 1 000 000. Значение уменьшилось примерно с 0,0069891 до 0,00136685 — в 5,11 раза. Среднее перед возведением в квадрат не вычитали: это другой показатель, чем стандартное отклонение от среднего. Улучшение относится ко всему набору; модуль ряби не обязан уменьшаться в каждой точке.

Оставшиеся колебания никуда не исчезли. Зато теперь было ясно, что именно снято и какой объект мы продолжаем изучать. [5, §9; 9]

Лестница, которую наконец стало видно

Иногда к делу возвращал простой вопрос: как выглядит сам счётчик? На рисунке ниже каждая пустота добавляет одну ступень. Затем тем же адресам назначаются веса, а из суммы вычитается пройденная длина. Так можно увидеть переход от числа простых в штуках к взвешенному балансу.

Рисунок 7

Рисунок 7

Рисунок 7. Один набор пустот в четырёх изображениях. Нижняя панель — локальная рябь от фиксированной опоры 7, без нормировки. Она отличается от глобальной R(N) с движущейся границей . На адресах 15 и 21 новых ступеней нет: это пересечения уже закрывающих теней. [10]

Весь путь без обнуления на опорах

Потом потребовалось отойти далеко от первых чисел. Первый большой ответ снова промахнулся мимо задачи: сравнивал отдельные миры. Нам нужен был весь накопленный путь, чтобы прошлая разность не исчезала при смене опоры. После исправления мы связали 29 последовательных переходов от 3 до 189 858 287 514 613. [10]

Обе шкалы начинали с нуля на опоре 3:

H(N)=\pi(N)-2,\qquad L_3(N)=\int_3^N\frac{dx}{\ln x}.

Здесь \pi(N) — число простых, не превосходящих ; вычитание 2 убирает простые 2 и 3. Разность H(N)-L_3(N) накапливается по всему пути и при переходе к новой опоре не обнуляется.

Рисунок 8

Рисунок 8

Рисунок 8. Суммарный счётчик и логарифмический интеграл. Сверху линии почти сливаются, снизу увеличена накопленная разность. Показаны 3 783 рассчитанных среза; соединяющие линии не изображают каждую отдельную ступень. Среднее вычислено по всему непрерывному пути. [10]

В конечной точке счётчик после 3 равнялся 5 962 199 036 633. Разность H-L_3 составляла около −550 434,17, а её среднее значение по всему непрерывному пути — −300 416,25. На фоне почти шести триллионов накопленных простых относительное отклонение в конце было примерно девять миллионных процента. Его малость видна на верхнем графике, а ненулевая величина — на нижнем.

Для этого большого опыта использовались отдельные точные алгоритмы подсчёта и суммирования простых. Все триллионы адресов не перечислялись. График проверял накопление без сбросов и не был новым замером скорости CandidatePrime.

Когда лестница встретилась с гладкой линией

Гладким эталоном служит логарифмический интеграл — накопление плотности 1/\ln x. Сама функция \ln x здесь не играет роль счётчика. Классическая теорема о распределении простых устанавливает согласие главного масштаба; в препринте мы использовали её, чтобы строго связать с интегралом наш точный счётчик. [5, §5; 3]

Затем к обоим распределениям применили один и тот же комплексный закон. Каждое простое добавляло вектор с весом n^{-s}, а интегральная линия складывала такие же вклады непрерывно. Направление и размер одной кривой не подгонялись под другую. При фиксированном комплексном параметре с действительной частью меньше единицы удалось доказать, что отношение этих накоплений стремится к единице. Так точная лестница получила гладкий комплексный образ с тем же главным порядком. [5, теорема 4]

Рисунок 9

Рисунок 9

Рисунок 9. Комплексное сравнение из препринта, страница 8. Бирюзовая линия — сумма по простым, рыжая — интеграл с тем же комплексным ядром. На границе 1 000 003 направления расходятся примерно на 0,936°, относительная разность векторов — около 1,64%. [5]

Согласуются относительный размер и направление; сами растущие суммы не обязаны приходить в одну неподвижную точку. Комплексная плоскость делает эту связь наглядной. При этом суммирование по последовательным окнам сохраняет всю лестницу, независимо от того, насколько крупными были вспышки.

Ноль, который появился после замены

Самый озорной поворот возник почти в конце. Почему мы всё время меряем точную лестницу гладкой линейкой, если уже построили счётчик из самих теней? Мы поставили этот счётчик на место интеграла в условии сравнения — и получили нулевой остаток. Точный ноль при каждом допустимом адресе.

На минуту мне показалось, что самое трудное уже позади: отклонение исчезло. Потом мы проверили, что именно сравнили, — и обнаружили, что заменили эталон.

Можно представить два прибора. Один считает простые по их арифметическому определению. Другой строит произведения, закрывает составные и считает сертифицированные пустоты. Доказательство полноты покрытия устанавливает, что их показания совпадают, поэтому разность равна нулю.

Гладкая линия остаётся третьим объектом. Для связи с гипотезой Римана требуется достаточно сильная общая оценка отклонения точного счёта от логарифмического интеграла. Совпадение двух точных приборов эту оценку не даёт. Именно такой статус нулевого остатка зафиксирован в препринте. [5, §8; 4]

Более сильная задача осталась открытой: ограничить полное отклонение при неограниченном росте. В обозначениях препринта нужное условие выражено через конечность верхнего предела нормированного отклонения. Оно сформулировано отдельно и не выдано за следствие точности счётчика или наследования старого покрытия. [5, §9]

Как приходилось возвращать память исследованию

Одной из самых утомительных частей работы оказалась память собеседника. ИИ мог уверенно разобрать новую формулу и при этом потерять её связь с рисунком, сделанным несколько часов назад. Приходилось отправлять его обратно по тредам: найти блины, вспомнить мир правил, сопоставить спирали, открыть сохранённый расчёт. Иногда я удерживал целую геометрическую картину, а ассистент отвечал лишь на последний её фрагмент.

Это влияло не только на темп разговора. Локальное приращение подменяло суммарную рябь. Точный перенос формулы звучал как перенос уже доказанной границы. Разные функции получали похожие обозначения. Несколько раз ответ преждевременно объявлял дело завершённым, а затем возвращал то же условие в список недоказанного. Раздражение в такой работе вызывала и трудность самой задачи, и необходимость снова устанавливать, что именно уже сказано и проверено.

Мы отвечали на это фиксацией результатов. Сохраняли определения, исходники, полные ответы окон, графики и независимые проверки. Стали указывать, где равенство точное, где используется известная теорема, а где показан конечный опыт. Ссылки на файлы постепенно заменяли обещание «это уже было выше». Это помогало находить реальные ошибки и продолжать рассуждение с того места, где оно действительно остановилось.

Здесь проявилось почти буквальное совпадение с предметом исследования. Программе требовалось достаточное состояние, чтобы не восстанавливать сделанное. Разговору требовалась такая же опора: определения, выводы, условия применимости и адреса доказательств. Мир сохраняющихся правил оказался нужен и самому процессу работы.

Что осталось после проверки

Практический результат имеет проверяемый масштаб: движок поиска края коротких окон, измеренный выигрыш над определённым Python-решетом и точные свидетельства составности. Сохранение адресов, отдельное расширение базиса и отказ от заведомо лишних действий остаются приёмами для дальнейшей разработки. Выводов о взломе ключей или универсальном ускорении их генерации из этих опытов не следует.

Геометрические оси опираются на разложение на множители, тени — на произведения и пересечения, пустоты — на полноту покрытия. Мы собрали эти связи в работающую модель с точным счётом и сохранением удостоверенного участка. Основания конструкции частично классические; возможную новизну алгоритмических решений нужно оценивать по сравнению с существующими методами. Зато теперь путь от числа до его тени, ступеньки счётчика и комплексного вклада можно проследить и воспроизвести.

Следующий вопрос получился уже совсем конкретным: если старые тени учтены, сколько новых составных может появиться в ближайшем окне? С этого места история переходит во вторую часть.

Часть 2. Как старые тени помогают найти следующее простое

В первой части вопрос о памяти возник из устройства программы. Теперь разберём один шаг математически: применим уже известные тени, сохраним остаток и посмотрим, что ещё может его закрыть.

В достаточно близком окне у каждого оставшегося составного ровно два простых множителя, оба больше \sqrt p, где p — текущая простая опора. Меньший не превосходит \sqrt{p+h}, а больший меньше (p+h)/\sqrt p. Когда длина окна h мала относительно , оба множителя находятся близко к . Эту область можно очертить, а число дополнительных закрытий — ограничить заранее.

Два адреса после старых теней

Возьмём простое 523 и посмотрим вправо, до 541. Чётные адреса уберём сразу. Применим тени простых 3, 5, 7, 11, 13, 17 и 19 — это весь нечётный проверочный базис до \sqrt{523}. Из девяти нечётных адресов в окне останутся только 529 и 541.

Рисунок 10

Рисунок 10

Рисунок 10. Старый базис закрывает семь из девяти адресов. Добавление оси 23 закрывает 529=23^2. Адрес 541 остаётся свободным и становится следующим простым после 523. [11]

Простое 23 давно известно. «Новая ось» здесь означает добавление к проверочному базису конкретного окна. Старый базис до заканчивается на 19; теперь мы расширяем его до 23.

Почему у остатка два множителя

Назовём текущую простую опору . Рассмотрим окно (p,p+h], где p\ge5 и 0<h\le p: левую опору исключаем, правую границу включаем. Оно лежит между и 2p. Для этого рассуждения можно начинать с каждого простого, укрупнять шаги до вспышек не требуется. Пока применим только старый базис до ; его покрытие в новом окне ещё может быть неполным.

Закроем все нечётные адреса, делящиеся на простой множитель не больше . Сохраним оставшиеся адреса, а их количество обозначим через V_p(h). Среди них могут быть как простые, так и составные, до которых старый базис ещё не дотянулся.

Что представляет собой такое составное? Каждый его простой множитель больше . Если бы множителей было хотя бы три, с учётом повторений, произведение стало бы слишком большим:

n>p^{3/2}>2p\ge p+h.

В наше окно оно уже не поместилось бы. Значит, у составного остатка ровно два простых множителя. Это могут быть разные простые или квадрат одного простого, как 23² в нашем примере.

n=qr,\qquad \sqrt p<q\le r,\qquad qr\le p+h.

Обозначим число таких произведений через J_p(h). Из старого остатка нужно вычесть ровно столько составных адресов. Получаем точное равенство:

\pi(p+h)-\pi(p)=V_p(h)-J_p(h).

Слева стоит число простых в окне, справа — число адресов после старых теней минус дополнительные составные. Каждое произведение учитываем один раз, выбирая q\le r. Единственность разложения на простые не позволяет двум разным таким парам создать один адрес.

Это точное равенство для конкретного окна; гладкая аппроксимация в него не входит. Но само по себе оно ещё не говорит, насколько большим будет остаток в далёком окне. К этому вопросу вернёмся после подсчёта возможных дополнительных закрытий.

Где могут родиться новые тени

Теперь ограничим сами множители. Меньший не превосходит квадратного корня из правой границы окна. Больший ограничен условием попадания произведения в окно:

\sqrt p<q\le\sqrt{p+h},\qquad q\le r<\sqrt p+\frac h{\sqrt p}.

При малом отношении h/p эта область тесно окружает . Чем короче окно относительно опоры, тем уже полоса возможных меньших множителей. Именно они понадобятся как дополнительные проверочные оси.

Чтобы точки на рисунке было удобнее рассмотреть, возьмём широкий крайний случай: окно от 523 до 1046, то есть h=p. Наименьший нечётный множитель, который может остаться после старого базиса, равен 23. Каждая точка рисунка обозначает возможную пару множителей.

Рисунок 11

Рисунок 11

Рисунок 11. Для окна (523,1046] простой треугольный подсчёт даёт 42 пары. Условие на произведение оставляет 33 нечётные пары. Из них только 9 состоят из двух простых и действительно добавляют составные адреса к старому остатку. [11]

Треугольник ограничивает число целочисленных пар. Гипербола убирает слишком большие произведения, проверка простоты — неподходящие множители. Для гарантии хотя бы одного простого иногда достаточно уже первой, более грубой границы.

Сколько адресов может забрать новый слой

Посчитаем точки треугольника. Пусть a — наименьшее нечётное целое, строго большее √p. Любые подходящие нечётные множители можно записать как a + 2i и a + 2j, где 0 ≤ i ≤ j. Пока даже разрешим множителям быть составными: так число кандидатов только увеличится.

(a+2i)(a+2j)=a^2+2a(i+j)+4ij.

Последнее слагаемое неотрицательно. Поэтому из условия попадания произведения в окно следует i + j ≤ m, где m — целая часть следующего выражения:

m=\lfloor\frac{p+h-a^2}{2a}\rfloor,\qquad T_p(h)=\lfloor\frac{(m+2)^2}{4}\rfloor.

Эта формула используется при p + h ≥ a². Если правая граница ещё не дошла до a², составных среди старых выживших нет и T = 0. Число T получается обычным подсчётом целочисленных точек 0 ≤ i ≤ j, i + j ≤ m. При чётном m = 2k их (k + 1)²; при нечётном m = 2k + 1 — (k + 1)(k + 2).

Поскольку a > √p, имеем m < h/(2√p). Подставляя это в формулу, получаем общую верхнюю оценку:

J_p(h)\le T_p(h)\le\frac{h^2}{16p}+\frac{h}{2\sqrt p}+1.

Теперь сравним вместимость нового слоя с сохранённым остатком. Если адресов осталось больше, чем слой способен закрыть, хотя бы один из них обязательно прост:

V_p(h)>T_p(h)\quad\Longrightarrow\quad p_{\mathrm{next}}-p\le h.

В окне до 539 после старых теней оставался только 529: V=1, T=1. Всё действительно могло закрыться — и закрылось. В окне до 541 уже V=2, , поэтому хотя бы один адрес должен остаться простым. Адрес 529 закрывает ось 23, поскольку . Значит, свободной точкой оказывается 541.

Те же адреса на комплексной спирали

Здесь снова появляется комплексная спираль из первой части. Перейдём к логарифмам множителей относительно и назовём эти координаты \alpha и \beta. Условие на произведение превращается в условие на сумму:

\alpha=\ln\frac q{\sqrt p},\quad\beta=\ln\frac r{\sqrt p},\quad 0<\alpha\le\beta,\quad\alpha+\beta\le\ln\!\left(1+\frac hp\right).

В этих координатах область под гиперболой становится точным треугольником. Каждая подходящая пара по-прежнему соответствует своему адресу qr. Смена координат сохраняет это соответствие.

Рисунок 12

Рисунок 12

Рисунок 12. Окно (523,541]. Слева — точный треугольник в логарифмических координатах и пара (23,23). Справа — тот же адрес 529 на относительной комплексной спирали, рядом с простым 541. Для наглядности выбран параметр s=\tfrac12+20i. [11]

z_s(n)=n^{-s},\qquad \frac{z_s(qr)}{z_s(p)}=e^{-s(\alpha+\beta)}.

Фиксируем s=\sigma+it с

\sigma>0. Произведение превращается в поворот и изменение масштаба; модуль строго убывает, поэтому разные адреса различимы. При h/p\to0 рассматриваемый кусочек относительной спирали сжимается к точке 1.

Спираль показывает положение адресов, а доказанный подсчёт пар — возможное число дополнительных закрытий. Это два описания одних и тех же чисел. Для точного вычисления мы по-прежнему храним целые адреса: рисунок на комплексной плоскости сам по себе не заменяет такое хранение.

Что это даёт следующему шагу

Практический смысл можно сформулировать без комплексных чисел. Программа применяет старый базис к новому окну и получает остаток . Чтобы убрать его составные, достаточно дополнительных простых осей в полосе (\sqrt p,\sqrt{p+h}]: здесь лежит меньший множитель каждого оставшегося составного. Больший множитель r может выходить за эту полосу; отдельная проверочная ось для него не нужна.

Сохранённое состояние позволяет повторно использовать подготовленные правила и точные ответы уже рассчитанных окон. Отдельные миры рождения этих правил восстанавливать не требуется. Но для нового окна всё равно нужно получить его точный остаток — применить покрытие или корректно перенести уже известный результат. Если сохранять и сами выжившие адреса, сертификат существования простого можно связать с конкретными кандидатами.

Особенно интересно окно длины h=\lfloor c\sqrt p\ln p\rfloor, где c — фиксированное положительное число. Для достаточно больших оно удовлетворяет условию h\le p. Из нашей оценки сразу следует:

J_p(h)\le\frac{c^2}{16}\ln^2p+\frac c2\ln p+1.

Размер опоры растёт, а число дополнительных закрытий ограничено выражением порядка (\ln p)^2. Ширина полосы новых проверочных осей при этом не больше (c/2)\ln p. Такова количественная оценка обрезки остатка. Она ограничивает число новых составных после применения старого базиса; полная стоимость получения самого остатка сюда не входит.

Для общей гарантии расстояния до следующего простого было бы достаточно доказать, что один и тот же выбор во всех достаточно поздних окнах оставляет после старых теней больше адресов, чем правая часть полученной оценки:

V_p(h)>\frac{c^2}{16}\ln^2p+\frac c2\ln p+1.

Такой общей нижней оценки для здесь пока нет. Доказаны структура остатка и верхняя граница дополнительных закрытий, а условие

V>T даёт проверяемый сертификат для отдельного окна. Чтобы получить теорему о всех следующих простых, нужно ещё доказать, что необходимый запас адресов всегда появляется.

Связь с гипотезой Римана здесь односторонняя: из RH следует ограничение промежутков между простыми в масштабе \sqrt p\ln p. [2] Наш безусловный результат описывает дополнительные закрытия на этом масштабе. Из этой связи нельзя заключить, что доказательство оценки промежутков автоматически даст доказательство RH.

Что мы проверили и что сохранили

Формулы мы проверили отдельной программой на 548 простых опорах от 5 до 3989. Для каждой опоры рассматривались окна до . Проверка тождеств выполнялась на двух граничных срезах и на каждом срезе с простым правым концом: всего 124 603 выбранных среза. [11]

Старый остаток программа получала проверкой делимости. Число простых независимо брала из решета Эратосфена. Дополнительные составные считала отдельным перечислением пар простых. На каждом выбранном срезе числа совпали; граница через нечётные пары под гиперболой и более простая треугольная граница также соблюдались. Целые части и граничные случаи проверялись в целочисленной арифметике.

Эта проверка подтверждает реализацию формул на конечной выборке. Общее доказательство структуры составного остатка и верхней границы приведено выше. Быстродействие схемы по сравнению с решётами в этой части мы не измеряли. В такой замер должны входить получение V, подготовка дополнительных осей и проверка остатка.

У конструкции есть классический родственник. В методах Мейсселя — Лемера после частичного просеивания выделяют поправку P_2: числа с двумя простыми множителями, ещё не затронутыми базисом. [1] Равенство V-J является локальным случаем этого разложения. Язык миров помогает увидеть, где возникают эти произведения возле текущего , как ограничить их количество и какие сведения сохранить для следующего окна.

Мне нравится, что этот результат вернул нас к исходной геометрии и одновременно сделал её предметнее. Раньше мы говорили: тени перекрываются, история сжимается, новый мир наследует правила. Теперь в одном переходе можно указать остаток, нарисовать область рождения дополнительных теней и посчитать её вместимость.

Вся небольшая история помещается между 523 и 541. Старые тени оставили два адреса. Новый слой мог забрать один — и закрыл 529. Остался 541. За этим простым рисунком стоит правило, которое можно доказать, запрограммировать и проверить. С него уже можно делать следующий шаг.

Источники, данные и происхождение рисунков

Математические источники

[1] J. C. Lagarias, V. S. Miller, A. M. Odlyzko. Computing π(x): The Meissel–Lehmer Method. Mathematics of Computation, 44, № 170 (1985), с. 537–560. Разложение частичного решета и член P₂: § 2, формулы (2.1)–(2.3). В части 2 используется для сопоставления точного равенства V − J с классическим методом. DOI: 10.1090/S0025-5718-1985-0777285-5 · Авторский полный текст (PDF)

[2] A. W. Dudek. On the Riemann Hypothesis and the Difference Between Primes. arXiv:1402.6417, версия 2, 20 мая 2014. Условная оценка промежутков между простыми в масштабе √p ln p при предположении RH; связь, обсуждаемая в части 2. arXiv:1402.6417v2

[3] NIST Digital Library of Mathematical Functions. § 27.2, формула 27.2.3. Теорема о распределении простых: π(x) ∼ x / ln x. В части 1 используется для согласования главного порядка точного счётчика и логарифмического интеграла. DLMF, формула 27.2.3

[4] NIST Digital Library of Mathematical Functions. § 27.12, формула 27.12.7. Критерий RH через отклонение π(x) от li(x). Этот критерий сохраняет гладкую функцию сравнения; на него ссылается обсуждение нулевого остатка в части 1. DLMF, формула 27.12.7

Теория и программный код исследования

[5] Вадим. Простые числа в растущих мирах. Точный счётчик, логарифмическая асимптотика и комплексное представление. Препринт, версия 0.1, 12 октября 2026, 10 с. Файл prime_worlds_preprint_ru.pdf. Теоремы 1–3: покрытие, наследование, счётчик; § 4.1: сравнение алгоритмов; § 5 и теорема 4: логарифмическая и комплексная асимптотика с использованием теоремы о простых; § 8: статус замены интеграла; § 9: рябь и условие общей оценки. Рисунок 9 — рисунок 3 препринта, с. 8.

[6] Вадим. Многомерные пространства, тени и миры вспышек: воспроизводимый исследовательский пакет. Версия 1.0.0, 10 октября 2026. Теория, быстрое ядро, сравнение алгоритмов, опыт с 3P − 82 и описание ресурсов: README.md; docs/FAST_ENGINE.md; data/benchmark_original.json; data/benchmark_rerun.json; data/record_original.json; data/resources.json. Рисунки 1–2 — отдельные авторские иллюстрации из world_birth_explainer_2026_10_11: 01_prime_axes_and_layers.png и 02_shadows_and_next_flash.png. Репозиторий: VadzimYankevich/flash-worlds-research

[7] Сохранённые материалы оптимизации. THEORY_RU.txt и REFINEMENT_RULES_RU.txt; «Анализ времени и повторного восстановления адресов» — flash_timing_findings_ru.txt; «Обновлённые результаты прямого доступа» — UPDATED_RESEARCH_RU.txt; RUN_ABSORPTION_RU.txt. Источники эпизодов части 1 о повторном извлечении адресов, прямом доступе, уточняющих правилах и подготовке остатка.

Численные результаты и рисунки

[8] Опорные волны и наследование. Рисунки 3–4: cycle_probe_work/visual_qa/chart-736.svg; spiral_inheritance_2026_10_11/01_inherited_shadows_on_spiral.png. Проверка смешанных вкладов: q_spiral_visuals_20261012/mixed_counter_comparison.json. 29 миров от 3 до 113, 16 514 послойных проверок; расхождений полного счётчика не найдено.

[9] Рябь и выравнивание. Рисунки 5–6: ripple_visual_work/03_ripple_bound.png; ripple_straightening_work/ripple_known_correction.png. Данные: ripple_straightening_work/straightening_values.json. Проверка на целых N от 100 до 1 000 000; улучшение в 5,11 раза относится к RMS нормированной ряби на этом диапазоне.

[10] Счётчик и большой накопленный расчёт. Рисунки 7–8: counter_steps_20261012/counter_world_7.png; large_counter_20261012/cumulative_counter_overview.png. В том же каталоге large_counter_20261012: cumulative_counter_results.json и cumulative_independent_check.json. Конечная граница — 189 858 287 514 613; 29 переходов, 30 опор, 3 783 отображённых среза. Счёт после 3: H = π − 2. Среднее отклонение вычислено интегрированием по всему пути.

[11] Проверка и рисунки части 2. В каталоге habr_next_axis_addendum_20261012/output: verify_next_axis.py; результаты и описание выборки — verification.json. Запуск: python verify_next_axis.py --max-prime 4000. Проверены 548 простых опор от 5 до 3989 и 124 603 выбранных среза. Рисунки 10–12: 01_coverage_523.png, 02_triangle_budget.png, 03_log_spiral.png в каталоге habr_next_axis_addendum_20261012/figures; есть также версии SVG. Эти три рисунка построены по формулам и целочисленным адресам.

О материалах и изображениях

Первая часть рассказывает о разработке 7–12 октября 2026 года. Рисунки 1–9 взяты из сохранённых расчётов. Для второй части подготовлены отдельная программа проверки, её результаты и рисунки 10–12 [11]. Идеи и постановка задач — Вадим. ИИ использовался для программирования, расчётов, проверки формул и подготовки текста.

В тексте различаются три вида изображений: адресная спираль, накопленная комплексная сумма и график отклонения. Их сходство помогает искать связи; определения и проверенные равенства показывают, какие связи действительно установлены.

View the original on Хабр →

KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.