\frac{\left(1 - x\right) \cdot \left(3 - x\right)}{y \cdot 3}\frac{3 - x}{3} \cdot \frac{1 - x}{y}double f(double x, double y) {
double r31015862 = 1.0;
double r31015863 = x;
double r31015864 = r31015862 - r31015863;
double r31015865 = 3.0;
double r31015866 = r31015865 - r31015863;
double r31015867 = r31015864 * r31015866;
double r31015868 = y;
double r31015869 = r31015868 * r31015865;
double r31015870 = r31015867 / r31015869;
return r31015870;
}
double f(double x, double y) {
double r31015871 = 3.0;
double r31015872 = x;
double r31015873 = r31015871 - r31015872;
double r31015874 = r31015873 / r31015871;
double r31015875 = 1.0;
double r31015876 = r31015875 - r31015872;
double r31015877 = y;
double r31015878 = r31015876 / r31015877;
double r31015879 = r31015874 * r31015878;
return r31015879;
}




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 2019170 +o rules:numerics
(FPCore (x y)
:name "Diagrams.TwoD.Arc:bezierFromSweepQ1 from diagrams-lib-1.3.0.3"
:herbie-target
(* (/ (- 1.0 x) y) (/ (- 3.0 x) 3.0))
(/ (* (- 1.0 x) (- 3.0 x)) (* y 3.0)))