\frac{\left(1 - x\right) \cdot \left(3 - x\right)}{y \cdot 3}\frac{1 - x}{y} \cdot \frac{3 - x}{3}double f(double x, double y) {
double r1162367 = 1.0;
double r1162368 = x;
double r1162369 = r1162367 - r1162368;
double r1162370 = 3.0;
double r1162371 = r1162370 - r1162368;
double r1162372 = r1162369 * r1162371;
double r1162373 = y;
double r1162374 = r1162373 * r1162370;
double r1162375 = r1162372 / r1162374;
return r1162375;
}
double f(double x, double y) {
double r1162376 = 1.0;
double r1162377 = x;
double r1162378 = r1162376 - r1162377;
double r1162379 = y;
double r1162380 = r1162378 / r1162379;
double r1162381 = 3.0;
double r1162382 = r1162381 - r1162377;
double r1162383 = r1162382 / r1162381;
double r1162384 = r1162380 * r1162383;
return r1162384;
}




Bits error versus x




Bits error versus y
Results
| Original | 5.7 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 5.7
rmApplied times-frac0.1
Final simplification0.1
herbie shell --seed 2019306 +o rules:numerics
(FPCore (x y)
:name "Diagrams.TwoD.Arc:bezierFromSweepQ1 from diagrams-lib-1.3.0.3"
:precision binary64
:herbie-target
(* (/ (- 1 x) y) (/ (- 3 x) 3))
(/ (* (- 1 x) (- 3 x)) (* y 3)))