Operations on inf



On 3/7/07, Robert Dodier <robert.dodier at gmail.com> wrote:
>
> On 3/7/07, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
>
Hmm. I think it might be unnecessarily conservative to treat actual
> constants as potential variables. I think it would OK to treat only
> inf and minf as potential variables (e.g. 1^inf = limit(1^x, x, inf) = 1).
>
> That makes 0*inf = limit(0*x, x, inf) = 0, which differs from IEEE 754
> arithmetic rules in which 0*INF => NAN. That makes me slightly
> uncomfortable but I could get used to it, if Maxima applies its rules
> consistently.


IEEE 754 makes 0*inf=nan (i.e. und) for good reason.  After all, if 1/inf =
0 and inf/inf = und, then it had better be true that inf/inf = inf*(1/inf) =
und.

Incidentally 1^inf => und differs from IEEE 754 since 1^inf => 1 there.


I would be interested to understand why IEEE 754 did this.  It looks like a
bug to me, since (1-epsilon)^inf = 0 and (1+epsilon)^inf = inf, for
arbitrarily small positive epsilon.

              -s