On 3/7/07, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
> Presumably the correct simplifications involving inf are those which are
> correct regardless of where the inf came from.
Agreed.
> Of course, ideally we'd like to keep more information associated with
> the inf's (as RJF has pointed out, we do not have the restriction of a
> numerical system which requires all objects to be of a small, fixed size).
Agreed.
> Since we don't know, we have to treat it as arising from a limit, and indeed
> all constants need to be treated this way, e.g.
>
> 1^inf == limit(x^y,[x,y],[1,inf]) == und
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. Incidentally 1^inf => und differs from IEEE 754 since
1^inf => 1 there.
> > 4*inf -> inf YES
> > -1*inf -> minf (debatable?) YES
> > inf/inf -> und (or ind?) UND
> > inf*inf -> inf YES
Agreed.
> > inf*0 -> und (or ind?) UND ***see above***
Not sure, see above.
> > (1-sqrt(2))*inf -> minf YES
> > (1+sqrt(2))*inf -> inf YES
Agreed.
> > But inf^2 -> inf^2, still,
>
> Why? Both inf*inf and inf^2 go to inf regardless of how you approach it.
I think you're saying inf^2 => inf. If so I agree.
> > and x*inf -> x*inf. I wasn't sure what to
> > do with x*inf, so I thought it best to leave it alone.
> Yes.
Agreed.
FWIW
Robert