Berlekamp algoritmusa

A Berlekamp  -algoritmus egy olyan algoritmus, amely az unitárius polinomok véges mező feletti faktorizálására szolgál . Alvin Berlekamp tervezte 1967 - ben . Használható polinomok irreducibilitásának tesztelésére is véges mezőkön . Az algoritmus fő gondolata az a lehetőség, hogy az eredeti polinomot magának a polinomnak a legnagyobb közös osztóinak és néhány olyan polinomnak a szorzataként ábrázoljuk, amelyek egy szabad tagig bővülnek.

A Berlekamp-féle algoritmus nagy számítási bonyolultságú, ezért számos további módszert fejlesztettek ki a szükséges matematikai műveletek számának csökkentésére. Bonyolultsága ellenére azonban Berlekamp algoritmusát számítógépes algebrai rendszerekben is megvalósították. Az algoritmus széles körben alkalmazható a kódoláselméletben és a véges mezők lineáris ismétlődési összefüggéseinek vizsgálatában. Számos számítási probléma van az algebrában és a számelméletben, amelyek valamilyen módon összefüggenek a polinomok véges mezők feletti felosztásával, például polinomok faktorálása egész számok gyűrűjére, egy prímracionális szám felbontásának megtalálása algebrai számok területén, számítás valamely egyenlet Galois-csoportja a racionális számok mezője és a mezőbővítések szerkesztése felett.

Létrehozási előzmények

Egy amerikai matematikus, a Berlekamp- i Kaliforniai Egyetem professzora ciklikus hibaészlelési és -javító kódokat tanulmányozott , beleértve a Bose-Chowdhury-Hockwingham kódot , amelynek tulajdonságai a generáló polinomok osztóitól függenek. Berlekamp technikai fejlődése ezen kódok dekódolásában praktikusabbá tette azokat [1] .

Az algoritmust először a "Factoring Polynomials Over Finite Fields" [2] cikkben írták le, majd az "Algebraic Coding Theory" [2] című könyvben reprodukálták . Ebben az 1967-es cikkben [3] Berlekamp azt írja, hogy a faktorizációs probléma felmerül Golomb [4] írásaiban . A mátrix használatának lehetőségét azonban egy polinom normalizált tényezőinek meghatározására először Karel Piotr cikkében vette észre.[5] . Butler cikke [6] megállapította, hogy a mátrix rangja az,erre a tényre egy másik bizonyítékot Schwartz [7] adott .

A Berlekamp-algoritmust számos mű említi [8] , és a faktorizációs probléma megoldásának fő algoritmusa volt egészen a Cantor-Zassenhaus algoritmus 1981-es megjelenéséig.[9] . Kifejlesztettek egy technikát [10] , amely lehetővé teszi egy polinom faktorálását,ahol a négyzetmátrixok összetettségének becsléséhez mutató [11] .

Nyilatkozat és meghatározások

Megvizsgáljuk egy ( ) fokos polinom véges mezőn ( ,  egy prímszám ) [12] különböző irreducibilis unitér polinomokká való faktorizálásának problémáját .

Az algoritmusban való felhasználáshoz egy mátrixot építenek fel a következő feltételek szerint:

.

Egy olyan polinomot , amelyre , -dekompozíciós polinomnak nevezzük [13] .

Alapeset

Faktorizációs algoritmus egy polinom véges mezején a következő alakban:

a következő lépésekből áll:

  1. Mátrix számítás [14] .
  2. Keresse meg a lineáris egyenletrendszer megoldási alterének alapját [15] : , ebben az esetben lehetőség van a vektor kiválasztására , mivel az mindig jelen lesz [15] a megoldási tér alapjában annak következtében, hogy -nél .
  3. A talált szám az irreducibilis osztók száma [14] .
    • Ha , akkor a polinom
    irreducibilis .
  4. Ha , akkor a vektorok alakja . Ezeket a számokat használjuk felbontó polinomok létrehozására: .
  5. Dekompozíciós keresés [15] : mint: , ahol általános esetben nem redukálhatatlanok. A függvények faktorizálása ugyanúgy történik [15] , azaz: .

Általános eset

Egy tetszőleges unitárius polinom faktorizálásának problémája a főeset figyelembevételére redukálódik. Ehhez a polinomot számítjuk ki

az Euklidész algoritmus segítségével .

Így egy tetszőleges unitárius polinom véges mezőre való faktorálásának problémája véges számú olyan polinom faktorálására redukálódik, amelyeknek nincs több irreducibilis tényezője, vagyis a főesetre [16] .

Indoklás

Legyen:

, hol .

A kínai maradéktétel szerint a mezőelemek bármely halmazára létezik egy egyedi polinom [17] :

oly módon, hogy:

.

A polinom teljesíti a [17] feltételt :

,

és így [18] :

.

A feltételből:

,

