\cosh x \cdot \frac{\sin y}{y}\sqrt{\cosh x} \cdot \left(\sqrt{\cosh x} \cdot \frac{1}{\frac{y}{\sin y}}\right)double f(double x, double y) {
double r402454 = x;
double r402455 = cosh(r402454);
double r402456 = y;
double r402457 = sin(r402456);
double r402458 = r402457 / r402456;
double r402459 = r402455 * r402458;
return r402459;
}
double f(double x, double y) {
double r402460 = x;
double r402461 = cosh(r402460);
double r402462 = sqrt(r402461);
double r402463 = 1.0;
double r402464 = y;
double r402465 = sin(r402464);
double r402466 = r402464 / r402465;
double r402467 = r402463 / r402466;
double r402468 = r402462 * r402467;
double r402469 = r402462 * r402468;
return r402469;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied add-sqr-sqrt0.2
Applied associate-*l*0.2
rmApplied clear-num0.3
Final simplification0.3
herbie shell --seed 2020035
(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)))