Перейти к содержанию

32. Единый rank-parity узел: близнецы и Риман (эпилог)

← 31. Риман через Лиувилля · Оглавление · 33. Первопричина и главная теорема →

Lean: Engine/RiemannLiouville.lean (liouville_eq_neg_one_pow_rank, liouville_flip_of_mul_prime, riemann_of_liouville_bound), Engine/MkNode.lean, Engine/CarrierBridge.lean, Engine/ProductCore.lean. Числа: tools/RESULTS_final_gap.md, prose/51_NumericalEvidence.md. Это финальная глава прозы.

В 27. ProductCore мы довели редукцию близнецов до конечного product-rank descent, а в 30. RiemannBranch построили независимую ветку к гипотезе Римана через тот же двигатель — запрещённую бесконечную убывающую цепь (см. словарь); аудит обоих оставил по одному несводимому узлу.

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

Где мы: два узла, одна форма

Соберём то, к чему пришли, в одной строке каждый. Близнецы (после 24, 30, 31) свелись к тому, что бесконечный carrier чистых центров даёт двигатель — при условии, что поток спуска порождает бесконечно много факторизуемых стартов фиксированного ранга (GlobalOldAbsorption, единственный остаток RESULTS_final_gap.md). Риман (после 28 и его арифметической переформулировки) свёлся к оценке суммирующей функции Лиувилля

\[L(x) \;=\; \sum_{n\le x} \lambda(n), \qquad \lambda(n) = (-1)^{\Omega(n)},\]

где LiouvilleBound требует \(|L(x)| = O\!\bigl(x^{1/2+\varepsilon}\bigr)\). На первый взгляд это две несвязанные трудности — комбинаторная стена fan-in и аналитическая стена \(\sqrt{x}\). Тезис этой главы: обе суть контроль баланса чётности ранга на растущем масштабе, и наш rank-аппарат (RankNode, cardFactors, deleteFactor) — их общий язык.

Аппарат: ранг как число простых факторов

Введём точно те объекты, на которых держится обобщение. Состояние спуска на ранге \(r\) — это

Определение 32.1 (RankNode). RankNode r — структура с полем sign : Sign (носитель двойки \(\sigma\in\{+1,-1\}\), сторона \(6m+\sigma\)) и полем factors : Fin r → ℕ (упорядоченный набор из \(r\) простых факторов активной стороны, все \(> A\) на legal-слое). Тип экстенсионален по паре (sign, factors) (RankNode.ext в ProductCore.lean): два узла равны тогда и только тогда, когда совпадают знак и все факторы.

Ранг узла — это в точности число простых факторов с кратностью, то есть арифметическая функция \(\Omega\). В mathlib она называется cardFactors, и это тождество — не аналогия, а равенство функций:

\[\mathrm{rank}(6m+\sigma) \;=\; \Omega(6m+\sigma) \;=\; \texttt{cardFactors}\,(6m+\sigma).\]

Из 28. MkNode мы знаем, что на legal-слое ранг ограничен: factor_rank_le_four даёт \(r\le 4\) (факторы \(>A\), произведение \(\le 6X_A+1 < A^5\)), а composite_rank_ge_two — что нечистая составная сторона имеет \(r\ge 2\). То есть на carrier ранг живёт в конечном диапазоне \(1\le r\le 4\) — это и есть FactorizationData.hr из 29. CarrierBridge.

Второй объект — понижение ранга. Удаление одного фактора есть

Определение 32.2 (deleteFactor). deleteFactor : RankNode (r+1) → Fin (r+1) → RankNode r, \(X \mapsto \langle X.\mathrm{sign},\ i\mapsto X.\mathrm{factors}(k.\mathrm{succAbove}\,i)\rangle\) — выбрасывает \(k\)-й фактор, сохраняя знак и порядок остальных. Это ровно шаг product-rank descent \(r\to r-1\) из 27.

Ключевое наблюдение, замыкающее аппарат на Лиувилля: удаление фактора флипает знак ранга. Если \(n = p\cdot m\) с простым \(p\), то \(\Omega(n) = \Omega(m)+1\), значит

\[\lambda(n) \;=\; (-1)^{\Omega(n)} \;=\; -(-1)^{\Omega(m)} \;=\; -\lambda(m).\]

В Lean это две теоремы.

Теорема 32.3 (liouville_eq_neg_one_pow_rank). Для всякого \(n\ne 0\)

\[ \lambda(n) \;=\; (-1)^{\texttt{cardFactors}\,n}. \tag{32.1} \]

