\frac{\left(\frac{8}{3} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}\left(8 \cdot \frac{\sin \left(0.5 \cdot x\right)}{3}\right) \cdot \frac{\sin \left(0.5 \cdot x\right)}{\sin x}double f(double x) {
double r598391 = 8.0;
double r598392 = 3.0;
double r598393 = r598391 / r598392;
double r598394 = x;
double r598395 = 0.5;
double r598396 = r598394 * r598395;
double r598397 = sin(r598396);
double r598398 = r598393 * r598397;
double r598399 = r598398 * r598397;
double r598400 = sin(r598394);
double r598401 = r598399 / r598400;
return r598401;
}
double f(double x) {
double r598402 = 8.0;
double r598403 = 0.5;
double r598404 = x;
double r598405 = r598403 * r598404;
double r598406 = sin(r598405);
double r598407 = 3.0;
double r598408 = r598406 / r598407;
double r598409 = r598402 * r598408;
double r598410 = sin(r598404);
double r598411 = r598406 / r598410;
double r598412 = r598409 * r598411;
return r598412;
}




Bits error versus x
Results
| Original | 14.5 |
|---|---|
| Target | 0.3 |
| Herbie | 0.3 |
Initial program 14.5
rmApplied *-un-lft-identity14.5
Applied times-frac0.5
Simplified0.5
Simplified0.5
rmApplied div-inv0.5
Applied associate-*l*0.5
Simplified0.3
Final simplification0.3
herbie shell --seed 2019356
(FPCore (x)
:name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, A"
:precision binary64
:herbie-target
(/ (/ (* 8 (sin (* x 0.5))) 3) (/ (sin x) (sin (* x 0.5))))
(/ (* (* (/ 8 3) (sin (* x 0.5))) (sin (* x 0.5))) (sin x)))