Subject: "Upgrade" to Maxima 5.23.2 kills integration
From: Henry Baker
Date: Thu, 17 Mar 2011 09:16:54 -0700
Thanks, Stavros, radexpandall:all is the answer!
Yes, I agree with Fateman about fool's errands. You'll have to see my thread on math-fun re "signs/signum" to see that I'm willing to set up a test "harness" and mechanically check all combinations of signs when necessary.
I'm not relying on Maxima as a mathematical proof -- particularly on integration -- but for insight as to the possible range of answers, so Maxima's primness in this regard is counter-productive. In this case, for example, I might conclude that the integral can't be done in closed form, without realizing that a very minor change would make it integrable. Unless this is a question on a math exam, there are usually many ways to engineer the problem to make it more soluble.
At 08:37 AM 3/17/2011, Stavros Macrakis wrote:
>This appears to be related to the recent adoption of stricter simplification rules for sqrt -- 1/sqrt(x) and sqrt(1/x) are no longer considered equivalent, since the principal value of 1/sqrt(-1) = -%i and sqrt(1/-1) = %i.
>
> integrate(sqrt(1/(x^2+x)),x) => 'integrate(sqrt(1/(x^2+x)),x)
> integrate(1/sqrt(x^2+x),x) => log(2*sqrt(x^2+x)+2*x+1)
>
>The workaround is to set radexpand:all :
>
> integrate(sqrt(1/(x^2+x)),x),radexpand:all => log(2*sqrt(x^2+x)+2*x+1)
>
>Fateman has pointed out many times that trying to manipulate symbolic expressions in such a way that principal value is preserved is a fool's errand unless we get *much* more sophisticated in their handling (with a significant burden in usability). But even naive users are confused when sqrt(x^2) simplifies to x and not abs(x).... So it's not clear what the solution is.
>
> -s
>
>On Thu, Mar 17, 2011 at 10:51, Henry Baker <hbaker1 at pipeline.com> wrote:
>sqrt(1/(BdotB*t^2+2*AdotB*t+AdotA));