Часть эпика #199 (столбец SW-bitexact).
Проблема (WV-09): в t27/conformance/vectors/INDEX_all_formats.json — 55 bitexact + 6 self-consistent + 22 structural (только структура полей, нет числовых векторов). Строгий SW-bitexact = 55/83.
Чек-лист:
Тег: [открытая задача]. Ведётся в репо t27.
📋 Точный список 22 structural-форматов (выгружено из INDEX_all_formats.json, 2026-06-28)
Все имеют n_vectors=0, source=generated by gen_all_formats.py. Сгруппированы по сложности генерации числовых векторов.
Группа 1 — простые, прямой IEEE/стандартный оракул (быстро)
Группа 2 — расширенная точность, оракул = fractions.Fraction / mpmath (средне)
Группа 3 — GF-семейство, уже есть параметрический оракул gf_add_ref.py (быстро)
Примечание: PR #1216 (t27) заявлял перевод gf10/gf256 в selfconsistent, но на 2026-06-28 они всё ещё structural в INDEX → PR не влит либо INDEX не обновлён. Проверить.
Группа 4 — экзотические/posit-подобные, нужен сторонний эталон (медленно)
Группа 5 — не «формат», а механизм → решить, нужны ли числовые вектора вообще
Рекомендуемый порядок: Группа 3 → Группа 1 → Группа 2 → Группа 4 → решение по Группе 5.
Прогресс-математика: закрытие Групп 1–3 (≈14 форматов) поднимет строгий SW-bitexact 55 → ~69/83.
Self-consistent (6, более слабая галочка, требуют внешнего оракула): gf14, gf48, gf96, gf128, gf512, gf1024.
Часть эпика #199 (столбец SW-bitexact).
Проблема (WV-09): в
t27/conformance/vectors/INDEX_all_formats.json— 55 bitexact + 6 self-consistent + 22 structural (только структура полей, нет числовых векторов). Строгий SW-bitexact = 55/83.Чек-лист:
Тег: [открытая задача]. Ведётся в репо t27.
📋 Точный список 22 structural-форматов (выгружено из INDEX_all_formats.json, 2026-06-28)
Все имеют
n_vectors=0,source=generated by gen_all_formats.py. Сгруппированы по сложности генерации числовых векторов.Группа 1 — простые, прямой IEEE/стандартный оракул (быстро)
minifloat— классический E4M3/E5M2-подобный, оракул тривиаленbcd— двоично-десятичный, детерминированq_format— fixed-point Qm.n, оракул = целочисленный сдвигblock_fp— block floating-point (общая экспонента на блок)shared_exp— shared exponent (близко к block_fp)per_channel_scale— поканальное масштабирование (целочисленный масштаб)Группа 2 — расширенная точность, оракул =
fractions.Fraction/ mpmath (средне)double_double— два f64, оракул через точную арифметикуquad_double— четыре f64decimal32/decimal64/decimal128— IEEE 754 decimal (Pythondecimalмодуль как оракул)Группа 3 — GF-семейство, уже есть параметрический оракул gf_add_ref.py (быстро)
gf10— оракул готов (E?,M?,B? — взять из catalog_matrix), exhaustive возможенgf256—Группа 4 — экзотические/posit-подобные, нужен сторонний эталон (медленно)
takum8/takum16/takum32/takum64— takum (Hedström), эталон = референс-реализация автораafp— adaptive floating-pointtapered_fp— tapered precision (posit-родственник)unum_i/unum_ii— Gustafson unum типы I/II (unum II = SORN, отдельная семантика)Группа 5 — не «формат», а механизм → решить, нужны ли числовые вектора вообще
stochastic_rounding— это режим округления, не representation. Возможно, оставить structural навсегда с обоснованием (как FL-002).Рекомендуемый порядок: Группа 3 → Группа 1 → Группа 2 → Группа 4 → решение по Группе 5.
Прогресс-математика: закрытие Групп 1–3 (≈14 форматов) поднимет строгий SW-bitexact 55 → ~69/83.
Self-consistent (6, более слабая галочка, требуют внешнего оракула): gf14, gf48, gf96, gf128, gf512, gf1024.