Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.



Re: Low precision exponentiation
Posted:
Feb 18, 2013 5:59 AM


On 2/17/13 at 4:08 AM, blaise@blaisefegan.me.uk (Blaise F Egan) wrote:
>I am trying to evaluate 2.5^125 to high precision.
>R gives 5.527147875260445183346e+49 as the answer but Mathematica >with N[2.5^125,30] gives 5.52715*10^49 and says that is to machine >precision.
>I am inexperienced at Mathematica. Am I doing something silly?
A couple of things. First, you need to be aware by default Mathematica displays 6 digits. But the actual result has more digits. You can see this with
In[1]:= a = N[2.5^125, 30]
Out[1]= 5.52715*10^49
In[2]:= FullForm[a]
Out[2]//FullForm= 5.527147875260444`*^49
Second, 2.5 is a machine precision number with ~16 digits of precision. You should not expect to be able to get 30 digits of precision when taking a value with less precision and raising it to a high power. If you want the value to have 30 digits of precision, you really need to start with something that has more than machine precision to begin with. That is
In[3]:= Precision[a]
Out[3]= MachinePrecision
The result is a machine precision value not a value with 30 digits of precision
Try
In[4]:= b = N[(5/2)^125, 30]
Out[4]= 5.52714787526044456024726519219*10^49
In[5]:= Precision[b]
Out[5]= 30.



