|Bill Allombert on Sat, 31 Aug 2002 10:25:21 +0200|
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
|Re: multivariable polynomials|
On Tue, Aug 20, 2002 at 06:30:52PM -0400, Siman Wong wrote: > Hi, > > I'm using pari-2.1.4 to work with two-variable polynomials, and I got a > strange result: > > ? f = x^5 - y^234*x^2 - 3*y^7 > %1 = x^5 - y^234*x^2 - 3*y^7 > ? f % (x^3-1) > %2 = (-y^234 + 1)*x^2 - 3*y^7 > ? f % (y^3-1) > %3 = 0 > > In order words, I cannot "mod y" ! Is that because pari can only hand > polynomials with x as the variable? GP knows only Euclidean division for polynomial over a field. Since y has lower priority than x, GP make the computation in the field Q(y)[x], in which (y^3-1) is a unit, so f % (y^3-1) is 0. If you want to work in the field Q(x)[y] instead, you can replace x with a variable having higher priority than y, say z. ? subst(f,x,z)%(y^3-1) %4 = -3*y + (z^5 - z^2) To explicitly state that you want to apply '%(y^3-1)' to all coefficients of f as a polynomial in x, do: ? lift(f*Mod(1,y^3-1)) %5 = x^5 - x^2 - 3*y which work independently of the priorities of x and y. Note that it is very different from ? lift(Mod(f,y^3-1)) %6 = 0 Please see ??"Multivariate objects"@4 The documentation has been extended in the development version GP 2.2.4. Cheers, Bill.