\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{\frac{\sin \left(0.5 \cdot x\right) \cdot 8}{3}}{\frac{\sin x}{\sin \left(x \cdot 0.5\right)}}double f(double x) {
double r426742 = 8.0;
double r426743 = 3.0;
double r426744 = r426742 / r426743;
double r426745 = x;
double r426746 = 0.5;
double r426747 = r426745 * r426746;
double r426748 = sin(r426747);
double r426749 = r426744 * r426748;
double r426750 = r426749 * r426748;
double r426751 = sin(r426745);
double r426752 = r426750 / r426751;
return r426752;
}
double f(double x) {
double r426753 = 0.5;
double r426754 = x;
double r426755 = r426753 * r426754;
double r426756 = sin(r426755);
double r426757 = 8.0;
double r426758 = r426756 * r426757;
double r426759 = 3.0;
double r426760 = r426758 / r426759;
double r426761 = sin(r426754);
double r426762 = r426754 * r426753;
double r426763 = sin(r426762);
double r426764 = r426761 / r426763;
double r426765 = r426760 / r426764;
return r426765;
}




Bits error versus x
Results
| Original | 15.2 |
|---|---|
| Target | 0.3 |
| Herbie | 0.3 |
Initial program 15.2
rmApplied associate-/l*0.5
rmApplied associate-*l/0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019326
(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)))