Поиск примитивных полиномов для поля Галуа
pol = gfprimfd(m,opt,p)
Примечание
Эта функция выполняет расчеты в GF (pm), где p является простым. Для работы в ГФ (2m), используйте primpoly функция. Для получения дополнительной информации смотрите Finding Primitive Polynomials в Примитивных Полиномах и Представлениях Элемента.
Если m = 1, pol = [1 1].
Полином представлен как строка, содержащая коэффициенты в порядке возрастания степеней.
pol = gfprimfd(m, ищет один или несколько примитивных полиномы для GF opt,p) (p^m), где p является простым числом и m является положительным целым числом. Если m = 1, pol = [1 1]. Если m > 1, выходные pol зависит от аргумента opt как показано в таблице ниже. Каждый полином представлен в pol как строка, содержащая коэффициенты в порядке возрастающих степеней.
| выбрать | Значимость pol | Формат pol |
|---|---|---|
'min' | Один примитивный полином для GF (p^m) имеющий наименьшее возможное число ненулевых членов | Вектор-строка, представляющая полином |
'max' | Один примитивный полином для GF (p^m) с максимально возможным количеством ненулевых членов | Вектор-строка, представляющая полином |
'all' | Все примитивные полиномы для GF (p^m) | Матрица, каждая строка которой представляет один такой полином |
| Положительное целое число | Все примитивные полиномы для GF (p^m) которые имеют opt ненулевые условия | Матрица, каждая строка которой представляет один такой полином |
Приведенный ниже код ищет примитивные полиномы для GF (81), имеющих различные другие свойства. Заметьте, что fourterms пуст, потому что ни один примитивный полином для GF (81) не имеет в точности четырех ненулевых членов. Также заметьте, что fewterms представляет один полином, имеющий три члена, в то время как threeterms представляет все трехмерные примитивные полиномы для GF (81).
p = 3; m = 4; % Work in GF(81). fewterms = gfprimfd(m,'min',p) threeterms = gfprimfd(m,3,p) fourterms = gfprimfd(m,4,p)
Ниже приведен выход.
fewterms =
2 1 0 0 1
threeterms =
2 1 0 0 1
2 2 0 0 1
2 0 0 1 1
2 0 0 2 1
No primitive polynomial satisfies the given constraints.
fourterms =
[]
gfprimfd тесты на примитивность с использованием gfprimck. Если opt является 'min', 'max'или опущенные полиномы строятся путем преобразования десятичных целых чисел в базовые p. На основе десятичного упорядоченного расположения, gfprimfd возвращает первый полином, который он находит, удовлетворяющий соответствующим условиям.