Леухин А. - Марийский государственный технический университет

advertisement
52
АЛГОРИТМЫ CИНТЕЗА НЕПРИВОДИМЫХ МНОГОЧЛЕНОВ
НАД КОНЕЧНЫМИ ПОЛЯМИ 1
А.Н. Леухин2
2Марийский
государственный технический университет, 424000, Йошкар-Ола, пл.
Ленина 3. Тел. (8362) 455412. E-mail: inf@marstu.mari.ru
Рассмотрены вопросы построения неприводимых многочленов над заданным
конечным полем в явном виде. Проведен обзор алгоритмов факторизации
многочленов (проверки на неприводимость) над заданным конечным полем.
Рассмотрены алгоритмы построения всех неприводимых многочленов над
заданным конечным полем по исходному неприводимому многочлену.
Предложен эффективный алгоритм синтеза всех неприводимых многочленов над
заданным конечным полем по одному исходному.
Введение
Теория многочленов степени n от одной
переменной неприводимых над конечными
полями GF  p  важна как для исследования
алгебраической структуры конечных полей
GF p s  q , так и для многочисленных
приложений
в
современной
теории
обработки и передачи информации. Такие
многочлены имеют большое значение при
синтезе
шумоподобных
кодовых
последовательностей,
в
теории
помехоустойчивого
кодирования,
в
криптографии,
в
теории
кольцевых
счетчиков и т.д.
Первое
крупное
исследование
о
неприводимых многочленах от одной
переменной над полем GFq  было
проведено в работе [1], опирающейся на
результаты, полученные с времен Гаусса и
Галуа.
Фундаментальный
обзор
результатов по теории конечных полей,
включающий и теорию неприводимых
многочленов, полученных до середины 80х годов прошлого столетия приводится в
работе [2]. Современные эффективные
алгоритмы в конечных полях рассмотрены
в работе [3].
Однако имеется ряд важнейших проблем,
которые до сих пор не поддаются решению.
Одной из них является проблема
построения неприводимых многочленов
заданной степени в явном виде, а также
определение показателей, к которым
принадлежат неприводимые многочлены.


Далее
проведем
обзор
результатов
построения неприводимых многочленов в
явном виде, алгоритмов факторизации
многочленов над заданным конечным
полем и алгоритмов построения всех
неприводимых многочленов по одному
исходному.
Задание неприводимых многочленов
в явном виде
Наибольшие успехи достигнуты при
синтезе неприводимых малочленов –
многочленов с 2,3,4,5 слагаемыми.
Неприводимые двучлены f x   x n  1 над
заданным полем существуют лишь для
определенных значений степени n . В
работе [4] показано, что двучлен степени
n  2 k , k  0 неприводим над полем
GFq , q  1 mod 4 :
f x   x 2  a ,
a  GF q  - квадратичный невычет,
k
(1)
Неприводимые триномы f x   x n  x k  1,
1  k  n  1 над полем GF2 существуют
лишь для определенных значений степени
n . В работе [5] приводятся аналитические
выражения для неприводимых триномов
над полем GF2 , для любых k , l , m  0 :
k
k
k l
k l
x 2  3  x 3  1 , x 4 3 5  x 3 5  1 ,
k
k
k l
k l
x 37  x 7  1 , , x 63 7  x 3 7  1 , (2)
k
l
m
k
l
m
x10 3 11 31  x 33 11 31  1 .
_________________________________________________________
Работа выполнена при финансовой поддержке по темам НИР в рамках гранта Президента РФ МД-63.2007.9 и
гранта РФФИ 07-07-00285.
1
53
Неприводимый трином как над полем
GF q  p s , q  3 mod 4 , так и над полем
GF  p  , p  3 mod 4 имеет вид [6]:


k 1
(3)
f x   x 2  2ux 2  1 ,
где u  GF  p  и вычисляется итерационно:
u1  0 ,
k
p 1
4
 u 1
u i   i 1

 2 
mod p  , для 1  i  v ,
p 1
 u 1 4
mod p  , u  uv .
u v   v 1 
 2 
Неприводимые пятичленны
f x   x n  x k 3  x k 2  x k1  1,
1  k1  k 2  k 3  n  1 существуют для
любых значений n  4 . В работе [5]
показано, что неприводимыми над полем
GF2 для любых k , l , m, n  0 будут
являться следующие пятичлены
f x   x123
k l m
5 7 13n
k l m
n
k l m
 x 83
