\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{\sin \left(0.5 \cdot x\right)}{\sin x} \cdot \frac{\sin \left(0.5 \cdot x\right) \cdot 8}{3}double f(double x) {
double r26342716 = 8.0;
double r26342717 = 3.0;
double r26342718 = r26342716 / r26342717;
double r26342719 = x;
double r26342720 = 0.5;
double r26342721 = r26342719 * r26342720;
double r26342722 = sin(r26342721);
double r26342723 = r26342718 * r26342722;
double r26342724 = r26342723 * r26342722;
double r26342725 = sin(r26342719);
double r26342726 = r26342724 / r26342725;
return r26342726;
}
double f(double x) {
double r26342727 = 0.5;
double r26342728 = x;
double r26342729 = r26342727 * r26342728;
double r26342730 = sin(r26342729);
double r26342731 = sin(r26342728);
double r26342732 = r26342730 / r26342731;
double r26342733 = 8.0;
double r26342734 = r26342730 * r26342733;
double r26342735 = 3.0;
double r26342736 = r26342734 / r26342735;
double r26342737 = r26342732 * r26342736;
return r26342737;
}




Bits error versus x
Results
| Original | 15.2 |
|---|---|
| Target | 0.3 |
| Herbie | 0.3 |
Initial program 15.2
rmApplied *-un-lft-identity15.2
Applied times-frac0.5
Simplified0.3
Final simplification0.3
herbie shell --seed 2019174 +o rules:numerics
(FPCore (x)
:name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, A"
:herbie-target
(/ (/ (* 8.0 (sin (* x 0.5))) 3.0) (/ (sin x) (sin (* x 0.5))))
(/ (* (* (/ 8.0 3.0) (sin (* x 0.5))) (sin (* x 0.5))) (sin x)))