HP Forums

Full Version: [bug]Calculate a conditional re-integration
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Not much to say, directly on the code
The XCAS terminal gives a big push warning
Warning, integration of abs or sign assumes constant sign by intervals (correct if the argument is real):
Check [abs(taylorx10^2-taylorx11^2)]
Discontinuities at zeroes of taylorx10^2-taylorx11^2 were not checked
No checks were made for singular points of antiderivative (taylorx10^2*taylorx11+(taylorx11^3)/3-(-(taylorx11^3)/3+taylorx10^2*taylorx11)*sign(taylorx10^2-taylorx11^2))/2 for definite integration in [0,1]
Warning, integration of abs or sign assumes constant sign by intervals (correct if the argument is real):
Check [sign(taylorx10^2-1)]
Discontinuities at zeroes of taylorx10^2-1 were not checked
Warning, integration of abs or sign assumes constant sign by intervals (correct if the argument is real):
Check [sign(taylorx10^2-1)]
Discontinuities at zeroes of taylorx10^2-1 were not checked

XCAS also gives the answer

But it is the wrong answer

WolframAlpha: ∫(∫(min(x^2,y^2),y,0,1),x,0,3)

Wolfram Alpha is right

Looking forward to the update of hp prime firmware in 2019
You have been warned that some checks were not done, it's not that surprising that the answer is wrong. Now ask yourself, how can I solve this exacty in an algorithm? You must find an antiderivative of min(x^2,y^2), and to do that you must rewrite min(x^2,y^2) algebraically, which is
then you can integrate w.r.t. y, since sign is constant by interval, g:=int((x^2+y^2)/2-abs(x^2-y^2)/2,y)
Then you would substitute between 0 and 1,
but that's not sufficient, because you should take care of the points where sign(x^2-y^2) is not continuous and add the right/left limit difference. And that means solving an equation. I have decided not to solve it if it is a parametric equation (here the equation in y depends on x), because it would raise endless loops or fail, instead I issue a warning.
Let's correct it :
We must correct the integral by substracting this step, for x in [0,1], i.e substract int(h1,x,0,1)=1/6.
I guess mathematica does more complete checks, but at some point, you will certainly be able to make it return wrong answer as well. I do not have a staff of people trying a lot of weird integrals to improve/implement automatic checks, you will have to be a little bit more smart, and fix answers when you have been warned.
Reference URL's