\cosh x \cdot \frac{\sin y}{y}\frac{\frac{1}{2} \cdot \left(\sin y \cdot e^{x}\right) + \frac{1}{2} \cdot \left(e^{-1 \cdot x} \cdot \sin y\right)}{y}double f(double x, double y) {
double r602751 = x;
double r602752 = cosh(r602751);
double r602753 = y;
double r602754 = sin(r602753);
double r602755 = r602754 / r602753;
double r602756 = r602752 * r602755;
return r602756;
}
double f(double x, double y) {
double r602757 = 0.5;
double r602758 = y;
double r602759 = sin(r602758);
double r602760 = x;
double r602761 = exp(r602760);
double r602762 = r602759 * r602761;
double r602763 = r602757 * r602762;
double r602764 = -1.0;
double r602765 = r602764 * r602760;
double r602766 = exp(r602765);
double r602767 = r602766 * r602759;
double r602768 = r602757 * r602767;
double r602769 = r602763 + r602768;
double r602770 = r602769 / r602758;
return r602770;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.1 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 0.1
rmApplied clear-num0.2
rmApplied div-inv0.3
Applied associate-/r*0.3
Taylor expanded around inf 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020100 +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)))