Content deleted Content added
No edit summary |
ClueBot NG (talk | contribs) m Reverting possible vandalism by 73.26.85.56 to version by Daiyusha. Report False Positive? Thanks, ClueBot NG. (3215513) (Bot) |
||
Line 1:
{{for|the algorithm dealing with LFSRs|Berlekamp–Massey algorithm}}
In [[mathematics]], particularly [[computer algebra|computational algebra]], '''Berlekamp's algorithm''' is a well-known method for [[factoring polynomials over finite fields]] (also known as ''Galois fields''). The algorithm consists mainly of [[matrix (
==Overview==
Berlekamp's algorithm takes as input a [[square-free polynomial]] <math>f(x)</math> (i.e. one with no repeated factors) of degree <math>n</math> with coefficients in a finite field <math>\mathbb{F}_q</math> and gives as output a polynomial <math>g(x)</math> with coefficients in the same field such that <math>g(x)</math> divides <math>f(x)</math>. The algorithm may then be applied recursively to these and subsequent divisors, until we find the decomposition of <math>f(x)</math> into powers of [[irreducible polynomial]]s (recalling that the [[ring (mathematics)|ring]] of polynomials over a finite field is a [[unique factorization ___domain]]).
All possible factors of <math>f(x)</math> are contained within the [[factor ring]]
:<math>R = \frac{\mathbb{F}_q[x]}{\langle f(x) \rangle}.</math>
The algorithm focuses on polynomials <math>g(x) \in R</math> which satisfy the congruence:
:<math>g(x)^q \equiv g(x) \pmod{f(x)}.\,</math>
These polynomials form a [[subalgebra]] of R (which can be considered as an <math>n</math>-dimensional vector space over <math>\mathbb{F}_q</math>), called the ''Berlekamp subalgebra''. The Berlekamp subalgebra is of interest because the polynomials <math>g(x)</math> it contains satisfy
Line 52 ⟶ 59:
|chapter=4.6.2 Factorization of Polynomials
|title=Seminumerical Algorithms
|series=[[The Art of Computer Programming
|volume=2
|edition=Third
|