\frac{\left(\frac{8}{3} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}\frac{8 \cdot \sin \left(x \cdot 0.5\right)}{3} \cdot \frac{\sin \left(0.5 \cdot x\right)}{\sin x}double f(double x) {
double r779367 = 8.0;
double r779368 = 3.0;
double r779369 = r779367 / r779368;
double r779370 = x;
double r779371 = 0.5;
double r779372 = r779370 * r779371;
double r779373 = sin(r779372);
double r779374 = r779369 * r779373;
double r779375 = r779374 * r779373;
double r779376 = sin(r779370);
double r779377 = r779375 / r779376;
return r779377;
}
double f(double x) {
double r779378 = 8.0;
double r779379 = x;
double r779380 = 0.5;
double r779381 = r779379 * r779380;
double r779382 = sin(r779381);
double r779383 = r779378 * r779382;
double r779384 = 3.0;
double r779385 = r779383 / r779384;
double r779386 = r779380 * r779379;
double r779387 = sin(r779386);
double r779388 = sin(r779379);
double r779389 = r779387 / r779388;
double r779390 = r779385 * r779389;
return r779390;
}




Bits error versus x
Results
| Original | 14.9 |
|---|---|
| Target | 0.3 |
| Herbie | 0.3 |
Initial program 14.9
rmApplied *-un-lft-identity14.9
Applied times-frac0.5
Simplified0.5
Simplified0.5
rmApplied associate-*l/0.3
Final simplification0.3
herbie shell --seed 2020100
(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)))