\cosh x \cdot \frac{\sin y}{y}\cosh x \cdot \frac{1}{\frac{y}{\sin y}}double f(double x, double y) {
double r520673 = x;
double r520674 = cosh(r520673);
double r520675 = y;
double r520676 = sin(r520675);
double r520677 = r520676 / r520675;
double r520678 = r520674 * r520677;
return r520678;
}
double f(double x, double y) {
double r520679 = x;
double r520680 = cosh(r520679);
double r520681 = 1.0;
double r520682 = y;
double r520683 = sin(r520682);
double r520684 = r520682 / r520683;
double r520685 = r520681 / r520684;
double r520686 = r520680 * r520685;
return r520686;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.1 |
|---|---|
| Target | 0.1 |
| Herbie | 0.2 |
Initial program 0.1
rmApplied clear-num0.2
Final simplification0.2
herbie shell --seed 2020045 +o rules:numerics
(FPCore (x y)
:name "Linear.Quaternion:$csinh from linear-1.19.1.3"
:precision binary64
:herbie-target
(/ (* (cosh x) (sin y)) y)
(* (cosh x) (/ (sin y) y)))