\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 r532853 = x;
double r532854 = cosh(r532853);
double r532855 = y;
double r532856 = sin(r532855);
double r532857 = r532856 / r532855;
double r532858 = r532854 * r532857;
return r532858;
}
double f(double x, double y) {
double r532859 = x;
double r532860 = cosh(r532859);
double r532861 = sqrt(r532860);
double r532862 = 1.0;
double r532863 = y;
double r532864 = sin(r532863);
double r532865 = r532863 / r532864;
double r532866 = r532862 / r532865;
double r532867 = r532861 * r532866;
double r532868 = r532861 * r532867;
return r532868;
}




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 +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)))