Хочу разобраться в том, как строятся коды Хэмминга в расширении конечного поля. Вектор

над

является кодовым словом тогда и только тогда, когда

. Например, выберем следующую проверочную матрицу

-кода Хэмминга:

Переходя в расширение поля, эту матрицу можно записать более компактно. Столбцы матрицы

можно отождествить с элементами поля

. ТОгда, используя для построения поля

многочлен

и выбирая

в качестве представителя примитивного элемента

, перепишем матрицу в виде
![$H = [ \alpha^0 \alpha^1 \alpha^2 \alpha^3 \alpha^4 \alpha^5 \alpha^6]$ $H = [ \alpha^0 \alpha^1 \alpha^2 \alpha^3 \alpha^4 \alpha^5 \alpha^6]$](https://dxdy-03.korotkov.co.uk/f/a/8/b/a8b2885368c97578f09b4768c15af63982.png)
Формула

превращается в произведение векторов.
Я хочу пойти в обратном порядке: по многочлену построить проверочную и кодирующую матрицы. Для построения поля выберу тот же самый многочлен, получится та же самая матрица. А теперь я хочу закодировать и раскодировать сообщение. Так как этот код - циклический, процедуру кодирования можно записать так:

, где

. Возьмем сообщение

. Тогда

. Далее используем проверочную матрицу, чтобы убедиться в том, что получилось кодовое слово. Используем матрицу, составленную из элементов расширения поля:

Ошибка, должен был получиться ноль. Если записать биты бинарного представление многочленов в матрице в обратном порядке (от старшего к младшему), то получается то же самое, не ноль.
Где я ошибся:
-- 04.04.2023, 09:37 --Мои расчеты
