Although Zuse apparently invented the "hidden bit", he didn't use Newton iterations for his square root: http://www4.wittenberg.edu/academics/mathcomp/bjsdir/zusez3squarerootalgorit... At 12:12 PM 4/18/2011, Henry Baker wrote:
After some additional thinking, it would appear that the "SQRT hack", under Robert Munafo's definition & my analysis, would appear to work _only on FP representations which have a "hidden bit"_. Therefore, the IBM & early DEC series machines need not apply.
If we're going to find examples of this type of code, we're going to have to look at PDP11 & VAX routines, as they were apparently the first wide-spread use of "hidden bit" floating point units.
This means that the early Unix hackers -- including those at Bell Labs & Berkeley -- may be responsible. I would look in the graphics & vision libraries, as they had the greatest need for speed at some cost in precision, and they certainly didn't care about denormalized numbers.
At 10:02 AM 4/18/2011, Robert Munafo wrote:
Henry, thanks for all your work on this -- I hope my persistent questions weren't too frustrating.
For now, I'm treating the 1997 source code by Blinn as the earliest-known code that meets the criteria (namely a single shift followed by Newton iteration and no conditions).
I did note that it doesn't work with denormals (in fact that was in my article on 0x5f3759df from the start) and of course it doesn't work on infinity either.
You can read it at mrob.com/pub/math/numbers-16.html#le009_16