The real core

Student-ranked library

Адрес должен быть не raw codec, а место страницы в порядке: energy student-а, затем raw tie-breaker.

Правильный порядок

address(page) = rank_by( student_energy(page), raw_lexicographic_tiebreaker )

0                      → самые дешёвые / human-like страницы
...
2^32768 - 1            → самые дорогие / noise-like страницы

Exact MVP

Демо ниже работает на короткой длине, чтобы exact DP/counting считался прямо в браузере. Это не игрушечная идея — это тот же алгоритмический слой, который надо масштабировать до 4096.

Что это доказывает

Если counting layer считает число страниц с energy меньше E и число страниц с той же energy перед данной страницей, то порядок строгий и покрывает все страницы.

student_rank(page)
= count(energy < E(page))
+ count(energy = E(page), raw < page)