logoalt Hacker News

Herbie: Automatically improve imprecise floating point formulas

41 pointsby summaritylast Tuesday at 10:53 AM6 commentsview on HN

Comments

bee_ridertoday at 2:32 AM

I wonder, is there a way to only request reformulations that don’t involve branches? The tool already seems quite nice, but that might be a good feature.

Also, I’m not sure I understand the speedup. Is it latency or throughput?

fluorinerockettoday at 2:02 AM

How useful is this when you are using numbers in a reasonable range, like 10^-12 to 10^12? Generally I try to scale my numbers to be in this range, whether by picking the right units or scaling constraints and objectives when doing nonlinear programming/ optimization.

Like looking at this example,

https://herbie.uwplse.org/demo/b070b371a661191752fe37ce0321c...

It is claimed that for the function f(x) =sqrt(x+1) -1

Accuracy is increased by from 8.5% accuracy to 98% for alternative 5 Which has f(x) = 0.5x

Ok so x=99, the right answer is sqrt(100) -1 = 9

But 0.5 * 99 = 49.5 which doesn't seem too accurate to me.

show 2 replies
lutusptoday at 3:03 AM

> Herbie: Automatically improve imprecise floating point formulas

Some responses seem obvious:

* A useful exposition would describe what problems are being addressed and how an improvement is achieved, rather than offering examples without analysis.

* Robust, meaningful accuracy improvements should be made part of the underlying language, not attached to each application program in the form of a special-purpose library.

* If the issue is that people write bad floating-point expressions, a code-writing tutorial would be a better solution.

* If a programmer thinks a special-purpose library is a meaningful alternative to understanding floating-point code issues, then what stops Herbie from being a source of additional errors?