Algorytm Berlekampa

metoda rozkładu wielomianów nad ciałami skończonymi

Algorytm Berlekampaalgorytm faktoryzacji wielomianów o współczynnikach w ciele skończonym. Został opisany przez Elwyna Berlekampa w 1967.

Opis algorytmu edytuj

Wejście: wielomian   stopnia   o współczynnikach w ciele  -elementowym,
Wyjście: nietrywialny dzielnik wielomianu lub informacja, że jest on potęgą wielomianu nierozkładalnego.
1. Utwórz macierz   wielkości   której  -ta kolumna przedstawia  
2. Znajdź bazę jądra przekształcenia liniowego   można tego dokonać używając eliminacji Gaussa.
3. Dla dowolnego nieskalarnego wielomianu   (jeśli nie istnieje, to wielomian jest potęgą wielomianu nierozkładalnego) reprezentowanego przez wektor z bazy, dla każdego elementu   znajdź największy wspólny dzielnik wielomianów   i   (dla pewnego   będzie to poszukiwany nietrywialny dzielnik); może być on znaleziony algorytmem Euklidesa.

Złożoność i poprawność edytuj

Algorytm ma złożoność obliczeniową  

Jego poprawność opiera się na następujących faktach:

  •  
  • dla   wielomiany   i  względnie pierwsze,
  •  

Bibliografia edytuj

  • Berlekamp, Elwyn R., Factoring Polynomials Over Finite Fields, 1967.