5 7 13n
k l m

n
 x 23 5 7 13  x 3 5 7 13  1 .
(4)
В работе [7] приводится метод построения
неприводимых
многочленов
степеней
n  4  3 k  5l
n  4  2 k  5l
над
над
полем
полем
GF2 ,
GF 3 ,
и
n  2  2 k  3l над полем GF  p  , p  3 для
любых неотрицательных целых k , l  0 .
Примеры аналитических выражений для
неприводимых многочленов над конечным
полем можно найти в работах [2,8,9].
Факторизация многочленов над
конечным полем
К сожалению, не всегда в явном виде
удается
получить
выражения
для
неприводимых многочленов произвольной
степени над заданным конечным полем. В
этом случае используются тесты на
неприводимость
или
алгоритмы
факторизации многочленов над конечным
полем.
Достаточно
полный
обзор
результатов по проблеме факторизации
многочленов над конечными полями в
хронологическом порядке изложен в
работах: [10] до 1982 г., [11] за 1982-1986 г,
[12] за 1987-1991, [13] до 1996.
Первый алгоритм разложения многочлена
на неприводимые множители с целыми
коэффициентами за конечное число шагов
был предложен австрийским астрономом
Шубертом в 1793 году [14]. Первый
критерий неприводимости многочлена над
полем рациональных чисел предложен
Эйзенштейном в 1850 году. В 1882 году
Кронекер заново открыл метод Шуберта, а
также предложил алгоритмы факторизации
многочленов с двумя и белее переменными.
В 1954 году Батлер [15] предложил тест на
неприводимость,
основанный
на
построении «Q - матрицы». Первая
достаточно эффективная в вычислительном
плане компьютерная реализация алгоритма
Кронекера для разложения на множители
многочленов
с
коэффициентами
из
конечного поля была осуществлена в 1966
[16]. С этого момента начинается основной
этап в построении быстрых алгоритмов
факторизации многочленов над конечными
полями. Настоящий прорыв был сделан
Берлекэмпом в 1967 году. Им в работе [17]
был предложен алгоритм, выполняющий
разложение за полиномиальное время, с
использованием матрицы Батлера. Ряд
усовершенствований метода Берлекэмпа
был выполнен в работах [18-20]. Другой
подход, основанный на нахождении корней
алгебраических
расширений
и
применением вероятностного анализа,
разработан Рабином в 1980 году [21], а его
усовершенствования предложенj в работе
[22]. Еще один подход с использованием
примитивного элемента в поле GF  p 
предложен в работе [23], а его
усовершенствования предложены в работах
[24-25]. На сегодняшний день развиты
эффективные
вероятностные
и
детерминированные [3,26] алгоритмы,
имеющие полиномиальную сложность.
Алгоритмы синтеза неприводимых
многочленов по одному «начальному»
Алгоритм построения всех неприводимых
многочленов над конечным простым полем
был предложен в работах [27,28]. В работах
[29,30] описан метод построения новых
неприводимых многочленов над полем
GF2 , исходя из данного неприводимого
многочлена.
В
статьях
[31,32]
показывается, как строить неприводимые
54
многочлены над GF2 , исходя из
примитивных многочленов. В работе [32]
приводится теоретико-матричный метод
построения
всех
неприводимых
многочленов, степени которых делят n ,
исходя из некоторого неприводимого
многочлена степени n . В работах [31,33]
описываются
методы
нахождения
примитивных многочленов над полем
GF2 , а в работе [34] указываются
аналогичные конструктивные методы для
случая произвольного конечного поля
GF  p  . В статье [35] приведены алгоритмы
для построения новых примитивных
многочленов над GF  p  , исходя из одного
такого многочлена.
Новый алгоритм синтеза неприводимых
многочленов над конечным полем
В этой работе приведем алгоритм синтеза
всех неприводимых многочленов степени
n над полем GF  p  .
1) На первом шаге формируется матрица
Фробениуса порядка n , сопровождающая
«начальный» примитивный многочлен
f x   x n  an1 x n1  an2 x n2  ...  a1 x  a0
над полем GF  p  .
 0 0 ... 0  a0 
 1 0 ... 0  a 
1 

(5)
A   0 1 ... 0  a 2  .


