Re:Herbie: Automatically rewrites expressions to minimize fl...
by adamjs on Sunday January 24, 2016 @09:01PM
(#10965164)
The OP copied only half my tweet, full title should be "...to minimize floating-point precision errors". This tool is specifically for improving the numerical accuracy of equations when translated into floating-point code-- "minimizing errors" makes no sense without the qualifiers.
I do a lot of procedural graphics on the GPU and am constantly plagued by precision issues (you cannot copy equations verbatim into code, you must observe overflow/underflow and other numerical issues). Herbie is pretty magical in that it can _automatically_ translate math expressions into a form that's friendlier for computers.
Also the reason why the GitHub site source was linked is because the website [1] crashed under traffic earlier today (full site contains an interactive solver and examples).
I've personally used it for improving some distance-field approximation code on the GPU (made it easier to translate the math into numerically-stable code).
Re:Herbie: Automatically rewrites expressions to minimize fl...
by pavpanchekha on Monday January 25, 2016 @11:23AM
(#10968016)
Adam, I'm one of the authors of Herbie. I'd love to hear about the distance-field approximation code you improved using Herbie. Is there any chance you can email me some details? You can use my personal email (on my profile) or the [email protected] mailing list.
Re:Herbie: Automatically rewrites expressions to minimize fl...
by dang on Monday January 25, 2016 @12:25AM
(#10965752)
Ok, we changed the title from "Herbie: A tool to automatically rewrite arithmetic expressions to minimize error" to be closer to what you've said here. If anyone can suggest a better (more accurate and neutral) title, we can change it again.
Re:Herbie: Automatically rewrites expressions to minimize fl...
by lifthrasiir on Sunday January 24, 2016 @08:58PM
(#10965152)
LISP people likes to refer a language modification to a "language", partly because its lexical structure is so simple and its metaprogramming makes such modification easy. But yeah, Racket and Arc are only similar in the surface syntax.
I do a lot of procedural graphics on the GPU and am constantly plagued by precision issues (you cannot copy equations verbatim into code, you must observe overflow/underflow and other numerical issues). Herbie is pretty magical in that it can _automatically_ translate math expressions into a form that's friendlier for computers.
Also the reason why the GitHub site source was linked is because the website [1] crashed under traffic earlier today (full site contains an interactive solver and examples).
[1] http://herbie.uwplse.org/
I've personally used it for improving some distance-field approximation code on the GPU (made it easier to translate the math into numerically-stable code).
[1] http://herbie.uwplse.org/
Arc itself is an interpreter written in Racket. The site runs on racket.