is(equal(asinh(1), log(1 + sqrt(2))));
(should be true)
Result is due to bigfloat evaluation of asinh(1) - log(1 + sqrt(2)), which yields a small positive residual. signbfloat=false disables bigfloat evaluation:
is(equal(asinh(1), log(1 + sqrt(2)))), signbfloat=false;
which is not entirely helpful, but at least it is not incorrect.
Not sure what to do here. Certainly we don't want the sign test to be too quick to return true or false, but if we make the numerical test more stringent, we could miss some otherwise-solvable problems.
Log in to post a comment.