MathematicaSyntaxTestSuite
would also help loads.
However to select between antiderivatives which are both valid, Rubi assumes the integrand' s variables are positive. For example, Int[1/Sqrt[a + b x + c x^2], x]
returns
ArcTanh[(b+2*c*x)/(2*Sqrt[c]*Sqrt[a+b*x+c*x^2])]/Sqrt[c]
whereas Int[1/Sqrt[a + b x - c x^2], x]
returns
-ArcTan[(b-2*c*x)/(2*Sqrt[c]*Sqrt[a+b*x-c*x^2])]/Sqrt[c]
Note that both results are mathematically valid no matter what nonzero value is substituted for c and both results are free of the imaginary unit if a positive value is substituted for c.
{Sqrt[2*x + 1], x, 1, (1/3)*(1 + 2*x)^(3/2)}
{Sin[x]^3, x, 2, -Cos[x] + Cos[x]^3/3}