how to find irreducible factors of a polynomial

3 vues (au cours des 30 derniers jours)
Monika  Kok
Monika Kok le 27 Avr 2016
i have a polynomial p in binary format and i want to get all the irreducible factors of this polynomial.
p = [ 1 1 1 1 0 1 0 1 1 0 0 1];
thanks
monica

Réponses (2)

Roger Stafford
Roger Stafford le 27 Avr 2016
Modifié(e) : Roger Stafford le 27 Avr 2016
What ring or field can the coefficients of your reduced polynomials belong to? It makes a difference as to their classification as irreducible. For one field they are and another they aren't.
If the field is simply all reals, then you can use 'roots' to determine the irreducible factors. A pair of conjugate roots will together constitute a quadratic irreducible factor while real roots will give you simple first degree factors.

Walter Roberson
Walter Roberson le 27 Avr 2016
R = feval(symengine, 'Dom::IntegerMod', 2); %ring over binary
ps = poly2sym(p); %convert to symbolic poly
ppoly = feval(symengine, 'poly', ps, R); %convert symbolic poly to polynomial over ring
pfact = factor(ppoly, x); %factor it into irreducible terms
numfact = length(pfact);
facts = sym(zeros(1,numfact));
for idx = 1 : numfact
facts(idx) = feval(symengine, 'expr', pfact(idx)); %convert them to polynomials
end
Note: this happens to return the constant polynomial 1 as one of the factors.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by