```Date: Jul 24, 2013 3:14 AM
Author: Nasser Abbasi
Subject: Re: An independent integration test suite

On 7/24/2013 1:25 AM, daly@axiom-developer.org wrote:> On Wednesday, July 24, 2013 1:21:51 AM UTC-4, Albert Rich wrote:>> On Tuesday, July 23, 2013 2:32:20 PM UTC-10, da...@axiom-developer.org wrote:>>>>>>>>> We differ on some results because Rubi (or whatever program you are using>>>>> to create the optimal results) assumes that square roots have only a single>>>>> positive value. Axiom does not want to make this simplification so given>>>>>      sqrt(3)*sqrt(7)*sqrt(21) - 21>>>>> Axiom will not simplify this to zero but the Rubi test suite does.>>>>>>>> Surly there must be a way to tell Axiom to choose the principal branch so sqrt(4)-2 will simplify to zero?>>>>>>>> Albert>> Actually, as you can guess, the real results are more complicated.> Given>> (sqrt(b^2*x^2-4)-sqrt(b*x-2)*sqrt(b*x+2))/> (sqrt(b*x-2)*sqrt(b*x+2)*sqrt(b^2*x^2-4))>> under what conditions is this identically zero?>> If I extract the numerator and ask if it zero?> Axiom replies false. Is there an algorithm to show> that this is identically zero? I'd be happy to> implement it. I reread a paper on the subject and> now I'm more confused than when I started.>> Tim>hello Tim;This is in M 9.01: For domain Reals, Mathematicagives conditions for zero--------------------------Clear[x, b];num = (Sqrt[b^2*x^2 - 4] - Sqrt[b*x - 2]*Sqrt[b*x + 2]);den = Sqrt[b*x - 2]*Sqrt[b*x + 2]*Sqrt[b^2*x^2 - 4];Reduce[(num/den) == 0, {x, b}, Reals]------------------------------(x < 0 && b < 2/x) || (x > 0 && b > 2/x)But in Complex domain, it gives warnings due to branch cuts,so not possible to decide on conditions for sure in thiscase:-------------------------------Clear[x, b];num = (Sqrt[b^2*x^2 - 4] - Sqrt[b*x - 2]*Sqrt[b*x + 2]);den = Sqrt[b*x - 2]*Sqrt[b*x + 2]*Sqrt[b^2*x^2 - 4];Reduce[(num/den) == 0, {x, b}, Complexes]-----------------------------------------------------During evaluation of In[29]:= Reduce::useq: The answer found byReduce contains unsolved equation(s) {0==(-Sqrt[-2+Times[<<2>>]]Sqrt[2+Times[<<2>>]]+Sqrt[-4+Power[<<2>>] Power[<<2>>]])/Sqrt[2+b x]}.A likely reason for this is that the solution set depends on branchcuts of Mathematica functions. >>Out[32]= Sqrt[2 + b x] != 0 &&  0 == (-Sqrt[-2 + b x] Sqrt[2 + b x] +   Sqrt[-4 + b^2 x^2])/Sqrt[2 + b x] && -2 + b x != 0------------------But if one wants one instance which makes num/den = 0, thenthere is a command for that:FindInstance[(num/den) == 0, {x, b}, Complexes]{{x -> 0, b -> 0}}--Nasser
```