Buff CIS Log BlogHeader1.jpg

Does it Add Up?

May 2nd, 2010 · No Comments · Uncategorized

Interesting tutorial on Floating-point arithmetic.  It is imperative that we recall that a floating-point value, (double-precision, quadrupal precision, or otherwise) is not able to truly capture the irrational numbers (PI, square root of two, etc.) that sometimes pervade our lives and our need to compute.  No, floating-point is an approximation and a short-hand that is “good enough.”  Viz:

significant digits × baseexponent

Why, you might ask, does this matter?  Well, for students of Computer Information Systems, it is important to understand both the power and limitations of your tools.  Moreover, consider the power and problems associated with such programs as they deal with complex algorithms related to financial, or perhaps scientific, matters.  Look at Fabrice Tourre’s story:  a mathematician and Stanford Operations Research graduate; he knew quite well the power of programming as a tool for implementing the forecasting models and “exotic financial instruments” which have caused such a stir.  The programs written to implement credit default swaps and other similar tools are all subject to the inherent drawbacks of the floating-point implementation in computing.  This is so as our machines for calculating are ultimately limited in their ability to express the depth of rational numbers.

None of this is to say that the limits of the floating point are the cause of this (or any other) financial crisis, but it is important to understand what your tools are capable of (and what they are not).  So, be mindful of what every CIS student should know about floating-point numbers.

Tags: