\cosh x \cdot \frac{\sin y}{y}\cosh x \cdot \frac{\frac{1}{y}}{\frac{1}{\sin y}}double f(double x, double y) {
double r385352 = x;
double r385353 = cosh(r385352);
double r385354 = y;
double r385355 = sin(r385354);
double r385356 = r385355 / r385354;
double r385357 = r385353 * r385356;
return r385357;
}
double f(double x, double y) {
double r385358 = x;
double r385359 = cosh(r385358);
double r385360 = 1.0;
double r385361 = y;
double r385362 = r385360 / r385361;
double r385363 = sin(r385361);
double r385364 = r385360 / r385363;
double r385365 = r385362 / r385364;
double r385366 = r385359 * r385365;
return r385366;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied clear-num0.2
rmApplied div-inv0.4
Applied associate-/r*0.3
Final simplification0.3
herbie shell --seed 2019303
(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)))