Files
sim-numerics/PREREG_flat_exit_2026-09-21.md
T

4.3 KiB
Raw Blame History

PREREG — плоский режим: выход по похожести на середине

Составлено до кода и до прогона, ветка signfix-and-gates. Валерий: «пред-регистрируй и проверяй выход по похожести на середине».

Основание (f8c17c4)

  • Залипающее деление делает на плоских fun3–6 ровно то, что нужно: 1823 → 1057 (чистое деление 1044), широкие скобки 3220 → 3019.
  • Но флаг «несбывшееся обещание» входит в режим в 134 из 154 канонических задач и в 20 из 25 неплоских широких; ложный вход залипает до конца, канонические 2806 → 6897.
  • Точка из порядка не заслужена (m = ∞ в 163 из 174 входов) — делим пополам.
  • Узкое место — не способ деления, а то, что режим не умеет выходить.

Правило (новых констант нет)

Режим prestep="flatstickexit". Вход — как у flatstickmid: шаг модели без перескока, r ≥ ¼. В режиме каждый шаг — середина скобки.

Выход — суждение похожести на середине. Каждая середина M = (A+B)/2, вычисленная в режиме, даёт f(M) ещё до обновления скобки. Две гипотезы предсказывают её по-разному:

  • простой корень (f почти линейна на скобке): f(M) ≈ L = (FA + FB)/2;
  • плоский подход (|f| ∝ |x − r|^m, m велико): f почти равна нулю вдали от концов, f(M) ≈ 0.

Режим покидается, если f(M) похожа на линейное предсказание больше, чем на плоское: |f(M) − L| < |f(M) − 0|. Это порядковое сравнение двух предсказаний — ни порога, ни множителя; равенство оставляет в режиме. После выхода шаги снова делает модель, и повторный вход возможен по тому же флагу.

Ожидание (проверено на бумаге): для чистой степени картина масштабно-инвариантна — при корне в 0.3 скобки и m = 3 f(M) = 0.008 против L = 0.158, режим держится до конца; для линейной f f(M) = L точно, выход на первой же середине.

Предохранитель применяется к шагу как всегда — гарантия им и держится.

Проверка

Сразу полная сетка на сервере: «без / flatstickexit / flatstickmid» для предложенного метода и для него же с Г2 (повтор рисунка шагов), все 7 предохранителей; девять функций без чтений.

# ПРОЙДЕНО, если
X1 широкие скобки ниже, чем без режима (3220; с Г2 — 3169)
X2 канонические задачи не выше, чем без режима (2806; с Г2 — 2782)
X3 гарантия: 0 нарушений в семействе, решено ≥ 193
X4 плоские fun3–6 дешевле
X5 сообщается: по задачам против Чандрупатлы на канонических; оба набора против 5228
X6 канонические с выходом дешевле, чем без выхода (flatstickmid) — иначе выход не заслужен

Правило остановки: принимается, только если X1, X2, X3 выполнены одновременно.

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