Hello:
I'm trying to understand a little about Maxima's implementation of big floats, and have three questions:
First of all, from what I have read so far in the archive, the size of the significand is determined by the variable fpprec and ?fpprec. Setting fpprec to some number of decimal digits of precision automatically sets ?fpprec to the required number of bits. So, for example, when fpprec = 16, then ?fpprec = 56. This is more than Maxima's regular floats (following the IEEE double standard of 53); the reason is, presumably, to allow for proper conversion of 16 digit numbers from decimal to binary and back to decimal without rounding. Am I understanding this correctly
My second question is this: The bit count for regular floats (again following IEEE) includes a sign bit but not the hidden bit (the most significant bit in the significand/mantissa). This means that you effectively get 53 bits to encode the magnitude of the significand (at least when its normalized). Does Maxima do the same with big floats? Or does ?fpprec = 56 mean one sign bit and 55 magnitude bits?
My third question concerns the exponent part of the big float. A little experimentation shows that it can get pretty big without causing an overflow. Is there an inherent upper limit built in to Maxima? Or is it only limited by the underlying version of Lisp and/or the storage capacity of the computer?
Many thanks in advance!
Jorge
--
Dr. Jorge Alberto Calvo
Associate Professor of Mathematics
Department of Mathematics and Physics
Ave Maria University
Phone: (239) 280-1608
Email: jorge.calvo at avemaria.edu<mailto:jorge.calvo at avemaria.edu>
Web: http://sites.google.com/site/jorgealbertocalvo