... 
... ... ... ...
 0 0 ... 1  a n1 
2) На втором шаге определяются
подмножества
коэффициентов
pn
сопряженных элементов поля GF p , и на
их
основе
формируются
вектор
коэффициентов
T Т  t 0 t1 t 2 ... t N p n 1 ,
(6)
 

N p n  
1
  d  p n
ndn

d
-
число
нормированных
неприводимых
многочленов степени n над полем GF  p  ,
 d  - функция Мебиуса, d - делители
степени n .
3) На третьем шаге исходная матрица
возводится в степень коэффициента
множества:
B  Ati , i  0,1,..., N p n  1 .
(7)
4) На четвертом шаге формируется матрица
по которой будет вычисляться
C
характеристический
многочлен
–
следующий неприводимый многочлен в
конечном поле. Для ее формирования в
качестве нулевого вектора используется
вектор c Т
0  1 0 0 ... 0 размерностью
n . Каждый j -ый столбец матрицы C
вычисляется как
(8)
c j 1  B  c j , j  0,1,..., n  2 .
5)
На
пятом
шаге,
используя
модифицированный метод исключения
Гаусса,
позволяющий
проводить
треангуляцию матрицы даже с нулевыми
элементами на главной диагонали, с учетом
выполнения операций деления в конечном
поле
GF  p  , формируется матрица
Крылова D . Последний D n1,n1 элемент
этой матрицы представляет собой искомый
неприводимый многочлен над полем
Отметим,
что
процедуры
GF  p  .
возведения
матрицы
в
степень
выполняются дихотомическим способом
при переходе от матрицы, возведенную в
степень предыдущего элемента вектора
коэффициентов (6). А в методе исключения
Гаусса используется эффективные методы
работы с разряженными матрицами.
Отличие предлагаемого алгоритма от
рассмотренных выше заключается в том,
что для его реализации не требуется
введение трудоёмких в вычислительном
плане операций умножения и деления
многочленов в конечном поле GF p n . Все
операции выполняются в поле GF  p  , при
этом возрастает производительность и
снижаются
требования
к
объёму
используемой памяти.
 
