Высшая алгебра
При вводе многочленов я хочу располагать коэффициенты от старших к младшим (например, под "1 0 0 0" буду подразумевать
x
3
, а не 1).
Построение конечного поля
Я хочу не только создать объект, но и полностью его просчитать: установить соответствие между вектором и степенью порождающего элемента, определить порядки элементов и т.п.
Я строю поле, изоморфное факторкольцу
Z
[
x
]/(
).
// Например:
Z
3
[
x
]/(1 0 2 1),
Z
2
[
x
]/(1 0 0 1 1).
Порождающий элемент: α = (
).
// Например, α = (1 0) соответствует многочлену
x
.
Построение БЧХ-кода
Да, я хочу построить БЧХ-код, работающий с вышеуказанным полем.
Символы кодовых слов принадлежат полю
F
.
// Например:
F
3
,
F
16
.
Кодовое расстояние
d
=
.
// Например:
d
= 5,
d
= 7.
В качестве
β
, порядок которого равен длине кода, возьмём
β
=
α
.
// Например:
β
=
α
2
,
β
=
α
1
.
И, наконец, параметр
b
, определяющий, в какую степень будет возведён
β
:
b
=
.
// Например:
b
= 1 — код в узком смысле.
Работа с БЧХ-кодом
Закодировать информационный вектор
a
Вектор: (
)
Раскодировать принятый вектор
y
Внимание! На время контрольных работ система отключается!
Поле
F
4
=
Z
2
[
x
]/(
x
2
+
x
+ 1). Порождающий элемент: α =
x
.
№
Многочлен
α
?
Порядок
Подполе
Минимальный многочлен над
Z
2
0
0 0
—
—
F
2
1
χ
1
0 1
α
0
1
F
2
1
χ
+ 1
2
1 0
α
1
3
—
χ
2
+
χ
+ 1
3
1 1
α
2
3
—
χ
2
+
χ
+ 1