és abból, hogy a jobb oldali faktorok koprímek, az következik, hogy a polinom minden irreducibilis osztója egy és csak egy polinomot oszt . Így a dekompozíció [18] érvényessége és egyedisége bizonyítást nyer :

Polinom kereséséhez:

Nézzük az összehasonlítást:

,

ami egyenértékű a [17] feltétellel :

.

A mátrix definíciója alapján a következőket kapjuk:

,

szóval [17] :

.

Az eredményül kapott egyenletrendszer meghatározza a -dekomponáló polinomok együtthatóit, és a következőképpen írható fel:

vagy:

[17] .

Az algoritmus összetettsége

Az algoritmus összetettsége a matematikai műveletek [19] . Az algoritmus csak kis mezők esetén lesz hatékony. Ez annak köszönhető, hogy mindent felsorolni kell .

Fejlesztések

Alkalmazás

A polinomiális faktorizációs algoritmusok fontosak a kódoláselméletben és a véges mezők lineáris ismétlődési összefüggéseinek vizsgálatában. A Berlekamp-algoritmust arra is használják, hogy kiszámítsák a racionális számok mezője feletti egyenlet Galois-csoportját, és terepmegoldásokat készítsenek, polinomokat bővítsenek az egész számok gyűrűjére, hogy megtalálják az egyszerű racionális számok dekompozícióját az algebrai számok területén, és néhány más számítási probléma esetén [24] . Tényezőbázisú algoritmusokpolinomiális faktorizációs algoritmusok segítségével oldja meg a diszkrét logaritmus megtalálásának problémáját [25] , amelynek számítási bonyolultságára az ElGamal- séma épül .

Implementációk számítógépes algebrai rendszerekben

A PARI/GP számítógépes algebra rendszerben a Berlekamp-algoritmus a factormod[26] paranccsal használható .

Jegyzetek

  1. Berlekamp, ​​1967 , p. 1854: "A ciklikus kódokról".
  2. 1 2 Berlekamp, ​​1967 .
  3. Berlekamp, ​​1967 , p. 1853.
  4. Golomb, Solomon Wolf. Shift Register Sequences . — Aegean Park Pr; Átdolgozott kiadás, 1981. - 274 p. — ISBN 978-0894120480 .
  5. PETR K. Uber die Reduzibilitat eines Polynoms mit ganzzahligen Koeffi-zienten nach einem Primzahlmodul. — Casopis Pest Mat. Fys, 1937, 85-94 .
  6. Butler, MCR A polinomok véges mező feletti redukálhatóságáról. - The Quarterly Journal of Mathematics Oxford Second Series 5, 1954. - S. 102-107 .
  7. Schwarz, St. A polinomok véges mező feletti redukálhatóságáról. — Quart. J Math. Oxford Ser. (2) 7, 1956. - 110-124 .
  8. Lidl, 1988 , Történelmi kommentár, p. 223-224.
  9. Cantor DG, Zassenhaus H. Új algoritmus polinomok faktorálására véges mezőkön. — Matek. Comp., 1981. Vol. 36. - P. 587-592.
  10. von zur Gathen J., Shoup V. Frobenius-térképek és faktorálási polinomok számítása. — Számítógép. Complexity, 1992. - 2. kötet . - S. 187-224 .
  11. Vasilenko, 2003 , p. 185: "A Cantor-Zassenhaus algoritmus összetettsége".
  12. Lidl, 1988 , Problémanyilatkozat, p. 187.
  13. Vasilenko, 2003 , Definíciók, p. 172.
  14. 1 2 Vasilenko, 2003 , Az algoritmus leírása, p. 173.
  15. 1 2 3 4 Lidl, 1988 , Az algoritmus leírása.
  16. 1 2 3 4 Lidl, 1988 , Kicsinyítés az alapügyre, p. 188.
  17. 1 2 3 4 5 Lidl, 1988 , Az algoritmus helyességének indoklása, p. 189-190.
  18. 1 2 Vasilenko, 2003 , p. 174.
  19. Vasilenko, 2003 , p. 174: "Az algoritmus összetettsége."
  20. Lidl, 1988 , Bővebben a módszerről, p. 201.
  21. Van der Waerden, 1976 , Az eredményről, p. 124.
  22. Lidl, 1988 , Bővebben a módszerről, p. 206.
  23. Kaltofen E, Lobo A. High-degree polinomok faktorálása a fekete doboz Berlekamp algoritmussal  //  Proceedings of the international symposium on Symbolic and algebraic compution (ISSAC '94). - N. Y .: ACM Press, 1994. - P. 90-98 . — ISBN 0-89791-638-7 . - doi : 10.1145/190347.190371 .
  24. Lidl, 1988 , Az algoritmus alkalmazása, p. 187.
  25. Vasilenko, 2003 , Tényezőalapú algoritmusok használatáról a diszkrét logaritmus-feladat megoldására, p. 137.
  26. GP/PARI függvények katalógusa: Aritmetikai függvények Archiválva : 2007. március 11.

Irodalom