\frac{\left(\frac{8.0}{3.0} \cdot \sin \left(x \cdot 0.5\right)\right) \cdot \sin \left(x \cdot 0.5\right)}{\sin x}\frac{\sin \left(x \cdot 0.5\right) \cdot 8.0}{\frac{\frac{\sin x}{\sin \left(x \cdot 0.5\right)}}{\frac{1}{3.0}}}double f(double x) {
double r24744779 = 8.0;
double r24744780 = 3.0;
double r24744781 = r24744779 / r24744780;
double r24744782 = x;
double r24744783 = 0.5;
double r24744784 = r24744782 * r24744783;
double r24744785 = sin(r24744784);
double r24744786 = r24744781 * r24744785;
double r24744787 = r24744786 * r24744785;
double r24744788 = sin(r24744782);
double r24744789 = r24744787 / r24744788;
return r24744789;
}
double f(double x) {
double r24744790 = x;
double r24744791 = 0.5;
double r24744792 = r24744790 * r24744791;
double r24744793 = sin(r24744792);
double r24744794 = 8.0;
double r24744795 = r24744793 * r24744794;
double r24744796 = sin(r24744790);
double r24744797 = r24744796 / r24744793;
double r24744798 = 1.0;
double r24744799 = 3.0;
double r24744800 = r24744798 / r24744799;
double r24744801 = r24744797 / r24744800;
double r24744802 = r24744795 / r24744801;
return r24744802;
}




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