\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 \frac{\sin \left(0.5 \cdot x\right)}{3}}{\frac{\sin x}{\sin \left(0.5 \cdot x\right)}}double f(double x) {
double r548140 = 8.0;
double r548141 = 3.0;
double r548142 = r548140 / r548141;
double r548143 = x;
double r548144 = 0.5;
double r548145 = r548143 * r548144;
double r548146 = sin(r548145);
double r548147 = r548142 * r548146;
double r548148 = r548147 * r548146;
double r548149 = sin(r548143);
double r548150 = r548148 / r548149;
return r548150;
}
double f(double x) {
double r548151 = 8.0;
double r548152 = 0.5;
double r548153 = x;
double r548154 = r548152 * r548153;
double r548155 = sin(r548154);
double r548156 = 3.0;
double r548157 = r548155 / r548156;
double r548158 = r548151 * r548157;
double r548159 = sin(r548153);
double r548160 = r548159 / r548155;
double r548161 = r548158 / r548160;
return r548161;
}




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.5
Simplified0.5
rmApplied div-inv0.5
Applied associate-*l*0.5
Simplified0.3
rmApplied clear-num0.3
Final simplification0.3
herbie shell --seed 2019297
(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)))