\frac{\sin x \cdot \sinh y}{x}\left(\left(\frac{\sin x}{x} \cdot {y}^{5}\right) \cdot \frac{1}{120} + \frac{\sin x}{x} \cdot y\right) + \frac{y \cdot \left(y \cdot \left(\frac{1}{6} \cdot y\right)\right)}{\frac{x}{\sin x}}double f(double x, double y) {
double r25091533 = x;
double r25091534 = sin(r25091533);
double r25091535 = y;
double r25091536 = sinh(r25091535);
double r25091537 = r25091534 * r25091536;
double r25091538 = r25091537 / r25091533;
return r25091538;
}
double f(double x, double y) {
double r25091539 = x;
double r25091540 = sin(r25091539);
double r25091541 = r25091540 / r25091539;
double r25091542 = y;
double r25091543 = 5.0;
double r25091544 = pow(r25091542, r25091543);
double r25091545 = r25091541 * r25091544;
double r25091546 = 0.008333333333333333;
double r25091547 = r25091545 * r25091546;
double r25091548 = r25091541 * r25091542;
double r25091549 = r25091547 + r25091548;
double r25091550 = 0.16666666666666666;
double r25091551 = r25091550 * r25091542;
double r25091552 = r25091542 * r25091551;
double r25091553 = r25091542 * r25091552;
double r25091554 = r25091539 / r25091540;
double r25091555 = r25091553 / r25091554;
double r25091556 = r25091549 + r25091555;
return r25091556;
}




Bits error versus x




Bits error versus y
Results
| Original | 14.4 |
|---|---|
| Target | 0.2 |
| Herbie | 0.7 |
Initial program 14.4
rmApplied *-un-lft-identity14.4
Applied times-frac0.2
Simplified0.2
Taylor expanded around 0 0.7
Simplified0.7
Taylor expanded around inf 14.9
Simplified0.7
Final simplification0.7
herbie shell --seed 2019164
(FPCore (x y)
:name "Linear.Quaternion:$ccosh from linear-1.19.1.3"
:herbie-target
(* (sin x) (/ (sinh y) x))
(/ (* (sin x) (sinh y)) x))