Regression in integration



Rupert,

Thanks for the party spoiling tip. 

Asksign appends an association list element to *LOCAL-SIGNS*. When askequal(a,b) is true, the best I can think of is to 
append (a-b).$zero to *LOCAL-SIGNS*.  For extended reals or lists, or ...., that's terrible.  When  askequal(a,b)
is false, maybe appending (a-b).$pn, would work, but I'm not counting on that.

--Barton

________________________________________
From: maxima-bounces at math.utexas.edu [maxima-bounces at math.utexas.edu] on behalf of Rupert Swarbrick [rswarbrick at gmail.com]
Sent: Wednesday, May 22, 2013 08:12
To: maxima at math.utexas.edu
Subject: Re: [Maxima] Regression in integration

Barton Willis <willisb at unk.edu> writes:
> For  askequal,  here is a hastily written function
>
> (defun $askequal (a b)
>   (let ((answer (meqp a b)))
>     (setq answer
>         (cond ((eq answer t) '$yes)
>               ((eq answer nil) '$no)
>               (t
>                (retrieve `((mtext) "Is " ,a "equal to " ,b "?") nil))))
>
>     (cond ((eq answer '$no)
>          (assume (take '($notequal) a b))
>          answer)
>         ((eq answer '$yes)
>          (assume (take '($equal) a b))
>          answer)
>         (t
>          (mtell "Please answer either yes or no.")
>          ($askequal a b)))))

Just because this is still in my head: This behaves rather differently
>From $asksign, since it doesn't remember what it's been told. I guess
you also want a call to tdzero or tdpn with the difference between the
two terms?

Rupert