Заключение
Проведен обзор методов построения
неприводимых многочленов над заданным
конечным полем в явном виде, алгоритмов
факторизации многочленов (проверки на
неприводимость) над заданным конечным
полем и алгоритмов построения всех
неприводимых многочленов над заданным
конечным
полем
по
исходному
55
неприводимому многочлену. Предложен
эффективный алгоритм синтеза всех
неприводимых многочленов над заданным
конечным полем по одному исходному.
Программная реализация предлагаемого в
работе быстрого алгоритма показала
удовлетворительные
результаты
при
сравнительном анализе быстродействия с
аналогичными
специализированными
математическими продуктами GAP 4.4.6 и
MAGMA 2.12.
Ссылки
1. L.E. Dickson. Linear Groups with an Exposition of
the Galois Field Theory. New York. 1958.
2. Р. Лиддл, Г. Ниддерайтер. Конечные поля. М.:
Мир. Т.1,2. 1988.
3. V. Shoup. A Computational Introduction to Number
Theory and Algebra. Cambridge Univ. Press, 2005.
4. K. Ireland, M. Rosen. A Classical Introduction to
Modern Number Theory, Springer-Verlag, 1990.
5. Sh. Gao, D. Panario. Test and Construction of
Irreducible Polynomials over Finite Fields// in
Foundations of Computational Mathematics, F.
Cucker and M. Shub (Eds), Springer 1997, 346-361.
6. I. Blake, S.Gao, R. Mullin. Explicit factorization of
x 2  1 over F p with prime p  3 mod 4 // Appl.
Alg. Eng. Comm. Comp. 4 (1993), 89-94.
7. I. Shparlinski. Finding irreducible and primitive
polynomials// Appl. Alg. Eng. Comm. Comp. 4
(1993), 263-268.
8. A. Menezes, I. Blake, X. Gao, R. Mullin, S.
Vanstone, T. Yaghoobian. Applications of Finite
Fields. Kluwer Academic Publisher. 1993.
9. S. Gao, G. Mullen. Dikson polynomials and
irreducible polynomials over finite fields.// J.
Number Theory 49 (1994), 118-132.
10. E. Kaltofen. Factorization of Polynomials// in
Computer Algebra, 2nd edition, B. Buchberger,
R.Loos, G.Collins, editors, Springer Verlag, Vienna,
Austria, pp. 95-110 (1982)/
11. E. Kaltofen. Polynomial Factorization 1982-1986//
Proc. Of Conference “Computers and Mathematics”,
Stanford Univ., 1986.
12. E. Kaltofen. Polynomial Factorization 1987-1991//
Proc. Latin ’92, I.Simon (Ed.), Springer Lect. Notes
Comput. Sci., vol. 583, pp. 294-313 (1992).
13. J. von zur Gathen, D. Panario. A survey on factoring
polynomials over finite fields// J. Symb. Comp.,
1996.
14. D.E. Knuth. The Art of Computer Programming.
Seminumerical Algorithms// MA: Addison Wesley,
Vol.2, 1981.
15. M.C.R. Butler. On the reducibility of polynomials
over a finite field.// Quart. J. Math., Oxford Ser. (2)
5, pp.102-107 (1954).
16. S.C. Johnson. Tricks for Improving Kronecker’s
Method// Bell Laboratories Report, 1966.
17. E.R. Berlekamp. Factoring polynomials over finite
fields//Bell System Tech. J.46, pp. 1853-1859, 1967.
k
18. E.R. Berlekamp. Factoring polynomials over large
finite fields// Math. Comp, 24, pp.713-735, 1970.
19. D.G. Cantor, H. Zassenhaus. A new algorithm for
factoring polynomials over finite fields// Math.
Comp., 36, pp.587-592, 1981.
20. D. Wiedemann. Solving sparse linear equations over
finite fields// IEEE Trans. Inf. Theory IT-32, pp.5462, 1986.
21. M.O. Rabin. Probabilistic algorithms in finite fields//
SIAM J. Comp. 9, pp.273-280, 1980.
22. M. Ben-Or. Probabilistic algorithms in finite fields//
Proc. 22nd IEEE Symp. Foundations Comp. Sci,
pp.394-398, 1981.
23. Moenck R.T. On the efficiency of algorithms for
polynomial factoring// Math. Comp., 31, pp.235250, 1977.
24. J. von zur Gathen, V. Shoup. Computing Frobenius
maps and factoring polynomials// Proc. 24 h Ann.
ACM Symp. Theory Comput,
25. V. Shoup. Smoothness and factoring polynomials
over finite fields// Inform. Process. Letters, 38,
pp.39-42, 1991.
26. V. Shoup. A new polynomial factorization algorithm
and its implementation// J. Symb. Comp., 20,
pp.363-397, 1996.
27. C.P. Popovici. Integer irreducible polynomials
modulo p// Rev. Math. Pues Appl., 4, p.369-379,
1959.
28. C.P. Popovici. Irreducable polynomials modulo p.//
Acad. R.P. Romine Fil. Iasi Stud. Cerc. Sti. Mat. 11,
p.13-23, 1965.
29. Р.Р. Варшамов, А.М. Антонян. Об одном методе
синтеза
неприводимых
полиномов
над
конечными полями. – Докл. АН АрмССР, т.68,
№4, 1978, с.197-199.
30. Р.Р. Варшамов. Об одной теореме из теории
приводимости полиномов. – Докл. АН СССР,
т.156, №6, 1964, с.1308-1311.
31. J.D. Swift. Construction of Galois fields of
characteristic two and irreducible polynomials//
Math. Comp., 14, p.99-103, 1960.
32. Р.Р.
Варшамов.
Некоторые
вопросы
конструктивной
теории
приводимости
полиномов над конечными полями. – В кн.:
Проблемы кибернетики, вып. 27. – М.:
Физматгиз, 1973, с.127-134; исправления: вып.
28, с.280.
33. A. Lempel. Analysis and synthesis of polynomials
and sequences over GF(2), IEEE Trans. Information
Theory, IT-17, p.297-303, 1971.
34. Р.Р. Варшамов, Л.И. Гамкрелидзе. Об одном
методе построения примитивных полиномов над
конечными полями. – Сообщ. АН ГССР, т.99,
№1, 1980, с.61-64.
35. J.D. Alanen, D.E. Knuth. A table of minimum
functions for generating Galois fields of GF(p^n)//
Sankhya Ser. A 23, p.128, 1961.
Download