Доказано без наших входов, как следствие liouville_apply из mathlib. 🟢

Теорема 32.4 (liouville_flip_of_mul_prime). Для простого \(p\) и всякого \(m\)

\[ \lambda(p\cdot m) \;=\; -\,\lambda(m). \tag{32.2} \]

Доказано через cardFactors_mul + cardFactors_apply_prime. 🟢

Примечание. Смысл этих двух строк больше, чем их доказательство. Они говорят, что знак Лиувилля — это чётность ранга нашего RankNode, а deleteFactor — это оператор смены знака Лиувилля. То есть product-rank descent, который мы строили для близнецов как чисто структурную динамику высоты, оказывается ровно динамикой знака \(\lambda\). Два аппарата, придуманные под разные задачи, — один и тот же оператор на одном и том же носителе.

Стена близнецов как баланс рангов сторон

Вернёмся к близнецам и запишем их стену в терминах ранга. Блочная статистика глава 51 классифицирует центры по паре \((\mathrm{rank}_{-},\mathrm{rank}_{+})\) рангов двух сторон \(6m-1,\ 6m+1\), огрублённой до \(\{0,3\}\) (простая сторона / «богатая» составная). Клетки:

\[N_{00}\ (\text{оба простые} = \text{twin}),\quad N_{33}\ (\text{обе богато-составные}),\quad N_{03},\ N_{30}\ (\text{смешанные}).\]

Целевое неравенство программы — B₅ = N₀₀ − N₃₃ > 0 (близнецов не меньше, чем «двойных композитов»), и четырёхугольная форма

\[R_{\mathrm{fc}} \;=\; \frac{N_{00}\,N_{33}}{N_{03}\,N_{30}} \;<\; 1,\]

то есть отрицательная корреляция рангов сторон: простота одной стороны и простота другой «притягиваются». Численно (таблица [A]) \(R_{\mathrm{fc}}\in[0.86,0.98]\) и растёт к \(1\) с блоком — это и есть стена margin к нулю: запас \(1 - R_{\mathrm{fc}}\to 0^+\) по мере роста масштаба. Стена близнецов — это утверждение о балансе распределения рангов двух сторон: что клетка \(N_{00}\) не пустеет относительно \(N_{33}\) на растущем \(N\).

Примечание. Именно здесь [12–16] упёрлись в «стену чётности»: модельный four-corner \(20\binom{n}{6} < \binom{n}{3}^2\) доказан (ModelFourCorner), но перенос модель\(\to\)реальность требует контроля совместного распределения рангов \((\mathrm{rank}_-,\mathrm{rank}_+)\), а не одной маргинали. Это распределительный, а не точечный факт — ровно тот тип утверждения, что и оценка \(L(x)\).

Стена Римана как баланс знаков Лиувилля

Теперь Риман в тех же терминах. По тождеству \(\lambda = (-1)^{\mathrm{rank}}\) сумма

\[L(x) \;=\; \sum_{n\le x} (-1)^{\mathrm{rank}(n)} \;=\; \bigl\lvert\{n\le x:\ \mathrm{rank}(n)\ \text{чётен}\}\bigr\rvert \;-\; \bigl\lvert\{n\le x:\ \mathrm{rank}(n)\ \text{нечётен}\}\bigr\rvert\]

есть в точности дисбаланс чётности ранга на отрезке \([1,x]\): разность числа чисел с чётным и нечётным числом простых факторов. LiouvilleBound\(|L(x)| = O(\sqrt{x}\cdot x^{\varepsilon})\) — говорит, что этот дисбаланс растёт не быстрее \(\sqrt{x}\): чётности ранга почти сбалансированы, отклонение «квадратно-корневого» размера, как у случайного блуждания \(\pm1\).

И это не эвристика: LiouvilleRHBridge — классическая эквивалентность \(\texttt{LiouvilleBound}\iff\mathrm{RH}\), а riemann_of_liouville_bound доказывает (условно на мосту) \(\mathrm{RH}\) из оценки. Вся аналитика RH изолирована в оценке баланса знаков.

Сопоставим две стены буквально:

