failed tests in rtest_trig



Hi Barton,

> As far as I can tell, the only problems come from evaluating some
> of the inverse trigonometric functions on the branch cuts.  Off
> the cuts, they are  OK.   So it goes -- standing with one foot on
> and one foot off El Capitan, you're begging for trouble.

Well, I think we can and should do better. "Trouble" is the
developer's problem (i.e., our problem), not the user's.

Anyway, I have been investigating the branch cut situation.

Various Lisp implementations have different branch cuts
for asin, acos, and atanh. I haven't found any 2 that agree
for all three functions. So there is at most 1 implementation
which conforms to the spec.

... And solving this problem would be straightforward
if only we knew what the spec says. Alas, interpretation
of the CLHS is something more like scriptural exegesis
than programming. I believe I have now reached the
requisite state of enlightenment to discern the One True
Meaning, but non-enlightened parties will differ.

At this point my proposal is (1) Define branch cuts for
Maxima functions according to the One True Interpretation
of CLHS (which I will reveal to you shortly).
(2) Work around non-adherence to the OTI by defining
numerical functions for asin, acos, and atanh for any
non-conforming Lisp implementations.

(2) might mean restoring the state of the trig code as
of a few months ago -- isn't punting to Lisp trig functions
a recent development?

About (1), I don't pretend that we should expect to get
the various Lisp implementors on board with us.
We only need to agree amongst ourselves.

Comments?

Robert