Page 1 sur 1

factor GF

Publié : lun. avr. 26, 2010 12:12 pm
par frederic han
salut,

j'ai un petit probleme avec factor:

F32:=GF(2,5,['a','F32'])
alors
factor(x^5+x^2+F32(1)) et factor(x^31+F32(1)) marchent bien

mais

factor(x^5+x^3+F32(1))

donne un unable to divide
a+

Fred

Re: factor GF

Publié : lun. avr. 26, 2010 2:17 pm
par parisse
en effet, je corrige ce bug, c'est parce que les coeffs d'un pgcd n'etaient pas reduits modulo 2, je viens de mettre le source a jour et voici le diff

Code : Tout sélectionner

diff quater.h quater.h~
111d110
<     polynome poly_reduce(const polynome & p) const ;

diff quater.cc quater.cc~
483,498d482
<   polynome galois_field::poly_reduce(const polynome & q) const {
<     polynome res(q.dim);
<     vector< monomial<gen> >::const_iterator it=q.coord.begin(),itend=q.coord.end();
<     for (;it!=itend;++it){
<       gen g=it->value;
<       if (is_integer(g)){
<       gen tmp=smod(g,p);
<       if (giac::is_zero(tmp))
<         continue;
<       g=galois_field(p,P,x,g*a);
<       }
<       res.coord.push_back(monomial<gen>(g,it->index));
<     }
<     return res;
<   }
< 
500c484
<     res=Tgcdpsr(poly_reduce(p),poly_reduce(q));
---
>     res=Tgcdpsr(p,q);


Re: factor GF

Publié : mar. avr. 27, 2010 2:20 pm
par frederic han
Ok ca marche

Merci