x + y \cdot \frac{z - t}{z - a}x + y \cdot \frac{z - t}{z - a}double f(double x, double y, double z, double t, double a) {
double r32692565 = x;
double r32692566 = y;
double r32692567 = z;
double r32692568 = t;
double r32692569 = r32692567 - r32692568;
double r32692570 = a;
double r32692571 = r32692567 - r32692570;
double r32692572 = r32692569 / r32692571;
double r32692573 = r32692566 * r32692572;
double r32692574 = r32692565 + r32692573;
return r32692574;
}
double f(double x, double y, double z, double t, double a) {
double r32692575 = x;
double r32692576 = y;
double r32692577 = z;
double r32692578 = t;
double r32692579 = r32692577 - r32692578;
double r32692580 = a;
double r32692581 = r32692577 - r32692580;
double r32692582 = r32692579 / r32692581;
double r32692583 = r32692576 * r32692582;
double r32692584 = r32692575 + r32692583;
return r32692584;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t




Bits error versus a
Results
| Original | 1.3 |
|---|---|
| Target | 1.3 |
| Herbie | 1.3 |
Initial program 1.3
Final simplification1.3
herbie shell --seed 2019169
(FPCore (x y z t a)
:name "Graphics.Rendering.Plot.Render.Plot.Axis:renderAxisLine from plot-0.2.3.4, A"
:herbie-target
(+ x (/ y (/ (- z a) (- z t))))
(+ x (* y (/ (- z t) (- z a)))))