gfprimfd

Найдите примитивные полиномы для Поля Галуа

Синтаксис

pol = gfprimfd(m,opt,p)

Описание

Примечание

Эта функция выполняет вычисления в GF (pm), где p является главным. Чтобы работать в GF (2 м), используйте функцию primpoly. Для получения дополнительной информации смотрите Finding Primitive Polynomials в Примитивных Полиномах и Представлениях Элемента.

  • Если m = 1, pol = [1 1].

  • Полином представлен как строка, содержащая коэффициенты в порядке возрастающих степеней.

pol = gfprimfd(m,opt,p) поиски одного или нескольких примитивных полиномов для GF (p^m), где p является простым числом и m, являются положительным целым числом. Если m = 1, pol = [1 1]. Если  m > 1, вывод pol зависит от аргумента opt как показано в приведенной ниже таблице. Каждый полином представлен в 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 тестирует на primitivity использование gfprimck. Если opt является 'min', 'max', или не использованный, полиномы создаются путем преобразования десятичных целых чисел, чтобы основывать p. На основе десятичного упорядоченного расположения gfprimfd возвращает первый полином, это находит, что это удовлетворяет соответствующие условия.

Смотрите также

| | |

Представлено до R2006a