Bill Allombert on Fri, 05 Dec 2008 00:10:51 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: lift of FFELT |
On Thu, Dec 04, 2008 at 01:18:09PM +0100, Xavier-François Roblot wrote: > Hi guys, > > > at the moment, applying lift() to an FFELT results in doing nothing (cf. > gen3.c:2877). I think it would more sensible to return the corresponding > polynomial with coefficients lifted in Z. I know there are other ways to > achieve this result but I believe that would be consistent with the use > of lift() to go from INTMOD (which are also elements of a finite ring) Use .pol. As we already mentionned in this list, lift() is problematic due to variable ordering. A large motivation of the FFELT was to insulated them of the internal modular representation and avoid the need to assign them a variable priority. Consider a=ffgen(ffinit(2,2,a)) lift(y-a) or worse: lift('a-a) This would return an invalid object. > to INT. BTW, ffgen for primitive finite fields does not work: > > (12:48) gp > ffgen(ffinit(5,1), x) > *** at top-level: ffgen(ffinit(5,1),x) > *** ^-------------------- > *** ffgen: bug in PARI/GP (Segmentation Fault), please report > > so the only to get a generator of the multiplicative group is to use > znprimroot which returns a INTMOD. Hence, the need to have one common > function to deal with primitive and imprimitive cases at the same time. This one is a new bug introduced in revision 11369 with the always scary comment 'minor cleanups'... It should be fixed in revsision 11379. Thanks! Cheers, Bill.