Maxima's rat package and "quotient is not exact"



>>>>> "Richard" == Richard Fateman <fateman at cs.berkeley.edu> writes:

    Richard> Without looking at the details:

    Richard> thankyou thankyou thankyou... especially
    Richard> if this is related to bugs that are fixed by changing the GCD switch.

I'm just looking. :-) It just happens that the integral gives small
polynomials to work with.  The couple of other bug reports on this
seem to have big polynomials.

    Richard> PREM is computing a polynomial pseudo-remainder.  it is
    Richard> always possible to compute a pseudo remainder of 2
    Richard> integer-coeff polys, essentially by premultiplying the
    Richard> dividend.  e.g. you cannot divide (x+1) by 3*x over the
    Richard> integers to get an integer-coeff polynomial, but you can
    Richard> divide 3*x+3*1 by 3*x.  The pseudo-remainder is 3.

Ok.  That's what I thought.

    Richard> Now what strikes me here is that there is %i floating
    Richard> around, and %i has different rules from ordinary
    Richard> variables, and there may be a difference in treatment of
    Richard> it from inside and outside the rat package. But maybe
    Richard> there is just a bug in prem?

I'm guessing it's doing something special.  I notice that the symbol
for the polynomial variable has things on the symbol plist.  Perhaps
that #:%innn has something on the tellrat property to tell it what to
do.  It seems that (#:%i 1 2) times (#:%i 1 1) returns (0 -2).  That
is 2*%i * %i is -2.

    Richard> I do not have the time to look at it -- and I haven't
    Richard> gotten my office windows machine to run maxima
    Richard> yet... maybe tomorrow...

In the meantime, does anyone know the name of the function that
converts this internal polynomial representation into standard maxima
form so I can print it out in a more friendly way when debugging?
That would help a lot.

Ray