From: Lloyd Zusman Date: 2004-10-30T16:46:48+09:00 Subject: Re: Rounding error ... [remainder of huge subject line truncated] Steven Jenkins writes: > trans. (T. Onoma) wrote: >> On Saturday 30 October 2004 12:00 am, Hal Fulton wrote: >> | >> | [ ... ] >> | >> | Given a choice between improved floating point and a mission to Mars, >> | I'd take the latter. >> Ha ha! When the spacecraft crashes and burns b/c of an overlooked >> rounding error, I'll accept your apology ;) > > I work in a place that actually sends missions to Mars, and I can assure > you that floating-point arithmetic is a well-understood phenomenon here. > >> [ ... ] > > There is nothing you or anyone else can do to make a finite number of > bits behave like the real number line. Whatever you do to fix things > up for the utterly unimportant class of rationals whose binary > expansion repeats in less than 64 bits will come at the expense of > some other characteristics that genuine experts have agreed is more > important. Unless you're a world-class numerical analyst, your odds of > improving on 754 are smaller than roundoff error. Give it a rest. In addition to being completely in agreement with Mr. Jenkins, I want to add that in my Introduction to Computer Programming course in 1969, we were taught about fixed-point and floating-point arithmetic. We were required to master these and other numerical concepts before we were taught any computer language, and we were expected to know the strengths and weaknesses of the various numerical techniques that are available in computers. In other words, the understanding of fixed-point and floating-point numbers is so basic and fundamental to programming that I believe that these topics should be mastered before anyone learns to write even one line of code. Sadly, it seems that many texts and professors nowadays do not teach these important concepts, at least not in introductory courses. I believe that a fuller understanding of the strengths and limitations of various numerical methods, including floating-point arithmetic, would have greatly lowered the probability that the "Ha ha! ..." statement above would ever have been written. This also applies to a number of other assertions that have been made in this thread. -- Lloyd Zusman ljz@asfast.com God bless you.