Signed infinity and signed zero Re: [Maxima] proposal to change acos
Subject: Signed infinity and signed zero Re: [Maxima] proposal to change acos
From: Richard Fateman
Date: Mon, 28 Nov 2005 08:22:08 -0800
Basically, if you have a system that has signed
infinities (as IEEE 754) you end up with signed zeros.
For a probably too-long discussion of this, see extrat.pdf
in www.cs.berkeley.edu/~fateman/papers/ also refs.
Projective and affine mode rational numbers are also
possible. This would give us in affine mode,
one (unsigned + or - infinity) which is 1/0.
Why introduce this? because a +b/c should be
computed as a if c=1/0. This allows one
to continue to compute, even after a division by 0.
If you have +inf and -inf you should also have +0 and -0,
and 0/0= undef. (projective mode)
This could/should be added to the Lisp, and then allowed
to show through for Maxima.
RJF
Raymond Toy wrote:
>>>>>>"Barton" == Barton Willis writes:
>
>
> [snip]
>
> Barton> (5) Since we last talked about such things, GCL has fixed some bugs in
> Barton> its acosh function; see
> Barton> (there may be other important messages, but I can't find them right now)
>
> Barton> http://www.math.utexas.edu/pipermail/maxima/2002/002955.html
> Barton> http://www.math.utexas.edu/pipermail/maxima/2002/002949.html
>
> Barton> Maybe 5.9.3 would be a good time to:
>
> Barton> (a) make the Maxima acosh function the same as the CL acosh function.
>
> Yes.
>
> Barton> (b) move numerical evaluation for exponetial-like
> Barton> functions to CL. Then Maxima would not have to use
> Barton> rectform to evaluate things like sin(1.0 + 5.0 * %i).
>
> I've done some of this for the elliptic functions. One question:
> What should maxima do with sin(1 + 5.0*%i)? Leave it? Apply "numeric
> contagion" and pretend it was sin(1.0+5.0*%i) and evaluate
> numerically, even without the numer or float flags?
>
> Barton> (c) check for other branch cut inconsistencies.
>
> I think this is important and we should do that soon.
>
> Let me also add that we should try to evaluate the special functions
> as accurately as possible, even for bigfloats. sinh is one example
> where we do not do a very good job for small x. In the thread
> mentioned above, we also do not evaluate acosh(4100) very well either.
> (We should fix the problem that eps is too small in trigi.lisp.)
>
> Also, in the thread mentioned above, we talked about letting Lisp
> evaluate the functions. One thing that needs to be considered is what
> to do about signed zeroes. Should maxima support that? My current
> (highly uninformed) feeling is not to support signed zeroes. If so,
> we will need to exercise a little care when calling Lisp functions for
> evaluation because cmucl and sbcl support signed zeroes.
>
> Ray
>
> _______________________________________________
> Maxima mailing list
> Maxima@math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima