NEW-24
Fast-CM: универсальный context-mixing top-rail с бюджетом времени (профиль --max)
planned
MEDIUM
Ветка MODE_CM: бинарная декомпозиция байта (дерево из 8 бит) → модели: match model (хэш длинных контекстов), order-1..3 (хэшированные счётчики состояний), опционально word-model для text и sparse-контексты для binary → logistic mixing (16–64 весов, выбор набора по фиче-классу от NEW-21) → APM/SSE финальная калибровка → бинарный арифметик/rANS. Включение: профиль --max и/или бюджет NEW-22.5. Цели: **enwik8 ≤0.218** (сейчас 0.2622, ppmd 0.2240, gap +17.0%), **webster ≤0.155** (0.2105, ppmd 0.15...
expected
estimate from research, not a measurement
NEW-23
Learned Φ: лестница space-filling curves (Hilbert/Z-order/mixed-radix) per-file
planned
MEDIUM
CUBE-ветка v2: детект геометрии (периоды из автокорреляции) → кандидаты Φ (2–4 кривые × 1–2 гипотезы размерности) → competitive-min по быстрой прокси-метрике (энтропия дельт вдоль кривой на сэмпле, а не полное сжатие) → полное сжатие только победителя. Цели: **sao ≤0.605** (rank 3 → #1, gap всего +2.6% — ближайший недобитый файл всего рейтинга), укрепление mr/x-ray сверх MED16, и возвращение CUBE-режима в число выигрывающих веток хотя бы на 2–3 файлах (сейчас CUBE держит только аутсайдеров).
expected
estimate from research, not a measurement
NEW-22
SIMD rANS + многопоточный блочный конвейер (throughput как enabling-рычаг)
planned
MEDIUM
Энтропийное ядро: интерливленный N-way rANS (N=4/8), AVX2 на x86 + NEON на ARM, alias-метод или reciprocal-деление для symbol lookup; конвейер: pipeline-параллелизм стадий (transform → model → encode) поверх существующего блочного data-parallel; целевые числа: **декод ≥500 MB/s, енкод ≥150 MB/s на энтропийной стадии**; полный bwt-rans путь на 10MB residual — из «минуты» в «секунды». Бюджет времени для тяжёлых веток: полный бенчмарк-прогон ансамбля ≤ разумного CI-лимита.
expected
estimate from research, not a measurement
NEW-21
ML-lite контентный диспетчер: выбор ветки ансамбля до пробного сжатия
planned
MEDIUM
Двухступенчатая диспетчеризация: **stage 1** — фичи по сэмплу (первые/случайные 64KB, O(n) один проход), классификатор (ручные пороги → потом маленькое дерево решений, зашитое таблицей в код; никакого рантайм-ML-фреймворка); **stage 2** — competitive-min по топ-2..3 веткам вместо всех. Цели: (а) ни один файл не сидит в заведомо чужом режиме (устранить все rank 9 из-за mode-ошибки), (б) время полного прогона бенчмарка падает в 2–4×, (в) тяжёлые ветки (PPM/CM, bilevel, predictive) включаются в ...
expected
estimate from research, not a measurement
NEW-20
Header/container diet: минимальный контейнер для tiny-файлов
planned
MEDIUM
Отдельный **tiny-профиль контейнера**: однобайтовый tag-режим, varint-размеры, битовая упаковка параметров, нуль обязательных таблиц, запрет chunking ниже порога (один слитный блок — chunking на 4KB бессмыслен и тратит границы), опциональный отказ от контрольной суммы или 16-бит вместо 32/64. Цель: **суммарный оверхед контейнера ≤8–12 байт на файлах <64KB** (≤0.3% на xargs.1). Это не самостоятельный #1, а возврат 1–3% ratio всем tiny-веткам сразу.
expected
estimate from research, not a measurement
NEW-19
Per-class prebuilt dictionaries для tiny-файлов (<64KB)
planned
MEDIUM
Ветка tiny-ансамбля: детект класса (расширения нет — по содержимому: доля roff-макросов, скобочная глубина, C-токены, тэги) → LZ-парс с виртуальным префиксом = словарь класса → word transforms → существующий seq-кодер (H-25k FSE/rANS). Цель — **#1 на всех четырёх tiny-провалах**: xargs.1 ≤0.335 (сейчас 0.4530, rank 9, +30.8% к brotli), grammar.lsp ≤0.295 (0.3873, +28.1%), fields.c ≤0.238 (0.3056, +25.4%), cp.html ≤0.265 (0.3265, +20.0% к ppmd 0.2720). Словари шьются в бинарь кодека (сотни KB ...
expected
estimate from research, not a measurement
NEW-18
CALIC/LOCO-I-класс предиктивный кодер для 16-битных medical-изображений
planned
MEDIUM
Единая predictive-ветка для continuous-tone (8/16-бит, детект ширины и байтности): GAP/MED-предиктор → контекстная классификация (квантованные градиенты, 365 контекстов как в LOCO-I или 576+ как в CALIC) → bias-cancellation → кодирование остатков контекстным rANS (переиспользование H-19/H-20). Цель: **mr ≤ 0.205** (закрепить и углубить флип IW-02), **x-ray ≤ 0.435** (нарастить отрыв с −2.1% до −4%), и закрыть image-класс целиком, чтобы никакой будущий соперник в этой нише не догнал. Это превр...
expected
estimate from research, not a measurement
NEW-17
2D-контекстный bilevel-кодер JBIG2/CCITT-класса для ptt5
planned
MEDIUM
Полноценная bilevel-ветка ансамбля: детект bilevel-развёртки (доля уникальных байтов, периодичность строки, доля 0x00/0xFF) → упаковка в битовую плоскость с известной шириной строки → 10-соседний контекст → адаптивный бинарный кодер. Цель — не «догнать xz», а уйти в отрыв, куда LZ-класс дойти не может: **ratio ≤ 0.070 на ptt5** (сейчас cubrim 0.0873, xz 0.0777, gap +12.5%). Стратегически это единственный файл бенчмарка, где существует готовый класс алгоритмов с доказанным 20-40% отрывом от лу...
expected
estimate from research, not a measurement
NEW-16
exe-специфичная контекстная модель: opcode-aware контексты поверх LZ-резидуала (mozilla/ooffice/sum)
planned
MEDIUM
Режим MODE_LZ с literal-coder переключаемым по классу сегмента: text→order-2 (H-20), exe→opcode-aware контексты, generic→H-25f. Классификатор инструкций — таблица ~2KB, автомат O(n). Для SPARC (sum) — тривиальней: инструкции фиксированной ширины 4, контекст = позиция байта в слове + старшие биты опкода.
expected
estimate from research, not a measurement
NEW-15
grammar compression front-end (RePair/Sequitur) как самостоятельный бэкенд для сильно структурированных данных
planned
MEDIUM
MODE_GRAMMAR: RePair над байтами (или над словами после токенизации) → сериализация грамматики (правила delta-кодом) + top-level последовательность → order-2 rANS (H-20). Диспетчеризация по structure-детектору (высокая повторность длинных n-грамм при умеренной order-0 энтропии). За rail, как всё.
expected
estimate from research, not a measurement
NEW-14
nci chemical-database специализация: SDF-токенизатор + числовые таблицы delta
planned
MEDIUM
SDF-детектор (сигнатура `$$$$` + V2000-маркер) → разбор на потоки: {заголовки, счётчики атомов/связей, atom-координаты×3, element-символы, bond-пары, свойства} → NEW-13 typed-кодеки по потокам → rANS. Непарсящиеся блоки — residual в текстовую ветку.
expected
estimate from research, not a measurement
NEW-13
typed-column codec bank: float XOR-delta (Gorilla), int FOR/zigzag, string dict — per-column после транспонирования
planned
MEDIUM
Банк кодеков с автоподбором per-column: {raw, delta-u8/u16/u32/u64 LE/BE, zigzag+FOR, XOR-delta f32/f64, dict, RLE} × быстрая оценка стоимости каждого на префиксе колонки → выбор минимума (тот же принцип competitive-min, но внутри колонки). Выход любого кодека — далее в общий rANS (H-19/H-20).
expected
estimate from research, not a measurement
NEW-12
универсальный fixed-stride record detector: автокорреляция периодов → транспонирование любого struct-array
planned
MEDIUM
Детектор как штатный этап dispatch: для каждого файла/сегмента <порога стоимости считаем автокорреляционный профиль (лаги 2..4096), при выраженном пике T и подтверждении на пробном транспонировании (быстрая entropy-оценка колонок vs исходника) — маршрут в SOA-ветку с параметром T. Двухуровневость: сначала на целом файле, затем на сегментах (контейнеры из NEW-10/11 дают уже нарезанные кандидаты).
expected
estimate from research, not a measurement
NEW-11
BIFF/XLS record-parser для kennedy.xls: записи → SoA-колонки → typed delta
planned
MEDIUM
Полный BIFF-front-end: поток записей → группировка по type → SoA-транспонирование полей по схеме типа → typed-column кодеки (NEW-13) → rANS. Неразобранные типы записей идут сырым residual-потоком в обычный MODE_LZ (безопасность по построению).
expected
estimate from research, not a measurement
NEW-10
ELF/PE section-aware разбор исполняемых: секционная маршрутизация потоков
planned
MEDIUM
Универсальный container-splitter: ELF и PE парсеры → сегментация → маршрутизация сегментов в существующие ветки ансамбля → контейнерный формат MODE_SECTIONS с побайтовой реконструкцией. Дальше тот же каркас переиспользуется для tar (mozilla), BIFF (NEW-11) и любых будущих контейнеров.
expected
estimate from research, not a measurement
NEW-09
x86 BCJ/BCJ2-фильтр (E8/E9 call/jump absolute→relative) + рамка generic branch-filter
planned
MEDIUM
Полный branch-filter-фреймворк: детектор архитектуры (x86/x86-64/SPARC/ARM/ARM64/PPC — сигнатуры ELF `e_machine` / PE `Machine`, плюс статистический fallback по частотам опкодов) → соответствующий фильтр → существующий MODE_LZ/BWT-бэкенд. IW-05 (SPARC) становится частным случаем этой рамки, а не отдельной веткой.
expected
estimate from research, not a measurement
NEW-08
SSE/APM слой поверх любого существующего энтропийного бэкенда: дешёвые 2–5% на всех файлах
planned
MEDIUM
Горизонтальный слой в кодеке: любой адаптивный/полуадаптивный кодер получает опцию `+SSE`, competitive-min включает её там, где она платит. Прямые цели: sao 0.6244 → ≤0.6087 (7z, gap всего +2.6% — ближайший #1 в таблице), mr 0.2540 → добор к цели IW-02 0.2104, nci (+10.7%) и xml (+12.6%) — короткие гэпы, где 3–5% SSE — половина пути. Косвенная цель: обязательный компонент NEW-01/NEW-05 (там SSE-каскад — часть канона).
expected
estimate from research, not a measurement
NEW-07
ROLZ бэкенд (reduced-offset LZ): LZ-скорость с ppmd-классом энтропии дистанций
planned
MEDIUM
Сократить text-gap LZ-ветки с +17..+33% до +5..+10% при LZ-скорости декода; на отдельных структурированных файлах — прямое #1: xml (cubrim 0.0907 vs brotli 0.0805, +12.6%) и nci (0.0478 vs xz 0.0432, +10.7%) — оба с короткоконтекстными повторами, идеальными для контекстной таблицы ROLZ. Вторично: reymont (+24.0%), dickens (+28.8%), samba (+11.8%) как средний ярус, где полный CM не пройдёт по скорости.
expected
estimate from research, not a measurement
NEW-06
LZP + long-range match model для enwik8: дальние повторы вне LZ-окна + CM-литералы
planned
MEDIUM
enwik8 ≤0.215 (ppmd 0.2240, −4% к лидеру) → крупнейший одиночный вклад в overall: грубая оценка size-weighted эффекта — только enwik8 с 0.2622→0.215 тянет overall с 0.2492 в район ~0.235, мимо xz (0.2344) недалеко; в связке с text-победами NEW-01/02 — overall #1. Вторичные цели: webster (+33.4%, словарная структура с дальними повторами), mozilla (+17.7%, повторяющиеся ресурсы в бинаре), samba (+11.8%, повторы кода между файлами tar).
expected
estimate from research, not a measurement
NEW-05
BWT + CM пост-модель (bsc/mcm-класс): мощная контекстная модель с SSE поверх BWT-трека
planned
MEDIUM
№1 на CHUNKED/малых text, где сейчас худшие text-гэпы: plrabn12.txt (cubrim 0.3636 vs ppmd 0.2750, +32.2%), alice29.txt (0.3268 vs 0.2563, +27.5%), asyoulik.txt (0.3481 vs 0.2903, +19.9%), cp.html (0.3265 vs ppmd 0.2720, +20.0%), плюс средние LZ-text при переключении их на BWT-путь: dickens (+28.8%), lcet10 (+31.0%), reymont (+24.0%). Цель — ppmd ±0..−4% на этой группе при скорости выше NEW-01/NEW-02.
expected
estimate from research, not a measurement
NEW-04
LZMA-класс бэкенд: LZ77 + range coder с pos/state/rep-контекстами
planned
MEDIUM
№1 на файлах, где лидер — xz/7z/brotli с LZ77-механикой, а PPM/CM-классы не лидируют: samba (cubrim 0.1934 vs xz 0.1731, +11.8%), nci (0.0478 vs xz 0.0432, +10.7%), xml (0.0907 vs brotli 0.0805, +12.6%), sum (0.3458 vs xz 0.2484, +39.2%, в связке с IW-05 BCJ), mozilla (0.3066 vs 7z 0.2605, +17.7%) и ooffice (0.4357 vs rar 0.3742, +16.4%) в связке с x86-BCJ (см. трек binary/exe). Цель — xz −1..−3% на этой группе.
expected
estimate from research, not a measurement
NEW-03
Word-based модель для natural text: токенизация слово/пунктуация + order-2 по словам
planned
MEDIUM
№1 на «книжной» подгруппе text: webster (cubrim 0.2105 vs ppmd 0.1578, +33.4%), dickens (0.2903 vs 0.2253, +28.8%), lcet10 (0.2964 vs 0.2262, +31.0%), plrabn12 (0.3636 vs 0.2750, +32.2%), alice29 (0.3268 vs 0.2563, +27.5%), asyoulik (0.3481 vs 0.2903, +19.9%), reymont (0.2136 vs 0.1722, +24.0%), enwik8 (0.2622 vs 0.2240, +17.0%). Цель — ppmd −3..−8% на этой подгруппе.
expected
estimate from research, not a measurement
NEW-02
Собственная PPMd var.H/var.I реализация (SEE + information inheritance) как text-бэкенд
planned
MEDIUM
Паритет ±0.5% с ppmd на всех 11 text-файлах как пол, затем +1–3% сверху за счёт тюнинга — итог #1 или co-#1 на webster (0.1578), dickens (0.2253), lcet10 (0.2262), plrabn12 (0.2750), reymont (0.1722), alice29 (0.2563), asyoulik (0.2903), cp.html (0.2720), enwik8 (0.2240), плюс osdb, где ppmd тоже лидер (0.2366, наш gap +30.7%).
expected
estimate from research, not a measurement
IW-06
bwt-rans throughput (10MB residual медленно даже параллельно)
implementing now
HIGH
Скоростная гипотеза: bwt-rans ветка на больших residual-потоках (10MB+) медленна даже в параллели — это душит и текущие прогоны рейтинга, и будущие ladder/ensemble-схемы (IW-01, competitive-min пробует НЕСКОЛЬКО веток на файл — каждая должна быть быстрой). Цель: убрать throughput как ограничитель стратегии ансамбля — чтобы полный корпусный прогон с ladder-кандидатами был минутами, а не часами, и чтобы enwik8 (100MB) был практичен для контекст-веток IW-04.
expected
estimate from research, not a measurement
FU-06
database columnar-транспонирование (osdb / nci)
planned
MEDIUM
Расширить доказанный columnar-приём (H-47..H-48 SHIPPED на telemetry) на database-класс бенчмарка: детектировать записи фиксированной/квази-фиксированной ширины, транспонировать поток в колонки полей, по-колоночно применять delta/RLE/узкий rANS, затем существующий LZ-бэкенд. Это тот же структурный рычаг, что FU-03 (kennedy), но на «настоящих» БД-файлах.
expected
estimate from research, not a measurement
IW-05
SPARC-BCJ фильтр для sum/exe (xz бьёт вдвое своим BCJ)
implementing now
HIGH
sum — второй по величине единичный разрыв корпуса: rank 9, 0.3458 vs xz 0.2484 (+39.2%). Диагноз известен: sum — SPARC-ELF, не текст; xz прогоняет его через свой SPARC-BCJ фильтр (нормализация call/branch-смещений в абсолютные адреса), после чего LZMA видит повторы, невидимые без фильтра. Цель — свой BCJ-слой перед MODE_LZ: сначала SPARC (sum), затем x86 (mozilla +17.7%, ooffice +16.4%). BCJ — проверенный десятилетиями чужой рычаг, тут нет исследования, есть перенос.
expected
estimate from research, not a measurement
FU-05
JPEG-LS-класс для остальных image (ptt5)
planned
MEDIUM
Image-класс почти закрыт: x-ray уже #1 (0.4451 vs ppmd 0.4545, −2.1%), mr добивается треком IW-01/IW-02 (MED16). Остался ptt5 — CCITT bilevel fax-скан: 0.0873 vs xz 0.0777 (**+12.5%**, rank 5). Для битонального изображения правильный класс модели — не MED16 (он для 16-битных медицинских градаций), а 2D-контекстное кодирование пикселей по соседям верхней строки: JBIG-класс контекст (10 соседних пикселей → адаптивная вероятность → rANS), либо JPEG-LS-режим run-mode для длинных белых полей.
expected
estimate from research, not a measurement
IW-04
PPMd-класс context backend для text (11 файлов, ~25% к ppmd) — research
implementing now
HIGH
Крупнейший совокупный приз корпуса: text — 11 файлов, лидер ppmd на всех, разрывы 12.6-33.4% (webster +33.4, plrabn12 +32.2, lcet10 +31.0, dickens +28.8, alice29 +27.5, reymont +24.0, cp.html +20.0, asyoulik +19.9, enwik8 +17.0, xml +12.6, xargs.1 +30.8 к brotli). Метрика overall — size-weighted, enwik8 (100MB) доминирует: паритет с ppmd только на enwik8 (0.2622 → 0.2240) сдвигает overall с 0.2492 к ~0.245 и с rank 6 в сторону топ-3. Цель — контекстный backend PPMd/CM-класса как ветка ансамбл...
expected
estimate from research, not a measurement
FU-04
word-model static dictionary для text (brotli-подобный словарь)
planned
MEDIUM
Встроенный статический словарь слов/фраз + word-level трансформы (капитализация, суффиксы, префиксные склейки) в LZ-ветке — то, чем brotli берёт малые и средние текстовые файлы: модель приносит контекст с собой и не платит стоимость обучения на первых килобайтах. Направление: словарь как виртуальное «предокно» LZ (матчи с отрицательными офсетами в словарную зону) + компактный transform-код при матче.
expected
estimate from research, not a measurement
IW-03
small-file context для tiny text/code (16-31% к brotli; BWT-блок мал)
implementing now
HIGH
Мелкие text/code-файлы — худший карман корпуса: xargs.1 rank 9 (0.4530 vs brotli 0.3463, +30.8%), grammar.lsp rank 9 (0.3873 vs brotli 0.3023, +28.1%), fields.c rank 9 (0.3056 vs brotli 0.2437, +25.4%), cp.html rank 8 (0.3265 vs ppmd 0.2720, +20.0%). Причина диагностирована: на <64KB BWT-блок слишком мал, статистике не на чем сойтись, а у brotli есть встроенный словарь, дающий «бесплатный» контекст. Цель — специализированная tiny-ветка: контекстная модель с приором + статический словарь, дисп...
expected
estimate from research, not a measurement
FU-03
kennedy.xls: record-model для бинарных таблиц
planned
MEDIUM
kennedy.xls — худший единичный разрыв бенчмарка: 0.0513 vs rar 0.0345 (**+48.6%**, rank 4). rar выигрывает record-repetition: XLS (BIFF) — это поток типизированных записей фиксированной структуры, где одноимённые поля повторяются со сдвигом «длина записи». Направление: детектор периодической record-структуры + разрезание потока на колонки полей (транспонирование по периоду записи) + delta/RLE по колонкам перед LZ/rANS.
expected
estimate from research, not a measurement
FU-02
tiny-file dispatcher: увести <64KB от CUBE
planned
MEDIUM
Все четыре худших rank-9/8 файла бенчмарка — крошечные, и все сидят на CUBE-режиме: диспетчер отдаёт мелочь кубу, хотя куб на <64KB не успевает окупить шапку и карту расстояний. Направление: отдельная tiny-ветка диспетчера (<64KB), которая маршрутизирует в order-2/order-3 контекстный кодер малого блока (наследие H-12/H-20) вместо CUBE, за competitive-min rail.
expected
estimate from research, not a measurement
IW-01
MED16 adaptive-width: детект + ladder 256..2048 (competitive-min) для образов
implementing now
HIGH
MED16 с фиксированной шириной уже дал x-ray #1 (0.4451 vs ppmd 0.4545, −2.1%), а ручной подбор w=512 флипнул mr (0.2104 vs ppmd 0.2308, IW-02). Цель этой работы — убрать ручной подбор: автодетект ширины строки развёртки + лестница кандидатов 256/512/1024/2048 за competitive-min, чтобы ЛЮБОЙ 16-битный образ автоматически получал оптимальную ширину. Итог: image-класс закрыт системно, а не поштучно.
expected
estimate from research, not a measurement
FU-01
H-62: u16→u32 BWT primary_index (крупный BWT-блок)
planned
MEDIUM
Снять формато-обусловленный потолок BWT-блока 64K (primary_index хранится как u16) и открыть ladder размеров блока 256K / 1M / 4M. Цель — чтобы bwt-rans-ветка на тексте работала с блоками того же порядка, что bzip2 (900K) и больше: у BWT качество контекстной сортировки растёт с блоком, а сейчас CHUNKED-режим режет текст на 64K-куски и теряет кросс-блочный контекст.
expected
estimate from research, not a measurement
H-02a
`Φ` = Hilbert-кривая (претендент на замену mixed-radix)
planned
MEDIUM
Hilbert-кривая сохраняет локальность: соседние точки кривой — соседи в 2D. Это ценно ровно там, где у данных есть настоящая 2D-геометрия, и почти бесполезно там, где куб — искусственный сгиб байтового потока. Стремиться: Hilbert-scan как Φ-вариант для image-класса и регулярного binary, выбранный детектором, а не по умолчанию. Классическая аналогия — JBIG-подобные сканы бинарных растров: у ptt5 (факс) locality-scan + RLE исторически рвёт линейные развёртки.
expected
estimate from research, not a measurement