стена близнецов стена Римана
объект \(R_{\mathrm{fc}} = N_{00}N_{33}/(N_{03}N_{30})\) \(L(x) = \sum_{n\le x}(-1)^{\mathrm{rank}(n)}\)
контролируемая величина баланс рангов сторон \((\mathrm{rank}_-,\mathrm{rank}_+)\) баланс чётности ранга \(\mathrm{rank}(n)\bmod 2\)
порог margin \(1 - R_{\mathrm{fc}} \to 0^+\) $
срыв контроля \(N_{00}\) пустеет \(\Rightarrow\) близнецы конечны \(L(x)\) растёт \(\gg\sqrt{x}\) \(\Rightarrow\) нуль вне \(1/2\)
общий язык RankNode, cardFactors RankNode, cardFactors

Итог раздела. Обе строки — про то, как распределена \(\mathrm{rank}(n) = \texttt{cardFactors}\,n\) при \(n\to\infty\), и обе требуют, чтобы это распределение не «схлопнулось» в одну чётность. Это и есть тезис главы.

Примечание. Различие ровно одно и оно не мешает единству. Близнецы смотрят на совместное распределение рангов двух сдвинутых сторон \(6m\pm1\) (2D-баланс клеток \(N_{ij}\)); Риман — на маргинальный баланс чётности одного \(n\) (1D-баланс знаков \(\lambda\)). Маргиналь — тень совместного: контроль 2D-распределения рангов сторон мажорирует контроль 1D-чётности. Поэтому естественно предположить, что механизм, дающий первое, даёт и второе, а не наоборот.

Что уже общего в Lean (доказано)

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

  • liouville_eq_neg_one_pow_rank, liouville_flip_of_mul_prime — тождество «знак Лиувилля = чётность ранга» и флип при deleteFactor (из mathlib, без наших входов);
  • RankNode.ext, deleteFactor (ProductCore.lean) — общий носитель и оператор понижения ранга, используемый и в product-rank descent близнецов, и как оператор знака \(\lambda\);
  • factor_rank_le_four, composite_rank_ge_two, mkNode_of_composite (MkNode.lean) — конечность диапазона ранга \(1\le r\le 4\) на legal-слое и построение RankNode из составной стороны — чистая арифметика;
  • engine_of_carrier_and_factorize, exists_infinite_fiber (CarrierBridge.lean) — infinite-pigeonhole по рангу (пижонхол — принцип ящиков, см. словарь): бесконечный carrier разбивается по \(\mathrm{Fin}\,4\) на ранговые классы, один из которых бесконечен; вся pump-машина (descent, база rank-1, pigeonhole) собрана;
  • riemann_of_liouville_bound (RiemannLiouville.lean) — RH из LiouvilleBound через классический мост, условно.

Итог раздела. Всё это — язык и сборка, а не оценки. Доказано, что если контролировать ранговое распределение carrier (для близнецов) или чётностный баланс \(\lambda\) (для Римана), то обе гипотезы замыкаются через уже доказанные машины (EPMI-двигатель / classical bridge). Не доказан сам контроль.

Гипотеза о единстве (честно: это гипотеза, не теорема)

Теперь — центральное утверждение главы, поданное как то, чем оно является.

Гипотеза 32.5 (Rank-Parity Unity). Существует единый механизм контроля распределения ранга \(\mathrm{rank}(n) = \texttt{cardFactors}\,n\) на растущем масштабе — тот же, что требуется для GlobalOldAbsorption из 29/24 (fan-in \(570\to 1\) порождает двигатель) — из которого следуют обе оценки: $\(\underbrace{N_{00} - N_{33} > 0\ \text{равномерно}}_{\text{близнецы}} \qquad\text{и}\qquad \underbrace{|L(x)| = O(\sqrt{x}\cdot x^{\varepsilon})}_{\text{Риман}}.\)$ Механизм: контроль descent-forest (леса родословных спуска) даёт распределение ранга по волокнам absorber'а, а это распределение даёт одновременно carrier-баланс близнецов (\(N_{00}\) не пустеет) и баланс знаков Лиувилля (\(L(x)\) мал).

Подчеркнём границу честности тремя пунктами.

  1. Обе оценки открыты. Ни GlobalOldAbsorption (близнецы, RESULTS_final_gap.md: «несводимый узел»), ни LiouvilleBound (Риман, RiemannLiouville.lean: «арифметический вход») не доказаны. Гипотеза утверждает не их истинность, а их общность — что закрывает их один и тот же контроль.
  2. Единство — это гипотеза, а не редукция. Мы не доказали импликацию GlobalOldAbsorption ⟹ LiouvilleBound или обратную; будь она доказана, RH следовала бы из узла близнецов, а мы явно отвергли это ещё в 30 (утверждения независимы). Единство — о природе трудности (обе суть rank-parity-контроль), а не о логической выводимости одной из другой.
  3. Финальный узел сопоставим по сложности с самими гипотезами. Как отмечено в 30 и 24, последний аналитический/комбинаторный вход каждой ветки по трудности сравним с самой гипотезой. Единый язык не делает узел легче — он делает его одним: одну стену, а не две.

