Математические поля бывают не только бесконечными, как обычные числа, но и конечными — с ограниченным набором элементов. Такую систему можно сравнить с каруселью. Когда мы возводим элемент в степень q, все элементы сдвигаются по кругу: каждый переходит на соседнее место, а последний — на первое. Это плавное вращение открыто ещё Гауссом, а Фурье позже показал, как похожие идеи работают в анализе колебаний. Такое движение называют автоморфизмом Фробениуса.
Чтобы карусель крутилась без заеданий, нужен правильный стартовый порядок — нормальный базис. Раньше его подбирали вручную или случайно, как ищут выигрышный билет среди миллиона. Новый метод действует иначе: он не перебирает, а сразу вычисляет все негодные номера t. Семейство кандидатов $β_t$ = (θ − t)⁻¹ почти целиком пригодно, но есть небольшой брак — не более n(n−1) штук. Чтобы отсеять брак, достаточно один раз посчитать определитель циркулянтной матрицы — особый многочлен, корни которого указывают на дефектные варианты.
Такой подход — полностью детерминированный, без какой-либо случайности. Он даёт гарантию, что карусель запустится ровно. А попутно улучшается вычисление циркулянтных определителей, что пригождается в теории сетей и кодировании. В итоге криптографические протоколы получают надёжные ключи, а сложные вычисления становятся воспроизводимыми. Карусель чисел наконец вращается без сучка и задоринки.
Для поля со 100 элементами неподходящих номеров t не больше 10 тысяч. Для современных компьютеров это семечки. Но главный плюс метода — не скорость перебора, а изящное превращение геометрической задачи в алгебраическую: бракованные билеты ищутся как корни одного полинома.