\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}\mathsf{fma}\left(\sqrt[3]{1} \cdot \sqrt[3]{1}, \frac{\sqrt[3]{1}}{\sin B}, -\cos B \cdot \frac{x \cdot 1}{\sin B}\right) + \frac{x \cdot \cos B}{\sin B} \cdot \left(\left(-1\right) + 1\right)double f(double B, double x) {
double r25449 = x;
double r25450 = 1.0;
double r25451 = B;
double r25452 = tan(r25451);
double r25453 = r25450 / r25452;
double r25454 = r25449 * r25453;
double r25455 = -r25454;
double r25456 = sin(r25451);
double r25457 = r25450 / r25456;
double r25458 = r25455 + r25457;
return r25458;
}
double f(double B, double x) {
double r25459 = 1.0;
double r25460 = cbrt(r25459);
double r25461 = r25460 * r25460;
double r25462 = B;
double r25463 = sin(r25462);
double r25464 = r25460 / r25463;
double r25465 = cos(r25462);
double r25466 = x;
double r25467 = r25466 * r25459;
double r25468 = r25467 / r25463;
double r25469 = r25465 * r25468;
double r25470 = -r25469;
double r25471 = fma(r25461, r25464, r25470);
double r25472 = r25466 * r25465;
double r25473 = r25472 / r25463;
double r25474 = -r25459;
double r25475 = r25474 + r25459;
double r25476 = r25473 * r25475;
double r25477 = r25471 + r25476;
return r25477;
}



Bits error versus B



Bits error versus x
Initial program 0.2
Simplified0.2
rmApplied associate-*r/0.1
rmApplied tan-quot0.2
Applied associate-/r/0.2
Applied *-un-lft-identity0.2
Applied add-cube-cbrt0.2
Applied times-frac0.2
Applied prod-diff0.2
Simplified0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019303 +o rules:numerics
(FPCore (B x)
:name "VandenBroeck and Keller, Equation (24)"
:precision binary64
(+ (- (* x (/ 1 (tan B)))) (/ 1 (sin B))))