there is an "oops" with Root and Limit
- To: mathgroup at smc.vnet.net
- Subject: [mg108992] there is an "oops" with Root and Limit
- From: Peter Pein <petsie at dordos.net>
- Date: Fri, 9 Apr 2010 03:33:31 -0400 (EDT)
Dear group,
please have a look at the following!
In[1]:= $Version
Out[1]= 7.0 for Linux x86 (64-bit) (February 18, 2009)
In[2]:= f[t_] = Root[1 + t*#1 + #1^6 & , 2];
In[3]:= Plot[f[Exp[t]], {t, Log[6/5^(5/6)], 10},
FrameTicks -> {Transpose[{Range[10], Exp[Range[10]]}], None, None,
-(Range[0, 15]/20.)}, Axes -> None, Frame -> True, PlotRange -> All]
this shows that f tends to 0 as x goes to infinity and I can't imagine
why "something strange" should happen for x>E^10.
In[4]:= Limit[f[x], x -> Infinity]
Out[4]= -Infinity
oops...
In[5]:= Limit[f[Exp[x]], x -> Infinity]
Out[5]= Limit[Root[1 + E^x*#1 + #1^6 & , 2], x -> Infinity]
...well, I could not guess this result ;-)
Option "Assumptions->Element[x,Reals] leads to no change.
In[6]:= << "NumericalCalculus`"
Chop[NLimit[f[x], x -> Infinity, Terms -> 11]]
Out[7]= 0
as expected. And:
In[8]:= NLimit[f[Exp[x]], x -> Infinity]
Out[8]= 0.
similarly.
Finally, N[f[10^1234]] gives -1*10^(-1234) which can be called a
"negative zero with a huge value (for a zero)".
So the question arises:
WTH happens inside "Limit" when handling Root-objects?
Thanks,
Peter