План закрытия (descent-forest ⟹ rank-распределение ⟹ оба баланса)

План унаследован от [24, §Pigeonhole] и 27 и записан теперь как единая программа для обеих стен.

Шаг 1 — descent-forest. Определить лес родословных спуска над carrier: вершины — состояния RankNode r, рёбра — шаги deleteFactor/old-peel (19, 24), корни — absorber'ы \(\le M_0\). Fan-in \(570\to 1\) (24) — это ветвление леса: до 570 родословных в один корень. Контроль леса — это контроль того, как \(r\) убывает вдоль ветвей от листьев к корню.

Шаг 2 — rank-распределение по волокну. Из структуры леса извлечь распределение \(\mathrm{rank}(n)\bmod 2\) по волокну каждого absorber'а. Здесь работает уже доказанный exists_infinite_fiber: бесконечное волокно расщепляется по \(\mathrm{Fin}\,4\) ранговых классов. Ключ, который надо предъявить: как deleteFactor вдоль ветви меняет чётность (доказанный флип \(\lambda\mapsto-\lambda\), Теорема 32.4 (liouville_flip_of_mul_prime)) индуцирует на волокне почти-равномерное распределение чётностей — это и есть общий rank-parity-контроль.

Шаг 3a — близнецы. Из rank-распределения по волокну вывести carrier-баланс: что доля центров с обеими простыми сторонами (\(N_{00}\)) не подавляется долей двойных композитов (\(N_{33}\)), то есть \(R_{\mathrm{fc}}<1\) равномерно. Это перенос модельного four-corner на реальность через распределение рангов сторон, а не через одну маргиналь (16).

Шаг 3b — Риман. Из того же rank-распределения вывести \(|L(x)| = O(\sqrt{x})\): почти-равномерность чётностей ранга — это в точности «случайно-блужданный» размер частичной суммы знаков \(\lambda\). Формально — подставить контроль баланса в riemann_of_liouville_bound через LiouvilleRHBridge.

Примечание (единая точка отказа). Оба шага 3 питаются от одного шага 2 — распределения чётности ранга по волокну descent-forest. Если этот контроль предъявлен, закрываются обе гипотезы; если нет — открыты обе. В этом операционный смысл единства: не два независимых доказательства, а один rank-parity-контроль с двумя следствиями. Критическая развилка — та же трилемма нормальной формы из 24/29: подпись волокна должна различать родословные (иначе баланс тривиально ложен) и склеивать их в конечный ключ (иначе pigeonhole пуст). Пока эта развилка не разрешена, единство остаётся гипотезой.

Эпилог прозы

На этом карта пути замыкается. Мы начали (0011) с двигателя Евклида и его законов — сохранения двойки, необратимости, невозможности вечного двигателя (EPMI, доказан) — и свели близнецов к блочному ядру.

Прошли (1221) линии-атаки на оценку, каждая из которых честно уперлась в одну стену чётности, и разложили выход из чистого графа (24) до единственного глобального узла. Закрыли арифметикой то, что закрывалось: ProductHall через separating scale (26), rank-descent-логику (27), mkNode и carrier-бесконечность (2829) — сняв все прежние стены (parity, трилемму, steering, payment).

Построили независимую ветку к Риману (30) и перевели её на арифметику Лиувилля (31). И увидели в этой финальной главе, что оставшийся узел близнецов и оставшийся узел Римана — один и тот же, записанный как контроль баланса чётности ранга: RankNode, cardFactors, deleteFactor — общий язык обоих.

Честный итог всей прозы: машина доказана, узел — один, и он открыт. Близнецы и Риман не выведены и не выданы за выведенные; редукция нигде не подменяет доказательство. Но два вопроса, столетиями стоявшие порознь, здесь стоят рядом — на одном носителе, с одной стеной, с одним планом. Из интуиции, которая вела весь путь, естественно предположить, что стена, которую нужно взять, — это стена rank-parity, и что взять её один раз значит закрыть обе. Доказать это — работа за пределами данной прозы. Здесь мы её точно назвали, локализовали в одном узле и оставили открытой.


← 31. Риман через Лиувилля · Оглавление · 33. Первопричина и главная теорема →