\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 r690060 = 1.0;
double r690061 = x;
double r690062 = r690060 - r690061;
double r690063 = 3.0;
double r690064 = r690063 - r690061;
double r690065 = r690062 * r690064;
double r690066 = y;
double r690067 = r690066 * r690063;
double r690068 = r690065 / r690067;
return r690068;
}
double f(double x, double y) {
double r690069 = 1.0;
double r690070 = x;
double r690071 = r690069 - r690070;
double r690072 = y;
double r690073 = r690071 / r690072;
double r690074 = 3.0;
double r690075 = r690074 - r690070;
double r690076 = r690075 / r690074;
double r690077 = r690073 * r690076;
return r690077;
}




Bits error versus x




Bits error versus y
Results
| Original | 6.1 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 6.1
rmApplied times-frac0.1
Final simplification0.1
herbie shell --seed 2020033 +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)))