MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Re: )


On Sun, 14 May 2006 07:14:55 +0000 (UTC), Andrzej Kozlowski  
<akoz at mimuw.edu.pl> wrote:
>
> First note that you are talking about Limits, while the original
> discussion was about something a bit different (as I discuss below).
> While I think your principle for Limits would be better than what
> Mathematica does now, it is still, in my opinion, a sub-species of
> the following one: given an input for which several interpretations
> are possible choose the one for which the most "useful" answer can be
> given. This principle was used a lot in early versions of
> Mathematica, for example in definite integration, where Mathematica
> would often by itself interpret input in such a way (often requiring
> unstated assumptions) that it enable it to provide an (often
> arguably) sensible answer.  The problems with this approach have
> often been discussed (in particular by yourself) so there is no need
> to repeat this again here.
> Beginning with version 4 WRI has been gradually replacing this
> approach with conditional output and the Assumptions mechanism.  I
> think when at all feasible the second approach is much preferable.
> For  a start the user would be able to work in the mathematical
> context that he wishes to: if he wants to work on the extended real
> line or on the Riemann sphere he should be able to decide this
> himself rather than have Mathematica choose for him what it finds
> suitable.
>
> However, there is a different issue involved here: the one Ted Ersek
> originally asked about. This is to do with the way Mathematica
> extends arithmetical operations to various infinite quantities it
> uses. The answers that it returns often disagree with the answer
> Limit gives, and this difference cannot be explained, I think, by the
> fact that Limit assumes a default direction (I suspect, this fact
> also would coexist somewhat uneasily with your principle). We have
> already seen that:
>
>
> Infinity^Infinity
>
> ComplexInfinity
>
> but note that actually:
>
> Limit[z^z, z -> Infinity]
>
> Infinity
>
> The choice of direction does not make any difference here:
>
>
> Limit[z^z, z -> Infinity, Direction -> I]
>
> Infinity
>
> Moreover:
>
>
> Limit[z^z, z -> ComplexInfinity]
>
> Infinity
>
> (I don't get this one)
>
> while
>
> ComplexInfinity^ComplexInfinity
>
> returns Indeterminate.
>
> Here Limit and "direct substitution" agree:
>
>
> Limit[z^2, z ->ComplexInfinity]
>
> ComplexInfinity
>
>
> ComplexInfinity^2
>
>
> ComplexInfinity
>
>
> on the other hand this:
>
> Limit[2^z, z ->
>     ComplexInfinity]
>
> is left unevaluated, rather than returning Indeterminate, as this does:
>
> 2^ComplexInfinity
>
> Here is another example where the behaviour of Limit and "direct
> substitution" differ.
>
>
> p = (1 + z)/(1 + z^2)
>
> p /. z -> ComplexInfinity
>
> Indeterminate expression 0 *ComplexInfinity encountered.
> Indeterminate
>
> This is rather unpleasant if you were expecting that your principle
> (or the Riemann sphere model) would be used here. Fortunately this
> works:
>
>
> Limit[p, z -> ComplexInfinity]
>
> 0
>
>
>
> So the question that Ted asked seems quite to the point: what are the
> rules governing direct algebraic manipulation of Infinities? it seems
> to me that that there are almost none: basically any answer that
> seemed sensible to whoever programmed  this part of Mathematica is
> returned in a seemingly haphazard way. It seems that neither a
> topological model nor a formal principle like the one you have stated
> is being used, or at least if there is one I can't work it out.
>
> Andrzej Kozlowski
> Tokyo, Japan
>

Well, it's not quite as hopeless. We can use limits to define the values  
of functions at DirectedInfinity. The important point is that the limit is  
taken along an arbitrary path. If we consider only straight lines from the  
origin, then we'll have to set E^Infinity == Limit[E^x, x -> Infinity] ==  
Infinity (Limit in the Mathematica sense, along the real line) and then  
we'll be forced to accept results such as E^(Infinity + I*Pi) !=  
E^Infinity*E^(I*Pi) and so probably won't be able to construct any useful  
arithmetic.

However, if we consider all possible paths in the complex plane such that  
the absolute value of z converges to Infinity and the argument converges  
to the given value, then it will follow that E^Infinity ==  
ComplexInfinity. Then certain useful identities such as E^(Infinity  
+ I*Pi) == E^Infinity*E^(I*Pi) == ComplexInfinity will still hold (as  
ComplexInfinity == -ComplexInfinity).

This doesn't contradict results such as Limit[E^x, x -> Infinity] ==  
Infinity, because in that case we choose only one fixed path to Infinity.

Then it appears that the identity x^y == E^(y*Log[x]) will hold for all  
varieties of infinite quantities as well:

0^-3 == ComplexInfinity ==
   E^(-3*Log[0]) == E^Infinity == ComplexInfinity

Here Log[0] == -Infinity also because this is true for all paths to 0.

(-2)^DirectedInfinity[2 + I] == 0 ==
   E^(DirectedInfinity[2 + I]*Log[-2]) == 0

Here (-2)^DirectedInfinity[2 + I] == 0, contrary to what Mathematica says,  
again because for any path to DirectedInfinity[2 + I] the absolute value  
goes to 0.

Maxim Rytin
m.r at inbox.ru


  • Prev by Date: Re: Re: Save to Quicktime during calculations?
  • Next by Date: want real solutions instead of complex ones
  • Previous by thread: Re: Re: Re: )
  • Next by thread: Re: Re: Re: Re: )