Bug in Maxima 5.30.0



>>>>> "Robert" == Robert Dodier <robert.dodier at gmail.com> writes:

    Robert> On 2013-08-30, Raymond Toy <toy.raymond at gmail.com> wrote:
    >> 3137b946bed77dc4311e4266ed338cd2d46d299f is the first bad
    >> commit commit 3137b946bed77dc4311e4266ed338cd2d46d299f Author:
    >> robert_dodier <robert_dodier at users.sourceforge.net> Date: Thu
    >> Mar 21 16:03:43 2013 -0700
    >>
    >> Call CLEARSIGN from $SIGN to clean up facts introduced by sign
    >> functions.
    >>
    >> All versions before this commit are fine; you only have to
    >> answer one question and the integral is evaluated correctly.
    >> All versions after this version are bad; you have to answer
    >> several questions and the integral is not evaluated.

    Robert> Hrm. That change was made to counteract some other strange
    Robert> behavior -- 'sign' left some facts floating around after
    Robert> it was called. Without looking at the integration code, my
    Robert> guess is that it is assuming the sign fact persists for
    Robert> the duration of the integration. Should there be separate
    Robert> sign-plus-cleanup and sign-with-no-cleanup functions? It
    Robert> hurts my head a little bit but maybe so ....

Yeah, I hate looking at the sign code.  I knew this commit fixed some
issues, but I don't understand the code or usage well enough to
propose any solution.

I did trace through the integration example.  The many questions
appear to come from computing the limit in poles-in-interval and
limit. Setting intanalysis:false gives just two questions and returns
a limit form.  I don't understand why maxima can't evaluate the
limit.  If it could, then it would have given the correct answer.

Ray