Jeroen Demeyer on Thu, 9 Oct 2003 22:13:13 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Oddities modulo multivariate polynomials


On Thu, Oct 09, 2003 at 08:51:32AM +0200, Gerhard Niklasch wrote:
> Hi Jeroen,
> 
> > Could anyone please explain what is happening here:
> > 
> >                   GP/PARI CALCULATOR Version 2.1.5 (released)
> >                 i686 running linux (ix86 kernel) 32-bit version
> >                 (readline v4.3 enabled, extended help available)
> > 
> > ? Y                   /* Make sure Y is defined first */
> > %1 = Y
> > ? (Y^2) % (X^3 - Y^2)
> > %2 = X^3
> > ? (X^3) % (X^2 + 1)
> > %3 = -X
> > ? ((Y^2) % (X^3 - Y^2)) % (X^2 + 1)
> > %4 = 0
> > 
> > How come the outputs of the two last statements are different?  Is this
> > a bug or am I doing something wrong?  Any help would be appreciated.
> 
> Hint: %2 is a polynomial in Y, of degree 0, with constant term X^3.
> (\x will show this.)
> 
> Thus the last '%' operation is performed in Q(X)[Y], not in Q[X],
> and the result is correct for Q(X)[Y] (where (X^2+1) is a nonzero
> constant and thus invertible - everything is divisible by it without
> remainder.)
> 
> Evaluate %2 at Y=0 or just extract the coefficient to get the desired
> polynomial in X.
> 
> (Just another facet of the general fact that PARI deals in polynomials
> in one variable over fields, not in multivariate polynomials, unlike
> most computer _algebra_ software.)
Thanks for the reply.

Allright now I think I understand what the problem is.  Is there an easy
way to solve this issue?  Wat I really want to do is arithmetic in a
ring of the form

Fp[X,Y] / (f(X), g(X,Y))

This is: a finite field (with prime order, so it's just modulo p) with 2
variables modulo two polynomials.  Can this be done with GP?
If it can't be done directly, I'll probably try to hack something like
that myself.